parse: nix unused root_module_name.

This commit is contained in:
Mazdak Farrokhzad 2020-03-21 22:51:03 +01:00
parent 38114ff16e
commit d18ed205c9
5 changed files with 7 additions and 22 deletions

View File

@ -110,7 +110,7 @@ pub fn expand_include<'cx>(
return DummyResult::any(sp); return DummyResult::any(sp);
} }
}; };
let p = new_sub_parser_from_file(cx.parse_sess(), &file, None, sp); let p = new_sub_parser_from_file(cx.parse_sess(), &file, sp);
// If in the included file we have e.g., `mod bar;`, // If in the included file we have e.g., `mod bar;`,
// then the path of `bar.rs` should be relative to the directory of `file`. // then the path of `bar.rs` should be relative to the directory of `file`.

View File

@ -259,8 +259,6 @@ fn generic_extension<'cx>(
} }
let mut p = Parser::new(sess, tts, false, None); let mut p = Parser::new(sess, tts, false, None);
p.root_module_name =
cx.current_expansion.module.mod_path.last().map(|id| id.to_string());
p.last_type_ascription = cx.current_expansion.prior_type_ascription; p.last_type_ascription = cx.current_expansion.prior_type_ascription;
// Let the context choose how to interpret the result. // Let the context choose how to interpret the result.

View File

@ -59,9 +59,8 @@ crate fn parse_external_mod(
*pop_mod_stack = true; // We have pushed, so notify caller. *pop_mod_stack = true; // We have pushed, so notify caller.
drop(included_mod_stack); drop(included_mod_stack);
// Actually parse the external file as amodule. // Actually parse the external file as a module.
let mut p0 = new_sub_parser_from_file(sess, &mp.path, Some(id.to_string()), span); let mut module = new_sub_parser_from_file(sess, &mp.path, span).parse_mod(&token::Eof)?;
let mut module = p0.parse_mod(&token::Eof)?;
module.0.inline = false; module.0.inline = false;
module module
}; };

View File

@ -120,18 +120,11 @@ pub fn maybe_new_parser_from_file<'a>(
maybe_source_file_to_parser(sess, file) maybe_source_file_to_parser(sess, file)
} }
/// Given a session, a crate config, a path, and a span, add /// Given a session, a path, and a span,
/// the file at the given path to the `source_map`, and returns a parser. /// add the file at the given path to the `source_map`, and returns a parser.
/// On an error, uses the given span as the source of the problem. /// On an error, uses the given span as the source of the problem.
pub fn new_sub_parser_from_file<'a>( pub fn new_sub_parser_from_file<'a>(sess: &'a ParseSess, path: &Path, sp: Span) -> Parser<'a> {
sess: &'a ParseSess, source_file_to_parser(sess, file_to_source_file(sess, path, Some(sp)))
path: &Path,
module_name: Option<String>,
sp: Span,
) -> Parser<'a> {
let mut p = source_file_to_parser(sess, file_to_source_file(sess, path, Some(sp)));
p.root_module_name = module_name;
p
} }
/// Given a `source_file` and config, returns a parser. /// Given a `source_file` and config, returns a parser.

View File

@ -88,10 +88,6 @@ pub struct Parser<'a> {
/// The previous token. /// The previous token.
pub prev_token: Token, pub prev_token: Token,
restrictions: Restrictions, restrictions: Restrictions,
/// Name of the root module this parser originated from. If `None`, then the
/// name is not known. This does not change while the parser is descending
/// into modules, and sub-parsers have new values for this name.
pub root_module_name: Option<String>,
expected_tokens: Vec<TokenType>, expected_tokens: Vec<TokenType>,
token_cursor: TokenCursor, token_cursor: TokenCursor,
desugar_doc_comments: bool, desugar_doc_comments: bool,
@ -350,7 +346,6 @@ impl<'a> Parser<'a> {
token: Token::dummy(), token: Token::dummy(),
prev_token: Token::dummy(), prev_token: Token::dummy(),
restrictions: Restrictions::empty(), restrictions: Restrictions::empty(),
root_module_name: None,
expected_tokens: Vec::new(), expected_tokens: Vec::new(),
token_cursor: TokenCursor { token_cursor: TokenCursor {
frame: TokenCursorFrame::new(DelimSpan::dummy(), token::NoDelim, &tokens), frame: TokenCursorFrame::new(DelimSpan::dummy(), token::NoDelim, &tokens),