pub trait Backend {
type ParSize1600: ArraySize;
// Required method
fn get_p1600<const ROUNDS: usize>() -> Fn1600;
// Provided methods
fn get_par_p1600<const ROUNDS: usize>() -> ParFn1600<Self> { ... }
fn get_f1600() -> Fn1600 { ... }
fn get_par_f1600() -> ParFn1600<Self> { ... }
}Expand description
Trait implemented by a Keccak backend.
Required Associated Types§
Sourcetype ParSize1600: ArraySize
type ParSize1600: ArraySize
Parallelism width supported by the backend for State1600.
Required Methods§
Provided Methods§
Sourcefn get_par_p1600<const ROUNDS: usize>() -> ParFn1600<Self>
fn get_par_p1600<const ROUNDS: usize>() -> ParFn1600<Self>
Get parallel p1600 function with the specified number of rounds.
§Panics
If ROUNDS is bigger than F1600_ROUNDS.
Sourcefn get_par_f1600() -> ParFn1600<Self>
fn get_par_f1600() -> ParFn1600<Self>
Get parallel f1600 function.
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.