Struct bstr::Chars[][src]

pub struct Chars<'a> { /* fields omitted */ }

An iterator over Unicode scalar values in a byte string.

When invalid UTF-8 byte sequences are found, they are substituted with the Unicode replacement codepoint (U+FFFD) using the “maximal subpart” strategy.

This iterator is created by the chars method provided by the ByteSlice extension trait for &[u8].

Implementations

impl<'a> Chars<'a>[src]

pub fn as_bytes(&self) -> &'a [u8]

Notable traits for &'_ [u8]

impl<'_> Read for &'_ [u8]impl<'_> Write for &'_ mut [u8]
[src]

View the underlying data as a subslice of the original data.

The slice returned has the same lifetime as the original slice, and so the iterator can continue to be used while this exists.

Examples

use bstr::ByteSlice;

let mut chars = b"abc".chars();

assert_eq!(b"abc", chars.as_bytes());
chars.next();
assert_eq!(b"bc", chars.as_bytes());
chars.next();
chars.next();
assert_eq!(b"", chars.as_bytes());

Trait Implementations

impl<'a> Clone for Chars<'a>[src]

impl<'a> Debug for Chars<'a>[src]

impl<'a> DoubleEndedIterator for Chars<'a>[src]

impl<'a> Iterator for Chars<'a>[src]

type Item = char

The type of the elements being iterated over.

Auto Trait Implementations

impl<'a> RefUnwindSafe for Chars<'a>

impl<'a> Send for Chars<'a>

impl<'a> Sync for Chars<'a>

impl<'a> Unpin for Chars<'a>

impl<'a> UnwindSafe for Chars<'a>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<I> IntoIterator for I where
    I: Iterator
[src]

type Item = <I as Iterator>::Item

The type of the elements being iterated over.

type IntoIter = I

Which kind of iterator are we turning this into?

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.