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§
Sourcefn max_encoded_len() -> usize
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".
Implementations on Foreign Types§
Source§impl MaxEncodedLen for bool
impl MaxEncodedLen for bool
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for i8
impl MaxEncodedLen for i8
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for i16
impl MaxEncodedLen for i16
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for i32
impl MaxEncodedLen for i32
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for i64
impl MaxEncodedLen for i64
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for i128
impl MaxEncodedLen for i128
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for u8
impl MaxEncodedLen for u8
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for u16
impl MaxEncodedLen for u16
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for u32
impl MaxEncodedLen for u32
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for u64
impl MaxEncodedLen for u64
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for u128
impl MaxEncodedLen for u128
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for ()
impl MaxEncodedLen for ()
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for NonZero<i8>
impl MaxEncodedLen for NonZero<i8>
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for NonZero<i16>
impl MaxEncodedLen for NonZero<i16>
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for NonZero<i32>
impl MaxEncodedLen for NonZero<i32>
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for NonZero<i64>
impl MaxEncodedLen for NonZero<i64>
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for NonZero<i128>
impl MaxEncodedLen for NonZero<i128>
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for NonZero<u8>
impl MaxEncodedLen for NonZero<u8>
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for NonZero<u16>
impl MaxEncodedLen for NonZero<u16>
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for NonZero<u32>
impl MaxEncodedLen for NonZero<u32>
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for NonZero<u64>
impl MaxEncodedLen for NonZero<u64>
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for NonZero<u128>
impl MaxEncodedLen for NonZero<u128>
fn max_encoded_len() -> usize
Source§impl MaxEncodedLen for Duration
impl MaxEncodedLen for Duration
fn max_encoded_len() -> usize
Source§impl<T> MaxEncodedLen for Option<T>where
T: MaxEncodedLen,
impl<T> MaxEncodedLen for Option<T>where
T: MaxEncodedLen,
fn max_encoded_len() -> usize
Source§impl<T> MaxEncodedLen for Box<T>where
T: MaxEncodedLen,
impl<T> MaxEncodedLen for Box<T>where
T: MaxEncodedLen,
fn max_encoded_len() -> usize
Source§impl<T> MaxEncodedLen for Arc<T>where
T: MaxEncodedLen,
Available on target_has_atomic=ptr only.
impl<T> MaxEncodedLen for Arc<T>where
T: MaxEncodedLen,
Available on
target_has_atomic=ptr only.