pub struct ReferenceSearchResult {
pub declaration: Option<Declaration>,
pub references: IntMap<FileId, Vec<(TextRange, ReferenceCategory)>>,
}
Expand description
Result of a reference search operation.
Fields§
§declaration: Option<Declaration>
Information about the declaration site of the searched item. For ADTs (structs/enums), this points to the type definition. May be None for primitives or items without clear declaration sites.
references: IntMap<FileId, Vec<(TextRange, ReferenceCategory)>>
All references found, grouped by file. For ADTs when searching from a constructor position (e.g. on ‘{’, ‘(’, ‘;’), this only includes constructor/initialization usages. The map key is the file ID, and the value is a vector of (range, category) pairs.
- range: The text range of the reference in the file
- category: Metadata about how the reference is used (read/write/etc)
Trait Implementations§
Source§impl Clone for ReferenceSearchResult
impl Clone for ReferenceSearchResult
Source§fn clone(&self) -> ReferenceSearchResult
fn clone(&self) -> ReferenceSearchResult
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreAuto Trait Implementations§
impl Freeze for ReferenceSearchResult
impl RefUnwindSafe for ReferenceSearchResult
impl Send for ReferenceSearchResult
impl Sync for ReferenceSearchResult
impl Unpin for ReferenceSearchResult
impl UnwindSafe for ReferenceSearchResult
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<T> Cast for T
impl<T> Cast for T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T, R> CollectAndApply<T, R> for T
impl<T, R> CollectAndApply<T, R> for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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