pub enum ProofNode {
Value {
value: LiteralValue,
source: ValueSource,
source_location: Option<Source>,
},
RuleReference {
rule_path: RulePath,
result: OperationResult,
source_location: Option<Source>,
expansion: Box<ProofNode>,
},
Computation {
kind: ComputationKind,
original_expression: String,
expression: String,
result: LiteralValue,
source_location: Option<Source>,
operands: Vec<ProofNode>,
},
Branches {
matched: Box<Branch>,
non_matched: Vec<NonMatchedBranch>,
source_location: Option<Source>,
},
Condition {
original_expression: String,
expression: String,
result: bool,
source_location: Option<Source>,
operands: Vec<ProofNode>,
},
Veto {
message: Option<String>,
source_location: Option<Source>,
},
}Variants§
Value
RuleReference
Fields
§
result: OperationResultComputation
Branches
Condition
Fields
Veto
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ProofNode
impl RefUnwindSafe for ProofNode
impl Send for ProofNode
impl Sync for ProofNode
impl Unpin for ProofNode
impl UnwindSafe for ProofNode
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more