Struct rustc_metadata::locator::CrateLocator [−][src]
pub(crate) struct CrateLocator<'a> {Show fields
sess: &'a Session,
metadata_loader: &'a dyn MetadataLoader,
crate_name: Symbol,
exact_paths: Vec<CanonicalizedPath>,
pub hash: Option<Svh>,
pub host_hash: Option<Svh>,
extra_filename: Option<&'a str>,
pub target: &'a Target,
pub triple: TargetTriple,
pub filesearch: FileSearch<'a>,
root: Option<&'a CratePaths>,
pub is_proc_macro: Option<bool>,
rejected_via_hash: Vec<CrateMismatch>,
rejected_via_triple: Vec<CrateMismatch>,
rejected_via_kind: Vec<CrateMismatch>,
rejected_via_version: Vec<CrateMismatch>,
rejected_via_filename: Vec<CrateMismatch>,
}Fields
sess: &'a Sessionmetadata_loader: &'a dyn MetadataLoadercrate_name: Symbolexact_paths: Vec<CanonicalizedPath>hash: Option<Svh>host_hash: Option<Svh>extra_filename: Option<&'a str>target: &'a Targettriple: TargetTriplefilesearch: FileSearch<'a>root: Option<&'a CratePaths>is_proc_macro: Option<bool>rejected_via_hash: Vec<CrateMismatch>rejected_via_triple: Vec<CrateMismatch>rejected_via_kind: Vec<CrateMismatch>rejected_via_version: Vec<CrateMismatch>rejected_via_filename: Vec<CrateMismatch>Implementations
pub(crate) fn new(
sess: &'a Session,
metadata_loader: &'a dyn MetadataLoader,
crate_name: Symbol,
hash: Option<Svh>,
host_hash: Option<Svh>,
extra_filename: Option<&'a str>,
is_host: bool,
path_kind: PathKind,
root: Option<&'a CratePaths>,
is_proc_macro: Option<bool>
) -> CrateLocator<'a>fn find_library_crate(
&mut self,
extra_prefix: &str,
seen_paths: &mut FxHashSet<PathBuf>
) -> Result<Option<Library>, CrateError>fn extract_lib(
&mut self,
rlibs: FxHashMap<PathBuf, PathKind>,
rmetas: FxHashMap<PathBuf, PathKind>,
dylibs: FxHashMap<PathBuf, PathKind>
) -> Result<Option<(Svh, Library)>, CrateError>fn extract_one(
&mut self,
m: FxHashMap<PathBuf, PathKind>,
flavor: CrateFlavor,
slot: &mut Option<(Svh, MetadataBlob)>
) -> Result<Option<(PathBuf, PathKind)>, CrateError>Trait Implementations
Auto Trait Implementations
impl<'a> !RefUnwindSafe for CrateLocator<'a>impl<'a> !Send for CrateLocator<'a>impl<'a> !Sync for CrateLocator<'a>impl<'a> Unpin for CrateLocator<'a>impl<'a> !UnwindSafe for CrateLocator<'a>Blanket Implementations
Mutably borrows from an owned value. Read more
Layout
Note: Most layout information is completely unstable and may be different between compiler versions and platforms. The only exception is types with certain repr(...) attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.
Size: 336 bytes