cgp_field/traits/
static_format.rs

1use core::fmt::{self, Formatter};
2
3use crate::types::{Chars, Nil};
4
5pub trait StaticFormat {
6    fn fmt(f: &mut Formatter<'_>) -> Result<(), fmt::Error>;
7}
8
9impl<const CHAR: char, Tail> StaticFormat for Chars<CHAR, Tail>
10where
11    Tail: StaticFormat,
12{
13    fn fmt(f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
14        write!(f, "{CHAR}")?;
15        Tail::fmt(f)
16    }
17}
18
19impl StaticFormat for Nil {
20    fn fmt(_f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
21        Ok(())
22    }
23}