referrerpolicy=no-referrer-when-downgrade

Trait MaxEncodedLen

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§

fn max_encoded_len() -> usize

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

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

§

impl MaxEncodedLen for bool

§

impl MaxEncodedLen for i8

§

impl MaxEncodedLen for i16

§

impl MaxEncodedLen for i32

§

impl MaxEncodedLen for i64

§

impl MaxEncodedLen for i128

§

impl MaxEncodedLen for u8

§

impl MaxEncodedLen for u16

§

impl MaxEncodedLen for u32

§

impl MaxEncodedLen for u64

§

impl MaxEncodedLen for u128

§

impl MaxEncodedLen for ()

§

impl MaxEncodedLen for NonZero<i8>

§

impl MaxEncodedLen for NonZero<i16>

§

impl MaxEncodedLen for NonZero<i32>

§

impl MaxEncodedLen for NonZero<i64>

§

impl MaxEncodedLen for NonZero<i128>

§

impl MaxEncodedLen for NonZero<u8>

§

impl MaxEncodedLen for NonZero<u16>

§

impl MaxEncodedLen for NonZero<u32>

§

impl MaxEncodedLen for NonZero<u64>

§

impl MaxEncodedLen for NonZero<u128>

§

impl MaxEncodedLen for Duration

§

impl MaxEncodedLen for AccountId32

§

impl MaxEncodedLen for ArithmeticError

§

impl MaxEncodedLen for BalanceStatus

§

impl MaxEncodedLen for ContextualAlias

§

impl MaxEncodedLen for Disabled

§

impl MaxEncodedLen for DispatchError

§

impl MaxEncodedLen for ElectionScore

§

impl MaxEncodedLen for FixedI64

§

impl MaxEncodedLen for FixedI128

§

impl MaxEncodedLen for FixedU64

§

impl MaxEncodedLen for FixedU128

§

impl MaxEncodedLen for H128

§

impl MaxEncodedLen for H160

§

impl MaxEncodedLen for H256

§

impl MaxEncodedLen for H384

§

impl MaxEncodedLen for H512

§

impl MaxEncodedLen for H768

§

impl MaxEncodedLen for Judgement

§

impl MaxEncodedLen for LookupError

§

impl MaxEncodedLen for ModuleError

§

impl MaxEncodedLen for MultiSignature

§

impl MaxEncodedLen for OffenceSeverity

§

impl MaxEncodedLen for PaymentStatus

§

impl MaxEncodedLen for PerU16

§

impl MaxEncodedLen for Perbill

§

impl MaxEncodedLen for Percent

§

impl MaxEncodedLen for Permill

§

impl MaxEncodedLen for Perquintill

§

impl MaxEncodedLen for Phase

§

impl MaxEncodedLen for Public

§

impl MaxEncodedLen for Public

§

impl MaxEncodedLen for Public

§

impl MaxEncodedLen for Public

§

impl MaxEncodedLen for Public

§

impl MaxEncodedLen for Public

§

impl MaxEncodedLen for RingVerifierKey

§

impl MaxEncodedLen for RingVrfSignature

§

impl MaxEncodedLen for Social

§

impl MaxEncodedLen for Statement

§

impl MaxEncodedLen for SteppedMigrationError

§

impl MaxEncodedLen for TokenError

§

impl MaxEncodedLen for TransactionalError

§

impl MaxEncodedLen for TrieError

§

impl MaxEncodedLen for Truth

§

impl MaxEncodedLen for U128

§

impl MaxEncodedLen for U256

§

impl MaxEncodedLen for U512

§

impl MaxEncodedLen for UintAuthorityId

§

impl MaxEncodedLen for Void

§

impl MaxEncodedLen for VrfPreOutput

§

impl MaxEncodedLen for VrfPreOutput

§

impl MaxEncodedLen for VrfProof

§

impl MaxEncodedLen for VrfSignature

§

impl MaxEncodedLen for VrfSignature

§

impl MaxEncodedLen for WithdrawReasons

§

impl<A, F, R, D, Fp> MaxEncodedLen for FreezeConsideration<A, F, R, D, Fp>
where F: Mutate<A>,

§

impl<A, F, R, D, Fp> MaxEncodedLen for HoldConsideration<A, F, R, D, Fp>
where F: Mutate<A>,

§

impl<A, Fx, Rx, D, Fp> MaxEncodedLen for LoneFreezeConsideration<A, Fx, Rx, D, Fp>

§

impl<A, Fx, Rx, D, Fp> MaxEncodedLen for LoneHoldConsideration<A, Fx, Rx, D, Fp>

§

impl<AccountId> MaxEncodedLen for Admin<AccountId>
where PhantomData<AccountId>: MaxEncodedLen,

§

impl<AccountId> MaxEncodedLen for Owner<AccountId>
where PhantomData<AccountId>: MaxEncodedLen,

§

impl<AccountId> MaxEncodedLen for RawOrigin<AccountId>
where AccountId: MaxEncodedLen,

§

impl<AssetId> MaxEncodedLen for NativeOrWithId<AssetId>
where AssetId: Ord + MaxEncodedLen,

§

impl<Balance> MaxEncodedLen for PagedExposureMetadata<Balance>
where Balance: HasCompact + MaxEncodedLen,

§

impl<BlockNumber> MaxEncodedLen for DispatchTime<BlockNumber>
where BlockNumber: MaxEncodedLen,

§

impl<ConfigValue, Extra> MaxEncodedLen for WithConfig<ConfigValue, Extra>
where ConfigValue: ConfigValueMarker + MaxEncodedLen, Extra: MaxEncodedLen,

§

impl<Id, Balance> MaxEncodedLen for IdAmount<Id, Balance>
where Id: MaxEncodedLen, Balance: MaxEncodedLen,

§

impl<Inspect> MaxEncodedLen for ConfigValue<Inspect>
where Inspect: InspectStrategy, <Inspect as InspectStrategy>::Value: MaxEncodedLen,

§

impl<K, V, S> MaxEncodedLen for BoundedBTreeMap<K, V, S>
where K: MaxEncodedLen, V: MaxEncodedLen, S: Get<u32>,

§

impl<Nonce, AccountData> MaxEncodedLen for AccountInfo<Nonce, AccountData>
where Nonce: MaxEncodedLen, AccountData: MaxEncodedLen,

§

impl<Params, ReportedId> MaxEncodedLen for DeriveAndReportId<Params, ReportedId>
where Params: MaxEncodedLen, PhantomData<ReportedId>: MaxEncodedLen,

§

impl<Params, RuntimeCall> MaxEncodedLen for Callback<Params, RuntimeCall>

§

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

§

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

§

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

§

impl<T> MaxEncodedLen for PhantomData<T>

§

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

§

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

§

impl<T> MaxEncodedLen for CodeUpgradeAuthorization<T>
where T: Config, <T as Config>::Hash: MaxEncodedLen,

§

impl<T> MaxEncodedLen for PerDispatchClass<T>
where T: MaxEncodedLen,

§

impl<T> MaxEncodedLen for WrapperKeepOpaque<T>
where T: MaxEncodedLen,

§

impl<T> MaxEncodedLen for WrapperOpaque<T>
where T: MaxEncodedLen,

§

impl<T, D> MaxEncodedLen for TypeWithDefault<T, D>

§

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

§

impl<T, H> MaxEncodedLen for Bounded<T, H>
where H: Hash,

§

impl<T, Hash> MaxEncodedLen for MaybeHashed<T, Hash>
where T: MaxEncodedLen, Hash: MaxEncodedLen,

§

impl<T, S> MaxEncodedLen for BoundedBTreeSet<T, S>
where T: MaxEncodedLen, S: Get<u32>,

§

impl<T, S> MaxEncodedLen for WeakBoundedVec<T, S>
where T: MaxEncodedLen, S: Get<u32>, WeakBoundedVec<T, S>: Encode,

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

impl<TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12)
where 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,

§

impl<TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13)
where 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,

§

impl<TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14)
where 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,

§

impl<TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15)
where 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,

§

impl<TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16)
where 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,

§

impl<TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17> MaxEncodedLen for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17)
where 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,

§

impl<WitnessData> MaxEncodedLen for Witness<WitnessData>
where PhantomData<WitnessData>: MaxEncodedLen,

§

impl<const N: usize> MaxEncodedLen for MigrationId<N>

§

impl<const N: usize, T> MaxEncodedLen for CryptoBytes<N, T>
where PhantomData<fn() -> T>: MaxEncodedLen,

§

impl<const R: usize> MaxEncodedLen for RingContext<R>

Implementors§

§

impl MaxEncodedLen for Weight

§

impl MaxEncodedLen for Compact<u8>

§

impl MaxEncodedLen for Compact<u16>

§

impl MaxEncodedLen for Compact<u32>

§

impl MaxEncodedLen for Compact<u64>

§

impl MaxEncodedLen for Compact<u128>

§

impl MaxEncodedLen for Compact<()>

Source§

impl<AccountId, BOuter, BInner> MaxEncodedLen for BoundedSupports<AccountId, BOuter, BInner>
where AccountId: MaxEncodedLen, BOuter: Get<u32>, BInner: Get<u32>,

Source§

impl<AccountId, Bound> MaxEncodedLen for BoundedSupport<AccountId, Bound>
where AccountId: MaxEncodedLen, Bound: Get<u32>,

§

impl<T, S> MaxEncodedLen for BoundedVec<T, S>
where T: MaxEncodedLen, S: Get<u32>, BoundedVec<T, S>: Encode,