Struct rustc_session::search_paths::SearchPathFile [−][src]
Expand description
The obvious implementation of SearchPath::files
is a Vec<PathBuf>
. But
it is searched repeatedly by find_library_crate
, and the searches involve
checking the prefix and suffix of the filename of each PathBuf
. This is
doable, but very slow, because it involves calls to file_name
and
extension
that are themselves slow.
This type augments the PathBuf
with an Option<String>
containing the
PathBuf
’s filename. The prefix and suffix checking is much faster on the
Option<String>
than the PathBuf
. (It’s an Option
because
Path::file_name
can fail; if that happens then all subsequent checking
will also fail, which is fine.)
Fields
path: PathBuf
file_name_str: Option<String>
Implementations
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for SearchPathFile
impl Send for SearchPathFile
impl Sync for SearchPathFile
impl Unpin for SearchPathFile
impl UnwindSafe for SearchPathFile
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: 48 bytes