1 个不稳定版本

使用旧的 Rust 2015

0.1.0 2015 年 9 月 13 日

#33#iter

MIT 许可证

4KB
75

EnumIter

crates.io

Build Status

一个简单的遍历枚举不同变体的迭代器。

示例

  use enumiter::{enum_iter, AllVariantsTakeNoParameters};

  #[derive(Clone, Copy, PartialEq, Eq, Debug)]
  enum Test {
    One,
    Two,
    Three,
  }

  unsafe impl AllVariantsTakeNoParameters for Test {}

  #[test]
  fn it_works() {
    let mut vals = Vec::new();

    let _ = Test::Two; // ignore dead code warning.

    for x in enum_iter(Test::One, Test::Three) {
      vals.push(x);
    }

    assert_eq!(format!("{:?}", vals), "[One, Two, Three]");
  }

文档

请参阅详细的 API 文档

无运行时依赖