Struct precompile_utils::solidity::codec::Reader
source · pub struct Reader<'inner> { /* private fields */ }
Expand description
Wrapper around an EVM input slice.
Implementations§
source§impl<'inner> Reader<'inner>
impl<'inner> Reader<'inner>
sourcepub fn new_skip_selector(input: &'inner [u8]) -> MayRevert<Self>
pub fn new_skip_selector(input: &'inner [u8]) -> MayRevert<Self>
Create a Reader while skipping an initial selector.
sourcepub fn expect_arguments(&self, args: usize) -> MayRevert
pub fn expect_arguments(&self, args: usize) -> MayRevert
Check the input has at least the correct amount of arguments before the end (32 bytes values).
sourcepub fn read_raw_bytes(&mut self, len: usize) -> MayRevert<&[u8]>
pub fn read_raw_bytes(&mut self, len: usize) -> MayRevert<&[u8]>
Read raw bytes from the input.
Doesn’t handle any alignment checks, prefer using read
instead of possible.
Returns an error if trying to parse out of bounds.
sourcepub fn read_pointer(&mut self) -> MayRevert<Self>
pub fn read_pointer(&mut self) -> MayRevert<Self>
Reads a pointer, returning a reader targetting the pointed location.
sourcepub fn read_till_end(&mut self) -> MayRevert<&[u8]>
pub fn read_till_end(&mut self) -> MayRevert<&[u8]>
Read remaining bytes
Trait Implementations§
impl<'inner> Copy for Reader<'inner>
Auto Trait Implementations§
impl<'inner> RefUnwindSafe for Reader<'inner>
impl<'inner> Send for Reader<'inner>
impl<'inner> Sync for Reader<'inner>
impl<'inner> Unpin for Reader<'inner>
impl<'inner> UnwindSafe for Reader<'inner>
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
§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
§fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
§fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
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>
§impl<T> IsType<T> for T
impl<T> IsType<T> for T
§impl<T, Outer> IsWrappedBy<Outer> for T
impl<T, Outer> IsWrappedBy<Outer> for T
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
Consume self to return an equivalent value of
T
. Read more§impl<T, U> TryIntoKey<U> for Twhere
U: TryFromKey<T>,
impl<T, U> TryIntoKey<U> for Twhere
U: TryFromKey<T>,
type Error = <U as TryFromKey<T>>::Error
fn try_into_key(self) -> Result<U, <U as TryFromKey<T>>::Error>
§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
The counterpart to
unchecked_from
.§impl<T, S> UniqueSaturatedInto<T> for S
impl<T, S> UniqueSaturatedInto<T> for S
§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T
.