pub trait ProofPlan:
Debug
+ Send
+ Sync
+ ProverEvaluate {
// Required methods
fn verifier_evaluate<S: Scalar>(
&self,
builder: &mut impl VerificationBuilder<S>,
accessor: &IndexMap<TableRef, IndexMap<Ident, S>>,
chi_eval_map: &IndexMap<TableRef, (S, usize)>,
params: &[LiteralValue],
) -> Result<TableEvaluation<S>, ProofError>;
fn get_column_result_fields(&self) -> Vec<ColumnField>;
fn get_column_references(
&self,
) -> IndexSet<ColumnRef, BuildHasherDefault<AHasher>>;
fn get_table_references(
&self,
) -> IndexSet<TableRef, BuildHasherDefault<AHasher>>;
}Expand description
Provable nodes in the provable AST.
Required Methods§
Sourcefn verifier_evaluate<S: Scalar>(
&self,
builder: &mut impl VerificationBuilder<S>,
accessor: &IndexMap<TableRef, IndexMap<Ident, S>>,
chi_eval_map: &IndexMap<TableRef, (S, usize)>,
params: &[LiteralValue],
) -> Result<TableEvaluation<S>, ProofError>
fn verifier_evaluate<S: Scalar>( &self, builder: &mut impl VerificationBuilder<S>, accessor: &IndexMap<TableRef, IndexMap<Ident, S>>, chi_eval_map: &IndexMap<TableRef, (S, usize)>, params: &[LiteralValue], ) -> Result<TableEvaluation<S>, ProofError>
Form components needed to verify and proof store into VerificationBuilder
Sourcefn get_column_result_fields(&self) -> Vec<ColumnField>
fn get_column_result_fields(&self) -> Vec<ColumnField>
Return all the result column fields
Sourcefn get_column_references(
&self,
) -> IndexSet<ColumnRef, BuildHasherDefault<AHasher>>
fn get_column_references( &self, ) -> IndexSet<ColumnRef, BuildHasherDefault<AHasher>>
Return all the columns referenced in the Query
Sourcefn get_table_references(
&self,
) -> IndexSet<TableRef, BuildHasherDefault<AHasher>>
fn get_table_references( &self, ) -> IndexSet<TableRef, BuildHasherDefault<AHasher>>
Return all the tables referenced in the Query
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".