Trait multiversx_sc_codec::TopDecodeInput
source · pub trait TopDecodeInput: Sized {
type NestedBuffer: NestedDecodeInput;
// Required methods
fn byte_len(&self) -> usize;
fn into_boxed_slice_u8(self) -> Box<[u8]>;
fn into_max_size_buffer<H, const MAX_LEN: usize>(
self,
buffer: &mut [u8; MAX_LEN],
h: H
) -> Result<&[u8], H::HandledErr>
where H: DecodeErrorHandler;
fn into_nested_buffer(self) -> Self::NestedBuffer;
// Provided methods
fn into_u64<H>(self, h: H) -> Result<u64, H::HandledErr>
where H: DecodeErrorHandler { ... }
fn into_i64<H>(self, h: H) -> Result<i64, H::HandledErr>
where H: DecodeErrorHandler { ... }
fn supports_specialized_type<T: TryStaticCast>() -> bool { ... }
fn into_specialized<T, H>(self, h: H) -> Result<T, H::HandledErr>
where T: TryStaticCast,
H: DecodeErrorHandler { ... }
}
Expand description
Trait that abstracts away an underlying API for a top-level object deserializer. The underlying API can provide pre-parsed i64/u64 or pre-bundled boxed slices.
Required Associated Types§
Required Methods§
sourcefn into_boxed_slice_u8(self) -> Box<[u8]>
fn into_boxed_slice_u8(self) -> Box<[u8]>
Provides the underlying data as an owned byte slice box. Consumes the input object in the process.
sourcefn into_max_size_buffer<H, const MAX_LEN: usize>(
self,
buffer: &mut [u8; MAX_LEN],
h: H
) -> Result<&[u8], H::HandledErr>where
H: DecodeErrorHandler,
fn into_max_size_buffer<H, const MAX_LEN: usize>(
self,
buffer: &mut [u8; MAX_LEN],
h: H
) -> Result<&[u8], H::HandledErr>where
H: DecodeErrorHandler,
Puts the underlying data into a fixed size byte buffer and returns the populated data slice from this buffer.
Will return an error if the data exceeds the provided buffer.
fn into_nested_buffer(self) -> Self::NestedBuffer
Provided Methods§
sourcefn into_u64<H>(self, h: H) -> Result<u64, H::HandledErr>where
H: DecodeErrorHandler,
fn into_u64<H>(self, h: H) -> Result<u64, H::HandledErr>where
H: DecodeErrorHandler,
Retrieves the underlying data as a pre-parsed u64. Expected to panic if the conversion is not possible.
Consumes the input object in the process.
sourcefn into_i64<H>(self, h: H) -> Result<i64, H::HandledErr>where
H: DecodeErrorHandler,
fn into_i64<H>(self, h: H) -> Result<i64, H::HandledErr>where
H: DecodeErrorHandler,
Retrieves the underlying data as a pre-parsed i64. Expected to panic if the conversion is not possible.
Consumes the input object in the process.
fn supports_specialized_type<T: TryStaticCast>() -> bool
fn into_specialized<T, H>(self, h: H) -> Result<T, H::HandledErr>where
T: TryStaticCast,
H: DecodeErrorHandler,
Object Safety§
This trait is not object safe.