pub trait KeyInit: KeySizeUser + Sized {
// Required method
fn new(key: &Key<Self>) -> Self;
// Provided methods
fn new_from_slice(key: &[u8]) -> Result<Self, InvalidLength> { ... }
fn generate_key<R: CryptoRng>(rng: &mut R) -> Key<Self> { ... }
}Expand description
Types which can be initialized from a key.
Required Methods§
Provided Methods§
Sourcefn new_from_slice(key: &[u8]) -> Result<Self, InvalidLength>
fn new_from_slice(key: &[u8]) -> Result<Self, InvalidLength>
Create new value from variable size key.
§Errors
Returns InvalidLength in the event the length of the provided slice is not equal to
<Self as KeySizeUser>::KeySize::USIZE.
Sourcefn generate_key<R: CryptoRng>(rng: &mut R) -> Key<Self>
👎Deprecated since 0.2.0: use the Generate trait impl on Key instead
fn generate_key<R: CryptoRng>(rng: &mut R) -> Key<Self>
Generate trait impl on Key insteadDyn 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.