Crate ra_ap_ide_db[][src]

This crate defines the core datastructure representing IDE state – RootDatabase.

It is mainly a HirDatabase for semantic analysis, plus a SymbolsDatabase, for fuzzy search.

Re-exports

pub use base_db;

Modules

call_info

This crate provides primitives for tracking the information about a call site.

defs

NameDefinition keeps information about the element we want to search references for. The element is represented by NameKind. It’s located inside some container and has a visibility, which defines a search scope. Note that the reference search is possible for not all of the classified items.

helpers

A module with ide helpers for high-level ide features.

items_locator

This module has the functionality to search the project and its dependencies for a certain item, by its name and a few criteria. The main reason for this module to exist is the fact that project’s items and dependencies’ items are located in different caches, with different APIs.

label

See Label

line_index

LineIndex maps flat TextSize offsets into (Line, Column) representation.

search

Implementation of find-usages functionality.

source_change

This modules defines type to represent changes to the source code, that flow from the server to the client.

symbol_index

This module handles fuzzy-searching of functions, structs and other symbols by name across the whole workspace and dependencies.

traits

Functionality for obtaining data related to traits from the DB.

ty_filter

This module contains structures for filtering the expected types. Use case for structures in this module is, for example, situation when you need to process only certain Enums.

Structs

LineIndexDatabaseGroupStorage__
LineIndexDatabaseStorage

Representative struct for the query group.

LineIndexQuery
RootDatabase

Enums

SymbolKind

Traits

LineIndexDatabase