#lazy-evaluation #help #wrap #macro

no-std format

一个实用软件包,可以更容易地使用格式化工具

9 个版本

0.2.4 2021 年 4 月 4 日
0.2.3 2020 年 9 月 26 日
0.2.2 2020 年 4 月 3 日
0.1.3 2020 年 4 月 1 日

#35 in #lazy

Download history 48/week @ 2024-04-07 892/week @ 2024-04-14 183/week @ 2024-04-21 79/week @ 2024-04-28 979/week @ 2024-05-05 109/week @ 2024-05-12 70/week @ 2024-05-19 85/week @ 2024-05-26 577/week @ 2024-06-02 767/week @ 2024-06-09 107/week @ 2024-06-16 130/week @ 2024-06-23 29/week @ 2024-06-30 112/week @ 2024-07-07 187/week @ 2024-07-14 436/week @ 2024-07-21

每月 774 次下载
7 个软件包(6 个直接) 中使用

MIT/Apache

13KB
78

格式

crates.io docs.rs license ci minimum supported rust version

一个实用软件包,可以更容易地使用格式化工具

用法

将依赖项添加到您的 Cargo.toml

[dependencies]
format = "0.2"

并使用 lazy_format

struct Foo(usize);

impl Debug for Foo {
    fn fmt(&self, f: &mut Formatter) -> Result {
        let alternate = f.alternate();
        let bar = lazy_format!(|f| if alternate {
            write!(f, "{:#x}", self.0)
        } else {
            write!(f, "{:x}", self.0)
        });
        f.debug_tuple("Foo")
            .field(&format_args!("{}", bar))
            .finish()
    }
}

或格式类型之一

struct Foo(usize);

impl Debug for Foo {
    fn fmt(&self, f: &mut Formatter) -> Result {
        let alternate = f.alternate();
        let bar = LowerHex(|f| {
            if alternate {
                write!(f, "{:#x}", self.0)
            } else {
                write!(f, "{:x}", self.0)
            }
        });
        f.debug_tuple("Foo")
            .field(&format_args!("{:x}", bar))
            .finish()
    }
}

依赖关系

~220KB