Skip to content

Write quick and explict ranges in Rust

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

killercup/a-range

A Range

Write quick and explict ranges in Rust

Build Status crates.io docs

Example

extern crate a_range;

// Create upward-counting inclusive ranges
let days_of_xmas = a_range::from(1).up_to(12);
let expected = vec![1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
assert_eq!(days_of_xmas.to_vec(), expected);

// Just as easily count backwards
let apollo_countdown = a_range::from(100).down_to(0);
let expected: Vec<i32> = (0..101).rev().collect();
assert_eq!(apollo_countdown.to_vec(), expected);

// Infinite ranges are also fun
let naturals = a_range::from(0).up_to_infinity();
let until_four: Vec<i32> = naturals.into_iter().take(5).collect();
assert_eq!(until_four, vec![0, 1, 2, 3, 4]);

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

About

Write quick and explict ranges in Rust

Topics

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages