pub struct MacroDefinition {
pub quantifier: TermId,
pub func_name: Spur,
pub bound_vars: SmallVec<[(Spur, SortId); 4]>,
pub body: TermId,
}Expand description
A macro definition extracted from a quantifier
Fields§
§quantifier: TermIdOriginal quantifier
func_name: SpurFunction being defined
bound_vars: SmallVec<[(Spur, SortId); 4]>Bound variables
body: TermIdDefinition body
Trait Implementations§
Source§impl Clone for MacroDefinition
impl Clone for MacroDefinition
Source§fn clone(&self) -> MacroDefinition
fn clone(&self) -> MacroDefinition
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for MacroDefinition
impl RefUnwindSafe for MacroDefinition
impl Send for MacroDefinition
impl Sync for MacroDefinition
impl Unpin for MacroDefinition
impl UnwindSafe for MacroDefinition
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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