Trait Metrics

Source
pub trait Metrics<Op>
where Op: ?Sized,
{ type Case: ?Sized; // Required method fn count(parameter: &Self::Case) -> Count; }
Expand description

Trait for determining the number of constants, public input, private inputs, and constraints for an operation.

Required Associated Types§

Required Methods§

Source

fn count(parameter: &Self::Case) -> Count

Returns the number of constants, public inputs, private inputs, and constraints.

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§

Source§

impl<A> Metrics<dyn Equal<ComputeKey<A>, Output = Boolean<A>>> for ComputeKey<A>
where A: Aleo,

Source§

impl<A> Metrics<dyn Equal<Signature<A>, Output = Boolean<A>>> for Signature<A>
where A: Aleo,

Source§

impl<A> Metrics<dyn Ternary<Boolean = Boolean<A>, Output = ComputeKey<A>>> for ComputeKey<A>
where A: Aleo,

Source§

impl<A> Metrics<dyn Ternary<Boolean = Boolean<A>, Output = Signature<A>>> for Signature<A>
where A: Aleo,

Source§

impl<E> Metrics<dyn Add<Field<E>, Output = Field<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Add<Group<E>, Output = Group<E>>> for Group<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Add<Scalar<E>, Output = Scalar<E>>> for Scalar<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Div<Field<E>, Output = Field<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Mul<Field<E>, Output = Field<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Neg<Output = Field<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Neg<Output = Group<E>>> for Group<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Not<Output = Boolean<E>>> for Boolean<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Sub<Field<E>, Output = Field<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Sub<Group<E>, Output = Group<E>>> for Group<E>
where E: Environment,

Source§

impl<E> Metrics<dyn DivUnchecked<Field<E>, Output = Field<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Double<Output = Field<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Equal<Field<E>, Output = Boolean<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn FromBits<Boolean = Boolean<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn FromBoolean<Boolean = Boolean<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Inverse<Output = Field<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Nor<Boolean<E>, Output = Boolean<E>>> for Boolean<E>
where E: Environment,

Source§

impl<E> Metrics<dyn One<Boolean = Boolean<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Pow<Field<E>, Output = Field<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Square<Output = Field<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn SquareRoot<Output = Field<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Ternary<Boolean = Boolean<E>, Output = Address<E>>> for Address<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Ternary<Boolean = Boolean<E>, Output = Field<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Ternary<Boolean = Boolean<E>, Output = Group<E>>> for Group<E>
where E: Environment,

Source§

impl<E> Metrics<dyn ToBits<Boolean = Boolean<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn ToLowerBits<Boolean = Boolean<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn ToUpperBits<Boolean = Boolean<E>>> for Field<E>
where E: Environment,

Source§

impl<E> Metrics<dyn Zero<Boolean = Boolean<E>>> for Field<E>
where E: Environment,

Source§

impl<E, I> Metrics<dyn Add<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn BitAnd<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn BitOr<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn BitXor<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn Div<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn Mul<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn Neg<Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn Not<Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn Rem<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn Shl<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn Shr<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn Sub<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn AbsChecked<Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn AbsWrapped<Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn AddChecked<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn AddWrapped<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn Compare<Integer<E, I>, Output = Boolean<E>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn DivChecked<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn DivWrapped<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn Equal<Integer<E, I>, Output = Boolean<E>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn MulChecked<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn MulWrapped<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn One<Boolean = Boolean<E>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn RemChecked<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn RemWrapped<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn SubChecked<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn SubWrapped<Integer<E, I>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn Ternary<Boolean = Boolean<E>, Output = Integer<E, I>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I> Metrics<dyn Zero<Boolean = Boolean<E>>> for Integer<E, I>
where E: Environment, I: IntegerType,

Source§

impl<E, I, M> Metrics<dyn PowChecked<Integer<E, M>, Output = Integer<E, I>>> for Integer<E, I>

Source§

impl<E, I, M> Metrics<dyn PowWrapped<Integer<E, M>, Output = Integer<E, I>>> for Integer<E, I>

Source§

impl<E, I, M> Metrics<dyn ShlChecked<Integer<E, M>, Output = Integer<E, I>>> for Integer<E, I>

Source§

impl<E, I, M> Metrics<dyn ShlWrapped<Integer<E, M>, Output = Integer<E, I>>> for Integer<E, I>

Source§

impl<E, I, M> Metrics<dyn ShrChecked<Integer<E, M>, Output = Integer<E, I>>> for Integer<E, I>

Source§

impl<E, I, M> Metrics<dyn ShrWrapped<Integer<E, M>, Output = Integer<E, I>>> for Integer<E, I>

Source§

impl<E, const NUM_BITS: u8> Metrics<dyn Commit<Input = Boolean<E>, Output = Field<E>, Randomizer = Scalar<E>>> for Pedersen<E, NUM_BITS>
where E: Environment,

Source§

impl<E, const NUM_BITS: u8> Metrics<dyn CommitUncompressed<Input = Boolean<E>, Output = Group<E>, Randomizer = Scalar<E>>> for Pedersen<E, NUM_BITS>
where E: Environment,

Source§

impl<E, const NUM_BITS: u8> Metrics<dyn Hash<Output = Field<E>, Input = Boolean<E>>> for Pedersen<E, NUM_BITS>
where E: Environment,

Source§

impl<E, const NUM_BITS: u8> Metrics<dyn HashUncompressed<Input = Boolean<E>, Output = Group<E>>> for Pedersen<E, NUM_BITS>
where E: Environment,