pub trait Environment: 'static + Copy + Clone + Debug + PartialEq<Self> + Eq + Hash + Serialize + DeserializeOwned + Send + Sync {
    type Affine: AffineCurve<Projective = Self::Projective, BaseField = Self::Field, ScalarField = Self::Scalar, Coordinates = (Self::Field, Self::Field)>;
    type BigInteger: BigInteger;
    type Field: PrimeField<BigInteger = Self::BigInteger> + SquareRootField + Copy;
    type PairingCurve: PairingEngine<Fr = Self::Field>;
    type Projective: ProjectiveCurve<Affine = Self::Affine, BaseField = Self::Field, ScalarField = Self::Scalar>;
    type Scalar: PrimeField<BigInteger = Self::BigInteger> + Copy;

    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