pub trait MaxEncodedLen: Encode {
    // Required method
    fn max_encoded_len() -> usize;
}
Expand description

Items implementing MaxEncodedLen have a statically known maximum encoded size.

Some containers, such as BoundedVec, have enforced size limits and this trait can be implemented accurately. Other containers, such as StorageMap, do not have enforced size limits. For those containers, it is necessary to make a documented assumption about the maximum usage, and compute the max encoded length based on that assumption.

Required Methods§

source

fn max_encoded_len() -> usize

Upper bound, in bytes, of the maximum encoded size of this item.

Implementations on Foreign Types§

source§

impl<TupleElement0: MaxEncodedLen, TupleElement1: MaxEncodedLen, TupleElement2: MaxEncodedLen, TupleElement3: MaxEncodedLen, TupleElement4: MaxEncodedLen, TupleElement5: MaxEncodedLen, TupleElement6: MaxEncodedLen, TupleElement7: MaxEncodedLen, TupleElement8: MaxEncodedLen, TupleElement9: MaxEncodedLen, TupleElement10: MaxEncodedLen, TupleElement11: MaxEncodedLen> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11)

source§

impl MaxEncodedLen for i64

source§

impl<T: MaxEncodedLen, const N: usize> MaxEncodedLen for [T; N]

source§

impl MaxEncodedLen for NonZeroI16

source§

impl<TupleElement0: MaxEncodedLen, TupleElement1: MaxEncodedLen, TupleElement2: MaxEncodedLen, TupleElement3: MaxEncodedLen, TupleElement4: MaxEncodedLen, TupleElement5: MaxEncodedLen, TupleElement6: MaxEncodedLen, TupleElement7: MaxEncodedLen, TupleElement8: MaxEncodedLen, TupleElement9: MaxEncodedLen, TupleElement10: MaxEncodedLen, TupleElement11: MaxEncodedLen, TupleElement12: MaxEncodedLen, TupleElement13: MaxEncodedLen> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13)

source§

impl MaxEncodedLen for NonZeroI32

source§

impl<T: MaxEncodedLen> MaxEncodedLen for Arc<T>

source§

impl MaxEncodedLen for bool

source§

impl MaxEncodedLen for i128

source§

impl MaxEncodedLen for u16

source§

impl MaxEncodedLen for NonZeroU64

source§

impl MaxEncodedLen for u32

source§

impl<TupleElement0: MaxEncodedLen, TupleElement1: MaxEncodedLen, TupleElement2: MaxEncodedLen, TupleElement3: MaxEncodedLen, TupleElement4: MaxEncodedLen, TupleElement5: MaxEncodedLen, TupleElement6: MaxEncodedLen, TupleElement7: MaxEncodedLen, TupleElement8: MaxEncodedLen, TupleElement9: MaxEncodedLen, TupleElement10: MaxEncodedLen, TupleElement11: MaxEncodedLen, TupleElement12: MaxEncodedLen, TupleElement13: MaxEncodedLen, TupleElement14: MaxEncodedLen, TupleElement15: MaxEncodedLen, TupleElement16: MaxEncodedLen> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16)

source§

impl MaxEncodedLen for u128

source§

impl MaxEncodedLen for NonZeroU8

source§

impl<TupleElement0: MaxEncodedLen, TupleElement1: MaxEncodedLen, TupleElement2: MaxEncodedLen, TupleElement3: MaxEncodedLen, TupleElement4: MaxEncodedLen, TupleElement5: MaxEncodedLen, TupleElement6: MaxEncodedLen, TupleElement7: MaxEncodedLen, TupleElement8: MaxEncodedLen, TupleElement9: MaxEncodedLen, TupleElement10: MaxEncodedLen, TupleElement11: MaxEncodedLen, TupleElement12: MaxEncodedLen, TupleElement13: MaxEncodedLen, TupleElement14: MaxEncodedLen, TupleElement15: MaxEncodedLen, TupleElement16: MaxEncodedLen, TupleElement17: MaxEncodedLen> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17)

source§

impl<TupleElement0: MaxEncodedLen, TupleElement1: MaxEncodedLen, TupleElement2: MaxEncodedLen, TupleElement3: MaxEncodedLen, TupleElement4: MaxEncodedLen, TupleElement5: MaxEncodedLen, TupleElement6: MaxEncodedLen, TupleElement7: MaxEncodedLen, TupleElement8: MaxEncodedLen, TupleElement9: MaxEncodedLen, TupleElement10: MaxEncodedLen, TupleElement11: MaxEncodedLen, TupleElement12: MaxEncodedLen> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12)

source§

impl<TupleElement0: MaxEncodedLen, TupleElement1: MaxEncodedLen, TupleElement2: MaxEncodedLen> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2)

source§

impl MaxEncodedLen for Duration

source§

impl<TupleElement0: MaxEncodedLen, TupleElement1: MaxEncodedLen, TupleElement2: MaxEncodedLen, TupleElement3: MaxEncodedLen> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3)

source§

impl<TupleElement0: MaxEncodedLen, TupleElement1: MaxEncodedLen, TupleElement2: MaxEncodedLen, TupleElement3: MaxEncodedLen, TupleElement4: MaxEncodedLen, TupleElement5: MaxEncodedLen, TupleElement6: MaxEncodedLen, TupleElement7: MaxEncodedLen, TupleElement8: MaxEncodedLen, TupleElement9: MaxEncodedLen, TupleElement10: MaxEncodedLen> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10)

source§

impl<TupleElement0: MaxEncodedLen, TupleElement1: MaxEncodedLen, TupleElement2: MaxEncodedLen, TupleElement3: MaxEncodedLen, TupleElement4: MaxEncodedLen, TupleElement5: MaxEncodedLen, TupleElement6: MaxEncodedLen, TupleElement7: MaxEncodedLen, TupleElement8: MaxEncodedLen, TupleElement9: MaxEncodedLen, TupleElement10: MaxEncodedLen, TupleElement11: MaxEncodedLen, TupleElement12: MaxEncodedLen, TupleElement13: MaxEncodedLen, TupleElement14: MaxEncodedLen, TupleElement15: MaxEncodedLen> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15)

source§

impl<TupleElement0: MaxEncodedLen, TupleElement1: MaxEncodedLen, TupleElement2: MaxEncodedLen, TupleElement3: MaxEncodedLen, TupleElement4: MaxEncodedLen, TupleElement5: MaxEncodedLen, TupleElement6: MaxEncodedLen, TupleElement7: MaxEncodedLen, TupleElement8: MaxEncodedLen> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8)

source§

impl<T, E> MaxEncodedLen for Result<T, E>where T: MaxEncodedLen, E: MaxEncodedLen,

source§

impl MaxEncodedLen for ()

source§

impl<T: MaxEncodedLen> MaxEncodedLen for Box<T>

source§

impl MaxEncodedLen for NonZeroU128

source§

impl<TupleElement0: MaxEncodedLen, TupleElement1: MaxEncodedLen, TupleElement2: MaxEncodedLen, TupleElement3: MaxEncodedLen, TupleElement4: MaxEncodedLen, TupleElement5: MaxEncodedLen, TupleElement6: MaxEncodedLen, TupleElement7: MaxEncodedLen, TupleElement8: MaxEncodedLen, TupleElement9: MaxEncodedLen, TupleElement10: MaxEncodedLen, TupleElement11: MaxEncodedLen, TupleElement12: MaxEncodedLen, TupleElement13: MaxEncodedLen, TupleElement14: MaxEncodedLen> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14)

source§

impl MaxEncodedLen for i32

source§

impl MaxEncodedLen for i8

source§

impl MaxEncodedLen for NonZeroU32

source§

impl<T: MaxEncodedLen> MaxEncodedLen for Option<T>

source§

impl MaxEncodedLen for u8

source§

impl<TupleElement0: MaxEncodedLen, TupleElement1: MaxEncodedLen, TupleElement2: MaxEncodedLen, TupleElement3: MaxEncodedLen, TupleElement4: MaxEncodedLen, TupleElement5: MaxEncodedLen> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5)

source§

impl<TupleElement0: MaxEncodedLen, TupleElement1: MaxEncodedLen> MaxEncodedLen for (TupleElement0, TupleElement1)

source§

impl MaxEncodedLen for NonZeroI64

source§

impl<TupleElement0: MaxEncodedLen, TupleElement1: MaxEncodedLen, TupleElement2: MaxEncodedLen, TupleElement3: MaxEncodedLen, TupleElement4: MaxEncodedLen, TupleElement5: MaxEncodedLen, TupleElement6: MaxEncodedLen> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6)

source§

impl<TupleElement0: MaxEncodedLen, TupleElement1: MaxEncodedLen, TupleElement2: MaxEncodedLen, TupleElement3: MaxEncodedLen, TupleElement4: MaxEncodedLen> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4)

source§

impl MaxEncodedLen for NonZeroI128

source§

impl MaxEncodedLen for u64

source§

impl<T: MaxEncodedLen> MaxEncodedLen for Range<T>

source§

impl<T: MaxEncodedLen> MaxEncodedLen for RangeInclusive<T>

source§

impl<T> MaxEncodedLen for PhantomData<T>

source§

impl<TupleElement0: MaxEncodedLen, TupleElement1: MaxEncodedLen, TupleElement2: MaxEncodedLen, TupleElement3: MaxEncodedLen, TupleElement4: MaxEncodedLen, TupleElement5: MaxEncodedLen, TupleElement6: MaxEncodedLen, TupleElement7: MaxEncodedLen, TupleElement8: MaxEncodedLen, TupleElement9: MaxEncodedLen> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9)

source§

impl<TupleElement0: MaxEncodedLen> MaxEncodedLen for (TupleElement0,)

source§

impl MaxEncodedLen for NonZeroI8

source§

impl<TupleElement0: MaxEncodedLen, TupleElement1: MaxEncodedLen, TupleElement2: MaxEncodedLen, TupleElement3: MaxEncodedLen, TupleElement4: MaxEncodedLen, TupleElement5: MaxEncodedLen, TupleElement6: MaxEncodedLen, TupleElement7: MaxEncodedLen> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7)

source§

impl MaxEncodedLen for i16

source§

impl MaxEncodedLen for NonZeroU16

Implementors§