pub struct RuleSemantics {
pub annotation_infos: Vec<AnnotationTypeInfo>,
pub type_var_to_type: HashMap<u32, Type>,
pub lhs: Expr,
pub rhs: Expr,
pub quantified_vars: Vec<BoundVar>,
pub free_vars: Vec<BoundVar>,
pub term_input_bvs: Vec<String>,
pub term_args: Vec<String>,
pub lhs_assumptions: Vec<Expr>,
pub rhs_assumptions: Vec<Expr>,
pub rhs_assertions: Vec<Expr>,
pub tyctx: TypeContext,
}
Fields§
§annotation_infos: Vec<AnnotationTypeInfo>
§type_var_to_type: HashMap<u32, Type>
§lhs: Expr
§rhs: Expr
§quantified_vars: Vec<BoundVar>
§free_vars: Vec<BoundVar>
§term_input_bvs: Vec<String>
§term_args: Vec<String>
§lhs_assumptions: Vec<Expr>
§rhs_assumptions: Vec<Expr>
§rhs_assertions: Vec<Expr>
§tyctx: TypeContext
Trait Implementations§
Auto Trait Implementations§
impl Freeze for RuleSemantics
impl RefUnwindSafe for RuleSemantics
impl Send for RuleSemantics
impl Sync for RuleSemantics
impl Unpin for RuleSemantics
impl UnwindSafe for RuleSemantics
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> 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