Skip to content

Commit 76ee1c2

Browse files
committed
---
yaml --- r: 13515 b: refs/heads/master c: d03c04b h: refs/heads/master i: 13513: 0cc86c1 13511: 55a4083 v: v3
1 parent ab79872 commit 76ee1c2

File tree

2 files changed

+18
-2
lines changed

2 files changed

+18
-2
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
refs/heads/master: 2f8be7dcbb7c5e507051210839e8b58e95d32887
2+
refs/heads/master: d03c04b6ead225860b21b3540681a2ba58b220df
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: 4a81779abd786ff22d71434c6d9a5917ea4cdfff
55
refs/heads/try: 2898dcc5d97da9427ac367542382b6239d9c0bbf

trunk/src/libsyntax/parse/lexer.rs

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import diagnostic;
44
import ast::{tt_delim,tt_flat};
55

66
export reader, string_reader, new_string_reader, is_whitespace;
7-
export tt_reader, new_tt_reader;
7+
export tt_reader, new_tt_reader, dup_tt_reader;
88
export nextch, is_eof, bump, get_str_from;
99
export string_reader_as_reader, tt_reader_as_reader;
1010

@@ -49,6 +49,22 @@ fn new_tt_reader(span_diagnostic: diagnostic::span_handler,
4949
ret r;
5050
}
5151

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+
5268
type string_reader = @{
5369
span_diagnostic: diagnostic::span_handler,
5470
src: @str,

0 commit comments

Comments
 (0)