Primitives

The following primitive types are available:

type hintname
=boolboolean
={i,u}{8,16,32,64,128,size}standard integer types
=f{32, 64}32-bit / 64-bit floating point type
=[u8; N]byte array
=[u8]byte slice
=strstring slice

They can be used like this:

#![allow(unused)] fn main() { extern crate defmt; let enabled = false; let ready = false; let timeout = false; // arguments can be compressed into a single byte defmt::info!( "enabled: {=bool}, ready: {=bool}, timeout: {=bool}", enabled, ready, timeout, ); let x = 0u16; // arguments will be type checked defmt::trace!("{=u16}", x); // ^ must have type `u16` }

Additionally there are some special types:

type hintname
=M..NBitfields
=istrInterned Strings
=[?]Format slices
=[?; N]Format arrays

Read more about them in the following chapters.