pub struct IncludeTargetIndex { /* private fields */ }Expand description
Workspace-wide resolution table for #include targets: every analyzable file
keyed both by its full workspace-relative path and by its bare file name.
Built once per analyzer generation from all_files() and consulted by every
include-visibility walk, so a header’s dependents resolve without a
filesystem probe per include line.
Implementations§
Source§impl IncludeTargetIndex
impl IncludeTargetIndex
pub fn build<'a>(files: impl IntoIterator<Item = &'a ProjectFile>) -> Self
pub fn resolve_indexed(&self, include: &str) -> Vec<ProjectFile>
Auto Trait Implementations§
impl Freeze for IncludeTargetIndex
impl RefUnwindSafe for IncludeTargetIndex
impl Send for IncludeTargetIndex
impl Sync for IncludeTargetIndex
impl Unpin for IncludeTargetIndex
impl UnsafeUnpin for IncludeTargetIndex
impl UnwindSafe for IncludeTargetIndex
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more