1个稳定版本
使用旧Rust 2015
2.2.1 | 2022年3月2日 |
---|
#39 in #derivative
98KB
2.5K SLoC
Derivative
此包提供了一组可定制的替代 #[derive]
属性,用于Rust。
文档
稳定性
此包是稳定的,并遵循semver。它需要 rustc 1.34或更高版本,更改最小rustc版本将被视为semver破坏性更改。
功能
#[derive(Derivative)]
#[derivative(Debug)]
struct Foo {
foo: u8,
#[derivative(Debug="ignore")]
bar: u8,
}
// Prints `Foo { foo: 42 }`
println!("{:?}", Foo { foo: 42, bar: 1 });
更多内容请查看文档!
许可协议
根据您的选择,许可协议为以下之一
- Apache License,版本2.0 (LICENSE-APACHE 或 http://www.apache.org/licenses/LICENSE-2.0)
- MIT许可协议 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
。
致谢
此项目受到了serde
对属性处理方式灵感的启发。同时,也借鉴了serde
的一些代码和想法。
一些测试直接改编自rustc
的测试。
贡献
除非您明确声明,否则任何有意提交以包含在您的工作中的贡献,根据Apache-2.0许可协议定义,均将按上述方式双许可,不附加任何额外条款或条件。
依赖关系
~1.5MB
~35K SLoC