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
MatchedNonterminals 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 MatchedNonterminals, 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::TTSeqs 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