refactor: use by-ref TokenTree iterator to avoid a few clones
This commit is contained in:
parent
5b24e12785
commit
05c5df5682
3 changed files with 6 additions and 6 deletions
|
@ -19,7 +19,7 @@ pub fn expand_concat_idents<'cx>(
|
||||||
}
|
}
|
||||||
|
|
||||||
let mut res_str = String::new();
|
let mut res_str = String::new();
|
||||||
for (i, e) in tts.into_trees().enumerate() {
|
for (i, e) in tts.trees().enumerate() {
|
||||||
if i & 1 == 1 {
|
if i & 1 == 1 {
|
||||||
match e {
|
match e {
|
||||||
TokenTree::Token(Token { kind: token::Comma, .. }, _) => {}
|
TokenTree::Token(Token { kind: token::Comma, .. }, _) => {}
|
||||||
|
|
|
@ -8,7 +8,7 @@ pub fn expand_trace_macros(
|
||||||
sp: Span,
|
sp: Span,
|
||||||
tt: TokenStream,
|
tt: TokenStream,
|
||||||
) -> Box<dyn base::MacResult + 'static> {
|
) -> Box<dyn base::MacResult + 'static> {
|
||||||
let mut cursor = tt.into_trees();
|
let mut cursor = tt.trees();
|
||||||
let mut err = false;
|
let mut err = false;
|
||||||
let value = match &cursor.next() {
|
let value = match &cursor.next() {
|
||||||
Some(TokenTree::Token(token, _)) if token.is_keyword(kw::True) => true,
|
Some(TokenTree::Token(token, _)) if token.is_keyword(kw::True) => true,
|
||||||
|
|
|
@ -1882,8 +1882,8 @@ declare_lint_pass!(
|
||||||
struct UnderMacro(bool);
|
struct UnderMacro(bool);
|
||||||
|
|
||||||
impl KeywordIdents {
|
impl KeywordIdents {
|
||||||
fn check_tokens(&mut self, cx: &EarlyContext<'_>, tokens: TokenStream) {
|
fn check_tokens(&mut self, cx: &EarlyContext<'_>, tokens: &TokenStream) {
|
||||||
for tt in tokens.into_trees() {
|
for tt in tokens.trees() {
|
||||||
match tt {
|
match tt {
|
||||||
// Only report non-raw idents.
|
// Only report non-raw idents.
|
||||||
TokenTree::Token(token, _) => {
|
TokenTree::Token(token, _) => {
|
||||||
|
@ -1944,10 +1944,10 @@ impl KeywordIdents {
|
||||||
|
|
||||||
impl EarlyLintPass for KeywordIdents {
|
impl EarlyLintPass for KeywordIdents {
|
||||||
fn check_mac_def(&mut self, cx: &EarlyContext<'_>, mac_def: &ast::MacroDef) {
|
fn check_mac_def(&mut self, cx: &EarlyContext<'_>, mac_def: &ast::MacroDef) {
|
||||||
self.check_tokens(cx, mac_def.body.tokens.clone());
|
self.check_tokens(cx, &mac_def.body.tokens);
|
||||||
}
|
}
|
||||||
fn check_mac(&mut self, cx: &EarlyContext<'_>, mac: &ast::MacCall) {
|
fn check_mac(&mut self, cx: &EarlyContext<'_>, mac: &ast::MacCall) {
|
||||||
self.check_tokens(cx, mac.args.tokens.clone());
|
self.check_tokens(cx, &mac.args.tokens);
|
||||||
}
|
}
|
||||||
fn check_ident(&mut self, cx: &EarlyContext<'_>, ident: Ident) {
|
fn check_ident(&mut self, cx: &EarlyContext<'_>, ident: Ident) {
|
||||||
self.check_ident_token(cx, UnderMacro(false), ident);
|
self.check_ident_token(cx, UnderMacro(false), ident);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue