pub struct EvaluateResult {
pub results: Vec<RunResult>,
pub diagnostics: Vec<Diagnostic>,
pub trace: Vec<TraceEvent>,
pub proofs: Vec<Option<Node>>,
pub provenance: Vec<Option<String>>,
}Expand description
Result of evaluate(src): a list of query results (numeric or type) plus
any diagnostics emitted while parsing/evaluating. When tracing is enabled
via evaluate_with_options, trace carries the deterministic sequence of
TraceEvent values recorded during evaluation; otherwise it is empty.
When proof production is enabled (via EvaluateOptions::with_proofs or
any per-query (? expr with proof) keyword), proofs[i] carries a
derivation tree for results[i]; bare queries that did not request a
witness get None so the vec stays index-aligned with results.
Mirrors the JavaScript {results, diagnostics, trace, proofs} shape.
Fields§
§results: Vec<RunResult>§diagnostics: Vec<Diagnostic>§trace: Vec<TraceEvent>§proofs: Vec<Option<Node>>§provenance: Vec<Option<String>>Equality-layer provenance (issue #97). For every query that is a
direct equality ((? (L = R))), records which of the four equality
layers fired: assigned-equality, structural-equality,
definitional-equality, or numeric-equality. Non-equality queries
get None. The vec is empty when no equality query was observed,
matching JavaScript’s lazy out.provenance shape.
Trait Implementations§
Source§impl Clone for EvaluateResult
impl Clone for EvaluateResult
Source§fn clone(&self) -> EvaluateResult
fn clone(&self) -> EvaluateResult
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more