pub struct RecordKind {
pub rec: RecordGroup<()>,
pub fields: Vec<RecordKindField>,
}Expand description
kxtop: (| l1 : ty1; … |), a record-kind bound — “the constrained
type variable must be a record containing at least these labels”
(upstream MRecordKind; lowers to this port’s Kind::Record row
obligation, presence-only — see typecheck.rs).
Fields§
§rec: RecordGroup<()>§fields: Vec<RecordKindField>Trait Implementations§
Source§impl Clone for RecordKind
impl Clone for RecordKind
Source§fn clone(&self) -> RecordKind
fn clone(&self) -> RecordKind
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RecordKind
impl Debug for RecordKind
Source§impl<__SyanMacro_Atom> Parse<__SyanMacro_Atom> for RecordKindwhere
__SyanMacro_Atom: Spanned + Clone,
RecordGroup<()>: GroupShape<__SyanMacro_Atom>,
__SyanSubstructOfOwn_rec_RecordKind_3378190807597211705: Parse<__SyanMacro_Atom>,
impl<__SyanMacro_Atom> Parse<__SyanMacro_Atom> for RecordKindwhere
__SyanMacro_Atom: Spanned + Clone,
RecordGroup<()>: GroupShape<__SyanMacro_Atom>,
__SyanSubstructOfOwn_rec_RecordKind_3378190807597211705: Parse<__SyanMacro_Atom>,
Source§type Error = ParseError<<__SyanMacro_Atom as Spanned>::Span>
type Error = ParseError<<__SyanMacro_Atom as Spanned>::Span>
Every error must be convertible to the universal one, so a field’s failure can become the
enclosing type’s failure with no per-field where-predicate. Stating it HERE rather than at
each derived impl is what keeps it out of the obligation graph: a per-field
<FieldTy as Parse<Atom>>::Error: Into<…> predicate re-creates a projection cycle on a
recursive field (E0275), which decycle’s bound-peeling does not break.Source§fn parse_stream<__SyanMacro_S: ParseStream<Atom = __SyanMacro_Atom>>(
__syan_stream: &mut __SyanMacro_S,
) -> Result<Self, Self::Error>
fn parse_stream<__SyanMacro_S: ParseStream<Atom = __SyanMacro_Atom>>( __syan_stream: &mut __SyanMacro_S, ) -> Result<Self, Self::Error>
Parse from a reborrowable stream. Read more
Source§impl PartialEq for RecordKind
impl PartialEq for RecordKind
impl StructuralPartialEq for RecordKind
Source§impl<__SyanMacro_Atom> Unparse<__SyanMacro_Atom> for RecordKindwhere
RecordGroup<()>: GroupUnparse<__SyanMacro_Atom>,
for<'syan_substruct_ref> __SyanSubstructOfRef_rec_RecordKind_17770240377376662608<'syan_substruct_ref>: Unparse<__SyanMacro_Atom>,
impl<__SyanMacro_Atom> Unparse<__SyanMacro_Atom> for RecordKindwhere
RecordGroup<()>: GroupUnparse<__SyanMacro_Atom>,
for<'syan_substruct_ref> __SyanSubstructOfRef_rec_RecordKind_17770240377376662608<'syan_substruct_ref>: Unparse<__SyanMacro_Atom>,
Auto Trait Implementations§
impl Freeze for RecordKind
impl RefUnwindSafe for RecordKind
impl Send for RecordKind
impl Sync for RecordKind
impl Unpin for RecordKind
impl UnsafeUnpin for RecordKind
impl UnwindSafe for RecordKind
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