Trait snarkvm_synthesizer::prelude::StackEvaluate
source · pub trait StackEvaluate<N>: Clonewhere
N: Network,{
// Required methods
fn evaluate_closure<A>(
&self,
closure: &ClosureCore<N, Instruction<N>>,
inputs: &[Value<N>],
call_stack: CallStack<N>,
signer: Address<N>,
caller: Address<N>,
tvk: Field<N>
) -> Result<Vec<Value<N>>, Error>
where A: Aleo<Network = N>;
fn evaluate_function<A>(
&self,
call_stack: CallStack<N>,
caller: Option<ProgramID<N>>
) -> Result<Response<N>, Error>
where A: Aleo<Network = N>;
}
Required Methods§
sourcefn evaluate_closure<A>(
&self,
closure: &ClosureCore<N, Instruction<N>>,
inputs: &[Value<N>],
call_stack: CallStack<N>,
signer: Address<N>,
caller: Address<N>,
tvk: Field<N>
) -> Result<Vec<Value<N>>, Error>where
A: Aleo<Network = N>,
fn evaluate_closure<A>( &self, closure: &ClosureCore<N, Instruction<N>>, inputs: &[Value<N>], call_stack: CallStack<N>, signer: Address<N>, caller: Address<N>, tvk: Field<N> ) -> Result<Vec<Value<N>>, Error>where A: Aleo<Network = N>,
Evaluates a program closure on the given inputs.
Errors
This method will halt if the given inputs are not the same length as the input statements.
Object Safety§
This trait is not object safe.