pub struct TypeBindSingleV1 {
pub name: VarTok,
pub tyvars: Vec<TypeVarTok>,
pub eq: DefEqTok,
pub body: TypeBodyV1,
}Expand description
One bind_type_single (parser_v1.mly:539-544). 0.1 delta from
crate::cst::TypeDecl: the type parameters come AFTER the name
(type t 'a = …, tyident LOWER; tyvars list(TYPEVAR)), where 0.0.6
writes them before (type 'a t = …, cst.rs:401-408) — the lowering
reorders the fields. No constraint suffix exists in 0.1’s production.
Fields§
§name: VarTok§tyvars: Vec<TypeVarTok>§eq: DefEqTok§body: TypeBodyV1Trait Implementations§
Source§impl Clone for TypeBindSingleV1
impl Clone for TypeBindSingleV1
Source§fn clone(&self) -> TypeBindSingleV1
fn clone(&self) -> TypeBindSingleV1
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 TypeBindSingleV1
impl Debug for TypeBindSingleV1
Source§impl<__SyanMacro_Atom> Parse<__SyanMacro_Atom> for TypeBindSingleV1
impl<__SyanMacro_Atom> Parse<__SyanMacro_Atom> for TypeBindSingleV1
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 TypeBindSingleV1
impl PartialEq for TypeBindSingleV1
impl StructuralPartialEq for TypeBindSingleV1
Source§impl<__SyanMacro_Atom> Unparse<__SyanMacro_Atom> for TypeBindSingleV1where
VarTok: Unparse<__SyanMacro_Atom>,
Vec<TypeVarTok>: Unparse<__SyanMacro_Atom>,
DefEqTok: Unparse<__SyanMacro_Atom>,
TypeBodyV1: Unparse<__SyanMacro_Atom>,
impl<__SyanMacro_Atom> Unparse<__SyanMacro_Atom> for TypeBindSingleV1where
VarTok: Unparse<__SyanMacro_Atom>,
Vec<TypeVarTok>: Unparse<__SyanMacro_Atom>,
DefEqTok: Unparse<__SyanMacro_Atom>,
TypeBodyV1: Unparse<__SyanMacro_Atom>,
Auto Trait Implementations§
impl Freeze for TypeBindSingleV1
impl RefUnwindSafe for TypeBindSingleV1
impl Send for TypeBindSingleV1
impl Sync for TypeBindSingleV1
impl Unpin for TypeBindSingleV1
impl UnsafeUnpin for TypeBindSingleV1
impl UnwindSafe for TypeBindSingleV1
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