|
hoshi-lang dev
Yet another programming language
|
Classes | |
| struct | CompletionItem |
| struct | CompletionList |
| struct | CompletionOptions |
| struct | CompletionParams |
| class | CompletionProvider |
| struct | DefinitionParams |
| class | DefinitionProvider |
| struct | DidChangeTextDocumentParams |
| struct | DidCloseTextDocumentParams |
| struct | DidOpenTextDocumentParams |
| struct | Document |
| class | DocumentStore |
| struct | DocumentSymbol |
| struct | DocumentSymbolParams |
| struct | Hover |
| struct | HoverParams |
| class | HoverProvider |
| struct | InitializeResult |
| struct | Location |
| struct | LspDiagnostic |
| class | LspServer |
| struct | MarkupContent |
| struct | Position |
| class | ProjectIndex |
| struct | PublishDiagnosticsParams |
| struct | Range |
| struct | ReferenceParams |
| struct | ServerCapabilities |
| struct | ServerInfo |
| struct | Symbol |
| class | SymbolExtractor |
| struct | TextDocumentContentChangeEvent |
| struct | TextDocumentIdentifier |
| struct | TextDocumentItem |
| struct | TextDocumentSyncOptions |
| struct | VersionedTextDocumentIdentifier |
Typedefs | |
| using | json = nlohmann::json |
| using | DefinitionResult = std::vector< Location > |
| using DefinitionResult = std::vector<Location> |
Definition at line 271 of file protocol.h.
| using json = nlohmann::json |
Definition at line 15 of file protocol.h.
|
strong |
Definition at line 169 of file protocol.h.
|
strong |
| Enumerator | |
|---|---|
| Error | |
| Warning | |
| Information | |
| Hint | |
Definition at line 355 of file protocol.h.
|
strong |
| Enumerator | |
|---|---|
| Function | |
| Struct | |
| Interface | |
| Variable | |
| TypeAlias | |
| Enum | |
| Module | |
| ModuleAlias | |
| Method | |
| Field | |
| Constructor | |
| Finalizer | |
| EnumMember | |
| Import | |
| Export | |
| Concept_ | |
| Lambda | |
Definition at line 16 of file symbolExtractor.h.
|
strong |
Definition at line 301 of file protocol.h.
|
static |
Definition at line 16 of file completion.cpp.
References Document::uri.
Referenced by moduleSearchRoots().

|
static |
Definition at line 369 of file server.cpp.
References Position::character, Symbol::column, DocumentSymbol::detail, Symbol::detail, Range::end, Symbol::endColumn, Symbol::endLine, DocumentSymbol::kind, Symbol::kind, Position::line, Symbol::line, mapSymbolKind(), DocumentSymbol::name, Symbol::name, DocumentSymbol::range, safeInt(), DocumentSymbol::selectionRange, Range::start, and yoi::wstring2string().
Referenced by LspServer::handleDocumentSymbol().


Definition at line 398 of file server.cpp.
References Position::character, Range::end, and Position::line.
Referenced by LspServer::handleDocumentSymbol().

|
static |
Definition at line 25 of file definition.cpp.
Referenced by DefinitionProvider::provide().

|
inline |
Definition at line 164 of file protocol.h.
References CompletionParams::position, and CompletionParams::textDocument.
|
inline |
Definition at line 265 of file protocol.h.
References DefinitionParams::position, and DefinitionParams::textDocument.
|
inline |
Definition at line 142 of file protocol.h.
References DidChangeTextDocumentParams::contentChanges, and DidChangeTextDocumentParams::textDocument.
|
inline |
Definition at line 151 of file protocol.h.
References DidCloseTextDocumentParams::textDocument.
|
inline |
Definition at line 133 of file protocol.h.
References DidOpenTextDocumentParams::textDocument.
|
inline |
Definition at line 474 of file protocol.h.
References DocumentSymbolParams::textDocument.
|
inline |
Definition at line 232 of file protocol.h.
References HoverParams::position, and HoverParams::textDocument.
Definition at line 62 of file protocol.h.
References Location::range, and Location::uri.
Definition at line 34 of file protocol.h.
References Position::character, and Position::line.
Definition at line 48 of file protocol.h.
References Range::end, and Range::start.
|
inline |
Definition at line 290 of file protocol.h.
References ReferenceParams::includeDeclaration, ReferenceParams::position, and ReferenceParams::textDocument.
|
inline |
Definition at line 117 of file protocol.h.
References TextDocumentContentChangeEvent::range, TextDocumentContentChangeEvent::rangeLength, and TextDocumentContentChangeEvent::text.
|
inline |
Definition at line 79 of file protocol.h.
References TextDocumentIdentifier::uri.
|
inline |
Definition at line 104 of file protocol.h.
References TextDocumentItem::languageId, TextDocumentItem::text, TextDocumentItem::uri, and TextDocumentItem::version.
|
inline |
Definition at line 92 of file protocol.h.
References VersionedTextDocumentIdentifier::uri, and VersionedTextDocumentIdentifier::version.
|
static |
Definition at line 11 of file definition.cpp.
References Document::text, and yoi::wstring2string().
Referenced by DefinitionProvider::provide().


|
static |
Definition at line 40 of file completion.cpp.
References Document::irModule, yoi::string2wstring(), and yoi::wstring2string().
Referenced by CompletionProvider::resolveModuleCompletionsFromText().


|
inline |
Definition at line 54 of file symbolExtractor.h.
References Constructor, Finalizer, Function, Symbol::kind, and Method.
Referenced by isSymbolVisibleAt().

|
inline |
Definition at line 63 of file symbolExtractor.h.
References isCallableSymbol(), Symbol::isLocal, Symbol::line, Symbol::name, Symbol::ownerLine, and Symbol::parentName.
Referenced by HoverProvider::hoverOnSymbol(), CompletionProvider::memberCompletions(), DefinitionProvider::provide(), and CompletionProvider::symbolCompletions().


Definition at line 16 of file hover.cpp.
References Concept_, Constructor, Hover::contents, Symbol::detail, Enum, EnumMember, Export, Field, Finalizer, Function, Import, Symbol::importPath, Interface, MarkupContent::kind, Symbol::kind, Method, Module, ModuleAlias, Symbol::parentName, Symbol::sourceFile, Struct, TypeAlias, Symbol::typeInfo, MarkupContent::value, Variable, and yoi::wstring2string().
Referenced by HoverProvider::hoverOnSymbol().


|
static |
Definition at line 36 of file definition.cpp.
References Position::character, Range::end, Position::line, Location::range, Range::start, and Location::uri.
Referenced by DefinitionProvider::provide().

|
static |
Definition at line 347 of file server.cpp.
References Concept_, Constructor, Enum, EnumMember, Export, Field, File, Finalizer, Function, Import, Interface, Method, Module, ModuleAlias, Object, Struct, TypeAlias, TypeParameter, and Variable.
Referenced by documentSymbolFor().

|
static |
Definition at line 23 of file completion.cpp.
References documentFilePath(), ProjectIndex::getSearchPaths(), and Document::projectIndex.
Referenced by CompletionProvider::useModuleCompletions(), and CompletionProvider::usePathCompletions().


|
static |
Definition at line 342 of file server.cpp.
Referenced by documentSymbolFor().

|
inline |
Definition at line 206 of file protocol.h.
References CompletionItem::detail, CompletionItem::documentation, CompletionItem::insertText, CompletionItem::kind, CompletionItem::label, and CompletionItem::sortText.
|
inline |
Definition at line 219 of file protocol.h.
References CompletionList::isIncomplete, and CompletionList::items.
|
inline |
Definition at line 418 of file protocol.h.
References CompletionOptions::resolveProvider, and CompletionOptions::triggerCharacters.
|
inline |
Definition at line 273 of file protocol.h.
|
inline |
Definition at line 339 of file protocol.h.
References DocumentSymbol::children, DocumentSymbol::detail, DocumentSymbol::kind, DocumentSymbol::name, DocumentSymbol::range, and DocumentSymbol::selectionRange.
Definition at line 251 of file protocol.h.
References Hover::contents, and Hover::range.
|
inline |
Definition at line 459 of file protocol.h.
References InitializeResult::capabilities, and InitializeResult::serverInfo.
Definition at line 58 of file protocol.h.
References Location::range, and Location::uri.
|
inline |
Definition at line 369 of file protocol.h.
References LspDiagnostic::message, LspDiagnostic::range, LspDiagnostic::severity, and LspDiagnostic::source.
|
inline |
Definition at line 242 of file protocol.h.
References MarkupContent::kind, and MarkupContent::value.
Definition at line 30 of file protocol.h.
References Position::character, and Position::line.
|
inline |
Definition at line 384 of file protocol.h.
References PublishDiagnosticsParams::diagnostics, PublishDiagnosticsParams::uri, and PublishDiagnosticsParams::version.
Definition at line 44 of file protocol.h.
References Range::end, and Range::start.
|
inline |
|
inline |
Definition at line 450 of file protocol.h.
References ServerInfo::name, and ServerInfo::version.
|
inline |
Definition at line 75 of file protocol.h.
References TextDocumentIdentifier::uri.
|
inline |
Definition at line 404 of file protocol.h.
References TextDocumentSyncOptions::change, TextDocumentSyncOptions::openClose, TextDocumentSyncOptions::willSave, and TextDocumentSyncOptions::willSaveWaitUntil.
|
inline |
Definition at line 88 of file protocol.h.
References VersionedTextDocumentIdentifier::uri, and VersionedTextDocumentIdentifier::version.
|
static |
Definition at line 10 of file symbolExtractor.cpp.
References lexer::token::strVal.
Referenced by SymbolExtractor::formatIdentifierWithDefTemplateArg(), SymbolExtractor::formatIdentifierWithTemplateArg(), SymbolExtractor::visitDataStruct(), SymbolExtractor::visitEnum(), SymbolExtractor::visitExport(), SymbolExtractor::visitFuncDef(), SymbolExtractor::visitImpl(), SymbolExtractor::visitImport(), SymbolExtractor::visitInCodeBlock(), SymbolExtractor::visitInterfaceDef(), SymbolExtractor::visitLetStmt(), SymbolExtractor::visitStructDef(), and SymbolExtractor::visitUse().

|
static |
Definition at line 240 of file symbolExtractor.cpp.
References rExpr::expr, primary::kind, abstractExpr::lhs, uniqueExpr::lhs, leftExpr::lhs, primary::member, primary::memberExpr, memberExpr::terms, mulExpr::terms, addExpr::terms, shiftExpr::terms, relationalExpr::terms, equalityExpr::terms, andExpr::terms, exclusiveExpr::terms, inclusiveExpr::terms, logicalAndExpr::terms, logicalOrExpr::terms, and tryExtractTypeFromExpr().
Referenced by tryExtractTypeFromExpr(), and SymbolExtractor::visitLetStmt().

