Trait elrond_codec::NestedDecodeInput [−][src]
pub trait NestedDecodeInput { fn remaining_len(&mut self) -> usize; fn read_into(&mut self, into: &mut [u8]) -> Result<(), DecodeError>; fn read_into_or_exit<ExitCtx: Clone>(
&mut self,
into: &mut [u8],
c: ExitCtx,
exit: fn(_: ExitCtx, _: DecodeError) -> !
); fn read_slice(&mut self, length: usize) -> Result<&[u8], DecodeError>; fn read_slice_or_exit<ExitCtx: Clone>(
&mut self,
length: usize,
c: ExitCtx,
exit: fn(_: ExitCtx, _: DecodeError) -> !
) -> &[u8]; fn flush(&mut self) -> &[u8]; fn empty(&mut self) -> bool { ... } fn read_byte(&mut self) -> Result<u8, DecodeError> { ... } fn read_byte_or_exit<ExitCtx: Clone>(
&mut self,
c: ExitCtx,
exit: fn(_: ExitCtx, _: DecodeError) -> !
) -> u8 { ... } }
Trait that allows reading of data into a slice.
Required methods
fn remaining_len(&mut self) -> usize
[src]
The remaining length of the input data.
fn read_into(&mut self, into: &mut [u8]) -> Result<(), DecodeError>
[src]
Read the exact number of bytes required to fill the given buffer.
fn read_into_or_exit<ExitCtx: Clone>(
&mut self,
into: &mut [u8],
c: ExitCtx,
exit: fn(_: ExitCtx, _: DecodeError) -> !
)
[src]
&mut self,
into: &mut [u8],
c: ExitCtx,
exit: fn(_: ExitCtx, _: DecodeError) -> !
)
Read the exact number of bytes required to fill the given buffer. Exit early if there are not enough bytes to fill the result.
fn read_slice(&mut self, length: usize) -> Result<&[u8], DecodeError>
[src]
Read the exact number of bytes required to fill the given buffer.
fn read_slice_or_exit<ExitCtx: Clone>(
&mut self,
length: usize,
c: ExitCtx,
exit: fn(_: ExitCtx, _: DecodeError) -> !
) -> &[u8]
[src]
&mut self,
length: usize,
c: ExitCtx,
exit: fn(_: ExitCtx, _: DecodeError) -> !
) -> &[u8]
Read the exact number of bytes required to fill the given buffer. Exit directly if the input contains too few bytes.
fn flush(&mut self) -> &[u8]
[src]
Clears the input buffer and returns all remaining bytes.
Provided methods
fn empty(&mut self) -> bool
[src]
fn read_byte(&mut self) -> Result<u8, DecodeError>
[src]
Read a single byte from the input.
fn read_byte_or_exit<ExitCtx: Clone>(
&mut self,
c: ExitCtx,
exit: fn(_: ExitCtx, _: DecodeError) -> !
) -> u8
[src]
&mut self,
c: ExitCtx,
exit: fn(_: ExitCtx, _: DecodeError) -> !
) -> u8
Read a single byte from the input.
Implementors
impl<'a> NestedDecodeInput for &'a [u8]
[src]
fn remaining_len(&mut self) -> usize
[src]
fn read_into(&mut self, into: &mut [u8]) -> Result<(), DecodeError>
[src]
fn read_into_or_exit<ExitCtx: Clone>(
&mut self,
into: &mut [u8],
c: ExitCtx,
exit: fn(_: ExitCtx, _: DecodeError) -> !
)
[src]
&mut self,
into: &mut [u8],
c: ExitCtx,
exit: fn(_: ExitCtx, _: DecodeError) -> !
)
fn read_slice(&mut self, length: usize) -> Result<&[u8], DecodeError>
[src]
fn read_slice_or_exit<ExitCtx: Clone>(
&mut self,
length: usize,
c: ExitCtx,
exit: fn(_: ExitCtx, _: DecodeError) -> !
) -> &[u8]
[src]
&mut self,
length: usize,
c: ExitCtx,
exit: fn(_: ExitCtx, _: DecodeError) -> !
) -> &[u8]