Types
IdeCmd = enum ideNone, ideSug, ideCon, ideDef, ideUse, ideDus, ideChk, ideMod, ideHighlight, ideOutline, ideKnown, ideMsg, ideProject, ideType, ideExpand
- Source Edit
NimSuggest = ref NimsuggestImpl
- Source Edit
NimsuggestCallback = proc (self: NimSuggest): void {....gcsafe, raises: [].}
- Source Edit
NimsuggestImpl = object checkProjectInProgress*: bool needsCheckProject*: bool openFiles*: OrderedSet[string] successfullCall*: bool port*: int protocolVersion*: int capabilities*: set[NimSuggestCapability] nimSuggestPath*: string version*: string project*: Project
- Source Edit
PrefixMatch {.pure.} = enum None, ## no prefix detected Abbrev, ## prefix is an abbreviation of the symbol Substr, ## prefix is a substring of the symbol Prefix ## prefix does match the symbol
- Source Edit
Project = ref object ns*: Future[NimSuggest] file*: string process*: AsyncProcessRef errorCallback*: Option[ProjectCallback] errorMessage*: string failed*: bool lastCmd*: string lastCmdDate*: Option[DateTime]
- Source Edit
ProjectCallback = proc (self: Project): void {....gcsafe, raises: [].}
- Source Edit
Suggest = ref object section*: IdeCmd qualifiedPath*: seq[string] filePath*: string line*: int column*: int doc*: string forth*: string quality*: range[0 .. 100] isGlobal*: bool contextFits*: bool prefix*: PrefixMatch symkind*: string scope*, localUsages*, globalUsages*: int tokenLen*: int version*: int endLine*: int endCol*: int inlayHintInfo*: SuggestInlayHint
- Source Edit
SuggestCall = ref object
- Source Edit
SuggestInlayHint = ref object kind*: SuggestInlayHintKind line*: int column*: int label*: string paddingLeft*: bool paddingRight*: bool allowInsert*: bool tooltip*: string
- Source Edit
SuggestInlayHintKind = enum sihkType = "Type", sihkParameter = "Parameter", sihkException = "Exception"
- Source Edit
Consts
REQUEST_TIMEOUT = 120000
- Source Edit
Procs
proc call(self: NimSuggest; command: string; file: string; dirtyFile: string; line: int; column: int; tag = ""): Future[seq[Suggest]] {....raises: [], tags: [RootEffect], forbids: [].}
- Source Edit
func canHandleUnknown(ns: NimSuggest): bool {....raises: [], tags: [], forbids: [].}
- Source Edit
proc changed(self: NimSuggest; file: string; dirtyfile = ""): Future[ seq[Suggest]] {....raises: [], tags: [RootEffect], forbids: [].}
- Source Edit
proc chk(self: NimSuggest; file: string; dirtyfile = ""): Future[seq[Suggest]] {. ...raises: [], tags: [RootEffect], forbids: [].}
- Source Edit
proc chkFile(self: NimSuggest; file: string; dirtyfile = ""): Future[ seq[Suggest]] {....raises: [], tags: [RootEffect], forbids: [].}
- Source Edit
proc con(self: NimSuggest; file: string; dirtyfile = ""; line: int; col: int; tag = ""): Future[seq[Suggest]] {....raises: [], tags: [RootEffect], forbids: [].}
- Source Edit
proc createNimsuggest(root: string): Future[Project] {....gcsafe, raises: [OSError], tags: [RootEffect], forbids: [].}
- Source Edit
proc createNimsuggest(root: string; nimsuggestPath: string; version: string; timeout: int; timeoutCallback: NimsuggestCallback; errorCallback: ProjectCallback; workingDir = getCurrentDir(); enableLog: bool = false; enableExceptionInlayHints: bool = false): Future[Project] {. ...stackTrace: false, raises: [], gcsafe, tags: [RootEffect], forbids: [].}
- Source Edit
proc declaration(self: NimSuggest; file: string; dirtyfile = ""; line: int; col: int; tag = ""): Future[seq[Suggest]] {....raises: [], tags: [RootEffect], forbids: [].}
- Source Edit
proc def(self: NimSuggest; file: string; dirtyfile = ""; line: int; col: int; tag = ""): Future[seq[Suggest]] {....raises: [], tags: [RootEffect], forbids: [].}
- Source Edit
proc doWithTimeout[T](fut: Future[T]; timeout: int; s: string): owned( Future[bool])
- Source Edit
proc expand(self: NimSuggest; file: string; dirtyfile = ""; line: int; col: int; tag = ""): Future[seq[Suggest]] {....raises: [], tags: [RootEffect], forbids: [].}
- Source Edit
proc getNimsuggestCapabilities(nimsuggestPath: string): set[NimSuggestCapability] {. ...gcsafe, raises: [OSError, IOError, ValueError], tags: [ExecIOEffect, ReadEnvEffect, RootEffect, ReadIOEffect, WriteIOEffect], forbids: [].}
- Source Edit
proc globalSymbols(self: NimSuggest; file: string; dirtyfile = ""): Future[ seq[Suggest]] {....raises: [], tags: [RootEffect], forbids: [].}
- Source Edit
proc highlight(self: NimSuggest; file: string; dirtyfile = ""; line: int; col: int; tag = ""): Future[seq[Suggest]] {....raises: [], tags: [RootEffect], forbids: [].}
- Source Edit
proc inlayHints(self: NimSuggest; file: string; dirtyfile = ""; startLine, startCol, endLine, endCol: int; extra: string): Future[ seq[Suggest]] {....raises: [], tags: [RootEffect], forbids: [].}
- Source Edit
proc isKnown(nimsuggest: NimSuggest; filePath: string): Future[bool] {. ...stackTrace: false, raises: [], gcsafe, tags: [RootEffect], forbids: [].}
- Source Edit
proc known(self: NimSuggest; file: string; dirtyfile = ""): Future[seq[Suggest]] {. ...raises: [], tags: [RootEffect], forbids: [].}
- Source Edit
proc `mod`(nimsuggest: NimSuggest; file: string; dirtyfile = ""): Future[ seq[Suggest]] {....raises: [], tags: [RootEffect], forbids: [].}
- Source Edit
func nimSymDetails(suggest: Suggest): string {....raises: [], tags: [], forbids: [].}
- Source Edit
func nimSymToLSPKind(suggest: Suggest): CompletionItemKind {....raises: [], tags: [], forbids: [].}
- Source Edit
func nimSymToLSPSymbolKind(suggest: string): SymbolKind {....raises: [], tags: [], forbids: [].}
- Source Edit
proc outline(self: NimSuggest; file: string; dirtyfile = ""): Future[ seq[Suggest]] {....raises: [], tags: [RootEffect], forbids: [].}
- Source Edit
proc parseQualifiedPath(input: string): seq[string] {....raises: [], tags: [], forbids: [].}
- Source Edit
proc parseSuggestDef(line: string): Option[Suggest] {....raises: [ValueError], tags: [WriteIOEffect], forbids: [].}
- Source Edit
proc parseSuggestInlayHint(line: string): SuggestInlayHint {. ...raises: [ValueError], tags: [WriteIOEffect], forbids: [].}
- Source Edit
proc recompile(self: NimSuggest): Future[seq[Suggest]] {....raises: [], tags: [RootEffect], forbids: [].}
- Source Edit
proc sug(self: NimSuggest; file: string; dirtyfile = ""; line: int; col: int; tag = ""): Future[seq[Suggest]] {....raises: [], tags: [RootEffect], forbids: [].}
- Source Edit
proc `type`(self: NimSuggest; file: string; dirtyfile = ""; line: int; col: int; tag = ""): Future[seq[Suggest]] {....raises: [], tags: [RootEffect], forbids: [].}
- Source Edit
proc use(self: NimSuggest; file: string; dirtyfile = ""; line: int; col: int; tag = ""): Future[seq[Suggest]] {....raises: [], tags: [RootEffect], forbids: [].}
- Source Edit