Cross-file semantic index for EveScript source modules. 更多...
#include <LanguageIndex.h>
类 | |
| struct | Impl |
| struct | Target |
| struct | Unit |
Public 成员函数 | |
| WorkspaceIndex () | |
| Workspace index. | |
| ~WorkspaceIndex () | |
| Workspace index. | |
| WorkspaceIndex (const WorkspaceIndex &)=delete | |
| WorkspaceIndex & | operator= (const WorkspaceIndex &)=delete |
| void | update (std::string canonicalUri, std::string clientUri, std::string source) |
| Adds or replaces one canonical source unit. | |
| void | remove (std::string_view canonicalUri) |
| Removes one source unit from the index. | |
| std::optional< Location > | definition (std::string_view canonicalUri, Position position) const |
| Finds the declaration targeted by the identifier at a position. | |
| std::vector< Location > | references (std::string_view canonicalUri, Position position, bool includeDeclaration) const |
| Finds project references for the identifier at a position. | |
| std::optional< std::vector< TextEdit > > | rename (std::string_view canonicalUri, Position position, std::string_view newName) const |
| Computes a project-wide rename, or nullopt for an invalid/unresolved request. | |
| std::vector< SemanticToken > | semanticTokens (std::string_view canonicalUri) const |
| Identifier classifications for LSP semantic highlighting. | |
详细描述
Cross-file semantic index for EveScript source modules.
在文件 LanguageIndex.h 第 68 行定义.
构造及析构函数说明
◆ WorkspaceIndex() [1/2]
| eve::dev::lsp::WorkspaceIndex::WorkspaceIndex | ( | ) |
Workspace index.
在文件 LanguageIndex.cpp 第 201 行定义.
◆ ~WorkspaceIndex()
|
default |
Workspace index.
◆ WorkspaceIndex() [2/2]
|
delete |
成员函数说明
◆ definition()
| std::optional< Location > eve::dev::lsp::WorkspaceIndex::definition | ( | std::string_view | canonicalUri, |
| Position | position | ||
| ) | const |
◆ operator=()
|
delete |
◆ references()
◆ remove()
| void eve::dev::lsp::WorkspaceIndex::remove | ( | std::string_view | canonicalUri | ) |
Removes one source unit from the index.
在文件 LanguageIndex.cpp 第 290 行定义.
◆ rename()
◆ semanticTokens()
| std::vector< SemanticToken > eve::dev::lsp::WorkspaceIndex::semanticTokens | ( | std::string_view | canonicalUri | ) | const |
◆ update()
| void eve::dev::lsp::WorkspaceIndex::update | ( | std::string | canonicalUri, |
| std::string | clientUri, | ||
| std::string | source | ||
| ) |
Adds or replaces one canonical source unit.
在文件 LanguageIndex.cpp 第 204 行定义.
引用了 binding, eve::dev::lsp::SemanticTypes::Class, cursor, eve::dev::lsp::SemanticTypes::Function, imported, importedToken, kind, local, localToken, name, eve::Pending, pending, eve::dev::lsp::SemanticMods::Readonly, source, target, text, tokens, type, eve::dev::lsp::SemanticTypes::Variable , 以及 word.
被这些函数引用 eve::dev::LanguageServer::Impl::close(), eve::dev::LanguageServer::Impl::indexProject() , 以及 eve::dev::LanguageServer::Impl::update().
该类的文档由以下文件生成:
- src/engine/devtools/LanguageIndex.h
- src/engine/devtools/LanguageIndex.cpp