pub trait CallTrait<N: Network> {
    // Required methods
    fn evaluate<A: Aleo<Network = N>>(
        &self,
        stack: &(impl StackEvaluate<N> + StackMatches<N> + StackProgram<N>),
        registers: &mut Registers<N, A>
    ) -> Result<()>;
    fn execute<A: Aleo<Network = N>, R: CryptoRng + Rng>(
        &self,
        stack: &(impl StackEvaluate<N> + StackExecute<N> + StackMatches<N> + StackProgram<N>),
        registers: &mut (impl RegistersCall<N> + RegistersSignerCircuit<N, A> + RegistersLoadCircuit<N, A> + RegistersStoreCircuit<N, A>),
        rng: &mut R
    ) -> Result<()>;
}

Required Methods§

source

fn evaluate<A: Aleo<Network = N>>( &self, stack: &(impl StackEvaluate<N> + StackMatches<N> + StackProgram<N>), registers: &mut Registers<N, A> ) -> Result<()>

Evaluates the instruction.

source

fn execute<A: Aleo<Network = N>, R: CryptoRng + Rng>( &self, stack: &(impl StackEvaluate<N> + StackExecute<N> + StackMatches<N> + StackProgram<N>), registers: &mut (impl RegistersCall<N> + RegistersSignerCircuit<N, A> + RegistersLoadCircuit<N, A> + RegistersStoreCircuit<N, A>), rng: &mut R ) -> Result<()>

Executes the instruction.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl<N: Network> CallTrait<N> for Call<N>

source§

fn evaluate<A: Aleo<Network = N>>( &self, stack: &(impl StackEvaluate<N> + StackMatches<N> + StackProgram<N>), registers: &mut Registers<N, A> ) -> Result<()>

Evaluates the instruction.

source§

fn execute<A: Aleo<Network = N>, R: Rng + CryptoRng>( &self, stack: &(impl StackEvaluate<N> + StackExecute<N> + StackMatches<N> + StackProgram<N>), registers: &mut (impl RegistersCall<N> + RegistersSignerCircuit<N, A> + RegistersLoadCircuit<N, A> + RegistersStoreCircuit<N, A>), rng: &mut R ) -> Result<()>

Executes the instruction.

Implementors§