suggestapi

Search:
Group by:
Source   Edit  

Types

IdeCmd = enum
  ideNone, ideSug, ideCon, ideDef, ideUse, ideDus, ideChk, ideMod, ideHighlight,
  ideOutline, ideKnown, ideMsg, ideProject, ideType, ideExpand
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  
proc name(sug: Suggest): string {....raises: [], tags: [], 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 stop(self: Project) {....raises: [], tags: [WriteIOEffect, 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 toString(bytes: openArray[byte]): string {....raises: [], tags: [],
    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