ls

Search:
Group by:
Source   Edit  

Types

CallAction = proc (name: string; params: JsonNode): Future[JsonNode] {....gcsafe,
    raises: [].}
Source   Edit  
Certainty = enum
  None, Folder, Cfg, Nimble
Source   Edit  
CommandLineParams = object
  clientProcessId*: Option[int]
  mode*: Option[ServerMode]
  transport*: Option[TransportMode]
  port*: Port
Source   Edit  
LanguageServer = ref object
  case serverMode*: ServerMode
  of lsp:
    lspClientCapabilities*: LspClientCapabilities
    lspServerCapabilities*: LspServerCapabilities
    lspInitializeParams*: LspInitializeParams
  of mcp:
    mcpClientCapabilities*: McpClientCapabilities
    mcpServerCapabilities*: McpServerCapabilities
    mcpInitializeParams*: McpInitializeParams
  extensionCapabilities*: set[LspExtensionCapability]
  notify*: NotifyAction
  call*: CallAction
  onExit*: OnExitCallback
  projectFiles*: Table[string, Project]
  openFiles*: Table[string, NlsFileInfo]
  idleOpenFiles*: Table[string, NlsFileInfo]
  workspaceConfiguration*: Future[JsonNode]
  prevWorkspaceConfiguration*: Future[JsonNode]
  inlayHintsRefreshRequest*: Future[JsonNode]
  didChangeConfigurationRegistrationRequest*: Future[JsonNode]
  filesWithDiags*: HashSet[string]
  lastNimsuggest*: Future[NimSuggest]
  childNimsuggestProcessesStopped*: bool
  isShutdown*: bool
  storageDir*: string
  cmdLineClientProcessId*: Option[int]
  nimDumpCache*: Table[string, NimbleDumpInfo]
  entryPoints*: seq[string]
  responseMap*: TableRef[string, Future[JsonNode]]
  testRunProcess*: Option[AsyncProcessRef]
  srv*: RpcSocketServer
  pendingRequests*: Table[uint, PendingRequest]
  case transportMode*: TransportMode
  of socket:
    socketTransport*: StreamTransport
  of stdio:
    outStream*: FileStream
    stdinContext*: ptr ReadStdinContext
  projectErrors*: seq[ProjectError]
  failTable*: Table[string, int]
  checkInProgress*: bool
Source   Edit  
NimbleDumpInfo = object
  srcDir*: string
  name*: string
  nimDir*: Option[string]
  nimblePath*: Option[string]
  entryPoints*: seq[string]
Source   Edit  
NlsConfig = ref object of RootObj
  projectMapping*: OptionalSeq[NlsNimsuggestConfig]
  workingDirectoryMapping*: OptionalSeq[NlsWorkingDirectoryMaping]
  checkOnSave*: Option[bool]
  nimsuggestPath*: Option[string]
  timeout*: Option[int]
  autoRestart*: Option[bool]
  autoCheckFile*: Option[bool]
  autoCheckProject*: Option[bool]
  logNimsuggest*: Option[bool]
  inlayHints*: Option[NlsInlayHintsConfig]
  notificationVerbosity*: Option[NlsNotificationVerbosity]
  formatOnSave*: Option[bool]
  nimsuggestIdleTimeout*: Option[int]
  useNimCheck*: Option[bool]
  nimExpandArc*: Option[bool]
  nimExpandMacro*: Option[bool]
  maxNimsuggestProcesses*: Option[int]
Source   Edit  
NlsFileInfo = ref object of RootObj
  projectFile*: Future[string]
  changed*: bool
  fingerTable*: seq[seq[tuple[u16pos, offset: int]]]
  cancelFileCheck*: Future[void]
  checkInProgress*: bool
  needsChecking*: bool
  textDocument*: TextDocumentItem
Source   Edit  
NlsInlayExceptionHintsConfig = ref object of RootObj
  enable*: Option[bool]
  hintStringLeft*: Option[string]
  hintStringRight*: Option[string]
Source   Edit  
NlsInlayHintsConfig = ref object of RootObj
  typeHints*: Option[NlsInlayTypeHintsConfig]
  exceptionHints*: Option[NlsInlayExceptionHintsConfig]
  parameterHints*: Option[NlsInlayParameterHintsConfig]
Source   Edit  
NlsInlayParameterHintsConfig = ref object of RootObj
  enable*: Option[bool]
Source   Edit  
NlsInlayTypeHintsConfig = ref object of RootObj
  enable*: Option[bool]
Source   Edit  
NlsNimsuggestConfig = ref object of RootObj
  projectFile*: string
  fileRegex*: string
Source   Edit  
NlsNotificationVerbosity = enum
  nvNone = "none", nvError = "error", nvWarning = "warning", nvInfo = "info"
Source   Edit  
NlsWorkingDirectoryMaping = ref object of RootObj
  projectFile*: string
  directory*: string
Source   Edit  
NotifyAction = proc (name: string; params: JsonNode) {....gcsafe, raises: [].}
Source   Edit  
OnExitCallback = proc (): Future[void] {....gcsafe, raises: [].}
Source   Edit  
PendingRequest = object
  id*: uint
  name*: string
  request*: Future[JsonString]
  projectFile*: Option[string]
  startTime*: DateTime
  endTime*: DateTime
  state*: PendingRequestState
Source   Edit  
PendingRequestState = enum
  prsOnGoing = "OnGoing", prsCancelled = "Cancelled", prsComplete = "Complete"
Source   Edit  
ReadStdinContext = object
  onStdReadSignal*: ThreadSignalPtr
  onMainReadSignal*: ThreadSignalPtr
  value*: cstring
Source   Edit  
ServerMode = enum
  lsp = "lsp", mcp = "mcp"
Source   Edit  
TransportMode = enum
  stdio = "stdio", socket = "socket"
Source   Edit  

Consts

CHECK_PROJECT_COMMAND = "nimlangserver.checkProject"
Source   Edit  
CONTENT_LENGTH = "Content-Length: "
Source   Edit  
CRLF = "\r\n"
Source   Edit  
FILE_CHECK_DELAY = 1000
Source   Edit  
LSPVersion = "1.14.0"
Source   Edit  
RECOMPILE_COMMAND = "nimlangserver.recompile"
Source   Edit  
RESTART_COMMAND = "nimlangserver.restart"
Source   Edit  

Procs

proc addProjectFileToPendingRequest(ls: LanguageServer; id: uint; uri: string): Future[
    void] {....stackTrace: false, raises: [], gcsafe, tags: [RootEffect],
            forbids: [].}
Source   Edit  
proc applyEdit(ls: LanguageServer; params: ApplyWorkspaceEditParams): Future[
    ApplyWorkspaceEditResponse] {....stackTrace: false, raises: [], gcsafe,
                                  tags: [RootEffect], forbids: [].}
Source   Edit  
proc cancelPendingFileChecks(ls: LanguageServer; nimsuggest: NimSuggest) {.
    ...raises: [KeyError], tags: [], forbids: [].}
Source   Edit  
proc checkFile(ls: LanguageServer; uri: string): Future[void] {....raises: [],
    gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  
proc checkProject(ls: LanguageServer; uri: string): Future[void] {.
    ...stackTrace: false, raises: [], gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  
proc createOrRestartNimsuggest(ls: LanguageServer; projectFile: string; uri = "") {.
    ...gcsafe, raises: [], tags: [WriteIOEffect, RootEffect], forbids: [].}
Source   Edit  
proc didCloseFile(ls: LanguageServer; uri: string): Future[void] {.
    ...stackTrace: false, raises: [], gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  
proc didOpenFile(ls: LanguageServer; textDocument: TextDocumentItem): Future[
    void] {....stackTrace: false, raises: [], gcsafe, tags: [RootEffect],
            forbids: [].}
Source   Edit  
func exceptionHintsEnabled(cnf: NlsConfig): bool {....raises: [], tags: [],
    forbids: [].}
Source   Edit  
proc getAndWaitForWorkspaceConfiguration(ls: LanguageServer): Future[NlsConfig] {.
    ...stackTrace: false, raises: [], gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  
proc getCharacter(ls: LanguageServer; uri: string; line: int; character: int): Option[
    int] {....raises: [KeyError], tags: [], forbids: [].}
Source   Edit  
proc getLspStatus(ls: LanguageServer): NimLangServerStatus {....raises: [],
    tags: [ReadIOEffect, TimeEffect], forbids: [].}
Source   Edit  
proc getNimbleDumpInfo(ls: LanguageServer; nimbleFile: string): Future[
    NimbleDumpInfo] {....stackTrace: false, raises: [], gcsafe, tags: [RootEffect],
                      forbids: [].}
Source   Edit  
proc getNimbleEntryPoints(dumpInfo: NimbleDumpInfo; nimbleProjectPath: string): seq[
    string] {....raises: [], tags: [ReadDirEffect], forbids: [].}
Source   Edit  
proc getNimPath(conf: NlsConfig): Option[string] {....raises: [OSError],
    tags: [ReadDirEffect, ReadEnvEffect, ReadIOEffect, WriteIOEffect],
    forbids: [].}
Source   Edit  
proc getProjectFile(fileUri: string; ls: LanguageServer): Future[string] {.
    ...stackTrace: false, raises: [], gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  
proc getProjectFileAutoGuess(ls: LanguageServer; fileUri: string): Future[string] {.
    ...stackTrace: false, raises: [], gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  
proc getRootPath(ip: LspInitializeParams): string {....raises: [OSError], tags: [],
    forbids: [].}
Source   Edit  
proc getRootPath(ip: McpInitializeParams): string {....raises: [OSError], tags: [],
    forbids: [].}
Source   Edit  
proc getWorkspaceConfiguration(ls: LanguageServer): InternalRaisesFuture[
    NlsConfig, void] {....stackTrace: false, raises: [], gcsafe,
                       tags: [RootEffect], forbids: [].}
Source   Edit  
proc handleConfigurationChanges(ls: LanguageServer;
                                oldConfiguration, newConfiguration: NlsConfig) {.
    ...raises: [], tags: [WriteIOEffect, RootEffect], forbids: [].}
Source   Edit  
proc initLs(params: CommandLineParams; storageDir: string): LanguageServer {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc initNimsuggestInstances(ls: LanguageServer; rootPath: string): Future[void] {.
    ...stackTrace: false, raises: [], gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  
proc inlayExceptionHintsConfigurationEquals(a, b: NlsConfig): bool {....raises: [],
    tags: [], forbids: [].}
Source   Edit  
proc inlayExceptionHintsConfigurationEquals(a, b: NlsInlayHintsConfig): bool {.
    ...raises: [], tags: [], forbids: [].}
Source   Edit  
proc inlayHintsConfigurationEquals(a, b: NlsConfig): bool {....raises: [],
    tags: [], forbids: [].}
Source   Edit  
func inlayHintsEnabled(cnf: NlsConfig): bool {....raises: [], tags: [], forbids: [].}
Source   Edit  
proc makeIdleFile(ls: LanguageServer; file: NlsFileInfo): Future[void] {.
    ...stackTrace: false, raises: [], gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  
proc maybeRegisterCapabilityDidChangeConfiguration(ls: LanguageServer) {.
    ...raises: [], tags: [RootEffect], forbids: [].}
Source   Edit  
proc maybeRequestConfigurationFromClient(ls: LanguageServer) {.
    ...raises: [KeyError, ValueError, JsonKindError],
    tags: [WriteIOEffect, RootEffect], forbids: [].}
Source   Edit  
func parameterHintsEnabled(cnf: NlsConfig): bool {....raises: [], tags: [],
    forbids: [].}
Source   Edit  
proc parseWorkspaceConfiguration(conf: JsonNode): NlsConfig {....raises: [],
    tags: [RootEffect, WriteIOEffect], forbids: [].}
Source   Edit  
proc progress(ls: LanguageServer; token, kind: string; title = "") {....raises: [],
    tags: [RootEffect], forbids: [].}
Source   Edit  
proc range(startLine, startCharacter, endLine, endCharacter: int): Range {.
    ...raises: [KeyError, ValueError, JsonKindError], tags: [RootEffect],
    forbids: [].}
Source   Edit  
proc removeIdleNimsuggests(ls: LanguageServer): Future[void] {.
    ...stackTrace: false, raises: [], gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  
proc sendDiagnostics(ls: LanguageServer;
                     diagnostics: seq[Suggest] | seq[CheckResult]; path: string)
Source   Edit  
proc sendStatusChanged(ls: LanguageServer) {....raises: [],
    tags: [ReadIOEffect, TimeEffect, RootEffect], forbids: [].}
Source   Edit  
proc shouldSpawnNimsuggest(ls: LanguageServer): Future[bool] {.
    ...stackTrace: false, raises: [], gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  
proc showMessage(ls: LanguageServer; message: string; typ: MessageType) {.
    ...raises: [], tags: [RootEffect, WriteIOEffect], forbids: [].}
Source   Edit  
proc stopNimsuggestProcesses(ls: LanguageServer): Future[void] {.
    ...stackTrace: false, raises: [], gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  
proc stopNimsuggestProcessesP(ls: LanguageServer) {....raises: [CatchableError],
    tags: [RootEffect], forbids: [].}
Source   Edit  
proc supportSignatureHelp(cc: LspClientCapabilities): bool {....raises: [],
    tags: [], forbids: [].}
Source   Edit  
proc tick(ls: LanguageServer): Future[void] {....stackTrace: false, raises: [],
    gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  
proc toLabelRange(suggest: Suggest): Range {.
    ...raises: [KeyError, ValueError, JsonKindError], tags: [RootEffect],
    forbids: [].}
Source   Edit  
proc toUtf16Pos(checkResult: CheckResult; ls: LanguageServer): CheckResult {.
    ...raises: [KeyError], tags: [], forbids: [].}
Source   Edit  
proc toUtf16Pos(ls: LanguageServer; uri: string; line: int; utf8Pos: int): Option[
    int] {....raises: [KeyError], tags: [], forbids: [].}
Source   Edit  
proc toUtf16Pos(suggest: Suggest; ls: LanguageServer): Suggest {.
    ...raises: [KeyError], tags: [], forbids: [].}
Source   Edit  
proc toUtf16Pos(suggest: SuggestInlayHint; ls: LanguageServer; uri: string): SuggestInlayHint {.
    ...raises: [KeyError], tags: [], forbids: [].}
Source   Edit  
proc tryGetNimsuggest(ls: LanguageServer; uri: string): Future[
    Option[NimSuggest]] {....raises: [], gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  
func typeHintsEnabled(cnf: NlsConfig): bool {....raises: [], tags: [], forbids: [].}
Source   Edit  
proc uriStorageLocation(ls: LanguageServer; uri: string): string {....raises: [],
    tags: [], forbids: [].}
Source   Edit  
proc uriToStash(ls: LanguageServer; uri: string): string {....raises: [KeyError],
    tags: [], forbids: [].}
Source   Edit  
proc usePullConfigurationModel(ls: LanguageServer): bool {....raises: [], tags: [],
    forbids: [].}
Source   Edit  
proc warnIfUnknown(ls: LanguageServer; ns: NimSuggest; uri: string;
                   projectFile: string): Future[void] {....stackTrace: false,
    raises: [], gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  
proc workDoneProgressCreate(ls: LanguageServer; token: string) {....raises: [],
    tags: [RootEffect], forbids: [].}
Source   Edit  

Macros

macro `%*`(t: untyped; inputStream: untyped): untyped
Source   Edit