1 unstable release
0.1.1 | Jan 14, 2022 |
---|
#2065 in Rust patterns
12KB
206 lines
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
Licensed under either of Apache License, Version 2.0 or MIT license at your option.Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this crate by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~220KB