We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
SmallVector
macro_parser::parse
1 parent 1e5dab1 commit 0a16a11Copy full SHA for 0a16a11
src/libsyntax/ext/tt/macro_parser.rs
@@ -92,6 +92,7 @@ use parse::token;
92
use print::pprust;
93
use ptr::P;
94
use tokenstream::{self, TokenTree};
95
+use util::small_vector::SmallVector;
96
97
use std::mem;
98
use std::rc::Rc;
@@ -284,12 +285,9 @@ pub fn parse(sess: &ParseSess,
284
285
mut rdr: TtReader,
286
ms: &[TokenTree])
287
-> NamedParseResult {
- let mut cur_eis = Vec::new();
288
- cur_eis.push(initial_matcher_pos(Rc::new(ms.iter()
289
- .cloned()
290
- .collect()),
291
- None,
292
- rdr.peek().sp.lo));
+ let mut cur_eis = SmallVector::one(initial_matcher_pos(Rc::new(ms.to_owned()),
+ None,
+ rdr.peek().sp.lo));
293
294
loop {
295
let mut bb_eis = Vec::new(); // black-box parsed by parser.rs
0 commit comments