Skip to content

Commit c6fb01d

Browse files
committed
Auto merge of #56737 - nnethercote:TokenStream-improvements, r=petrochenkov
`TokenStream` improvements Some `TokenStream` improvements: shrinking `TokenStream` and some other types, and some other code clean-ups.
2 parents a8a2a88 + e80c7dd commit c6fb01d

File tree

12 files changed

+107
-285
lines changed

12 files changed

+107
-285
lines changed

src/libsyntax/attr/mod.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -483,7 +483,7 @@ impl MetaItem {
483483
last_pos = segment.ident.span.hi();
484484
}
485485
idents.push(self.node.tokens(self.span));
486-
TokenStream::concat(idents)
486+
TokenStream::new(idents)
487487
}
488488

489489
fn from_tokens<I>(tokens: &mut iter::Peekable<I>) -> Option<MetaItem>
@@ -539,7 +539,7 @@ impl MetaItemKind {
539539
match *self {
540540
MetaItemKind::Word => TokenStream::empty(),
541541
MetaItemKind::NameValue(ref lit) => {
542-
TokenStream::concat(vec![TokenTree::Token(span, Token::Eq).into(), lit.tokens()])
542+
TokenStream::new(vec![TokenTree::Token(span, Token::Eq).into(), lit.tokens()])
543543
}
544544
MetaItemKind::List(ref list) => {
545545
let mut tokens = Vec::new();
@@ -552,7 +552,7 @@ impl MetaItemKind {
552552
TokenTree::Delimited(
553553
DelimSpan::from_single(span),
554554
token::Paren,
555-
TokenStream::concat(tokens).into(),
555+
TokenStream::new(tokens).into(),
556556
).into()
557557
}
558558
}

src/libsyntax/ext/quote.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -247,7 +247,7 @@ pub mod rt {
247247

248248
let delim_span = DelimSpan::from_single(self.span);
249249
r.push(TokenTree::Delimited(
250-
delim_span, token::Bracket, TokenStream::concat(inner).into()
250+
delim_span, token::Bracket, TokenStream::new(inner).into()
251251
));
252252
r
253253
}

src/libsyntax/ext/tt/transcribe.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -103,12 +103,12 @@ pub fn transcribe(cx: &ExtCtxt,
103103
}
104104
Frame::Delimited { forest, span, .. } => {
105105
if result_stack.is_empty() {
106-
return TokenStream::concat(result);
106+
return TokenStream::new(result);
107107
}
108108
let tree = TokenTree::Delimited(
109109
span,
110110
forest.delim,
111-
TokenStream::concat(result).into(),
111+
TokenStream::new(result).into(),
112112
);
113113
result = result_stack.pop().unwrap();
114114
result.push(tree.into());

src/libsyntax/lib.rs

-6
Original file line numberDiff line numberDiff line change
@@ -145,12 +145,6 @@ pub mod util {
145145
#[cfg(test)]
146146
pub mod parser_testing;
147147
pub mod move_map;
148-
149-
mod rc_slice;
150-
pub use self::rc_slice::RcSlice;
151-
152-
mod rc_vec;
153-
pub use self::rc_vec::RcVec;
154148
}
155149

156150
pub mod json;

src/libsyntax/parse/attr.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,7 @@ impl<'a> Parser<'a> {
170170
token::CloseDelim(_) | token::Eof => self.unexpected()?,
171171
_ => self.parse_token_tree(),
172172
};
173-
TokenStream::concat(vec![eq.into(), tree.into()])
173+
TokenStream::new(vec![eq.into(), tree.into()])
174174
} else {
175175
TokenStream::empty()
176176
};

src/libsyntax/parse/lexer/tokentrees.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -22,22 +22,22 @@ impl<'a> StringReader<'a> {
2222
tts.push(self.parse_token_tree()?);
2323
}
2424

25-
Ok(TokenStream::concat(tts))
25+
Ok(TokenStream::new(tts))
2626
}
2727

2828
// Parse a stream of tokens into a list of `TokenTree`s, up to a `CloseDelim`.
2929
fn parse_token_trees_until_close_delim(&mut self) -> TokenStream {
3030
let mut tts = vec![];
3131
loop {
3232
if let token::CloseDelim(..) = self.token {
33-
return TokenStream::concat(tts);
33+
return TokenStream::new(tts);
3434
}
3535

3636
match self.parse_token_tree() {
3737
Ok(tree) => tts.push(tree),
3838
Err(mut e) => {
3939
e.emit();
40-
return TokenStream::concat(tts);
40+
return TokenStream::new(tts);
4141
}
4242
}
4343
}

src/libsyntax/parse/mod.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -863,13 +863,13 @@ mod tests {
863863
with_globals(|| {
864864
let tts = string_to_stream("fn a (b : i32) { b; }".to_string());
865865

866-
let expected = TokenStream::concat(vec![
866+
let expected = TokenStream::new(vec![
867867
TokenTree::Token(sp(0, 2), token::Ident(Ident::from_str("fn"), false)).into(),
868868
TokenTree::Token(sp(3, 4), token::Ident(Ident::from_str("a"), false)).into(),
869869
TokenTree::Delimited(
870870
DelimSpan::from_pair(sp(5, 6), sp(13, 14)),
871871
token::DelimToken::Paren,
872-
TokenStream::concat(vec![
872+
TokenStream::new(vec![
873873
TokenTree::Token(sp(6, 7),
874874
token::Ident(Ident::from_str("b"), false)).into(),
875875
TokenTree::Token(sp(8, 9), token::Colon).into(),
@@ -880,7 +880,7 @@ mod tests {
880880
TokenTree::Delimited(
881881
DelimSpan::from_pair(sp(15, 16), sp(20, 21)),
882882
token::DelimToken::Brace,
883-
TokenStream::concat(vec![
883+
TokenStream::new(vec![
884884
TokenTree::Token(sp(17, 18),
885885
token::Ident(Ident::from_str("b"), false)).into(),
886886
TokenTree::Token(sp(18, 19), token::Semi).into(),

src/libsyntax/parse/parser.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -2939,7 +2939,7 @@ impl<'a> Parser<'a> {
29392939
_ => result.push(self.parse_token_tree().into()),
29402940
}
29412941
}
2942-
TokenStream::concat(result)
2942+
TokenStream::new(result)
29432943
}
29442944

29452945
/// Parse a prefix-unary-operator expr
@@ -4635,7 +4635,7 @@ impl<'a> Parser<'a> {
46354635
self.unexpected()?;
46364636
unreachable!()
46374637
};
4638-
TokenStream::concat(vec![
4638+
TokenStream::new(vec![
46394639
args.into(),
46404640
TokenTree::Token(token_lo.to(self.prev_span), token::FatArrow).into(),
46414641
body.into(),

0 commit comments

Comments
 (0)