7个版本
使用旧Rust 2015
0.3.2 | 2020年12月20日 |
---|---|
0.3.1 | 2020年3月15日 |
0.3.0 | 2018年5月22日 |
0.2.1 | 2017年1月20日 |
0.1.0 | 2015年12月18日 |
#657 in 文本处理
226 每月下载量
用于 12 个Crates (5 直接)
8KB
91 行
owned-chars
此crate为String提供两个方法扩展特性,into_chars
和 into_char_indices
。这些方法与 String::chars
和 String::char_indices
并行,但它们创建的迭代器消耗String而不是借用它。
发行说明
- 0.3.0
- 重写以使用
delegate
crate - 修复/破坏性更改:
OwnedChars::as_str
与std::Chars::as_str
以相同的方式工作
- 重写以使用
示例
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
}
依赖项
~1.5MB
~36K SLoC