diff options
| author | Brian Anderson <banderson@mozilla.com> | 2012-04-15 03:57:24 -0700 |
|---|---|---|
| committer | Brian Anderson <banderson@mozilla.com> | 2012-04-15 03:57:24 -0700 |
| commit | 2319c2d1ba81cf85aaadd809afc1367f7b217757 (patch) | |
| tree | 8f91447e01c3e5305731932d027bc9a34c78a722 /src/librustsyntax/parse | |
| parent | aa8dc0175df1a5879faf6e573c35d8f038f46107 (diff) | |
| download | rust-2319c2d1ba81cf85aaadd809afc1367f7b217757.tar.gz rust-2319c2d1ba81cf85aaadd809afc1367f7b217757.zip | |
syntax: lexer doesn't need a codemap
Diffstat (limited to 'src/librustsyntax/parse')
| -rw-r--r-- | src/librustsyntax/parse/comments.rs | 5 | ||||
| -rw-r--r-- | src/librustsyntax/parse/lexer.rs | 7 | ||||
| -rw-r--r-- | src/librustsyntax/parse/parser.rs | 4 |
3 files changed, 6 insertions, 10 deletions
diff --git a/src/librustsyntax/parse/comments.rs b/src/librustsyntax/parse/comments.rs index a21c8183c53..2b428bb1170 100644 --- a/src/librustsyntax/parse/comments.rs +++ b/src/librustsyntax/parse/comments.rs @@ -155,14 +155,13 @@ fn is_lit(t: token::token) -> bool { type lit = {lit: str, pos: uint}; -fn gather_comments_and_literals(cm: codemap::codemap, - span_diagnostic: diagnostic::span_handler, +fn gather_comments_and_literals(span_diagnostic: diagnostic::span_handler, path: str, srdr: io::reader) -> {cmnts: [cmnt], lits: [lit]} { let src = @str::from_bytes(srdr.read_whole_stream()); let itr = @interner::mk::<str>(str::hash, str::eq); - let rdr = new_reader(cm, span_diagnostic, + let rdr = new_reader(span_diagnostic, codemap::new_filemap(path, src, 0u, 0u), itr); let mut comments: [cmnt] = []; let mut literals: [lit] = []; diff --git a/src/librustsyntax/parse/lexer.rs b/src/librustsyntax/parse/lexer.rs index e935ecd9b98..0414e11ab31 100644 --- a/src/librustsyntax/parse/lexer.rs +++ b/src/librustsyntax/parse/lexer.rs @@ -5,7 +5,6 @@ import diagnostic; export reader, new_reader, next_token, is_whitespace; type reader = @{ - cm: codemap::codemap, span_diagnostic: diagnostic::span_handler, src: @str, len: uint, @@ -57,12 +56,10 @@ impl reader for reader { } } -fn new_reader(cm: codemap::codemap, - span_diagnostic: diagnostic::span_handler, +fn new_reader(span_diagnostic: diagnostic::span_handler, filemap: codemap::filemap, itr: @interner::interner<str>) -> reader { - let r = @{cm: cm, - span_diagnostic: span_diagnostic, + let r = @{span_diagnostic: span_diagnostic, src: filemap.src, len: str::len(*filemap.src), mut col: 0u, mut pos: 0u, mut curr: -1 as char, mut chpos: filemap.start_pos.ch, mut strs: [], diff --git a/src/librustsyntax/parse/parser.rs b/src/librustsyntax/parse/parser.rs index 031b54af3d6..e017f42a712 100644 --- a/src/librustsyntax/parse/parser.rs +++ b/src/librustsyntax/parse/parser.rs @@ -104,7 +104,7 @@ fn new_parser_from_file(sess: parse_sess, cfg: ast::crate_cfg, path: str, sess.chpos, sess.byte_pos); sess.cm.files += [filemap]; let itr = @interner::mk(str::hash, str::eq); - let rdr = lexer::new_reader(sess.cm, sess.span_diagnostic, filemap, itr); + let rdr = lexer::new_reader(sess.span_diagnostic, filemap, itr); ret new_parser(sess, cfg, rdr, ftype); } @@ -116,7 +116,7 @@ fn new_parser_from_source_str(sess: parse_sess, cfg: ast::crate_cfg, (name, ss, source, sess.chpos, sess.byte_pos); sess.cm.files += [filemap]; let itr = @interner::mk(str::hash, str::eq); - let rdr = lexer::new_reader(sess.cm, sess.span_diagnostic, + let rdr = lexer::new_reader(sess.span_diagnostic, filemap, itr); ret new_parser(sess, cfg, rdr, ftype); } |
