1 //! This is an internal module used by the ifmt! runtime. These structures are
2 //! emitted to static arrays to precompile format strings ahead of time.
4 //! These definitions are similar to their `ct` equivalents, but differ in that
5 //! these can be statically allocated and are slightly optimized for the runtime
6 #![allow(missing_debug_implementations)]
11 pub format: FormatSpec,
14 #[derive(Copy, Clone)]
15 pub struct FormatSpec {
23 /// Possible alignments that can be requested as part of a formatting directive.
24 #[derive(Copy, Clone, PartialEq, Eq)]
26 /// Indication that contents should be left-aligned.
28 /// Indication that contents should be right-aligned.
30 /// Indication that contents should be center-aligned.
32 /// No alignment was requested.
36 /// Used by [width](https://doc.rust-lang.org/std/fmt/#width) and [precision](https://doc.rust-lang.org/std/fmt/#precision) specifiers.
37 #[derive(Copy, Clone)]
39 /// Specified with a literal number, stores the value
41 /// Specified using `$` and `*` syntaxes, stores the index into `args`