pub trait StorageKeys {
// Required method
fn encode_next_key_to<Resolver>(
&mut self,
type_id: Resolver::TypeId,
types: &Resolver,
out: &mut Vec<u8>,
) -> Option<Result<(), Error>>
where Resolver: TypeResolver;
// Provided method
fn encode_next_key<Resolver>(
&mut self,
type_id: Resolver::TypeId,
types: &Resolver,
) -> Option<Result<Vec<u8>, Error>>
where Resolver: TypeResolver { ... }
}
Expand description
Since scale_encode::EncodeAsType
is not dyn safe, this trait is used to iterate through and encode a set of keys.
Required Methods§
Provided Methods§
Sourcefn encode_next_key<Resolver>(
&mut self,
type_id: Resolver::TypeId,
types: &Resolver,
) -> Option<Result<Vec<u8>, Error>>where
Resolver: TypeResolver,
fn encode_next_key<Resolver>(
&mut self,
type_id: Resolver::TypeId,
types: &Resolver,
) -> Option<Result<Vec<u8>, Error>>where
Resolver: TypeResolver,
Encode the next key, if there is one, and return the encoded bytes
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.