Enum alloy_dyn_abi::DynToken
source · pub enum DynToken<'a> {
Word(Word),
FixedSeq(Cow<'a, [DynToken<'a>]>, usize),
DynSeq {
contents: Cow<'a, [DynToken<'a>]>,
/* private fields */
},
PackedSeq(&'a [u8]),
}
Expand description
A dynamic token.
Equivalent to an enum over all types implementing Token
.
Variants§
Word(Word)
A single word.
FixedSeq(Cow<'a, [DynToken<'a>]>, usize)
A Fixed Sequence.
DynSeq
A dynamic-length sequence.
PackedSeq(&'a [u8])
A packed sequence (string or bytes).
Implementations§
source§impl<'a> DynToken<'a>
impl<'a> DynToken<'a>
sourcepub fn minimum_words(&self) -> usize
pub fn minimum_words(&self) -> usize
Calculate the minimum number of words required to encode this token.
sourcepub fn from_fixed_seq(seq: &'a [DynSolValue]) -> Self
pub fn from_fixed_seq(seq: &'a [DynSolValue]) -> Self
Instantiate a DynToken from a fixed sequence of values.
sourcepub fn from_dyn_seq(seq: &'a [DynSolValue]) -> Self
pub fn from_dyn_seq(seq: &'a [DynSolValue]) -> Self
Instantiate a DynToken from a dynamic sequence of values.
sourcepub fn as_fixed_seq(&self) -> Option<(&[Self], usize)>
pub fn as_fixed_seq(&self) -> Option<(&[Self], usize)>
Fallible cast into a fixed sequence.
sourcepub fn as_dynamic_seq(&self) -> Option<&[Self]>
pub fn as_dynamic_seq(&self) -> Option<&[Self]>
Fallible cast into a dynamic sequence.
sourcepub fn as_token_seq(&self) -> Option<&[Self]>
pub fn as_token_seq(&self) -> Option<&[Self]>
Fallible cast into a sequence, dynamic or fixed-size
sourcepub const fn as_packed_seq(&self) -> Option<&[u8]>
pub const fn as_packed_seq(&self) -> Option<&[u8]>
Fallible cast into a packed sequence.
sourcepub fn is_dynamic(&self) -> bool
pub fn is_dynamic(&self) -> bool
True if the type is dynamic, else false.
Trait Implementations§
source§impl PartialEq<DynToken<'_>> for DynToken<'_>
impl PartialEq<DynToken<'_>> for DynToken<'_>
impl Eq for DynToken<'_>
Auto Trait Implementations§
impl<'a> Freeze for DynToken<'a>
impl<'a> RefUnwindSafe for DynToken<'a>
impl<'a> Send for DynToken<'a>
impl<'a> Sync for DynToken<'a>
impl<'a> Unpin for DynToken<'a>
impl<'a> UnwindSafe for DynToken<'a>
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§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.