stable-step 0.1.1

An implementation of Step for stable rust
Documentation
  • Coverage
  • 92.86%
    13 out of 14 items documented1 out of 11 items with examples
  • Size
  • Source code size: 31.21 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 2.44 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Links
  • Repository
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • asonix

stable-step

steps in stable rust

Examples

No Dependencies

[dependencies]
stable-step = "0.1"
use stable_step::{Step, StepExt};

#[derive(Debug, PartialEq, Eq, PartialOrd, Ord)]
enum MyEnum {
    A,
    B,
}

impl Step for MyEnum {
    const MIN: Self = Self::A;
    const MAX: Self = Self::B;

    fn next(&self) -> Option<Self> {
        match self {
            Self::A => Some(Self::B),
            _ => None,
        }
    }

    fn prev(&self) -> Option<Self> {
        match self {
            Self::B => Some(Self::A),
            _ => None,
        }
    }
}

fn main() {
    for value in MyEnum::iter() {
        println!("{:?}", value);
    }
}

Proc Macros

[dependencies]
stable-step = { version = "0.1", features = ["derive"] }
use stable_step::{Step, StepExt};

#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Step)]
enum MyEnum {
    A,
    B,
}

fn main() {
    for value in MyEnum::iter() {
        println!("{:?}", value);
    }
}

License