7 releases
Uses old Rust 2015
| 0.3.2 | Dec 20, 2020 |
|---|---|
| 0.3.1 | Mar 15, 2020 |
| 0.3.0 | May 22, 2018 |
| 0.2.1 | Jan 20, 2017 |
| 0.1.0 | Dec 18, 2015 |
#23 in #owned
907 downloads per month
Used in 12 crates
(5 directly)
8KB
91 lines
owned-chars
This crate provides an extension trait for String with two methods, into_chars and into_char_indices. These methods parallel String::chars and String::char_indices, but the iterators they create consume the String instead of borrowing it.
Release notes
- 0.3.0
- Rewrite to use
delegatecrate - Fix/breaking change:
OwnedChars::as_strworks the same way asstd::Chars::as_str
- Rewrite to use
Example
use owned_chars::OwnedChars;
fn main() {
let mut chars = OwnedChars::from_string("0123456789ABCDEF".to_owned());
let next_is_digit = |chars: &mut OwnedChars| chars.next().map_or(false, |c| c.is_numeric());
assert!(next_is_digit(&mut chars)); // 0
assert!(next_is_digit(&mut chars)); // 1
assert!(next_is_digit(&mut chars)); // 2
assert!(next_is_digit(&mut chars)); // 3
assert!(next_is_digit(&mut chars)); // 4
assert!(next_is_digit(&mut chars)); // 5
assert!(next_is_digit(&mut chars)); // 6
assert!(next_is_digit(&mut chars)); // 7
assert!(next_is_digit(&mut chars)); // 8
assert!(next_is_digit(&mut chars)); // 9
assert!(!next_is_digit(&mut chars)); // A
assert!(!next_is_digit(&mut chars)); // B
assert!(!next_is_digit(&mut chars)); // C
assert!(!next_is_digit(&mut chars)); // D
assert!(!next_is_digit(&mut chars)); // E
assert!(!next_is_digit(&mut chars)); // F
}
Dependencies
~1.5MB
~40K SLoC