use rustc::front::map as hir_map;
use rustc::mir::repr::Mir;
+use rustc::mir::mir_map::MirMap;
use rustc::util::nodemap::{FnvHashMap, NodeMap, NodeSet};
use std::cell::RefCell;
decoder::is_default_impl(&*cdata, impl_did.index)
}
- fn is_extern_fn(&self, tcx: &ty::ctxt<'tcx>, did: DefId) -> bool
- {
- let cdata = self.get_crate_data(did.krate);
- decoder::is_extern_fn(&*cdata, did.index, tcx)
- }
-
- fn is_static(&self, did: DefId) -> bool
- {
+ fn is_extern_item(&self, tcx: &ty::ctxt<'tcx>, did: DefId) -> bool {
let cdata = self.get_crate_data(did.krate);
- decoder::is_static(&*cdata, did.index)
+ decoder::is_extern_item(&*cdata, did.index, tcx)
}
fn is_static_method(&self, def: DefId) -> bool
decoder::maybe_get_item_mir(&*cdata, tcx, def.index)
}
+ fn is_item_mir_available(&self, def: DefId) -> bool {
+ let cdata = self.get_crate_data(def.krate);
+ decoder::is_item_mir_available(&*cdata, def.index)
+ }
+
fn crates(&self) -> Vec<ast::CrateNum>
{
let mut result = vec![];
item_symbols: &RefCell<NodeMap<String>>,
link_meta: &LinkMeta,
reachable: &NodeSet,
- mir_map: &NodeMap<Mir<'tcx>>,
+ mir_map: &MirMap<'tcx>,
krate: &hir::Crate) -> Vec<u8>
{
let encode_inlined_item: encoder::EncodeInlinedItem =