1package protocol 2 3// Code generated (see typescript/README.md) DO NOT EDIT. 4 5import ( 6 "context" 7 "encoding/json" 8 9 "golang.org/x/tools/internal/jsonrpc2" 10 "golang.org/x/tools/internal/telemetry/log" 11 "golang.org/x/tools/internal/xcontext" 12) 13 14type Server interface { 15 DidChangeWorkspaceFolders(context.Context, *DidChangeWorkspaceFoldersParams) error 16 Initialized(context.Context, *InitializedParams) error 17 Exit(context.Context) error 18 DidChangeConfiguration(context.Context, *DidChangeConfigurationParams) error 19 DidOpen(context.Context, *DidOpenTextDocumentParams) error 20 DidChange(context.Context, *DidChangeTextDocumentParams) error 21 DidClose(context.Context, *DidCloseTextDocumentParams) error 22 DidSave(context.Context, *DidSaveTextDocumentParams) error 23 WillSave(context.Context, *WillSaveTextDocumentParams) error 24 DidChangeWatchedFiles(context.Context, *DidChangeWatchedFilesParams) error 25 Progress(context.Context, *ProgressParams) error 26 SetTraceNotification(context.Context, *SetTraceParams) error 27 LogTraceNotification(context.Context, *LogTraceParams) error 28 Implementation(context.Context, *ImplementationParams) ([]Location, error) 29 TypeDefinition(context.Context, *TypeDefinitionParams) ([]Location, error) 30 DocumentColor(context.Context, *DocumentColorParams) ([]ColorInformation, error) 31 ColorPresentation(context.Context, *ColorPresentationParams) ([]ColorPresentation, error) 32 FoldingRange(context.Context, *FoldingRangeParams) ([]FoldingRange, error) 33 Declaration(context.Context, *DeclarationParams) ([]DeclarationLink, error) 34 SelectionRange(context.Context, *SelectionRangeParams) ([]SelectionRange, error) 35 Initialize(context.Context, *ParamInitia) (*InitializeResult, error) 36 Shutdown(context.Context) error 37 WillSaveWaitUntil(context.Context, *WillSaveTextDocumentParams) ([]TextEdit, error) 38 Completion(context.Context, *CompletionParams) (*CompletionList, error) 39 Resolve(context.Context, *CompletionItem) (*CompletionItem, error) 40 Hover(context.Context, *HoverParams) (*Hover, error) 41 SignatureHelp(context.Context, *SignatureHelpParams) (*SignatureHelp, error) 42 Definition(context.Context, *DefinitionParams) ([]Location, error) 43 References(context.Context, *ReferenceParams) ([]Location, error) 44 DocumentHighlight(context.Context, *DocumentHighlightParams) ([]DocumentHighlight, error) 45 DocumentSymbol(context.Context, *DocumentSymbolParams) ([]DocumentSymbol, error) 46 CodeAction(context.Context, *CodeActionParams) ([]CodeAction, error) 47 Symbol(context.Context, *WorkspaceSymbolParams) ([]SymbolInformation, error) 48 CodeLens(context.Context, *CodeLensParams) ([]CodeLens, error) 49 ResolveCodeLens(context.Context, *CodeLens) (*CodeLens, error) 50 DocumentLink(context.Context, *DocumentLinkParams) ([]DocumentLink, error) 51 ResolveDocumentLink(context.Context, *DocumentLink) (*DocumentLink, error) 52 Formatting(context.Context, *DocumentFormattingParams) ([]TextEdit, error) 53 RangeFormatting(context.Context, *DocumentRangeFormattingParams) ([]TextEdit, error) 54 OnTypeFormatting(context.Context, *DocumentOnTypeFormattingParams) ([]TextEdit, error) 55 Rename(context.Context, *RenameParams) (*WorkspaceEdit, error) 56 PrepareRename(context.Context, *PrepareRenameParams) (*Range, error) 57 ExecuteCommand(context.Context, *ExecuteCommandParams) (interface{}, error) 58} 59 60func (h serverHandler) Deliver(ctx context.Context, r *jsonrpc2.Request, delivered bool) bool { 61 if delivered { 62 return false 63 } 64 if ctx.Err() != nil { 65 ctx := xcontext.Detach(ctx) 66 r.Reply(ctx, nil, jsonrpc2.NewErrorf(RequestCancelledError, "")) 67 return true 68 } 69 switch r.Method { 70 case "workspace/didChangeWorkspaceFolders": // notif 71 var params DidChangeWorkspaceFoldersParams 72 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 73 sendParseError(ctx, r, err) 74 return true 75 } 76 if err := h.server.DidChangeWorkspaceFolders(ctx, ¶ms); err != nil { 77 log.Error(ctx, "", err) 78 } 79 return true 80 case "initialized": // notif 81 var params InitializedParams 82 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 83 sendParseError(ctx, r, err) 84 return true 85 } 86 if err := h.server.Initialized(ctx, ¶ms); err != nil { 87 log.Error(ctx, "", err) 88 } 89 return true 90 case "exit": // notif 91 if err := h.server.Exit(ctx); err != nil { 92 log.Error(ctx, "", err) 93 } 94 return true 95 case "workspace/didChangeConfiguration": // notif 96 var params DidChangeConfigurationParams 97 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 98 sendParseError(ctx, r, err) 99 return true 100 } 101 if err := h.server.DidChangeConfiguration(ctx, ¶ms); err != nil { 102 log.Error(ctx, "", err) 103 } 104 return true 105 case "textDocument/didOpen": // notif 106 var params DidOpenTextDocumentParams 107 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 108 sendParseError(ctx, r, err) 109 return true 110 } 111 if err := h.server.DidOpen(ctx, ¶ms); err != nil { 112 log.Error(ctx, "", err) 113 } 114 return true 115 case "textDocument/didChange": // notif 116 var params DidChangeTextDocumentParams 117 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 118 sendParseError(ctx, r, err) 119 return true 120 } 121 if err := h.server.DidChange(ctx, ¶ms); err != nil { 122 log.Error(ctx, "", err) 123 } 124 return true 125 case "textDocument/didClose": // notif 126 var params DidCloseTextDocumentParams 127 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 128 sendParseError(ctx, r, err) 129 return true 130 } 131 if err := h.server.DidClose(ctx, ¶ms); err != nil { 132 log.Error(ctx, "", err) 133 } 134 return true 135 case "textDocument/didSave": // notif 136 var params DidSaveTextDocumentParams 137 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 138 sendParseError(ctx, r, err) 139 return true 140 } 141 if err := h.server.DidSave(ctx, ¶ms); err != nil { 142 log.Error(ctx, "", err) 143 } 144 return true 145 case "textDocument/willSave": // notif 146 var params WillSaveTextDocumentParams 147 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 148 sendParseError(ctx, r, err) 149 return true 150 } 151 if err := h.server.WillSave(ctx, ¶ms); err != nil { 152 log.Error(ctx, "", err) 153 } 154 return true 155 case "workspace/didChangeWatchedFiles": // notif 156 var params DidChangeWatchedFilesParams 157 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 158 sendParseError(ctx, r, err) 159 return true 160 } 161 if err := h.server.DidChangeWatchedFiles(ctx, ¶ms); err != nil { 162 log.Error(ctx, "", err) 163 } 164 return true 165 case "$/progress": // notif 166 var params ProgressParams 167 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 168 sendParseError(ctx, r, err) 169 return true 170 } 171 if err := h.server.Progress(ctx, ¶ms); err != nil { 172 log.Error(ctx, "", err) 173 } 174 return true 175 case "$/setTraceNotification": // notif 176 var params SetTraceParams 177 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 178 sendParseError(ctx, r, err) 179 return true 180 } 181 if err := h.server.SetTraceNotification(ctx, ¶ms); err != nil { 182 log.Error(ctx, "", err) 183 } 184 return true 185 case "$/logTraceNotification": // notif 186 var params LogTraceParams 187 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 188 sendParseError(ctx, r, err) 189 return true 190 } 191 if err := h.server.LogTraceNotification(ctx, ¶ms); err != nil { 192 log.Error(ctx, "", err) 193 } 194 return true 195 case "textDocument/implementation": // req 196 var params ImplementationParams 197 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 198 sendParseError(ctx, r, err) 199 return true 200 } 201 resp, err := h.server.Implementation(ctx, ¶ms) 202 if err := r.Reply(ctx, resp, err); err != nil { 203 log.Error(ctx, "", err) 204 } 205 return true 206 case "textDocument/typeDefinition": // req 207 var params TypeDefinitionParams 208 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 209 sendParseError(ctx, r, err) 210 return true 211 } 212 resp, err := h.server.TypeDefinition(ctx, ¶ms) 213 if err := r.Reply(ctx, resp, err); err != nil { 214 log.Error(ctx, "", err) 215 } 216 return true 217 case "textDocument/documentColor": // req 218 var params DocumentColorParams 219 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 220 sendParseError(ctx, r, err) 221 return true 222 } 223 resp, err := h.server.DocumentColor(ctx, ¶ms) 224 if err := r.Reply(ctx, resp, err); err != nil { 225 log.Error(ctx, "", err) 226 } 227 return true 228 case "textDocument/colorPresentation": // req 229 var params ColorPresentationParams 230 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 231 sendParseError(ctx, r, err) 232 return true 233 } 234 resp, err := h.server.ColorPresentation(ctx, ¶ms) 235 if err := r.Reply(ctx, resp, err); err != nil { 236 log.Error(ctx, "", err) 237 } 238 return true 239 case "textDocument/foldingRange": // req 240 var params FoldingRangeParams 241 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 242 sendParseError(ctx, r, err) 243 return true 244 } 245 resp, err := h.server.FoldingRange(ctx, ¶ms) 246 if err := r.Reply(ctx, resp, err); err != nil { 247 log.Error(ctx, "", err) 248 } 249 return true 250 case "textDocument/declaration": // req 251 var params DeclarationParams 252 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 253 sendParseError(ctx, r, err) 254 return true 255 } 256 resp, err := h.server.Declaration(ctx, ¶ms) 257 if err := r.Reply(ctx, resp, err); err != nil { 258 log.Error(ctx, "", err) 259 } 260 return true 261 case "textDocument/selectionRange": // req 262 var params SelectionRangeParams 263 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 264 sendParseError(ctx, r, err) 265 return true 266 } 267 resp, err := h.server.SelectionRange(ctx, ¶ms) 268 if err := r.Reply(ctx, resp, err); err != nil { 269 log.Error(ctx, "", err) 270 } 271 return true 272 case "initialize": // req 273 var params ParamInitia 274 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 275 sendParseError(ctx, r, err) 276 return true 277 } 278 resp, err := h.server.Initialize(ctx, ¶ms) 279 if err := r.Reply(ctx, resp, err); err != nil { 280 log.Error(ctx, "", err) 281 } 282 return true 283 case "shutdown": // req 284 if r.Params != nil { 285 r.Reply(ctx, nil, jsonrpc2.NewErrorf(jsonrpc2.CodeInvalidParams, "Expected no params")) 286 return true 287 } 288 err := h.server.Shutdown(ctx) 289 if err := r.Reply(ctx, nil, err); err != nil { 290 log.Error(ctx, "", err) 291 } 292 return true 293 case "textDocument/willSaveWaitUntil": // req 294 var params WillSaveTextDocumentParams 295 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 296 sendParseError(ctx, r, err) 297 return true 298 } 299 resp, err := h.server.WillSaveWaitUntil(ctx, ¶ms) 300 if err := r.Reply(ctx, resp, err); err != nil { 301 log.Error(ctx, "", err) 302 } 303 return true 304 case "textDocument/completion": // req 305 var params CompletionParams 306 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 307 sendParseError(ctx, r, err) 308 return true 309 } 310 resp, err := h.server.Completion(ctx, ¶ms) 311 if err := r.Reply(ctx, resp, err); err != nil { 312 log.Error(ctx, "", err) 313 } 314 return true 315 case "completionItem/resolve": // req 316 var params CompletionItem 317 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 318 sendParseError(ctx, r, err) 319 return true 320 } 321 resp, err := h.server.Resolve(ctx, ¶ms) 322 if err := r.Reply(ctx, resp, err); err != nil { 323 log.Error(ctx, "", err) 324 } 325 return true 326 case "textDocument/hover": // req 327 var params HoverParams 328 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 329 sendParseError(ctx, r, err) 330 return true 331 } 332 resp, err := h.server.Hover(ctx, ¶ms) 333 if err := r.Reply(ctx, resp, err); err != nil { 334 log.Error(ctx, "", err) 335 } 336 return true 337 case "textDocument/signatureHelp": // req 338 var params SignatureHelpParams 339 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 340 sendParseError(ctx, r, err) 341 return true 342 } 343 resp, err := h.server.SignatureHelp(ctx, ¶ms) 344 if err := r.Reply(ctx, resp, err); err != nil { 345 log.Error(ctx, "", err) 346 } 347 return true 348 case "textDocument/definition": // req 349 var params DefinitionParams 350 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 351 sendParseError(ctx, r, err) 352 return true 353 } 354 resp, err := h.server.Definition(ctx, ¶ms) 355 if err := r.Reply(ctx, resp, err); err != nil { 356 log.Error(ctx, "", err) 357 } 358 return true 359 case "textDocument/references": // req 360 var params ReferenceParams 361 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 362 sendParseError(ctx, r, err) 363 return true 364 } 365 resp, err := h.server.References(ctx, ¶ms) 366 if err := r.Reply(ctx, resp, err); err != nil { 367 log.Error(ctx, "", err) 368 } 369 return true 370 case "textDocument/documentHighlight": // req 371 var params DocumentHighlightParams 372 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 373 sendParseError(ctx, r, err) 374 return true 375 } 376 resp, err := h.server.DocumentHighlight(ctx, ¶ms) 377 if err := r.Reply(ctx, resp, err); err != nil { 378 log.Error(ctx, "", err) 379 } 380 return true 381 case "textDocument/documentSymbol": // req 382 var params DocumentSymbolParams 383 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 384 sendParseError(ctx, r, err) 385 return true 386 } 387 resp, err := h.server.DocumentSymbol(ctx, ¶ms) 388 if err := r.Reply(ctx, resp, err); err != nil { 389 log.Error(ctx, "", err) 390 } 391 return true 392 case "textDocument/codeAction": // req 393 var params CodeActionParams 394 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 395 sendParseError(ctx, r, err) 396 return true 397 } 398 resp, err := h.server.CodeAction(ctx, ¶ms) 399 if err := r.Reply(ctx, resp, err); err != nil { 400 log.Error(ctx, "", err) 401 } 402 return true 403 case "workspace/symbol": // req 404 var params WorkspaceSymbolParams 405 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 406 sendParseError(ctx, r, err) 407 return true 408 } 409 resp, err := h.server.Symbol(ctx, ¶ms) 410 if err := r.Reply(ctx, resp, err); err != nil { 411 log.Error(ctx, "", err) 412 } 413 return true 414 case "textDocument/codeLens": // req 415 var params CodeLensParams 416 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 417 sendParseError(ctx, r, err) 418 return true 419 } 420 resp, err := h.server.CodeLens(ctx, ¶ms) 421 if err := r.Reply(ctx, resp, err); err != nil { 422 log.Error(ctx, "", err) 423 } 424 return true 425 case "codeLens/resolve": // req 426 var params CodeLens 427 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 428 sendParseError(ctx, r, err) 429 return true 430 } 431 resp, err := h.server.ResolveCodeLens(ctx, ¶ms) 432 if err := r.Reply(ctx, resp, err); err != nil { 433 log.Error(ctx, "", err) 434 } 435 return true 436 case "textDocument/documentLink": // req 437 var params DocumentLinkParams 438 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 439 sendParseError(ctx, r, err) 440 return true 441 } 442 resp, err := h.server.DocumentLink(ctx, ¶ms) 443 if err := r.Reply(ctx, resp, err); err != nil { 444 log.Error(ctx, "", err) 445 } 446 return true 447 case "documentLink/resolve": // req 448 var params DocumentLink 449 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 450 sendParseError(ctx, r, err) 451 return true 452 } 453 resp, err := h.server.ResolveDocumentLink(ctx, ¶ms) 454 if err := r.Reply(ctx, resp, err); err != nil { 455 log.Error(ctx, "", err) 456 } 457 return true 458 case "textDocument/formatting": // req 459 var params DocumentFormattingParams 460 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 461 sendParseError(ctx, r, err) 462 return true 463 } 464 resp, err := h.server.Formatting(ctx, ¶ms) 465 if err := r.Reply(ctx, resp, err); err != nil { 466 log.Error(ctx, "", err) 467 } 468 return true 469 case "textDocument/rangeFormatting": // req 470 var params DocumentRangeFormattingParams 471 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 472 sendParseError(ctx, r, err) 473 return true 474 } 475 resp, err := h.server.RangeFormatting(ctx, ¶ms) 476 if err := r.Reply(ctx, resp, err); err != nil { 477 log.Error(ctx, "", err) 478 } 479 return true 480 case "textDocument/onTypeFormatting": // req 481 var params DocumentOnTypeFormattingParams 482 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 483 sendParseError(ctx, r, err) 484 return true 485 } 486 resp, err := h.server.OnTypeFormatting(ctx, ¶ms) 487 if err := r.Reply(ctx, resp, err); err != nil { 488 log.Error(ctx, "", err) 489 } 490 return true 491 case "textDocument/rename": // req 492 var params RenameParams 493 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 494 sendParseError(ctx, r, err) 495 return true 496 } 497 resp, err := h.server.Rename(ctx, ¶ms) 498 if err := r.Reply(ctx, resp, err); err != nil { 499 log.Error(ctx, "", err) 500 } 501 return true 502 case "textDocument/prepareRename": // req 503 var params PrepareRenameParams 504 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 505 sendParseError(ctx, r, err) 506 return true 507 } 508 resp, err := h.server.PrepareRename(ctx, ¶ms) 509 if err := r.Reply(ctx, resp, err); err != nil { 510 log.Error(ctx, "", err) 511 } 512 return true 513 case "workspace/executeCommand": // req 514 var params ExecuteCommandParams 515 if err := json.Unmarshal(*r.Params, ¶ms); err != nil { 516 sendParseError(ctx, r, err) 517 return true 518 } 519 resp, err := h.server.ExecuteCommand(ctx, ¶ms) 520 if err := r.Reply(ctx, resp, err); err != nil { 521 log.Error(ctx, "", err) 522 } 523 return true 524 525 default: 526 return false 527 } 528} 529 530type serverDispatcher struct { 531 *jsonrpc2.Conn 532} 533 534func (s *serverDispatcher) DidChangeWorkspaceFolders(ctx context.Context, params *DidChangeWorkspaceFoldersParams) error { 535 return s.Conn.Notify(ctx, "workspace/didChangeWorkspaceFolders", params) 536} 537 538func (s *serverDispatcher) Initialized(ctx context.Context, params *InitializedParams) error { 539 return s.Conn.Notify(ctx, "initialized", params) 540} 541 542func (s *serverDispatcher) Exit(ctx context.Context) error { 543 return s.Conn.Notify(ctx, "exit", nil) 544} 545 546func (s *serverDispatcher) DidChangeConfiguration(ctx context.Context, params *DidChangeConfigurationParams) error { 547 return s.Conn.Notify(ctx, "workspace/didChangeConfiguration", params) 548} 549 550func (s *serverDispatcher) DidOpen(ctx context.Context, params *DidOpenTextDocumentParams) error { 551 return s.Conn.Notify(ctx, "textDocument/didOpen", params) 552} 553 554func (s *serverDispatcher) DidChange(ctx context.Context, params *DidChangeTextDocumentParams) error { 555 return s.Conn.Notify(ctx, "textDocument/didChange", params) 556} 557 558func (s *serverDispatcher) DidClose(ctx context.Context, params *DidCloseTextDocumentParams) error { 559 return s.Conn.Notify(ctx, "textDocument/didClose", params) 560} 561 562func (s *serverDispatcher) DidSave(ctx context.Context, params *DidSaveTextDocumentParams) error { 563 return s.Conn.Notify(ctx, "textDocument/didSave", params) 564} 565 566func (s *serverDispatcher) WillSave(ctx context.Context, params *WillSaveTextDocumentParams) error { 567 return s.Conn.Notify(ctx, "textDocument/willSave", params) 568} 569 570func (s *serverDispatcher) DidChangeWatchedFiles(ctx context.Context, params *DidChangeWatchedFilesParams) error { 571 return s.Conn.Notify(ctx, "workspace/didChangeWatchedFiles", params) 572} 573 574func (s *serverDispatcher) Progress(ctx context.Context, params *ProgressParams) error { 575 return s.Conn.Notify(ctx, "$/progress", params) 576} 577 578func (s *serverDispatcher) SetTraceNotification(ctx context.Context, params *SetTraceParams) error { 579 return s.Conn.Notify(ctx, "$/setTraceNotification", params) 580} 581 582func (s *serverDispatcher) LogTraceNotification(ctx context.Context, params *LogTraceParams) error { 583 return s.Conn.Notify(ctx, "$/logTraceNotification", params) 584} 585func (s *serverDispatcher) Implementation(ctx context.Context, params *ImplementationParams) ([]Location, error) { 586 var result []Location 587 if err := s.Conn.Call(ctx, "textDocument/implementation", params, &result); err != nil { 588 return nil, err 589 } 590 return result, nil 591} 592 593func (s *serverDispatcher) TypeDefinition(ctx context.Context, params *TypeDefinitionParams) ([]Location, error) { 594 var result []Location 595 if err := s.Conn.Call(ctx, "textDocument/typeDefinition", params, &result); err != nil { 596 return nil, err 597 } 598 return result, nil 599} 600 601func (s *serverDispatcher) DocumentColor(ctx context.Context, params *DocumentColorParams) ([]ColorInformation, error) { 602 var result []ColorInformation 603 if err := s.Conn.Call(ctx, "textDocument/documentColor", params, &result); err != nil { 604 return nil, err 605 } 606 return result, nil 607} 608 609func (s *serverDispatcher) ColorPresentation(ctx context.Context, params *ColorPresentationParams) ([]ColorPresentation, error) { 610 var result []ColorPresentation 611 if err := s.Conn.Call(ctx, "textDocument/colorPresentation", params, &result); err != nil { 612 return nil, err 613 } 614 return result, nil 615} 616 617func (s *serverDispatcher) FoldingRange(ctx context.Context, params *FoldingRangeParams) ([]FoldingRange, error) { 618 var result []FoldingRange 619 if err := s.Conn.Call(ctx, "textDocument/foldingRange", params, &result); err != nil { 620 return nil, err 621 } 622 return result, nil 623} 624 625func (s *serverDispatcher) Declaration(ctx context.Context, params *DeclarationParams) ([]DeclarationLink, error) { 626 var result []DeclarationLink 627 if err := s.Conn.Call(ctx, "textDocument/declaration", params, &result); err != nil { 628 return nil, err 629 } 630 return result, nil 631} 632 633func (s *serverDispatcher) SelectionRange(ctx context.Context, params *SelectionRangeParams) ([]SelectionRange, error) { 634 var result []SelectionRange 635 if err := s.Conn.Call(ctx, "textDocument/selectionRange", params, &result); err != nil { 636 return nil, err 637 } 638 return result, nil 639} 640 641func (s *serverDispatcher) Initialize(ctx context.Context, params *ParamInitia) (*InitializeResult, error) { 642 var result InitializeResult 643 if err := s.Conn.Call(ctx, "initialize", params, &result); err != nil { 644 return nil, err 645 } 646 return &result, nil 647} 648 649func (s *serverDispatcher) Shutdown(ctx context.Context) error { 650 return s.Conn.Call(ctx, "shutdown", nil, nil) 651} 652 653func (s *serverDispatcher) WillSaveWaitUntil(ctx context.Context, params *WillSaveTextDocumentParams) ([]TextEdit, error) { 654 var result []TextEdit 655 if err := s.Conn.Call(ctx, "textDocument/willSaveWaitUntil", params, &result); err != nil { 656 return nil, err 657 } 658 return result, nil 659} 660 661func (s *serverDispatcher) Completion(ctx context.Context, params *CompletionParams) (*CompletionList, error) { 662 var result CompletionList 663 if err := s.Conn.Call(ctx, "textDocument/completion", params, &result); err != nil { 664 return nil, err 665 } 666 return &result, nil 667} 668 669func (s *serverDispatcher) Resolve(ctx context.Context, params *CompletionItem) (*CompletionItem, error) { 670 var result CompletionItem 671 if err := s.Conn.Call(ctx, "completionItem/resolve", params, &result); err != nil { 672 return nil, err 673 } 674 return &result, nil 675} 676 677func (s *serverDispatcher) Hover(ctx context.Context, params *HoverParams) (*Hover, error) { 678 var result Hover 679 if err := s.Conn.Call(ctx, "textDocument/hover", params, &result); err != nil { 680 return nil, err 681 } 682 return &result, nil 683} 684 685func (s *serverDispatcher) SignatureHelp(ctx context.Context, params *SignatureHelpParams) (*SignatureHelp, error) { 686 var result SignatureHelp 687 if err := s.Conn.Call(ctx, "textDocument/signatureHelp", params, &result); err != nil { 688 return nil, err 689 } 690 return &result, nil 691} 692 693func (s *serverDispatcher) Definition(ctx context.Context, params *DefinitionParams) ([]Location, error) { 694 var result []Location 695 if err := s.Conn.Call(ctx, "textDocument/definition", params, &result); err != nil { 696 return nil, err 697 } 698 return result, nil 699} 700 701func (s *serverDispatcher) References(ctx context.Context, params *ReferenceParams) ([]Location, error) { 702 var result []Location 703 if err := s.Conn.Call(ctx, "textDocument/references", params, &result); err != nil { 704 return nil, err 705 } 706 return result, nil 707} 708 709func (s *serverDispatcher) DocumentHighlight(ctx context.Context, params *DocumentHighlightParams) ([]DocumentHighlight, error) { 710 var result []DocumentHighlight 711 if err := s.Conn.Call(ctx, "textDocument/documentHighlight", params, &result); err != nil { 712 return nil, err 713 } 714 return result, nil 715} 716 717func (s *serverDispatcher) DocumentSymbol(ctx context.Context, params *DocumentSymbolParams) ([]DocumentSymbol, error) { 718 var result []DocumentSymbol 719 if err := s.Conn.Call(ctx, "textDocument/documentSymbol", params, &result); err != nil { 720 return nil, err 721 } 722 return result, nil 723} 724 725func (s *serverDispatcher) CodeAction(ctx context.Context, params *CodeActionParams) ([]CodeAction, error) { 726 var result []CodeAction 727 if err := s.Conn.Call(ctx, "textDocument/codeAction", params, &result); err != nil { 728 return nil, err 729 } 730 return result, nil 731} 732 733func (s *serverDispatcher) Symbol(ctx context.Context, params *WorkspaceSymbolParams) ([]SymbolInformation, error) { 734 var result []SymbolInformation 735 if err := s.Conn.Call(ctx, "workspace/symbol", params, &result); err != nil { 736 return nil, err 737 } 738 return result, nil 739} 740 741func (s *serverDispatcher) CodeLens(ctx context.Context, params *CodeLensParams) ([]CodeLens, error) { 742 var result []CodeLens 743 if err := s.Conn.Call(ctx, "textDocument/codeLens", params, &result); err != nil { 744 return nil, err 745 } 746 return result, nil 747} 748 749func (s *serverDispatcher) ResolveCodeLens(ctx context.Context, params *CodeLens) (*CodeLens, error) { 750 var result CodeLens 751 if err := s.Conn.Call(ctx, "codeLens/resolve", params, &result); err != nil { 752 return nil, err 753 } 754 return &result, nil 755} 756 757func (s *serverDispatcher) DocumentLink(ctx context.Context, params *DocumentLinkParams) ([]DocumentLink, error) { 758 var result []DocumentLink 759 if err := s.Conn.Call(ctx, "textDocument/documentLink", params, &result); err != nil { 760 return nil, err 761 } 762 return result, nil 763} 764 765func (s *serverDispatcher) ResolveDocumentLink(ctx context.Context, params *DocumentLink) (*DocumentLink, error) { 766 var result DocumentLink 767 if err := s.Conn.Call(ctx, "documentLink/resolve", params, &result); err != nil { 768 return nil, err 769 } 770 return &result, nil 771} 772 773func (s *serverDispatcher) Formatting(ctx context.Context, params *DocumentFormattingParams) ([]TextEdit, error) { 774 var result []TextEdit 775 if err := s.Conn.Call(ctx, "textDocument/formatting", params, &result); err != nil { 776 return nil, err 777 } 778 return result, nil 779} 780 781func (s *serverDispatcher) RangeFormatting(ctx context.Context, params *DocumentRangeFormattingParams) ([]TextEdit, error) { 782 var result []TextEdit 783 if err := s.Conn.Call(ctx, "textDocument/rangeFormatting", params, &result); err != nil { 784 return nil, err 785 } 786 return result, nil 787} 788 789func (s *serverDispatcher) OnTypeFormatting(ctx context.Context, params *DocumentOnTypeFormattingParams) ([]TextEdit, error) { 790 var result []TextEdit 791 if err := s.Conn.Call(ctx, "textDocument/onTypeFormatting", params, &result); err != nil { 792 return nil, err 793 } 794 return result, nil 795} 796 797func (s *serverDispatcher) Rename(ctx context.Context, params *RenameParams) (*WorkspaceEdit, error) { 798 var result WorkspaceEdit 799 if err := s.Conn.Call(ctx, "textDocument/rename", params, &result); err != nil { 800 return nil, err 801 } 802 return &result, nil 803} 804 805func (s *serverDispatcher) PrepareRename(ctx context.Context, params *PrepareRenameParams) (*Range, error) { 806 var result Range 807 if err := s.Conn.Call(ctx, "textDocument/prepareRename", params, &result); err != nil { 808 return nil, err 809 } 810 return &result, nil 811} 812 813func (s *serverDispatcher) ExecuteCommand(ctx context.Context, params *ExecuteCommandParams) (interface{}, error) { 814 var result interface{} 815 if err := s.Conn.Call(ctx, "workspace/executeCommand", params, &result); err != nil { 816 return nil, err 817 } 818 return result, nil 819} 820 821type CancelParams struct { 822 /** 823 * The request id to cancel. 824 */ 825 ID jsonrpc2.ID `json:"id"` 826} 827 828// Types constructed to avoid structs as formal argument types 829type ParamInitia struct { 830 InitializeParams 831 WorkDoneProgressParams 832} 833