We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent ab79872 commit 76ee1c2Copy full SHA for 76ee1c2
[refs]
@@ -1,5 +1,5 @@
1
---
2
-refs/heads/master: 2f8be7dcbb7c5e507051210839e8b58e95d32887
+refs/heads/master: d03c04b6ead225860b21b3540681a2ba58b220df
3
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
4
refs/heads/snap-stage3: 4a81779abd786ff22d71434c6d9a5917ea4cdfff
5
refs/heads/try: 2898dcc5d97da9427ac367542382b6239d9c0bbf
trunk/src/libsyntax/parse/lexer.rs
@@ -4,7 +4,7 @@ import diagnostic;
import ast::{tt_delim,tt_flat};
6
export reader, string_reader, new_string_reader, is_whitespace;
7
-export tt_reader, new_tt_reader;
+export tt_reader, new_tt_reader, dup_tt_reader;
8
export nextch, is_eof, bump, get_str_from;
9
export string_reader_as_reader, tt_reader_as_reader;
10
@@ -49,6 +49,22 @@ fn new_tt_reader(span_diagnostic: diagnostic::span_handler,
49
ret r;
50
}
51
52
+pure fn dup_tt_frame(&&f: tt_frame) -> tt_frame {
53
+ @{readme: f.readme, mut idx: f.idx,
54
+ up: alt f.up {
55
+ tt_frame_up(o_f) {
56
+ tt_frame_up(option::map(o_f, dup_tt_frame))
57
+ }
58
59
60
+}
61
+
62
+pure fn dup_tt_reader(&&r: tt_reader) -> tt_reader {
63
+ @{span_diagnostic: r.span_diagnostic, interner: r.interner,
64
+ mut cur: dup_tt_frame(r.cur),
65
+ mut cur_tok: r.cur_tok, mut cur_chpos: r.cur_chpos}
66
67
68
type string_reader = @{
69
span_diagnostic: diagnostic::span_handler,
70
src: @str,
0 commit comments