[−][src]Crate ra_ap_ide
ide crate provides "ide-centric" APIs for the rust-analyzer. That is, it generally operates with files and text ranges, and returns results as Strings, suitable for displaying to the human.
What powers this API are the RootDatabase
struct, which defines a salsa
database, and the hir
crate, where majority of the analysis happens.
However, IDE specific bits of the analysis (most notably completion) happen
in this crate.
Structs
Analysis | Analysis is a snapshot of a world state at a moment in time. It is the main
entry point for asking semantic information about the world. When the world
state is advanced using |
AnalysisHost |
|
Assist | |
AssistConfig | |
AssistId | Unique identifier of the assist, should not be shown to the user directly. |
CallInfo | Contains information about a call site. Specifically the
|
CallItem | |
Canceled | An "error" signifying that the operation was canceled. |
Change | Encapsulate a bunch of raw |
CompletionConfig | |
CompletionItem |
|
CrateGraph |
|
CrateId | |
Declaration | |
Diagnostic | |
DiagnosticsConfig | |
Documentation | Holds documentation |
ExpandedMacro | |
FileId | |
FilePosition | |
FileRange | |
Fix | |
Fold | |
Highlight | |
HighlightModifiers | |
HighlightedRange | |
HoverConfig | |
HoverGotoTypeData | |
HoverResult | Contains the results when hovering over an item |
ImportEdit | An extra import to add after the completion is applied. |
Indel |
|
InlayHint | |
InlayHintsConfig | |
Label | A type to specify UI label, like an entry in the list of assists. Enforces proper casing: |
LineCol | |
LineIndex | |
Markup | |
NavigationTarget |
|
Query | |
RangeInfo | Info associated with a text range. |
Reference | |
ReferenceSearchResult | |
RenameError | |
ResolvedAssist | |
RootDatabase | |
Runnable | |
SearchScope | Generally, |
Semantics | Primary API to get semantic information, like types, from syntax trees. |
SourceChange | |
SourceFileEdit | |
SourceRoot | |
SourceRootId | Files are grouped into source roots. A source root is a directory on the file systems which is watched for changes. Typically it corresponds to a Rust crate. Source roots might be nested: in this case, a file belongs to the nearest enclosing source root. Paths to files are always relative to a source root, and the analyzer does not know the root path of the source root at all. So, a file from one source root can't refer to a file in another source root by path. |
SsrError | |
StructureNode | |
TextEdit |
Enums
AssistKind | |
CompletionItemKind | |
CompletionResolveCapability | A resolve capability, supported on the server. If the client registers any completion resolve capabilities, the server is able to render completion items' corresponding fields later, not during an initial completion item request. See https://github.com/rust-analyzer/rust-analyzer/issues/6366 for more details. |
CompletionScore | |
Edition | |
FileSystemEdit | |
FoldKind | |
HighlightModifier | |
HighlightTag | |
HoverAction | |
InlayKind | |
InsertTextFormat | |
PrimeCachesProgress | |
ReferenceAccess | |
ReferenceKind | |
RunnableKind | |
Severity | |
TestId |
Type Definitions
Cancelable |