Enum rustc_ast::token::Nonterminal
source · pub enum Nonterminal {
NtItem(P<Item>),
NtBlock(P<Block>),
NtStmt(P<Stmt>),
NtPat(P<Pat>),
NtExpr(P<Expr>),
NtTy(P<Ty>),
NtIdent(Ident, bool),
NtLifetime(Ident),
NtLiteral(P<Expr>),
NtMeta(P<AttrItem>),
NtPath(P<Path>),
NtVis(P<Visibility>),
}
Expand description
For interpolation during macro expansion.
Variants
NtItem(P<Item>)
NtBlock(P<Block>)
NtStmt(P<Stmt>)
NtPat(P<Pat>)
NtExpr(P<Expr>)
NtTy(P<Ty>)
NtIdent(Ident, bool)
NtLifetime(Ident)
NtLiteral(P<Expr>)
NtMeta(P<AttrItem>)
Stuff inside brackets for attributes
NtPath(P<Path>)
NtVis(P<Visibility>)
Implementations
sourceimpl Nonterminal
impl Nonterminal
Trait Implementations
sourceimpl Clone for Nonterminal
impl Clone for Nonterminal
sourcefn clone(&self) -> Nonterminal
fn clone(&self) -> Nonterminal
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresourceimpl Debug for Nonterminal
impl Debug for Nonterminal
sourceimpl HasTokens for Nonterminal
impl HasTokens for Nonterminal
fn tokens(&self) -> Option<&LazyAttrTokenStream>
fn tokens_mut(&mut self) -> Option<&mut Option<LazyAttrTokenStream>>
sourceimpl<CTX> HashStable<CTX> for Nonterminalwhere
CTX: HashStableContext,
impl<CTX> HashStable<CTX> for Nonterminalwhere
CTX: HashStableContext,
fn hash_stable(&self, _hcx: &mut CTX, _hasher: &mut StableHasher)
sourceimpl PartialEq<Nonterminal> for Nonterminal
impl PartialEq<Nonterminal> for Nonterminal
Auto Trait Implementations
impl !RefUnwindSafe for Nonterminal
impl !Send for Nonterminal
impl !Sync for Nonterminal
impl Unpin for Nonterminal
impl !UnwindSafe for Nonterminal
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Layout
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.
Size: 16 bytes
Size for each variant:
NtItem
: 15 bytesNtBlock
: 15 bytesNtStmt
: 15 bytesNtPat
: 15 bytesNtExpr
: 15 bytesNtTy
: 15 bytesNtIdent
: 15 bytesNtLifetime
: 15 bytesNtLiteral
: 15 bytesNtMeta
: 15 bytesNtPath
: 15 bytesNtVis
: 15 bytes