Trait proof_of_sql::sql::proof::ProofExpr
source · pub trait ProofExpr<C: Commitment>:
Debug
+ Send
+ Sync
+ ProverEvaluate<C::Scalar> {
// Required methods
fn count(
&self,
builder: &mut CountBuilder<'_>,
accessor: &dyn MetadataAccessor,
) -> Result<(), ProofError>;
fn get_length(&self, accessor: &dyn MetadataAccessor) -> usize;
fn get_offset(&self, accessor: &dyn MetadataAccessor) -> usize;
fn verifier_evaluate(
&self,
builder: &mut VerificationBuilder<'_, C>,
accessor: &dyn CommitmentAccessor<C>,
result: Option<&OwnedTable<C::Scalar>>,
) -> Result<(), ProofError>;
fn get_column_result_fields(&self) -> Vec<ColumnField>;
fn get_column_references(&self) -> IndexSet<ColumnRef>;
// Provided method
fn is_empty(&self, accessor: &dyn MetadataAccessor) -> bool { ... }
}
Expand description
Provable nodes in the provable AST.
Required Methods§
sourcefn count(
&self,
builder: &mut CountBuilder<'_>,
accessor: &dyn MetadataAccessor,
) -> Result<(), ProofError>
fn count( &self, builder: &mut CountBuilder<'_>, accessor: &dyn MetadataAccessor, ) -> Result<(), ProofError>
Count terms used within the Query’s proof
sourcefn get_length(&self, accessor: &dyn MetadataAccessor) -> usize
fn get_length(&self, accessor: &dyn MetadataAccessor) -> usize
The length of the input table
sourcefn get_offset(&self, accessor: &dyn MetadataAccessor) -> usize
fn get_offset(&self, accessor: &dyn MetadataAccessor) -> usize
The offset of the query, that is, how many rows to skip before starting to read the input table
sourcefn verifier_evaluate(
&self,
builder: &mut VerificationBuilder<'_, C>,
accessor: &dyn CommitmentAccessor<C>,
result: Option<&OwnedTable<C::Scalar>>,
) -> Result<(), ProofError>
fn verifier_evaluate( &self, builder: &mut VerificationBuilder<'_, C>, accessor: &dyn CommitmentAccessor<C>, result: Option<&OwnedTable<C::Scalar>>, ) -> Result<(), 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>
fn get_column_references(&self) -> IndexSet<ColumnRef>
Return all the columns referenced in the Query
Provided Methods§
sourcefn is_empty(&self, accessor: &dyn MetadataAccessor) -> bool
fn is_empty(&self, accessor: &dyn MetadataAccessor) -> bool
Check if the input table is empty