Enum syntax::ext::tt::macro_parser::NamedMatch
[−]
[src]
pub enum NamedMatch { MatchedSeq(Rc<Vec<NamedMatch>>, Span), MatchedNonterminal(Rc<Nonterminal>), }
NamedMatch
is a pattern-match result for a single token::MATCH_NONTERMINAL
:
so it is associated with a single ident in a parse, and all
MatchedNonterminal
s in the NamedMatch
have the same nonterminal type
(expr, item, etc). Each leaf in a single NamedMatch
corresponds to a
single token::MATCH_NONTERMINAL
in the TokenTree
that produced it.
The in-memory structure of a particular NamedMatch
represents the match
that occurred when a particular subset of a matcher was applied to a
particular token tree.
The width of each MatchedSeq
in the NamedMatch
, and the identity of
the MatchedNonterminal
s, will depend on the token tree it was applied
to: each MatchedSeq
corresponds to a single TTSeq
in the originating
token tree. The depth of the NamedMatch
structure will therefore depend
only on the nesting depth of ast::TTSeq
s in the originating
token tree it was derived from.
Variants
MatchedSeq(Rc<Vec<NamedMatch>>, Span)
MatchedNonterminal(Rc<Nonterminal>)
Trait Implementations
impl Debug for NamedMatch
[src]
fn fmt(&self, __arg_0: &mut Formatter) -> Result
[src]
Formats the value using the given formatter. Read more
impl Clone for NamedMatch
[src]
fn clone(&self) -> NamedMatch
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more