mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-24 15:54:15 +00:00
Rollup merge of #97005 - est31:master, r=petrochenkov
Two small improvements of rustc_expand I found them while doing #96150 r? ``@petrochenkov``
This commit is contained in:
commit
e6fc0c4b43
@ -76,6 +76,7 @@ crate use ParseResult::*;
|
||||
use crate::mbe::{KleeneOp, TokenTree};
|
||||
|
||||
use rustc_ast::token::{self, DocComment, Nonterminal, NonterminalKind, Token};
|
||||
use rustc_lint_defs::pluralize;
|
||||
use rustc_parse::parser::{NtOrTt, Parser};
|
||||
use rustc_span::symbol::MacroRulesNormalizedIdent;
|
||||
use rustc_span::Span;
|
||||
@ -668,8 +669,7 @@ impl TtParser {
|
||||
self.macro_name,
|
||||
match self.next_mps.len() {
|
||||
0 => format!("built-in NTs {}.", nts),
|
||||
1 => format!("built-in NTs {} or 1 other option.", nts),
|
||||
n => format!("built-in NTs {} or {} other options.", nts, n),
|
||||
n => format!("built-in NTs {} or {n} other option{s}.", nts, s = pluralize!(n)),
|
||||
}
|
||||
),
|
||||
)
|
||||
|
@ -175,7 +175,7 @@ impl TTMacroExpander for MacroRulesMacroExpander {
|
||||
if !self.valid {
|
||||
return DummyResult::any(sp);
|
||||
}
|
||||
generic_extension(
|
||||
expand_macro(
|
||||
cx,
|
||||
sp,
|
||||
self.span,
|
||||
@ -202,8 +202,9 @@ fn trace_macros_note(cx_expansions: &mut FxHashMap<Span, Vec<String>>, sp: Span,
|
||||
cx_expansions.entry(sp).or_default().push(message);
|
||||
}
|
||||
|
||||
/// Given `lhses` and `rhses`, this is the new macro we create
|
||||
fn generic_extension<'cx, 'tt>(
|
||||
/// Expands the rules based macro defined by `lhses` and `rhses` for a given
|
||||
/// input `arg`.
|
||||
fn expand_macro<'cx, 'tt>(
|
||||
cx: &'cx mut ExtCtxt<'_>,
|
||||
sp: Span,
|
||||
def_span: Span,
|
||||
|
Loading…
Reference in New Issue
Block a user