pub struct Bytes(pub usize);
Expand description
Combinator for parsing and serializing a fixed number of bytes (dynamically known).
Tuple Fields§
§0: usize
Implementations§
Source§impl Bytes
impl Bytes
Sourcepub fn and_then<Next>(self, next: Next) -> AndThen<Bytes, Next>where
Next: Combinator,
<Next as View>::V: SecureSpecCombinator<SpecResult = <<Next as Combinator>::Owned as View>::V>,
pub fn and_then<Next>(self, next: Next) -> AndThen<Bytes, Next>where
Next: Combinator,
<Next as View>::V: SecureSpecCombinator<SpecResult = <<Next as Combinator>::Owned as View>::V>,
Chains this combinator with another combinator.
Trait Implementations§
Source§impl Combinator for Bytes
impl Combinator for Bytes
Source§type Owned = Vec<u8>
type Owned = Vec<u8>
The owned parsed type. This is currently a hack to avoid lifetime bindings in
SpecCombinator::SpecResult
, but it can be useful if we want to have functions that return owned values (e.g. Vec<T>
).Source§fn length(&self) -> Option<usize>
fn length(&self) -> Option<usize>
The length of the output buffer, if known.
This can be used to optimize serialization by pre-allocating the buffer.
Source§fn parse<'a>(
&self,
s: &'a [u8],
) -> Result<(usize, <Bytes as Combinator>::Result<'a>), ParseError>
fn parse<'a>( &self, s: &'a [u8], ) -> Result<(usize, <Bytes as Combinator>::Result<'a>), ParseError>
The parsing function.
Source§impl SpecCombinator for Bytes
impl SpecCombinator for Bytes
Source§type SpecResult = Seq<u8>
type SpecResult = Seq<u8>
The view of
Combinator::Result
.impl SecureSpecCombinator for Bytes
Auto Trait Implementations§
impl Freeze for Bytes
impl RefUnwindSafe for Bytes
impl Send for Bytes
impl Sync for Bytes
impl Unpin for Bytes
impl UnwindSafe for Bytes
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> From<T> for Twhere
T: View,
<T as View>::V: SpecFrom<<T as View>::V>,
impl<T> From<T> for Twhere
T: View,
<T as View>::V: SpecFrom<<T as View>::V>,
Source§fn ex_from(t: T) -> T
fn ex_from(t: T) -> T
Vest equivalent of
std::convert::From::from
.Source§impl<T, U> Into<U> for T
impl<T, U> Into<U> for T
Source§fn ex_into(self) -> U
fn ex_into(self) -> U
Vest equivalent of
std::convert::Into::into
.Source§impl<T, U> SpecTryInto<U> for Twhere
U: SpecTryFrom<T>,
impl<T, U> SpecTryInto<U> for Twhere
U: SpecTryFrom<T>,
Source§type Error = <U as SpecTryFrom<T>>::Error
type Error = <U as SpecTryFrom<T>>::Error
The type returned in the event of a conversion error.