Skip to main content

Backend

Trait Backend 

Source
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§

Source

type ParSize1600: ArraySize

Parallelism width supported by the backend for State1600.

Required Methods§

Source

fn get_p1600<const ROUNDS: usize>() -> Fn1600

Get scalar p1600 function with the specified number of rounds.

§Panics

If ROUNDS is bigger than F1600_ROUNDS.

Provided Methods§

Source

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.

Source

fn get_f1600() -> Fn1600

Get scalar f1600 function.

Source

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.

Implementors§