Struct rustc_metadata::locator::CrateLocator [−][src]
pub(crate) struct CrateLocator<'a> {
only_needs_metadata: bool,
sysroot: &'a Path,
metadata_loader: &'a dyn MetadataLoader,
crate_name: Symbol,
exact_paths: Vec<CanonicalizedPath>,
pub hash: Option<Svh>,
extra_filename: Option<&'a str>,
pub target: &'a Target,
pub triple: TargetTriple,
pub filesearch: FileSearch<'a>,
pub is_proc_macro: bool,
crate_rejections: CrateRejections,
}
Fields
only_needs_metadata: bool
sysroot: &'a Path
metadata_loader: &'a dyn MetadataLoader
crate_name: Symbol
exact_paths: Vec<CanonicalizedPath>
hash: Option<Svh>
extra_filename: Option<&'a str>
target: &'a Target
triple: TargetTriple
filesearch: FileSearch<'a>
is_proc_macro: bool
crate_rejections: CrateRejections
Implementations
pub(crate) fn new(
sess: &'a Session,
metadata_loader: &'a dyn MetadataLoader,
crate_name: Symbol,
hash: Option<Svh>,
extra_filename: Option<&'a str>,
is_host: bool,
path_kind: PathKind
) -> 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 even differ between compilations. 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: 320 bytes