pub trait SymbolsDatabase: Database + HasQueryGroup<SymbolsDatabaseStorage> + HirDatabase + SourceDatabaseExt + Upcast<dyn HirDatabase> {
    fn module_symbols(&self, module: Module) -> Arc<SymbolIndex>;
fn library_symbols(&self, source_root_id: SourceRootId) -> Arc<SymbolIndex>;
fn local_roots(&self) -> Arc<FxHashSet<SourceRootId>>;
fn set_local_roots(&mut self, value__: Arc<FxHashSet<SourceRootId>>);
fn set_local_roots_with_durability(
        &mut self,
        value__: Arc<FxHashSet<SourceRootId>>,
        durability__: Durability
    );
fn library_roots(&self) -> Arc<FxHashSet<SourceRootId>>;
fn set_library_roots(&mut self, value__: Arc<FxHashSet<SourceRootId>>);
fn set_library_roots_with_durability(
        &mut self,
        value__: Arc<FxHashSet<SourceRootId>>,
        durability__: Durability
    ); }

Required methods

The symbol index for a given module. These modules should only be in source roots that are inside local_roots.

The symbol index for a given source root within library_roots.

The set of “local” (that is, from the current workspace) roots. Files in local roots are assumed to change frequently.

Set the value of the local_roots input.

See local_roots for details.

Note: Setting values will trigger cancellation of any ongoing queries; this method blocks until those queries have been cancelled.

Set the value of the local_roots input and promise that its value will never change again.

See local_roots for details.

Note: Setting values will trigger cancellation of any ongoing queries; this method blocks until those queries have been cancelled.

The set of roots for crates.io libraries. Files in libraries are assumed to never change.

Set the value of the library_roots input.

See library_roots for details.

Note: Setting values will trigger cancellation of any ongoing queries; this method blocks until those queries have been cancelled.

Set the value of the library_roots input and promise that its value will never change again.

See library_roots for details.

Note: Setting values will trigger cancellation of any ongoing queries; this method blocks until those queries have been cancelled.

Implementors