pub struct BytesArgLoader<A>where
A: ManagedTypeApi,{ /* private fields */ }
Expand description
Consumes a vector of BoxedBytes
and deserializes from the vector one by one.
Implementations§
Source§impl<A> BytesArgLoader<A>where
A: ManagedTypeApi,
impl<A> BytesArgLoader<A>where
A: ManagedTypeApi,
pub fn new(bytes_vec: Vec<BoxedBytes>) -> BytesArgLoader<A>
Trait Implementations§
Source§impl<A> TopDecodeMultiInput for BytesArgLoader<A>where
A: ManagedTypeApi + ErrorApi,
impl<A> TopDecodeMultiInput for BytesArgLoader<A>where
A: ManagedTypeApi + ErrorApi,
type ValueInput = Box<[u8]>
Source§fn next_value_input<H>(
&mut self,
h: H,
) -> Result<<BytesArgLoader<A> as TopDecodeMultiInput>::ValueInput, <H as DecodeErrorHandler>::HandledErr>where
H: DecodeErrorHandler,
fn next_value_input<H>(
&mut self,
h: H,
) -> Result<<BytesArgLoader<A> as TopDecodeMultiInput>::ValueInput, <H as DecodeErrorHandler>::HandledErr>where
H: DecodeErrorHandler,
Retrieves an input for deserializing an argument.
If the loader is out of arguments, it will crash by itself with an appropriate error,
without returning.
Use if the next argument is optional, use
has_next
beforehand.Source§fn flush_ignore<H>(
&mut self,
_h: H,
) -> Result<(), <H as DecodeErrorHandler>::HandledErr>where
H: DecodeErrorHandler,
fn flush_ignore<H>(
&mut self,
_h: H,
) -> Result<(), <H as DecodeErrorHandler>::HandledErr>where
H: DecodeErrorHandler,
Consumes all inputs and ignores them.
After executing this, assert_no_more_args should not fail.
fn next_value<T, H>(
&mut self,
h: H,
) -> Result<T, <H as DecodeErrorHandler>::HandledErr>where
T: TopDecode,
H: DecodeErrorHandler,
Source§fn assert_no_more_args<H>(
&self,
h: H,
) -> Result<(), <H as DecodeErrorHandler>::HandledErr>where
H: DecodeErrorHandler,
fn assert_no_more_args<H>(
&self,
h: H,
) -> Result<(), <H as DecodeErrorHandler>::HandledErr>where
H: DecodeErrorHandler,
Called after retrieving all arguments to validate that extra arguments were not provided.
Auto Trait Implementations§
impl<A> Freeze for BytesArgLoader<A>
impl<A> RefUnwindSafe for BytesArgLoader<A>where
A: RefUnwindSafe,
impl<A> Send for BytesArgLoader<A>where
A: Send,
impl<A> Sync for BytesArgLoader<A>where
A: Sync,
impl<A> Unpin for BytesArgLoader<A>where
A: Unpin,
impl<A> UnwindSafe for BytesArgLoader<A>where
A: UnwindSafe,
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> InterpretableFrom<T> for T
impl<T> InterpretableFrom<T> for T
fn interpret_from(from: T, _context: &InterpreterContext) -> T
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more