pub trait ControllerInterface {
type W: WitnessGenerator<Fp>;
type Bool: BoolInterface;
type SingleData;
// Required methods
fn check(
proof_verifies: Self::Bool,
signature_verifies: Self::Bool,
auth: &AuthRequired,
single_data: &Self::SingleData,
w: &mut Self::W,
) -> Result<Self::Bool, String>;
fn verification_key_perm_fallback_to_signature_with_older_version(
auth: &AuthRequired,
w: &mut Self::W,
) -> AuthRequired;
}
Required Associated Types§
Required Methods§
fn check( proof_verifies: Self::Bool, signature_verifies: Self::Bool, auth: &AuthRequired, single_data: &Self::SingleData, w: &mut Self::W, ) -> Result<Self::Bool, String>
fn verification_key_perm_fallback_to_signature_with_older_version( auth: &AuthRequired, w: &mut Self::W, ) -> AuthRequired
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.