pub enum LfscDecl {
DeclareSort {
name: String,
arity: u32,
},
DeclareConst {
name: String,
sort: LfscSort,
},
Define {
name: String,
sort: LfscSort,
value: LfscTerm,
},
DeclareRule {
name: String,
params: Vec<(String, LfscSort)>,
conclusion: LfscTerm,
},
SideCondition {
name: String,
params: Vec<(String, LfscSort)>,
return_sort: LfscSort,
body: String,
},
Check(LfscTerm),
}Expand description
An LFSC declaration
Variants§
DeclareSort
Declare a new sort
DeclareConst
Declare a new constant/function
Define
Define a term
DeclareRule
Declare a proof rule
SideCondition
Side condition program
Check(LfscTerm)
Proof step (check)
Trait Implementations§
Auto Trait Implementations§
impl Freeze for LfscDecl
impl RefUnwindSafe for LfscDecl
impl Send for LfscDecl
impl Sync for LfscDecl
impl Unpin for LfscDecl
impl UnsafeUnpin for LfscDecl
impl UnwindSafe for LfscDecl
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