pub enum RecordBody {
Update {
base: ExprErasedV1,
with_kw: KwWith,
fields: Vec<RecordField>,
},
Fields(Vec<RecordField>),
}Expand description
(| … |)’s content: either a plain field list, or a record
update base with l = e, … (parser_v1.mly:942-957). Update is
tried first (backtracks cleanly to Fields, same rationale as
crate::cst::ast::RecordBody).
Variants§
Trait Implementations§
Source§impl Clone for RecordBody
impl Clone for RecordBody
Source§fn clone(&self) -> RecordBody
fn clone(&self) -> RecordBody
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 RecordBody
impl Debug for RecordBody
Source§impl<__SyanMacro_Atom> Parse<__SyanMacro_Atom> for RecordBodywhere
__SyanMacro_Atom: Spanned + Clone,
ExprErasedV1: Parse<__SyanMacro_Atom>,
KwWith: Parse<__SyanMacro_Atom>,
Vec<RecordField>: Parse<__SyanMacro_Atom>,
impl<__SyanMacro_Atom> Parse<__SyanMacro_Atom> for RecordBodywhere
__SyanMacro_Atom: Spanned + Clone,
ExprErasedV1: Parse<__SyanMacro_Atom>,
KwWith: Parse<__SyanMacro_Atom>,
Vec<RecordField>: 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 RecordBody
impl PartialEq for RecordBody
impl StructuralPartialEq for RecordBody
Source§impl<__SyanMacro_Atom> Unparse<__SyanMacro_Atom> for RecordBodywhere
ExprErasedV1: Unparse<__SyanMacro_Atom>,
KwWith: Unparse<__SyanMacro_Atom>,
Vec<RecordField>: Unparse<__SyanMacro_Atom>,
impl<__SyanMacro_Atom> Unparse<__SyanMacro_Atom> for RecordBodywhere
ExprErasedV1: Unparse<__SyanMacro_Atom>,
KwWith: Unparse<__SyanMacro_Atom>,
Vec<RecordField>: Unparse<__SyanMacro_Atom>,
Auto Trait Implementations§
impl Freeze for RecordBody
impl RefUnwindSafe for RecordBody
impl Send for RecordBody
impl Sync for RecordBody
impl Unpin for RecordBody
impl UnsafeUnpin for RecordBody
impl UnwindSafe for RecordBody
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