pub struct PatBotErased(pub Box<PatBot>);Expand description
An ast::PatBot behind a stream-erasing parse (see above). Kept
separate from PatErased because a constructor pattern’s argument
is a patbot, not a full patas (Some x as y binds y to the
whole value, not to x).
Tuple Fields§
§0: Box<PatBot>Trait Implementations§
Source§impl Clone for PatBotErased
impl Clone for PatBotErased
Source§fn clone(&self) -> PatBotErased
fn clone(&self) -> PatBotErased
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 PatBotErased
impl Debug for PatBotErased
Source§impl Deref for PatBotErased
impl Deref for PatBotErased
impl Deref for PatBotErased
Source§impl Parse<WithSpan<Token, Span>> for PatBotErased
impl Parse<WithSpan<Token, Span>> for PatBotErased
Source§type Error = ParseError<Span>
type Error = ParseError<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<S: ParseStream<Atom = Atom>>(
stream: &mut S,
) -> Result<Self, Self::Error>
fn parse_stream<S: ParseStream<Atom = Atom>>( stream: &mut S, ) -> Result<Self, Self::Error>
Parse from a reborrowable stream. Read more
Source§impl PartialEq for PatBotErased
impl PartialEq for PatBotErased
impl StructuralPartialEq for PatBotErased
Auto Trait Implementations§
impl Freeze for PatBotErased
impl RefUnwindSafe for PatBotErased
impl Send for PatBotErased
impl Sync for PatBotErased
impl Unpin for PatBotErased
impl UnsafeUnpin for PatBotErased
impl UnwindSafe for PatBotErased
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