Struct const_format::fmt::DebugList [−][src]
pub struct DebugList<'f, 'w> { /* fields omitted */ }
This is supported on crate feature
fmt
only.Expand description
For debug formatting a list/array.
Example
This example demonstrates how you can debug format a custom type as a list.
#![feature(const_mut_refs)]
use const_format::{Error, Formatter};
use const_format::{formatc, impl_fmt, try_};
use std::ops::Range;
fn main() {
const LIST: &str = formatc!("{:?}", RangeList(0..5));
assert_eq!(LIST, "[0, 1, 2, 3, 4]");
}
struct RangeList(Range<usize>);
impl_fmt!{
impl RangeList;
const fn const_debug_fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error> {
let mut f = f.debug_list();
let mut i = self.0.start;
while i < self.0.end {
try_!(f.entry().write_usize_display(i));
i+=1;
}
f.finish()
}
}