Struct character_stream::CharacterStream
source · [−]Expand description
Fields
stream: Reader
The stream from which the incoming bytes are from.
is_lossy: bool
Whether or not we should care whether invalid bytes are detected.
If true
, then invalid byte sequences will be replaced with a U+FFFD.
If false
, then Failure will be the returned result.
Implementations
sourceimpl<Reader: Read> CharacterStream<Reader>
impl<Reader: Read> CharacterStream<Reader>
sourcepub fn from(stream: Reader) -> Self
pub fn from(stream: Reader) -> Self
Create a CharacterStream from a stream.
The created CharacterStream will not be lossy.
sourcepub fn new(stream: Reader, is_lossy: bool) -> Self
pub fn new(stream: Reader, is_lossy: bool) -> Self
Create a CharacterStream from a stream.
Set is_lossy
to true
if you don’t want to handle invalid byte sequences.
sourcepub fn peek_bytes(&mut self, up_to: usize) -> Result<Vec<u8>, IoError> where
Reader: Seek,
pub fn peek_bytes(&mut self, up_to: usize) -> Result<Vec<u8>, IoError> where
Reader: Seek,
Does exactly what read_bytes performs, the difference being it seeks back to the position before the read, serving as a lookahead function.
sourcepub fn peek_byte(&mut self) -> Result<u8, IoError> where
Reader: Seek,
pub fn peek_byte(&mut self) -> Result<u8, IoError> where
Reader: Seek,
Does exactly what read_byte performs, the difference being it seeks back to the position before the read, serving as a lookahead function.
sourcepub fn read_char(&mut self) -> Result<CharacterStreamResult, IoError>
pub fn read_char(&mut self) -> Result<CharacterStreamResult, IoError>
Attempts to read a character from the stream.
If is_lossy
is set to true
, then invalid byte sequences will be a U+FFFD.
If is_lossy
is set to false
, then invalid byte sequences will be returned in addition to a parse error.
Trait Implementations
sourceimpl<Reader: Read> AsMut<Reader> for CharacterStream<Reader>
impl<Reader: Read> AsMut<Reader> for CharacterStream<Reader>
sourceimpl<Reader: Read> AsRef<Reader> for CharacterStream<Reader>
impl<Reader: Read> AsRef<Reader> for CharacterStream<Reader>
sourceimpl<Reader: Read> Deref for CharacterStream<Reader>
impl<Reader: Read> Deref for CharacterStream<Reader>
sourceimpl<Reader: Read> DerefMut for CharacterStream<Reader>
impl<Reader: Read> DerefMut for CharacterStream<Reader>
sourceimpl<Reader: Read> IntoIterator for CharacterStream<Reader>
impl<Reader: Read> IntoIterator for CharacterStream<Reader>
type Item = Result<char, CharacterStreamError>
type Item = Result<char, CharacterStreamError>
The type of the elements being iterated over.
type IntoIter = CharacterIterator<Reader>
type IntoIter = CharacterIterator<Reader>
Which kind of iterator are we turning this into?
Auto Trait Implementations
impl<Reader> RefUnwindSafe for CharacterStream<Reader> where
Reader: RefUnwindSafe,
impl<Reader> Send for CharacterStream<Reader> where
Reader: Send,
impl<Reader> Sync for CharacterStream<Reader> where
Reader: Sync,
impl<Reader> Unpin for CharacterStream<Reader> where
Reader: Unpin,
impl<Reader> UnwindSafe for CharacterStream<Reader> where
Reader: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more