1 unstable release
0.1.0 | Feb 1, 2023 |
---|
#1307 in Text processing
37KB
696 lines
lazy-char-iter
Lazily iterate over Unicode characters from a u8 slice in Rust.
This crate provides a .chars()
method for Vec<u8>
and &[u8]
types, allowing you to iterate over the characters
in a byte vector or slice without decoding each character preemptively.
In typical usage, you use
the LazyCharIterExt
trait (implemented for Vec<u8>
and &[u8]
) and call the .chars()
method on those types:
use lazy_char_iter::LazyCharIterExt;
let bread_str: &str = "brød";
let bread_bytes: &[u8] = bread_str.as_bytes();
let mut char_iter = bread_bytes.chars();
assert_eq!(char_iter.next(), Some(Ok('b')));
lib.rs
:
This crate provides a .chars()
method for Vec<u8>
and &[u8]
types, allowing you to iterate over the characters
in a byte vector or slice without decoding each character preemptively.
In typical usage, you use
the CharIterExt
trait (implemented for Vec<u8>
and &[u8]
) and call the .chars()
method on those types:
use lazy_char_iter::LazyCharIterExt;
let bread_str: &str = "brød";
let bread_bytes: &[u8] = bread_str.as_bytes();
let mut char_iter = bread_bytes.chars();
assert_eq!(char_iter.next(), Some(Ok('b')));