pub struct NativeRecursor {
pub carrier: Term,
pub parameters: Vec<(String, Term)>,
pub levels: Vec<String>,
pub ty: Term,
pub body: Term,
}Expand description
A recursor whose motive and constructor terms retain the source container applications.
Fields§
§carrier: TermThe source datatype or a fully applied original container instance, open exactly over
NativeRecursor::parameters.
parameters: Vec<(String, Term)>The canonical uniform parameter telescope the carrier is open over — the telescope the recursor’s type and body abstract first. Empty for an unparameterized nested inductive.
levels: Vec<String>Independent motive universe parameters, in motive order.
ty: TermThe recursor telescope over original carrier and constructor terms.
body: TermThe guarded implementation, checked in the original source context.
Auto Trait Implementations§
impl Freeze for NativeRecursor
impl RefUnwindSafe for NativeRecursor
impl Send for NativeRecursor
impl Sync for NativeRecursor
impl Unpin for NativeRecursor
impl UnsafeUnpin for NativeRecursor
impl UnwindSafe for NativeRecursor
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