pub trait Environment: 'static + Copy + Clone + Debug + PartialEq<Self> + Eq + Hash + Serialize + DeserializeOwned + Send + Sync {
    type Affine: AffineCurve
    where
        <Self::Affine as AffineCurve>::Projective == Self::Projective,
        <Self::Affine as AffineCurve>::BaseField == Self::Field,
        <Self::Affine as AffineCurve>::ScalarField == Self::Scalar,
        <Self::Affine as AffineCurve>::Coordinates == (Self::Field, Self::Field)
; type BigInteger: BigInteger; type Field: PrimeField + SquareRootField + Copy
    where
        <Self::Field as PrimeField>::BigInteger == Self::BigInteger
; type PairingCurve: PairingEngine
    where
        <Self::PairingCurve as PairingEngine>::Fr == Self::Field
; type Projective: ProjectiveCurve
    where
        <Self::Projective as ProjectiveCurve>::Affine == Self::Affine,
        <Self::Projective as ProjectiveCurve>::BaseField == Self::Field,
        <Self::Projective as ProjectiveCurve>::ScalarField == Self::Scalar
; type Scalar: PrimeField + Copy
    where
        <Self::Scalar as PrimeField>::BigInteger == Self::BigInteger
; const EDWARDS_A: Self::Field; const EDWARDS_D: Self::Field; const MONTGOMERY_A: Self::Field; const MONTGOMERY_B: Self::Field; const MAX_STRING_BYTES: u32 = 255u32; fn halt<S, T>(message: S) -> T
    where
        S: Into<String>
, { ... } }

Required Associated Types

Required Associated Constants

The coefficient A of the twisted Edwards curve.

The coefficient D of the twisted Edwards curve.

The coefficient A of the Montgomery curve.

The coefficient B of the Montgomery curve.

Provided Associated Constants

The maximum number of bytes allowed in a string.

Provided Methods

Halts the program from further synthesis, evaluation, and execution in the current environment.

Implementors