struct AssocItemCollector<'db> {Show 13 fields
db: &'db dyn SourceDatabase,
module_id: ModuleId,
def_map: &'db DefMap,
local_def_map: &'db LocalDefMap,
ast_id_map: &'db AstIdMap,
span_map: SpanMap<'db>,
cfg_options: &'db CfgOptions,
file_id: HirFileId,
diagnostics: Vec<DefDiagnostic>,
container: ItemContainerId,
macro_depth: u32,
items: Vec<(Name, AssocItemId)>,
macro_calls: ThinVec<(AstId<Item>, MacroCallId)>,
}Fields§
§db: &'db dyn SourceDatabase§module_id: ModuleId§def_map: &'db DefMap§local_def_map: &'db LocalDefMap§ast_id_map: &'db AstIdMap§span_map: SpanMap<'db>§cfg_options: &'db CfgOptions§file_id: HirFileId§diagnostics: Vec<DefDiagnostic>§container: ItemContainerId§macro_depth: u32§items: Vec<(Name, AssocItemId)>§macro_calls: ThinVec<(AstId<Item>, MacroCallId)>Implementations§
Source§impl<'db> AssocItemCollector<'db>
impl<'db> AssocItemCollector<'db>
fn new( db: &'db dyn SourceDatabase, module_id: ModuleId, container: ItemContainerId, file_id: HirFileId, ) -> Self
fn collect( self, item_list: Option<AssocItemList>, ) -> (Box<[(Name, AssocItemId)]>, ThinVec<(AstId<Item>, MacroCallId)>, Vec<DefDiagnostic>)
fn collect_item(&mut self, item: AssocItem)
fn record_item(&mut self, item: AssocItem)
fn collect_macro_items(&mut self, macro_call_id: MacroCallId)
Auto Trait Implementations§
impl<'db> !RefUnwindSafe for AssocItemCollector<'db>
impl<'db> !Send for AssocItemCollector<'db>
impl<'db> !Sync for AssocItemCollector<'db>
impl<'db> !UnwindSafe for AssocItemCollector<'db>
impl<'db> Freeze for AssocItemCollector<'db>
impl<'db> Unpin for AssocItemCollector<'db>
impl<'db> UnsafeUnpin for AssocItemCollector<'db>
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> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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