#debugging #traits #derive-debug #to-string #value

to_debug

ToString 特性的替代方案,使用 Debug 特性

1 个不稳定版本

0.1.0 2021 年 8 月 26 日

#5#to-string

MIT 许可协议

5KB

to_debug

该软件包导出 ToDebug 特性,该特性是 ToString 的替代方案,它使用 Debug 而不是 Display

这对于编写文档测试很有用,因为它允许您检查私有字段的值

mod private {
    #[derive(Debug)]
    pub struct Person { name: String, age: u16 }
    // constructor boilerplate...
}
let p = private::Person::new("Joseph", 20);
// assert_eq!(p.name, "Joseph"); // This would fail since `name` is private.
assert_eq!(p.to_debug(), r#"Person { name: "Joseph", age: 20 }"#);

许可协议:MIT


lib.rs:

该软件包导出 ToDebug 特性,该特性是 ToString 的替代方案,它使用 Debug 而不是 Display

这对于编写文档测试很有用,因为它允许您检查私有字段的值

mod private {
    #[derive(Debug)]
    pub struct Person { name: String, age: u16 }
    // constructor boilerplate...
}
let p = private::Person::new("Joseph", 20);
// assert_eq!(p.name, "Joseph"); // This would fail since `name` is private.
assert_eq!(p.to_debug(), r#"Person { name: "Joseph", age: 20 }"#);

无运行时依赖