span: Span,
path_str: &str,
ns: Namespace,
- module_id: NodeId,
+ module_id: LocalDefId,
) -> Result<(ast::Path, Res), ()> {
let path = if path_str.starts_with("::") {
ast::Path {
.collect(),
}
};
- let module = self.block_map.get(&module_id).copied().unwrap_or_else(|| {
- let def_id = self.definitions.local_def_id(module_id);
- self.module_map.get(&def_id).copied().unwrap_or(self.graph_root)
- });
+ let module = self.module_map.get(&module_id).copied().unwrap_or(self.graph_root);
let parent_scope = &ParentScope::module(module);
let res = self.resolve_ast_path(&path, ns, parent_scope).map_err(|_| ())?;
Ok((path, res))
-use rustc_ast::ast::CRATE_NODE_ID;
use rustc_attr as attr;
use rustc_data_structures::fx::{FxHashMap, FxHashSet};
use rustc_data_structures::sync::{self, Lrc};
use rustc_errors::json::JsonEmitter;
use rustc_feature::UnstableFeatures;
use rustc_hir::def::Namespace::TypeNS;
-use rustc_hir::def_id::{CrateNum, DefId, DefIndex, LOCAL_CRATE};
+use rustc_hir::def_id::{CrateNum, DefId, DefIndex, LocalDefId, CRATE_DEF_INDEX, LOCAL_CRATE};
use rustc_hir::HirId;
use rustc_interface::interface;
use rustc_middle::middle::cstore::CrateStore;
resolver.borrow_mut().access(|resolver| {
for extern_name in &extern_names {
resolver
- .resolve_str_path_error(DUMMY_SP, extern_name, TypeNS, CRATE_NODE_ID)
+ .resolve_str_path_error(
+ DUMMY_SP,
+ extern_name,
+ TypeNS,
+ LocalDefId { local_def_index: CRATE_DEF_INDEX },
+ )
.unwrap_or_else(|()| {
panic!("Unable to resolve external crate {}", extern_name)
});
Namespace::{self, *},
PerNS, Res,
};
-use rustc_hir::def_id::DefId;
+use rustc_hir::def_id::{DefId, LocalDefId};
use rustc_middle::ty;
use rustc_resolve::ParentScope;
use rustc_session::lint;
&self,
path_str: &str,
current_item: &Option<String>,
- module_id: rustc_ast::ast::NodeId,
+ module_id: LocalDefId,
) -> Result<(Res, Option<String>), ErrorKind> {
let cx = self.cx;
// In case we're in a module, try to resolve the relative path.
if let Some(module_id) = parent_id.or(self.mod_ids.last().cloned()) {
- let module_id = cx.tcx.hir().hir_id_to_node_id(module_id);
+ let module_id = cx.tcx.hir().local_def_id(module_id);
let result = cx.enter_resolver(|resolver| {
resolver.resolve_str_path_error(DUMMY_SP, &path_str, ns, module_id)
});