X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=src%2Flibrustc_metadata%2Fcsearch.rs;h=802629e8f3e8b8d49c1dbd11485a9eb6f6fdce83;hb=e598b43243528c49ff6b1dd5350994fe971e941d;hp=ecbc84023309105f9953e0a7babf1a36c43e79d5;hpb=29ea4eef9fa6e36f40bc1f31eb1e56bf5941ee72;p=rust.git diff --git a/src/librustc_metadata/csearch.rs b/src/librustc_metadata/csearch.rs index ecbc8402330..802629e8f3e 100644 --- a/src/librustc_metadata/csearch.rs +++ b/src/librustc_metadata/csearch.rs @@ -18,7 +18,7 @@ use middle::cstore::{NativeLibraryKind, LinkMeta, LinkagePreference}; use middle::def; use middle::lang_items; -use middle::ty::{self, Ty}; +use middle::ty::{self, Ty, VariantKind}; use middle::def_id::{DefId, DefIndex}; use rustc::front::map as hir_map; @@ -377,6 +377,17 @@ fn def_path(&self, def: DefId) -> hir_map::DefPath local_path.into_iter().chain(path).collect() } + fn variant_kind(&self, def_id: DefId) -> Option { + let cdata = self.get_crate_data(def_id.krate); + decoder::get_variant_kind(&cdata, def_id.index) + } + + fn struct_ctor_def_id(&self, struct_def_id: DefId) -> Option + { + let cdata = self.get_crate_data(struct_def_id.krate); + decoder::get_struct_ctor_def_id(&cdata, struct_def_id.index) + } + fn tuple_struct_definition_if_ctor(&self, did: DefId) -> Option { let cdata = self.get_crate_data(did.krate);