diff options
| author | Brian Anderson <banderson@mozilla.com> | 2012-11-18 17:56:50 -0800 |
|---|---|---|
| committer | Brian Anderson <banderson@mozilla.com> | 2012-11-26 18:13:54 -0800 |
| commit | be6613e048c889a0aeaff056131c2406259f1fb4 (patch) | |
| tree | 1067f383db3a97a6b85e11637ef23b0a0a6a3549 /src/libsyntax/parse.rs | |
| parent | 81a79603c0c9c2425d0a8475d29b4ef77fae8607 (diff) | |
| download | rust-be6613e048c889a0aeaff056131c2406259f1fb4.tar.gz rust-be6613e048c889a0aeaff056131c2406259f1fb4.zip | |
Remove the crate language
Diffstat (limited to 'src/libsyntax/parse.rs')
| -rw-r--r-- | src/libsyntax/parse.rs | 45 |
1 files changed, 11 insertions, 34 deletions
diff --git a/src/libsyntax/parse.rs b/src/libsyntax/parse.rs index d1388bedad9..ccca4139c9b 100644 --- a/src/libsyntax/parse.rs +++ b/src/libsyntax/parse.rs @@ -1,5 +1,16 @@ //! The main parser interface +#[legacy_exports]; + +export parser; +export common; +export lexer; +export token; +export comments; +export prec; +export classify; +export attr; + export parse_sess; export new_parse_sess, new_parse_sess_special_handler; export next_node_id; @@ -51,40 +62,6 @@ fn new_parse_sess_special_handler(sh: span_handler, cm: @codemap::CodeMap) fn parse_crate_from_file(input: &Path, cfg: ast::crate_cfg, sess: parse_sess) -> @ast::crate { - if input.filetype() == Some(~".rc") { - parse_crate_from_crate_file(input, cfg, sess) - } else if input.filetype() == Some(~".rs") { - parse_crate_from_source_file(input, cfg, sess) - } else { - sess.span_diagnostic.handler().fatal(~"unknown input file type: " + - input.to_str()) - } -} - -fn parse_crate_from_crate_file(input: &Path, cfg: ast::crate_cfg, - sess: parse_sess) -> @ast::crate { - let p = new_crate_parser_from_file(sess, cfg, input); - let lo = p.span.lo; - let prefix = input.dir_path(); - let leading_attrs = p.parse_inner_attrs_and_next(); - let { inner: crate_attrs, next: first_cdir_attr } = leading_attrs; - let cdirs = p.parse_crate_directives(token::EOF, first_cdir_attr); - let cx = @{sess: sess, cfg: /* FIXME (#2543) */ copy p.cfg}; - let companionmod = input.filestem().map(|s| Path(*s)); - let (m, attrs) = eval::eval_crate_directives_to_mod( - cx, cdirs, &prefix, &companionmod); - let mut hi = p.span.hi; - p.expect(token::EOF); - p.abort_if_errors(); - return @ast_util::respan(ast_util::mk_sp(lo, hi), - {directives: cdirs, - module: m, - attrs: vec::append(crate_attrs, attrs), - config: /* FIXME (#2543) */ copy p.cfg}); -} - -fn parse_crate_from_source_file(input: &Path, cfg: ast::crate_cfg, - sess: parse_sess) -> @ast::crate { let p = new_crate_parser_from_file(sess, cfg, input); let r = p.parse_crate_mod(cfg); return r; |
