Skip to main content

shuck_format/
macros.rs

1#[macro_export]
2macro_rules! write {
3    ($formatter:expr, [$($content:expr),* $(,)?]) => {{
4        (|| -> ::std::result::Result<(), $crate::FormatError> {
5            $( $crate::Format::fmt(&$content, $formatter)?; )*
6            ::std::result::Result::<(), $crate::FormatError>::Ok(())
7        })()
8    }};
9}
10
11#[macro_export]
12macro_rules! format {
13    ($context:expr, [$($content:expr),* $(,)?]) => {{
14        (|| -> ::std::result::Result<_, $crate::FormatError> {
15            let mut formatter = $crate::Formatter::new($context);
16            $crate::write!(&mut formatter, [$($content),*])?;
17            ::std::result::Result::<_, $crate::FormatError>::Ok(formatter.finish())
18        })()
19    }};
20}