这部分看起来属于第 13 节「属性」内容。

allow

  1. // 该属性用于隐藏对未使用代码的警告。
  2. #[allow(dead_code)]
  3. // 不显示类型转换产生的溢出警告。
  4. #[allow(overflowing_literals)]
  5. // 通过这个属性屏蔽警告。
  6. #[allow(non_camel_case_types)]
  7. type u64_t = u64;
  8. #![allow(unreachable_code)]

derive

关联:16节部分1

  1. #[derive(PartialEq)] // 允许这种类型进行相等测试(equality test)。

自动推导的 trait:

  • 比较 trait: Eq, PartialEq, Ord, PartialOrd
  • Clone, 用来从 &T 创建副本 T
  • Copy,使类型具有 “复制语义”(copy semantics)而非 “移动语义”(move semantics)。
  • Hash,从 &T 计算哈希值(hash)。
  • Default, 创建数据类型的一个空实例。
  • Debug,使用 {:?} formatter 来格式化一个值。

feature

  1. #![feature(never_type)]

cargo feature 具体参考小记(Note)
https://dev.to/rimutaka/cargo-features-explained-with-examples-194g