本文简要介绍rust语言中 core::fmt::DebugStruct.field
的用法。
用法
pub fn field(&mut self, name: &str, value: &dyn Debug) -> &mut Self
向生成的结构输出添加一个新字段。
例子
use std::fmt;
struct Bar {
bar: i32,
another: String,
}
impl fmt::Debug for Bar {
fn fmt(&self, fmt: &mut fmt::Formatter<'_>) -> fmt::Result {
fmt.debug_struct("Bar")
.field("bar", &self.bar) // We add `bar` field.
.field("another", &self.another) // We add `another` field.
// We even add a field which doesn't exist (because why not?).
.field("not_existing_field", &1)
.finish() // We're good to go!
}
}
assert_eq!(
format!("{:?}", Bar { bar: 10, another: "Hello World".to_string() }),
"Bar { bar: 10, another: \"Hello World\", not_existing_field: 1 }",
);
相关用法
- Rust DebugStruct.finish_non_exhaustive用法及代码示例
- Rust DebugStruct.finish用法及代码示例
- Rust DebugStruct用法及代码示例
- Rust DebugSet.finish用法及代码示例
- Rust DebugSet.entry用法及代码示例
- Rust DebugSet用法及代码示例
- Rust DebugSet.entries用法及代码示例
- Rust DebugList.entries用法及代码示例
- Rust DebugList用法及代码示例
- Rust DebugMap.key用法及代码示例
- Rust DebugTuple.finish用法及代码示例
- Rust Debug用法及代码示例
- Rust DebugMap.entries用法及代码示例
- Rust DebugMap.entry用法及代码示例
- Rust DebugMap.value用法及代码示例
- Rust DebugMap.finish用法及代码示例
- Rust DebugTuple.field用法及代码示例
- Rust DebugTuple用法及代码示例
- Rust DebugList.finish用法及代码示例
- Rust DebugList.entry用法及代码示例
- Rust DebugMap用法及代码示例
- Rust Debug.fmt用法及代码示例
- Rust DerefMut用法及代码示例
- Rust Default.default用法及代码示例
- Rust Default用法及代码示例
注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 core::fmt::DebugStruct.field。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。