golang.org/x/tools/gopls@v0.15.3/internal/protocol/tsjson.go (about) 1 // Copyright 2023 The Go Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 // Code generated for LSP. DO NOT EDIT. 6 7 package protocol 8 9 // Code generated from protocol/metaModel.json at ref release/protocol/3.17.6-next.1 (hash d2c907f450cb6d3baff74b31b432b90786d2c3b0). 10 // https://github.com/microsoft/vscode-languageserver-node/blob/release/protocol/3.17.6-next.1/protocol/metaModel.json 11 // LSP metaData.version = 3.17.0. 12 13 import "encoding/json" 14 15 import "fmt" 16 17 // UnmarshalError indicates that a JSON value did not conform to 18 // one of the expected cases of an LSP union type. 19 type UnmarshalError struct { 20 msg string 21 } 22 23 func (e UnmarshalError) Error() string { 24 return e.msg 25 } 26 func (t OrPLocation_workspace_symbol) MarshalJSON() ([]byte, error) { 27 switch x := t.Value.(type) { 28 case Location: 29 return json.Marshal(x) 30 case LocationUriOnly: 31 return json.Marshal(x) 32 case nil: 33 return []byte("null"), nil 34 } 35 return nil, fmt.Errorf("type %T not one of [Location LocationUriOnly]", t) 36 } 37 38 func (t *OrPLocation_workspace_symbol) UnmarshalJSON(x []byte) error { 39 if string(x) == "null" { 40 t.Value = nil 41 return nil 42 } 43 var h0 Location 44 if err := json.Unmarshal(x, &h0); err == nil { 45 t.Value = h0 46 return nil 47 } 48 var h1 LocationUriOnly 49 if err := json.Unmarshal(x, &h1); err == nil { 50 t.Value = h1 51 return nil 52 } 53 return &UnmarshalError{"unmarshal failed to match one of [Location LocationUriOnly]"} 54 } 55 56 func (t OrPSection_workspace_didChangeConfiguration) MarshalJSON() ([]byte, error) { 57 switch x := t.Value.(type) { 58 case []string: 59 return json.Marshal(x) 60 case string: 61 return json.Marshal(x) 62 case nil: 63 return []byte("null"), nil 64 } 65 return nil, fmt.Errorf("type %T not one of [[]string string]", t) 66 } 67 68 func (t *OrPSection_workspace_didChangeConfiguration) UnmarshalJSON(x []byte) error { 69 if string(x) == "null" { 70 t.Value = nil 71 return nil 72 } 73 var h0 []string 74 if err := json.Unmarshal(x, &h0); err == nil { 75 t.Value = h0 76 return nil 77 } 78 var h1 string 79 if err := json.Unmarshal(x, &h1); err == nil { 80 t.Value = h1 81 return nil 82 } 83 return &UnmarshalError{"unmarshal failed to match one of [[]string string]"} 84 } 85 86 func (t OrPTooltipPLabel) MarshalJSON() ([]byte, error) { 87 switch x := t.Value.(type) { 88 case MarkupContent: 89 return json.Marshal(x) 90 case string: 91 return json.Marshal(x) 92 case nil: 93 return []byte("null"), nil 94 } 95 return nil, fmt.Errorf("type %T not one of [MarkupContent string]", t) 96 } 97 98 func (t *OrPTooltipPLabel) UnmarshalJSON(x []byte) error { 99 if string(x) == "null" { 100 t.Value = nil 101 return nil 102 } 103 var h0 MarkupContent 104 if err := json.Unmarshal(x, &h0); err == nil { 105 t.Value = h0 106 return nil 107 } 108 var h1 string 109 if err := json.Unmarshal(x, &h1); err == nil { 110 t.Value = h1 111 return nil 112 } 113 return &UnmarshalError{"unmarshal failed to match one of [MarkupContent string]"} 114 } 115 116 func (t OrPTooltip_textDocument_inlayHint) MarshalJSON() ([]byte, error) { 117 switch x := t.Value.(type) { 118 case MarkupContent: 119 return json.Marshal(x) 120 case string: 121 return json.Marshal(x) 122 case nil: 123 return []byte("null"), nil 124 } 125 return nil, fmt.Errorf("type %T not one of [MarkupContent string]", t) 126 } 127 128 func (t *OrPTooltip_textDocument_inlayHint) UnmarshalJSON(x []byte) error { 129 if string(x) == "null" { 130 t.Value = nil 131 return nil 132 } 133 var h0 MarkupContent 134 if err := json.Unmarshal(x, &h0); err == nil { 135 t.Value = h0 136 return nil 137 } 138 var h1 string 139 if err := json.Unmarshal(x, &h1); err == nil { 140 t.Value = h1 141 return nil 142 } 143 return &UnmarshalError{"unmarshal failed to match one of [MarkupContent string]"} 144 } 145 146 func (t Or_CancelParams_id) MarshalJSON() ([]byte, error) { 147 switch x := t.Value.(type) { 148 case int32: 149 return json.Marshal(x) 150 case string: 151 return json.Marshal(x) 152 case nil: 153 return []byte("null"), nil 154 } 155 return nil, fmt.Errorf("type %T not one of [int32 string]", t) 156 } 157 158 func (t *Or_CancelParams_id) UnmarshalJSON(x []byte) error { 159 if string(x) == "null" { 160 t.Value = nil 161 return nil 162 } 163 var h0 int32 164 if err := json.Unmarshal(x, &h0); err == nil { 165 t.Value = h0 166 return nil 167 } 168 var h1 string 169 if err := json.Unmarshal(x, &h1); err == nil { 170 t.Value = h1 171 return nil 172 } 173 return &UnmarshalError{"unmarshal failed to match one of [int32 string]"} 174 } 175 176 func (t Or_ClientSemanticTokensRequestOptions_full) MarshalJSON() ([]byte, error) { 177 switch x := t.Value.(type) { 178 case ClientSemanticTokensRequestFullDelta: 179 return json.Marshal(x) 180 case bool: 181 return json.Marshal(x) 182 case nil: 183 return []byte("null"), nil 184 } 185 return nil, fmt.Errorf("type %T not one of [ClientSemanticTokensRequestFullDelta bool]", t) 186 } 187 188 func (t *Or_ClientSemanticTokensRequestOptions_full) UnmarshalJSON(x []byte) error { 189 if string(x) == "null" { 190 t.Value = nil 191 return nil 192 } 193 var h0 ClientSemanticTokensRequestFullDelta 194 if err := json.Unmarshal(x, &h0); err == nil { 195 t.Value = h0 196 return nil 197 } 198 var h1 bool 199 if err := json.Unmarshal(x, &h1); err == nil { 200 t.Value = h1 201 return nil 202 } 203 return &UnmarshalError{"unmarshal failed to match one of [ClientSemanticTokensRequestFullDelta bool]"} 204 } 205 206 func (t Or_ClientSemanticTokensRequestOptions_range) MarshalJSON() ([]byte, error) { 207 switch x := t.Value.(type) { 208 case Lit_ClientSemanticTokensRequestOptions_range_Item1: 209 return json.Marshal(x) 210 case bool: 211 return json.Marshal(x) 212 case nil: 213 return []byte("null"), nil 214 } 215 return nil, fmt.Errorf("type %T not one of [Lit_ClientSemanticTokensRequestOptions_range_Item1 bool]", t) 216 } 217 218 func (t *Or_ClientSemanticTokensRequestOptions_range) UnmarshalJSON(x []byte) error { 219 if string(x) == "null" { 220 t.Value = nil 221 return nil 222 } 223 var h0 Lit_ClientSemanticTokensRequestOptions_range_Item1 224 if err := json.Unmarshal(x, &h0); err == nil { 225 t.Value = h0 226 return nil 227 } 228 var h1 bool 229 if err := json.Unmarshal(x, &h1); err == nil { 230 t.Value = h1 231 return nil 232 } 233 return &UnmarshalError{"unmarshal failed to match one of [Lit_ClientSemanticTokensRequestOptions_range_Item1 bool]"} 234 } 235 236 func (t Or_CompletionItemDefaults_editRange) MarshalJSON() ([]byte, error) { 237 switch x := t.Value.(type) { 238 case EditRangeWithInsertReplace: 239 return json.Marshal(x) 240 case Range: 241 return json.Marshal(x) 242 case nil: 243 return []byte("null"), nil 244 } 245 return nil, fmt.Errorf("type %T not one of [EditRangeWithInsertReplace Range]", t) 246 } 247 248 func (t *Or_CompletionItemDefaults_editRange) UnmarshalJSON(x []byte) error { 249 if string(x) == "null" { 250 t.Value = nil 251 return nil 252 } 253 var h0 EditRangeWithInsertReplace 254 if err := json.Unmarshal(x, &h0); err == nil { 255 t.Value = h0 256 return nil 257 } 258 var h1 Range 259 if err := json.Unmarshal(x, &h1); err == nil { 260 t.Value = h1 261 return nil 262 } 263 return &UnmarshalError{"unmarshal failed to match one of [EditRangeWithInsertReplace Range]"} 264 } 265 266 func (t Or_CompletionItem_documentation) MarshalJSON() ([]byte, error) { 267 switch x := t.Value.(type) { 268 case MarkupContent: 269 return json.Marshal(x) 270 case string: 271 return json.Marshal(x) 272 case nil: 273 return []byte("null"), nil 274 } 275 return nil, fmt.Errorf("type %T not one of [MarkupContent string]", t) 276 } 277 278 func (t *Or_CompletionItem_documentation) UnmarshalJSON(x []byte) error { 279 if string(x) == "null" { 280 t.Value = nil 281 return nil 282 } 283 var h0 MarkupContent 284 if err := json.Unmarshal(x, &h0); err == nil { 285 t.Value = h0 286 return nil 287 } 288 var h1 string 289 if err := json.Unmarshal(x, &h1); err == nil { 290 t.Value = h1 291 return nil 292 } 293 return &UnmarshalError{"unmarshal failed to match one of [MarkupContent string]"} 294 } 295 296 func (t Or_CompletionItem_textEdit) MarshalJSON() ([]byte, error) { 297 switch x := t.Value.(type) { 298 case InsertReplaceEdit: 299 return json.Marshal(x) 300 case TextEdit: 301 return json.Marshal(x) 302 case nil: 303 return []byte("null"), nil 304 } 305 return nil, fmt.Errorf("type %T not one of [InsertReplaceEdit TextEdit]", t) 306 } 307 308 func (t *Or_CompletionItem_textEdit) UnmarshalJSON(x []byte) error { 309 if string(x) == "null" { 310 t.Value = nil 311 return nil 312 } 313 var h0 InsertReplaceEdit 314 if err := json.Unmarshal(x, &h0); err == nil { 315 t.Value = h0 316 return nil 317 } 318 var h1 TextEdit 319 if err := json.Unmarshal(x, &h1); err == nil { 320 t.Value = h1 321 return nil 322 } 323 return &UnmarshalError{"unmarshal failed to match one of [InsertReplaceEdit TextEdit]"} 324 } 325 326 func (t Or_Definition) MarshalJSON() ([]byte, error) { 327 switch x := t.Value.(type) { 328 case Location: 329 return json.Marshal(x) 330 case []Location: 331 return json.Marshal(x) 332 case nil: 333 return []byte("null"), nil 334 } 335 return nil, fmt.Errorf("type %T not one of [Location []Location]", t) 336 } 337 338 func (t *Or_Definition) UnmarshalJSON(x []byte) error { 339 if string(x) == "null" { 340 t.Value = nil 341 return nil 342 } 343 var h0 Location 344 if err := json.Unmarshal(x, &h0); err == nil { 345 t.Value = h0 346 return nil 347 } 348 var h1 []Location 349 if err := json.Unmarshal(x, &h1); err == nil { 350 t.Value = h1 351 return nil 352 } 353 return &UnmarshalError{"unmarshal failed to match one of [Location []Location]"} 354 } 355 356 func (t Or_Diagnostic_code) MarshalJSON() ([]byte, error) { 357 switch x := t.Value.(type) { 358 case int32: 359 return json.Marshal(x) 360 case string: 361 return json.Marshal(x) 362 case nil: 363 return []byte("null"), nil 364 } 365 return nil, fmt.Errorf("type %T not one of [int32 string]", t) 366 } 367 368 func (t *Or_Diagnostic_code) UnmarshalJSON(x []byte) error { 369 if string(x) == "null" { 370 t.Value = nil 371 return nil 372 } 373 var h0 int32 374 if err := json.Unmarshal(x, &h0); err == nil { 375 t.Value = h0 376 return nil 377 } 378 var h1 string 379 if err := json.Unmarshal(x, &h1); err == nil { 380 t.Value = h1 381 return nil 382 } 383 return &UnmarshalError{"unmarshal failed to match one of [int32 string]"} 384 } 385 386 func (t Or_DocumentDiagnosticReport) MarshalJSON() ([]byte, error) { 387 switch x := t.Value.(type) { 388 case RelatedFullDocumentDiagnosticReport: 389 return json.Marshal(x) 390 case RelatedUnchangedDocumentDiagnosticReport: 391 return json.Marshal(x) 392 case nil: 393 return []byte("null"), nil 394 } 395 return nil, fmt.Errorf("type %T not one of [RelatedFullDocumentDiagnosticReport RelatedUnchangedDocumentDiagnosticReport]", t) 396 } 397 398 func (t *Or_DocumentDiagnosticReport) UnmarshalJSON(x []byte) error { 399 if string(x) == "null" { 400 t.Value = nil 401 return nil 402 } 403 var h0 RelatedFullDocumentDiagnosticReport 404 if err := json.Unmarshal(x, &h0); err == nil { 405 t.Value = h0 406 return nil 407 } 408 var h1 RelatedUnchangedDocumentDiagnosticReport 409 if err := json.Unmarshal(x, &h1); err == nil { 410 t.Value = h1 411 return nil 412 } 413 return &UnmarshalError{"unmarshal failed to match one of [RelatedFullDocumentDiagnosticReport RelatedUnchangedDocumentDiagnosticReport]"} 414 } 415 416 func (t Or_DocumentDiagnosticReportPartialResult_relatedDocuments_Value) MarshalJSON() ([]byte, error) { 417 switch x := t.Value.(type) { 418 case FullDocumentDiagnosticReport: 419 return json.Marshal(x) 420 case UnchangedDocumentDiagnosticReport: 421 return json.Marshal(x) 422 case nil: 423 return []byte("null"), nil 424 } 425 return nil, fmt.Errorf("type %T not one of [FullDocumentDiagnosticReport UnchangedDocumentDiagnosticReport]", t) 426 } 427 428 func (t *Or_DocumentDiagnosticReportPartialResult_relatedDocuments_Value) UnmarshalJSON(x []byte) error { 429 if string(x) == "null" { 430 t.Value = nil 431 return nil 432 } 433 var h0 FullDocumentDiagnosticReport 434 if err := json.Unmarshal(x, &h0); err == nil { 435 t.Value = h0 436 return nil 437 } 438 var h1 UnchangedDocumentDiagnosticReport 439 if err := json.Unmarshal(x, &h1); err == nil { 440 t.Value = h1 441 return nil 442 } 443 return &UnmarshalError{"unmarshal failed to match one of [FullDocumentDiagnosticReport UnchangedDocumentDiagnosticReport]"} 444 } 445 446 func (t Or_DocumentFilter) MarshalJSON() ([]byte, error) { 447 switch x := t.Value.(type) { 448 case NotebookCellTextDocumentFilter: 449 return json.Marshal(x) 450 case TextDocumentFilter: 451 return json.Marshal(x) 452 case nil: 453 return []byte("null"), nil 454 } 455 return nil, fmt.Errorf("type %T not one of [NotebookCellTextDocumentFilter TextDocumentFilter]", t) 456 } 457 458 func (t *Or_DocumentFilter) UnmarshalJSON(x []byte) error { 459 if string(x) == "null" { 460 t.Value = nil 461 return nil 462 } 463 var h0 NotebookCellTextDocumentFilter 464 if err := json.Unmarshal(x, &h0); err == nil { 465 t.Value = h0 466 return nil 467 } 468 var h1 TextDocumentFilter 469 if err := json.Unmarshal(x, &h1); err == nil { 470 t.Value = h1 471 return nil 472 } 473 return &UnmarshalError{"unmarshal failed to match one of [NotebookCellTextDocumentFilter TextDocumentFilter]"} 474 } 475 476 func (t Or_GlobPattern) MarshalJSON() ([]byte, error) { 477 switch x := t.Value.(type) { 478 case Pattern: 479 return json.Marshal(x) 480 case RelativePattern: 481 return json.Marshal(x) 482 case nil: 483 return []byte("null"), nil 484 } 485 return nil, fmt.Errorf("type %T not one of [Pattern RelativePattern]", t) 486 } 487 488 func (t *Or_GlobPattern) UnmarshalJSON(x []byte) error { 489 if string(x) == "null" { 490 t.Value = nil 491 return nil 492 } 493 var h0 Pattern 494 if err := json.Unmarshal(x, &h0); err == nil { 495 t.Value = h0 496 return nil 497 } 498 var h1 RelativePattern 499 if err := json.Unmarshal(x, &h1); err == nil { 500 t.Value = h1 501 return nil 502 } 503 return &UnmarshalError{"unmarshal failed to match one of [Pattern RelativePattern]"} 504 } 505 506 func (t Or_Hover_contents) MarshalJSON() ([]byte, error) { 507 switch x := t.Value.(type) { 508 case MarkedString: 509 return json.Marshal(x) 510 case MarkupContent: 511 return json.Marshal(x) 512 case []MarkedString: 513 return json.Marshal(x) 514 case nil: 515 return []byte("null"), nil 516 } 517 return nil, fmt.Errorf("type %T not one of [MarkedString MarkupContent []MarkedString]", t) 518 } 519 520 func (t *Or_Hover_contents) UnmarshalJSON(x []byte) error { 521 if string(x) == "null" { 522 t.Value = nil 523 return nil 524 } 525 var h0 MarkedString 526 if err := json.Unmarshal(x, &h0); err == nil { 527 t.Value = h0 528 return nil 529 } 530 var h1 MarkupContent 531 if err := json.Unmarshal(x, &h1); err == nil { 532 t.Value = h1 533 return nil 534 } 535 var h2 []MarkedString 536 if err := json.Unmarshal(x, &h2); err == nil { 537 t.Value = h2 538 return nil 539 } 540 return &UnmarshalError{"unmarshal failed to match one of [MarkedString MarkupContent []MarkedString]"} 541 } 542 543 func (t Or_InlayHint_label) MarshalJSON() ([]byte, error) { 544 switch x := t.Value.(type) { 545 case []InlayHintLabelPart: 546 return json.Marshal(x) 547 case string: 548 return json.Marshal(x) 549 case nil: 550 return []byte("null"), nil 551 } 552 return nil, fmt.Errorf("type %T not one of [[]InlayHintLabelPart string]", t) 553 } 554 555 func (t *Or_InlayHint_label) UnmarshalJSON(x []byte) error { 556 if string(x) == "null" { 557 t.Value = nil 558 return nil 559 } 560 var h0 []InlayHintLabelPart 561 if err := json.Unmarshal(x, &h0); err == nil { 562 t.Value = h0 563 return nil 564 } 565 var h1 string 566 if err := json.Unmarshal(x, &h1); err == nil { 567 t.Value = h1 568 return nil 569 } 570 return &UnmarshalError{"unmarshal failed to match one of [[]InlayHintLabelPart string]"} 571 } 572 573 func (t Or_InlineCompletionItem_insertText) MarshalJSON() ([]byte, error) { 574 switch x := t.Value.(type) { 575 case StringValue: 576 return json.Marshal(x) 577 case string: 578 return json.Marshal(x) 579 case nil: 580 return []byte("null"), nil 581 } 582 return nil, fmt.Errorf("type %T not one of [StringValue string]", t) 583 } 584 585 func (t *Or_InlineCompletionItem_insertText) UnmarshalJSON(x []byte) error { 586 if string(x) == "null" { 587 t.Value = nil 588 return nil 589 } 590 var h0 StringValue 591 if err := json.Unmarshal(x, &h0); err == nil { 592 t.Value = h0 593 return nil 594 } 595 var h1 string 596 if err := json.Unmarshal(x, &h1); err == nil { 597 t.Value = h1 598 return nil 599 } 600 return &UnmarshalError{"unmarshal failed to match one of [StringValue string]"} 601 } 602 603 func (t Or_InlineValue) MarshalJSON() ([]byte, error) { 604 switch x := t.Value.(type) { 605 case InlineValueEvaluatableExpression: 606 return json.Marshal(x) 607 case InlineValueText: 608 return json.Marshal(x) 609 case InlineValueVariableLookup: 610 return json.Marshal(x) 611 case nil: 612 return []byte("null"), nil 613 } 614 return nil, fmt.Errorf("type %T not one of [InlineValueEvaluatableExpression InlineValueText InlineValueVariableLookup]", t) 615 } 616 617 func (t *Or_InlineValue) UnmarshalJSON(x []byte) error { 618 if string(x) == "null" { 619 t.Value = nil 620 return nil 621 } 622 var h0 InlineValueEvaluatableExpression 623 if err := json.Unmarshal(x, &h0); err == nil { 624 t.Value = h0 625 return nil 626 } 627 var h1 InlineValueText 628 if err := json.Unmarshal(x, &h1); err == nil { 629 t.Value = h1 630 return nil 631 } 632 var h2 InlineValueVariableLookup 633 if err := json.Unmarshal(x, &h2); err == nil { 634 t.Value = h2 635 return nil 636 } 637 return &UnmarshalError{"unmarshal failed to match one of [InlineValueEvaluatableExpression InlineValueText InlineValueVariableLookup]"} 638 } 639 640 func (t Or_MarkedString) MarshalJSON() ([]byte, error) { 641 switch x := t.Value.(type) { 642 case MarkedStringWithLanguage: 643 return json.Marshal(x) 644 case string: 645 return json.Marshal(x) 646 case nil: 647 return []byte("null"), nil 648 } 649 return nil, fmt.Errorf("type %T not one of [MarkedStringWithLanguage string]", t) 650 } 651 652 func (t *Or_MarkedString) UnmarshalJSON(x []byte) error { 653 if string(x) == "null" { 654 t.Value = nil 655 return nil 656 } 657 var h0 MarkedStringWithLanguage 658 if err := json.Unmarshal(x, &h0); err == nil { 659 t.Value = h0 660 return nil 661 } 662 var h1 string 663 if err := json.Unmarshal(x, &h1); err == nil { 664 t.Value = h1 665 return nil 666 } 667 return &UnmarshalError{"unmarshal failed to match one of [MarkedStringWithLanguage string]"} 668 } 669 670 func (t Or_NotebookCellTextDocumentFilter_notebook) MarshalJSON() ([]byte, error) { 671 switch x := t.Value.(type) { 672 case NotebookDocumentFilter: 673 return json.Marshal(x) 674 case string: 675 return json.Marshal(x) 676 case nil: 677 return []byte("null"), nil 678 } 679 return nil, fmt.Errorf("type %T not one of [NotebookDocumentFilter string]", t) 680 } 681 682 func (t *Or_NotebookCellTextDocumentFilter_notebook) UnmarshalJSON(x []byte) error { 683 if string(x) == "null" { 684 t.Value = nil 685 return nil 686 } 687 var h0 NotebookDocumentFilter 688 if err := json.Unmarshal(x, &h0); err == nil { 689 t.Value = h0 690 return nil 691 } 692 var h1 string 693 if err := json.Unmarshal(x, &h1); err == nil { 694 t.Value = h1 695 return nil 696 } 697 return &UnmarshalError{"unmarshal failed to match one of [NotebookDocumentFilter string]"} 698 } 699 700 func (t Or_NotebookDocumentFilter) MarshalJSON() ([]byte, error) { 701 switch x := t.Value.(type) { 702 case NotebookDocumentFilterNotebookType: 703 return json.Marshal(x) 704 case NotebookDocumentFilterPattern: 705 return json.Marshal(x) 706 case NotebookDocumentFilterScheme: 707 return json.Marshal(x) 708 case nil: 709 return []byte("null"), nil 710 } 711 return nil, fmt.Errorf("type %T not one of [NotebookDocumentFilterNotebookType NotebookDocumentFilterPattern NotebookDocumentFilterScheme]", t) 712 } 713 714 func (t *Or_NotebookDocumentFilter) UnmarshalJSON(x []byte) error { 715 if string(x) == "null" { 716 t.Value = nil 717 return nil 718 } 719 var h0 NotebookDocumentFilterNotebookType 720 if err := json.Unmarshal(x, &h0); err == nil { 721 t.Value = h0 722 return nil 723 } 724 var h1 NotebookDocumentFilterPattern 725 if err := json.Unmarshal(x, &h1); err == nil { 726 t.Value = h1 727 return nil 728 } 729 var h2 NotebookDocumentFilterScheme 730 if err := json.Unmarshal(x, &h2); err == nil { 731 t.Value = h2 732 return nil 733 } 734 return &UnmarshalError{"unmarshal failed to match one of [NotebookDocumentFilterNotebookType NotebookDocumentFilterPattern NotebookDocumentFilterScheme]"} 735 } 736 737 func (t Or_NotebookDocumentFilterWithCells_notebook) MarshalJSON() ([]byte, error) { 738 switch x := t.Value.(type) { 739 case NotebookDocumentFilter: 740 return json.Marshal(x) 741 case string: 742 return json.Marshal(x) 743 case nil: 744 return []byte("null"), nil 745 } 746 return nil, fmt.Errorf("type %T not one of [NotebookDocumentFilter string]", t) 747 } 748 749 func (t *Or_NotebookDocumentFilterWithCells_notebook) UnmarshalJSON(x []byte) error { 750 if string(x) == "null" { 751 t.Value = nil 752 return nil 753 } 754 var h0 NotebookDocumentFilter 755 if err := json.Unmarshal(x, &h0); err == nil { 756 t.Value = h0 757 return nil 758 } 759 var h1 string 760 if err := json.Unmarshal(x, &h1); err == nil { 761 t.Value = h1 762 return nil 763 } 764 return &UnmarshalError{"unmarshal failed to match one of [NotebookDocumentFilter string]"} 765 } 766 767 func (t Or_NotebookDocumentFilterWithNotebook_notebook) MarshalJSON() ([]byte, error) { 768 switch x := t.Value.(type) { 769 case NotebookDocumentFilter: 770 return json.Marshal(x) 771 case string: 772 return json.Marshal(x) 773 case nil: 774 return []byte("null"), nil 775 } 776 return nil, fmt.Errorf("type %T not one of [NotebookDocumentFilter string]", t) 777 } 778 779 func (t *Or_NotebookDocumentFilterWithNotebook_notebook) UnmarshalJSON(x []byte) error { 780 if string(x) == "null" { 781 t.Value = nil 782 return nil 783 } 784 var h0 NotebookDocumentFilter 785 if err := json.Unmarshal(x, &h0); err == nil { 786 t.Value = h0 787 return nil 788 } 789 var h1 string 790 if err := json.Unmarshal(x, &h1); err == nil { 791 t.Value = h1 792 return nil 793 } 794 return &UnmarshalError{"unmarshal failed to match one of [NotebookDocumentFilter string]"} 795 } 796 797 func (t Or_NotebookDocumentSyncOptions_notebookSelector_Elem) MarshalJSON() ([]byte, error) { 798 switch x := t.Value.(type) { 799 case NotebookDocumentFilterWithCells: 800 return json.Marshal(x) 801 case NotebookDocumentFilterWithNotebook: 802 return json.Marshal(x) 803 case nil: 804 return []byte("null"), nil 805 } 806 return nil, fmt.Errorf("type %T not one of [NotebookDocumentFilterWithCells NotebookDocumentFilterWithNotebook]", t) 807 } 808 809 func (t *Or_NotebookDocumentSyncOptions_notebookSelector_Elem) UnmarshalJSON(x []byte) error { 810 if string(x) == "null" { 811 t.Value = nil 812 return nil 813 } 814 var h0 NotebookDocumentFilterWithCells 815 if err := json.Unmarshal(x, &h0); err == nil { 816 t.Value = h0 817 return nil 818 } 819 var h1 NotebookDocumentFilterWithNotebook 820 if err := json.Unmarshal(x, &h1); err == nil { 821 t.Value = h1 822 return nil 823 } 824 return &UnmarshalError{"unmarshal failed to match one of [NotebookDocumentFilterWithCells NotebookDocumentFilterWithNotebook]"} 825 } 826 827 func (t Or_RelatedFullDocumentDiagnosticReport_relatedDocuments_Value) MarshalJSON() ([]byte, error) { 828 switch x := t.Value.(type) { 829 case FullDocumentDiagnosticReport: 830 return json.Marshal(x) 831 case UnchangedDocumentDiagnosticReport: 832 return json.Marshal(x) 833 case nil: 834 return []byte("null"), nil 835 } 836 return nil, fmt.Errorf("type %T not one of [FullDocumentDiagnosticReport UnchangedDocumentDiagnosticReport]", t) 837 } 838 839 func (t *Or_RelatedFullDocumentDiagnosticReport_relatedDocuments_Value) UnmarshalJSON(x []byte) error { 840 if string(x) == "null" { 841 t.Value = nil 842 return nil 843 } 844 var h0 FullDocumentDiagnosticReport 845 if err := json.Unmarshal(x, &h0); err == nil { 846 t.Value = h0 847 return nil 848 } 849 var h1 UnchangedDocumentDiagnosticReport 850 if err := json.Unmarshal(x, &h1); err == nil { 851 t.Value = h1 852 return nil 853 } 854 return &UnmarshalError{"unmarshal failed to match one of [FullDocumentDiagnosticReport UnchangedDocumentDiagnosticReport]"} 855 } 856 857 func (t Or_RelatedUnchangedDocumentDiagnosticReport_relatedDocuments_Value) MarshalJSON() ([]byte, error) { 858 switch x := t.Value.(type) { 859 case FullDocumentDiagnosticReport: 860 return json.Marshal(x) 861 case UnchangedDocumentDiagnosticReport: 862 return json.Marshal(x) 863 case nil: 864 return []byte("null"), nil 865 } 866 return nil, fmt.Errorf("type %T not one of [FullDocumentDiagnosticReport UnchangedDocumentDiagnosticReport]", t) 867 } 868 869 func (t *Or_RelatedUnchangedDocumentDiagnosticReport_relatedDocuments_Value) UnmarshalJSON(x []byte) error { 870 if string(x) == "null" { 871 t.Value = nil 872 return nil 873 } 874 var h0 FullDocumentDiagnosticReport 875 if err := json.Unmarshal(x, &h0); err == nil { 876 t.Value = h0 877 return nil 878 } 879 var h1 UnchangedDocumentDiagnosticReport 880 if err := json.Unmarshal(x, &h1); err == nil { 881 t.Value = h1 882 return nil 883 } 884 return &UnmarshalError{"unmarshal failed to match one of [FullDocumentDiagnosticReport UnchangedDocumentDiagnosticReport]"} 885 } 886 887 func (t Or_Result_textDocument_codeAction_Item0_Elem) MarshalJSON() ([]byte, error) { 888 switch x := t.Value.(type) { 889 case CodeAction: 890 return json.Marshal(x) 891 case Command: 892 return json.Marshal(x) 893 case nil: 894 return []byte("null"), nil 895 } 896 return nil, fmt.Errorf("type %T not one of [CodeAction Command]", t) 897 } 898 899 func (t *Or_Result_textDocument_codeAction_Item0_Elem) UnmarshalJSON(x []byte) error { 900 if string(x) == "null" { 901 t.Value = nil 902 return nil 903 } 904 var h0 CodeAction 905 if err := json.Unmarshal(x, &h0); err == nil { 906 t.Value = h0 907 return nil 908 } 909 var h1 Command 910 if err := json.Unmarshal(x, &h1); err == nil { 911 t.Value = h1 912 return nil 913 } 914 return &UnmarshalError{"unmarshal failed to match one of [CodeAction Command]"} 915 } 916 917 func (t Or_Result_textDocument_inlineCompletion) MarshalJSON() ([]byte, error) { 918 switch x := t.Value.(type) { 919 case InlineCompletionList: 920 return json.Marshal(x) 921 case []InlineCompletionItem: 922 return json.Marshal(x) 923 case nil: 924 return []byte("null"), nil 925 } 926 return nil, fmt.Errorf("type %T not one of [InlineCompletionList []InlineCompletionItem]", t) 927 } 928 929 func (t *Or_Result_textDocument_inlineCompletion) UnmarshalJSON(x []byte) error { 930 if string(x) == "null" { 931 t.Value = nil 932 return nil 933 } 934 var h0 InlineCompletionList 935 if err := json.Unmarshal(x, &h0); err == nil { 936 t.Value = h0 937 return nil 938 } 939 var h1 []InlineCompletionItem 940 if err := json.Unmarshal(x, &h1); err == nil { 941 t.Value = h1 942 return nil 943 } 944 return &UnmarshalError{"unmarshal failed to match one of [InlineCompletionList []InlineCompletionItem]"} 945 } 946 947 func (t Or_SemanticTokensOptions_full) MarshalJSON() ([]byte, error) { 948 switch x := t.Value.(type) { 949 case SemanticTokensFullDelta: 950 return json.Marshal(x) 951 case bool: 952 return json.Marshal(x) 953 case nil: 954 return []byte("null"), nil 955 } 956 return nil, fmt.Errorf("type %T not one of [SemanticTokensFullDelta bool]", t) 957 } 958 959 func (t *Or_SemanticTokensOptions_full) UnmarshalJSON(x []byte) error { 960 if string(x) == "null" { 961 t.Value = nil 962 return nil 963 } 964 var h0 SemanticTokensFullDelta 965 if err := json.Unmarshal(x, &h0); err == nil { 966 t.Value = h0 967 return nil 968 } 969 var h1 bool 970 if err := json.Unmarshal(x, &h1); err == nil { 971 t.Value = h1 972 return nil 973 } 974 return &UnmarshalError{"unmarshal failed to match one of [SemanticTokensFullDelta bool]"} 975 } 976 977 func (t Or_SemanticTokensOptions_range) MarshalJSON() ([]byte, error) { 978 switch x := t.Value.(type) { 979 case PRangeESemanticTokensOptions: 980 return json.Marshal(x) 981 case bool: 982 return json.Marshal(x) 983 case nil: 984 return []byte("null"), nil 985 } 986 return nil, fmt.Errorf("type %T not one of [PRangeESemanticTokensOptions bool]", t) 987 } 988 989 func (t *Or_SemanticTokensOptions_range) UnmarshalJSON(x []byte) error { 990 if string(x) == "null" { 991 t.Value = nil 992 return nil 993 } 994 var h0 PRangeESemanticTokensOptions 995 if err := json.Unmarshal(x, &h0); err == nil { 996 t.Value = h0 997 return nil 998 } 999 var h1 bool 1000 if err := json.Unmarshal(x, &h1); err == nil { 1001 t.Value = h1 1002 return nil 1003 } 1004 return &UnmarshalError{"unmarshal failed to match one of [PRangeESemanticTokensOptions bool]"} 1005 } 1006 1007 func (t Or_ServerCapabilities_callHierarchyProvider) MarshalJSON() ([]byte, error) { 1008 switch x := t.Value.(type) { 1009 case CallHierarchyOptions: 1010 return json.Marshal(x) 1011 case CallHierarchyRegistrationOptions: 1012 return json.Marshal(x) 1013 case bool: 1014 return json.Marshal(x) 1015 case nil: 1016 return []byte("null"), nil 1017 } 1018 return nil, fmt.Errorf("type %T not one of [CallHierarchyOptions CallHierarchyRegistrationOptions bool]", t) 1019 } 1020 1021 func (t *Or_ServerCapabilities_callHierarchyProvider) UnmarshalJSON(x []byte) error { 1022 if string(x) == "null" { 1023 t.Value = nil 1024 return nil 1025 } 1026 var h0 CallHierarchyOptions 1027 if err := json.Unmarshal(x, &h0); err == nil { 1028 t.Value = h0 1029 return nil 1030 } 1031 var h1 CallHierarchyRegistrationOptions 1032 if err := json.Unmarshal(x, &h1); err == nil { 1033 t.Value = h1 1034 return nil 1035 } 1036 var h2 bool 1037 if err := json.Unmarshal(x, &h2); err == nil { 1038 t.Value = h2 1039 return nil 1040 } 1041 return &UnmarshalError{"unmarshal failed to match one of [CallHierarchyOptions CallHierarchyRegistrationOptions bool]"} 1042 } 1043 1044 func (t Or_ServerCapabilities_codeActionProvider) MarshalJSON() ([]byte, error) { 1045 switch x := t.Value.(type) { 1046 case CodeActionOptions: 1047 return json.Marshal(x) 1048 case bool: 1049 return json.Marshal(x) 1050 case nil: 1051 return []byte("null"), nil 1052 } 1053 return nil, fmt.Errorf("type %T not one of [CodeActionOptions bool]", t) 1054 } 1055 1056 func (t *Or_ServerCapabilities_codeActionProvider) UnmarshalJSON(x []byte) error { 1057 if string(x) == "null" { 1058 t.Value = nil 1059 return nil 1060 } 1061 var h0 CodeActionOptions 1062 if err := json.Unmarshal(x, &h0); err == nil { 1063 t.Value = h0 1064 return nil 1065 } 1066 var h1 bool 1067 if err := json.Unmarshal(x, &h1); err == nil { 1068 t.Value = h1 1069 return nil 1070 } 1071 return &UnmarshalError{"unmarshal failed to match one of [CodeActionOptions bool]"} 1072 } 1073 1074 func (t Or_ServerCapabilities_colorProvider) MarshalJSON() ([]byte, error) { 1075 switch x := t.Value.(type) { 1076 case DocumentColorOptions: 1077 return json.Marshal(x) 1078 case DocumentColorRegistrationOptions: 1079 return json.Marshal(x) 1080 case bool: 1081 return json.Marshal(x) 1082 case nil: 1083 return []byte("null"), nil 1084 } 1085 return nil, fmt.Errorf("type %T not one of [DocumentColorOptions DocumentColorRegistrationOptions bool]", t) 1086 } 1087 1088 func (t *Or_ServerCapabilities_colorProvider) UnmarshalJSON(x []byte) error { 1089 if string(x) == "null" { 1090 t.Value = nil 1091 return nil 1092 } 1093 var h0 DocumentColorOptions 1094 if err := json.Unmarshal(x, &h0); err == nil { 1095 t.Value = h0 1096 return nil 1097 } 1098 var h1 DocumentColorRegistrationOptions 1099 if err := json.Unmarshal(x, &h1); err == nil { 1100 t.Value = h1 1101 return nil 1102 } 1103 var h2 bool 1104 if err := json.Unmarshal(x, &h2); err == nil { 1105 t.Value = h2 1106 return nil 1107 } 1108 return &UnmarshalError{"unmarshal failed to match one of [DocumentColorOptions DocumentColorRegistrationOptions bool]"} 1109 } 1110 1111 func (t Or_ServerCapabilities_declarationProvider) MarshalJSON() ([]byte, error) { 1112 switch x := t.Value.(type) { 1113 case DeclarationOptions: 1114 return json.Marshal(x) 1115 case DeclarationRegistrationOptions: 1116 return json.Marshal(x) 1117 case bool: 1118 return json.Marshal(x) 1119 case nil: 1120 return []byte("null"), nil 1121 } 1122 return nil, fmt.Errorf("type %T not one of [DeclarationOptions DeclarationRegistrationOptions bool]", t) 1123 } 1124 1125 func (t *Or_ServerCapabilities_declarationProvider) UnmarshalJSON(x []byte) error { 1126 if string(x) == "null" { 1127 t.Value = nil 1128 return nil 1129 } 1130 var h0 DeclarationOptions 1131 if err := json.Unmarshal(x, &h0); err == nil { 1132 t.Value = h0 1133 return nil 1134 } 1135 var h1 DeclarationRegistrationOptions 1136 if err := json.Unmarshal(x, &h1); err == nil { 1137 t.Value = h1 1138 return nil 1139 } 1140 var h2 bool 1141 if err := json.Unmarshal(x, &h2); err == nil { 1142 t.Value = h2 1143 return nil 1144 } 1145 return &UnmarshalError{"unmarshal failed to match one of [DeclarationOptions DeclarationRegistrationOptions bool]"} 1146 } 1147 1148 func (t Or_ServerCapabilities_definitionProvider) MarshalJSON() ([]byte, error) { 1149 switch x := t.Value.(type) { 1150 case DefinitionOptions: 1151 return json.Marshal(x) 1152 case bool: 1153 return json.Marshal(x) 1154 case nil: 1155 return []byte("null"), nil 1156 } 1157 return nil, fmt.Errorf("type %T not one of [DefinitionOptions bool]", t) 1158 } 1159 1160 func (t *Or_ServerCapabilities_definitionProvider) UnmarshalJSON(x []byte) error { 1161 if string(x) == "null" { 1162 t.Value = nil 1163 return nil 1164 } 1165 var h0 DefinitionOptions 1166 if err := json.Unmarshal(x, &h0); err == nil { 1167 t.Value = h0 1168 return nil 1169 } 1170 var h1 bool 1171 if err := json.Unmarshal(x, &h1); err == nil { 1172 t.Value = h1 1173 return nil 1174 } 1175 return &UnmarshalError{"unmarshal failed to match one of [DefinitionOptions bool]"} 1176 } 1177 1178 func (t Or_ServerCapabilities_diagnosticProvider) MarshalJSON() ([]byte, error) { 1179 switch x := t.Value.(type) { 1180 case DiagnosticOptions: 1181 return json.Marshal(x) 1182 case DiagnosticRegistrationOptions: 1183 return json.Marshal(x) 1184 case nil: 1185 return []byte("null"), nil 1186 } 1187 return nil, fmt.Errorf("type %T not one of [DiagnosticOptions DiagnosticRegistrationOptions]", t) 1188 } 1189 1190 func (t *Or_ServerCapabilities_diagnosticProvider) UnmarshalJSON(x []byte) error { 1191 if string(x) == "null" { 1192 t.Value = nil 1193 return nil 1194 } 1195 var h0 DiagnosticOptions 1196 if err := json.Unmarshal(x, &h0); err == nil { 1197 t.Value = h0 1198 return nil 1199 } 1200 var h1 DiagnosticRegistrationOptions 1201 if err := json.Unmarshal(x, &h1); err == nil { 1202 t.Value = h1 1203 return nil 1204 } 1205 return &UnmarshalError{"unmarshal failed to match one of [DiagnosticOptions DiagnosticRegistrationOptions]"} 1206 } 1207 1208 func (t Or_ServerCapabilities_documentFormattingProvider) MarshalJSON() ([]byte, error) { 1209 switch x := t.Value.(type) { 1210 case DocumentFormattingOptions: 1211 return json.Marshal(x) 1212 case bool: 1213 return json.Marshal(x) 1214 case nil: 1215 return []byte("null"), nil 1216 } 1217 return nil, fmt.Errorf("type %T not one of [DocumentFormattingOptions bool]", t) 1218 } 1219 1220 func (t *Or_ServerCapabilities_documentFormattingProvider) UnmarshalJSON(x []byte) error { 1221 if string(x) == "null" { 1222 t.Value = nil 1223 return nil 1224 } 1225 var h0 DocumentFormattingOptions 1226 if err := json.Unmarshal(x, &h0); err == nil { 1227 t.Value = h0 1228 return nil 1229 } 1230 var h1 bool 1231 if err := json.Unmarshal(x, &h1); err == nil { 1232 t.Value = h1 1233 return nil 1234 } 1235 return &UnmarshalError{"unmarshal failed to match one of [DocumentFormattingOptions bool]"} 1236 } 1237 1238 func (t Or_ServerCapabilities_documentHighlightProvider) MarshalJSON() ([]byte, error) { 1239 switch x := t.Value.(type) { 1240 case DocumentHighlightOptions: 1241 return json.Marshal(x) 1242 case bool: 1243 return json.Marshal(x) 1244 case nil: 1245 return []byte("null"), nil 1246 } 1247 return nil, fmt.Errorf("type %T not one of [DocumentHighlightOptions bool]", t) 1248 } 1249 1250 func (t *Or_ServerCapabilities_documentHighlightProvider) UnmarshalJSON(x []byte) error { 1251 if string(x) == "null" { 1252 t.Value = nil 1253 return nil 1254 } 1255 var h0 DocumentHighlightOptions 1256 if err := json.Unmarshal(x, &h0); err == nil { 1257 t.Value = h0 1258 return nil 1259 } 1260 var h1 bool 1261 if err := json.Unmarshal(x, &h1); err == nil { 1262 t.Value = h1 1263 return nil 1264 } 1265 return &UnmarshalError{"unmarshal failed to match one of [DocumentHighlightOptions bool]"} 1266 } 1267 1268 func (t Or_ServerCapabilities_documentRangeFormattingProvider) MarshalJSON() ([]byte, error) { 1269 switch x := t.Value.(type) { 1270 case DocumentRangeFormattingOptions: 1271 return json.Marshal(x) 1272 case bool: 1273 return json.Marshal(x) 1274 case nil: 1275 return []byte("null"), nil 1276 } 1277 return nil, fmt.Errorf("type %T not one of [DocumentRangeFormattingOptions bool]", t) 1278 } 1279 1280 func (t *Or_ServerCapabilities_documentRangeFormattingProvider) UnmarshalJSON(x []byte) error { 1281 if string(x) == "null" { 1282 t.Value = nil 1283 return nil 1284 } 1285 var h0 DocumentRangeFormattingOptions 1286 if err := json.Unmarshal(x, &h0); err == nil { 1287 t.Value = h0 1288 return nil 1289 } 1290 var h1 bool 1291 if err := json.Unmarshal(x, &h1); err == nil { 1292 t.Value = h1 1293 return nil 1294 } 1295 return &UnmarshalError{"unmarshal failed to match one of [DocumentRangeFormattingOptions bool]"} 1296 } 1297 1298 func (t Or_ServerCapabilities_documentSymbolProvider) MarshalJSON() ([]byte, error) { 1299 switch x := t.Value.(type) { 1300 case DocumentSymbolOptions: 1301 return json.Marshal(x) 1302 case bool: 1303 return json.Marshal(x) 1304 case nil: 1305 return []byte("null"), nil 1306 } 1307 return nil, fmt.Errorf("type %T not one of [DocumentSymbolOptions bool]", t) 1308 } 1309 1310 func (t *Or_ServerCapabilities_documentSymbolProvider) UnmarshalJSON(x []byte) error { 1311 if string(x) == "null" { 1312 t.Value = nil 1313 return nil 1314 } 1315 var h0 DocumentSymbolOptions 1316 if err := json.Unmarshal(x, &h0); err == nil { 1317 t.Value = h0 1318 return nil 1319 } 1320 var h1 bool 1321 if err := json.Unmarshal(x, &h1); err == nil { 1322 t.Value = h1 1323 return nil 1324 } 1325 return &UnmarshalError{"unmarshal failed to match one of [DocumentSymbolOptions bool]"} 1326 } 1327 1328 func (t Or_ServerCapabilities_foldingRangeProvider) MarshalJSON() ([]byte, error) { 1329 switch x := t.Value.(type) { 1330 case FoldingRangeOptions: 1331 return json.Marshal(x) 1332 case FoldingRangeRegistrationOptions: 1333 return json.Marshal(x) 1334 case bool: 1335 return json.Marshal(x) 1336 case nil: 1337 return []byte("null"), nil 1338 } 1339 return nil, fmt.Errorf("type %T not one of [FoldingRangeOptions FoldingRangeRegistrationOptions bool]", t) 1340 } 1341 1342 func (t *Or_ServerCapabilities_foldingRangeProvider) UnmarshalJSON(x []byte) error { 1343 if string(x) == "null" { 1344 t.Value = nil 1345 return nil 1346 } 1347 var h0 FoldingRangeOptions 1348 if err := json.Unmarshal(x, &h0); err == nil { 1349 t.Value = h0 1350 return nil 1351 } 1352 var h1 FoldingRangeRegistrationOptions 1353 if err := json.Unmarshal(x, &h1); err == nil { 1354 t.Value = h1 1355 return nil 1356 } 1357 var h2 bool 1358 if err := json.Unmarshal(x, &h2); err == nil { 1359 t.Value = h2 1360 return nil 1361 } 1362 return &UnmarshalError{"unmarshal failed to match one of [FoldingRangeOptions FoldingRangeRegistrationOptions bool]"} 1363 } 1364 1365 func (t Or_ServerCapabilities_hoverProvider) MarshalJSON() ([]byte, error) { 1366 switch x := t.Value.(type) { 1367 case HoverOptions: 1368 return json.Marshal(x) 1369 case bool: 1370 return json.Marshal(x) 1371 case nil: 1372 return []byte("null"), nil 1373 } 1374 return nil, fmt.Errorf("type %T not one of [HoverOptions bool]", t) 1375 } 1376 1377 func (t *Or_ServerCapabilities_hoverProvider) UnmarshalJSON(x []byte) error { 1378 if string(x) == "null" { 1379 t.Value = nil 1380 return nil 1381 } 1382 var h0 HoverOptions 1383 if err := json.Unmarshal(x, &h0); err == nil { 1384 t.Value = h0 1385 return nil 1386 } 1387 var h1 bool 1388 if err := json.Unmarshal(x, &h1); err == nil { 1389 t.Value = h1 1390 return nil 1391 } 1392 return &UnmarshalError{"unmarshal failed to match one of [HoverOptions bool]"} 1393 } 1394 1395 func (t Or_ServerCapabilities_implementationProvider) MarshalJSON() ([]byte, error) { 1396 switch x := t.Value.(type) { 1397 case ImplementationOptions: 1398 return json.Marshal(x) 1399 case ImplementationRegistrationOptions: 1400 return json.Marshal(x) 1401 case bool: 1402 return json.Marshal(x) 1403 case nil: 1404 return []byte("null"), nil 1405 } 1406 return nil, fmt.Errorf("type %T not one of [ImplementationOptions ImplementationRegistrationOptions bool]", t) 1407 } 1408 1409 func (t *Or_ServerCapabilities_implementationProvider) UnmarshalJSON(x []byte) error { 1410 if string(x) == "null" { 1411 t.Value = nil 1412 return nil 1413 } 1414 var h0 ImplementationOptions 1415 if err := json.Unmarshal(x, &h0); err == nil { 1416 t.Value = h0 1417 return nil 1418 } 1419 var h1 ImplementationRegistrationOptions 1420 if err := json.Unmarshal(x, &h1); err == nil { 1421 t.Value = h1 1422 return nil 1423 } 1424 var h2 bool 1425 if err := json.Unmarshal(x, &h2); err == nil { 1426 t.Value = h2 1427 return nil 1428 } 1429 return &UnmarshalError{"unmarshal failed to match one of [ImplementationOptions ImplementationRegistrationOptions bool]"} 1430 } 1431 1432 func (t Or_ServerCapabilities_inlayHintProvider) MarshalJSON() ([]byte, error) { 1433 switch x := t.Value.(type) { 1434 case InlayHintOptions: 1435 return json.Marshal(x) 1436 case InlayHintRegistrationOptions: 1437 return json.Marshal(x) 1438 case bool: 1439 return json.Marshal(x) 1440 case nil: 1441 return []byte("null"), nil 1442 } 1443 return nil, fmt.Errorf("type %T not one of [InlayHintOptions InlayHintRegistrationOptions bool]", t) 1444 } 1445 1446 func (t *Or_ServerCapabilities_inlayHintProvider) UnmarshalJSON(x []byte) error { 1447 if string(x) == "null" { 1448 t.Value = nil 1449 return nil 1450 } 1451 var h0 InlayHintOptions 1452 if err := json.Unmarshal(x, &h0); err == nil { 1453 t.Value = h0 1454 return nil 1455 } 1456 var h1 InlayHintRegistrationOptions 1457 if err := json.Unmarshal(x, &h1); err == nil { 1458 t.Value = h1 1459 return nil 1460 } 1461 var h2 bool 1462 if err := json.Unmarshal(x, &h2); err == nil { 1463 t.Value = h2 1464 return nil 1465 } 1466 return &UnmarshalError{"unmarshal failed to match one of [InlayHintOptions InlayHintRegistrationOptions bool]"} 1467 } 1468 1469 func (t Or_ServerCapabilities_inlineCompletionProvider) MarshalJSON() ([]byte, error) { 1470 switch x := t.Value.(type) { 1471 case InlineCompletionOptions: 1472 return json.Marshal(x) 1473 case bool: 1474 return json.Marshal(x) 1475 case nil: 1476 return []byte("null"), nil 1477 } 1478 return nil, fmt.Errorf("type %T not one of [InlineCompletionOptions bool]", t) 1479 } 1480 1481 func (t *Or_ServerCapabilities_inlineCompletionProvider) UnmarshalJSON(x []byte) error { 1482 if string(x) == "null" { 1483 t.Value = nil 1484 return nil 1485 } 1486 var h0 InlineCompletionOptions 1487 if err := json.Unmarshal(x, &h0); err == nil { 1488 t.Value = h0 1489 return nil 1490 } 1491 var h1 bool 1492 if err := json.Unmarshal(x, &h1); err == nil { 1493 t.Value = h1 1494 return nil 1495 } 1496 return &UnmarshalError{"unmarshal failed to match one of [InlineCompletionOptions bool]"} 1497 } 1498 1499 func (t Or_ServerCapabilities_inlineValueProvider) MarshalJSON() ([]byte, error) { 1500 switch x := t.Value.(type) { 1501 case InlineValueOptions: 1502 return json.Marshal(x) 1503 case InlineValueRegistrationOptions: 1504 return json.Marshal(x) 1505 case bool: 1506 return json.Marshal(x) 1507 case nil: 1508 return []byte("null"), nil 1509 } 1510 return nil, fmt.Errorf("type %T not one of [InlineValueOptions InlineValueRegistrationOptions bool]", t) 1511 } 1512 1513 func (t *Or_ServerCapabilities_inlineValueProvider) UnmarshalJSON(x []byte) error { 1514 if string(x) == "null" { 1515 t.Value = nil 1516 return nil 1517 } 1518 var h0 InlineValueOptions 1519 if err := json.Unmarshal(x, &h0); err == nil { 1520 t.Value = h0 1521 return nil 1522 } 1523 var h1 InlineValueRegistrationOptions 1524 if err := json.Unmarshal(x, &h1); err == nil { 1525 t.Value = h1 1526 return nil 1527 } 1528 var h2 bool 1529 if err := json.Unmarshal(x, &h2); err == nil { 1530 t.Value = h2 1531 return nil 1532 } 1533 return &UnmarshalError{"unmarshal failed to match one of [InlineValueOptions InlineValueRegistrationOptions bool]"} 1534 } 1535 1536 func (t Or_ServerCapabilities_linkedEditingRangeProvider) MarshalJSON() ([]byte, error) { 1537 switch x := t.Value.(type) { 1538 case LinkedEditingRangeOptions: 1539 return json.Marshal(x) 1540 case LinkedEditingRangeRegistrationOptions: 1541 return json.Marshal(x) 1542 case bool: 1543 return json.Marshal(x) 1544 case nil: 1545 return []byte("null"), nil 1546 } 1547 return nil, fmt.Errorf("type %T not one of [LinkedEditingRangeOptions LinkedEditingRangeRegistrationOptions bool]", t) 1548 } 1549 1550 func (t *Or_ServerCapabilities_linkedEditingRangeProvider) UnmarshalJSON(x []byte) error { 1551 if string(x) == "null" { 1552 t.Value = nil 1553 return nil 1554 } 1555 var h0 LinkedEditingRangeOptions 1556 if err := json.Unmarshal(x, &h0); err == nil { 1557 t.Value = h0 1558 return nil 1559 } 1560 var h1 LinkedEditingRangeRegistrationOptions 1561 if err := json.Unmarshal(x, &h1); err == nil { 1562 t.Value = h1 1563 return nil 1564 } 1565 var h2 bool 1566 if err := json.Unmarshal(x, &h2); err == nil { 1567 t.Value = h2 1568 return nil 1569 } 1570 return &UnmarshalError{"unmarshal failed to match one of [LinkedEditingRangeOptions LinkedEditingRangeRegistrationOptions bool]"} 1571 } 1572 1573 func (t Or_ServerCapabilities_monikerProvider) MarshalJSON() ([]byte, error) { 1574 switch x := t.Value.(type) { 1575 case MonikerOptions: 1576 return json.Marshal(x) 1577 case MonikerRegistrationOptions: 1578 return json.Marshal(x) 1579 case bool: 1580 return json.Marshal(x) 1581 case nil: 1582 return []byte("null"), nil 1583 } 1584 return nil, fmt.Errorf("type %T not one of [MonikerOptions MonikerRegistrationOptions bool]", t) 1585 } 1586 1587 func (t *Or_ServerCapabilities_monikerProvider) UnmarshalJSON(x []byte) error { 1588 if string(x) == "null" { 1589 t.Value = nil 1590 return nil 1591 } 1592 var h0 MonikerOptions 1593 if err := json.Unmarshal(x, &h0); err == nil { 1594 t.Value = h0 1595 return nil 1596 } 1597 var h1 MonikerRegistrationOptions 1598 if err := json.Unmarshal(x, &h1); err == nil { 1599 t.Value = h1 1600 return nil 1601 } 1602 var h2 bool 1603 if err := json.Unmarshal(x, &h2); err == nil { 1604 t.Value = h2 1605 return nil 1606 } 1607 return &UnmarshalError{"unmarshal failed to match one of [MonikerOptions MonikerRegistrationOptions bool]"} 1608 } 1609 1610 func (t Or_ServerCapabilities_notebookDocumentSync) MarshalJSON() ([]byte, error) { 1611 switch x := t.Value.(type) { 1612 case NotebookDocumentSyncOptions: 1613 return json.Marshal(x) 1614 case NotebookDocumentSyncRegistrationOptions: 1615 return json.Marshal(x) 1616 case nil: 1617 return []byte("null"), nil 1618 } 1619 return nil, fmt.Errorf("type %T not one of [NotebookDocumentSyncOptions NotebookDocumentSyncRegistrationOptions]", t) 1620 } 1621 1622 func (t *Or_ServerCapabilities_notebookDocumentSync) UnmarshalJSON(x []byte) error { 1623 if string(x) == "null" { 1624 t.Value = nil 1625 return nil 1626 } 1627 var h0 NotebookDocumentSyncOptions 1628 if err := json.Unmarshal(x, &h0); err == nil { 1629 t.Value = h0 1630 return nil 1631 } 1632 var h1 NotebookDocumentSyncRegistrationOptions 1633 if err := json.Unmarshal(x, &h1); err == nil { 1634 t.Value = h1 1635 return nil 1636 } 1637 return &UnmarshalError{"unmarshal failed to match one of [NotebookDocumentSyncOptions NotebookDocumentSyncRegistrationOptions]"} 1638 } 1639 1640 func (t Or_ServerCapabilities_referencesProvider) MarshalJSON() ([]byte, error) { 1641 switch x := t.Value.(type) { 1642 case ReferenceOptions: 1643 return json.Marshal(x) 1644 case bool: 1645 return json.Marshal(x) 1646 case nil: 1647 return []byte("null"), nil 1648 } 1649 return nil, fmt.Errorf("type %T not one of [ReferenceOptions bool]", t) 1650 } 1651 1652 func (t *Or_ServerCapabilities_referencesProvider) UnmarshalJSON(x []byte) error { 1653 if string(x) == "null" { 1654 t.Value = nil 1655 return nil 1656 } 1657 var h0 ReferenceOptions 1658 if err := json.Unmarshal(x, &h0); err == nil { 1659 t.Value = h0 1660 return nil 1661 } 1662 var h1 bool 1663 if err := json.Unmarshal(x, &h1); err == nil { 1664 t.Value = h1 1665 return nil 1666 } 1667 return &UnmarshalError{"unmarshal failed to match one of [ReferenceOptions bool]"} 1668 } 1669 1670 func (t Or_ServerCapabilities_renameProvider) MarshalJSON() ([]byte, error) { 1671 switch x := t.Value.(type) { 1672 case RenameOptions: 1673 return json.Marshal(x) 1674 case bool: 1675 return json.Marshal(x) 1676 case nil: 1677 return []byte("null"), nil 1678 } 1679 return nil, fmt.Errorf("type %T not one of [RenameOptions bool]", t) 1680 } 1681 1682 func (t *Or_ServerCapabilities_renameProvider) UnmarshalJSON(x []byte) error { 1683 if string(x) == "null" { 1684 t.Value = nil 1685 return nil 1686 } 1687 var h0 RenameOptions 1688 if err := json.Unmarshal(x, &h0); err == nil { 1689 t.Value = h0 1690 return nil 1691 } 1692 var h1 bool 1693 if err := json.Unmarshal(x, &h1); err == nil { 1694 t.Value = h1 1695 return nil 1696 } 1697 return &UnmarshalError{"unmarshal failed to match one of [RenameOptions bool]"} 1698 } 1699 1700 func (t Or_ServerCapabilities_selectionRangeProvider) MarshalJSON() ([]byte, error) { 1701 switch x := t.Value.(type) { 1702 case SelectionRangeOptions: 1703 return json.Marshal(x) 1704 case SelectionRangeRegistrationOptions: 1705 return json.Marshal(x) 1706 case bool: 1707 return json.Marshal(x) 1708 case nil: 1709 return []byte("null"), nil 1710 } 1711 return nil, fmt.Errorf("type %T not one of [SelectionRangeOptions SelectionRangeRegistrationOptions bool]", t) 1712 } 1713 1714 func (t *Or_ServerCapabilities_selectionRangeProvider) UnmarshalJSON(x []byte) error { 1715 if string(x) == "null" { 1716 t.Value = nil 1717 return nil 1718 } 1719 var h0 SelectionRangeOptions 1720 if err := json.Unmarshal(x, &h0); err == nil { 1721 t.Value = h0 1722 return nil 1723 } 1724 var h1 SelectionRangeRegistrationOptions 1725 if err := json.Unmarshal(x, &h1); err == nil { 1726 t.Value = h1 1727 return nil 1728 } 1729 var h2 bool 1730 if err := json.Unmarshal(x, &h2); err == nil { 1731 t.Value = h2 1732 return nil 1733 } 1734 return &UnmarshalError{"unmarshal failed to match one of [SelectionRangeOptions SelectionRangeRegistrationOptions bool]"} 1735 } 1736 1737 func (t Or_ServerCapabilities_semanticTokensProvider) MarshalJSON() ([]byte, error) { 1738 switch x := t.Value.(type) { 1739 case SemanticTokensOptions: 1740 return json.Marshal(x) 1741 case SemanticTokensRegistrationOptions: 1742 return json.Marshal(x) 1743 case nil: 1744 return []byte("null"), nil 1745 } 1746 return nil, fmt.Errorf("type %T not one of [SemanticTokensOptions SemanticTokensRegistrationOptions]", t) 1747 } 1748 1749 func (t *Or_ServerCapabilities_semanticTokensProvider) UnmarshalJSON(x []byte) error { 1750 if string(x) == "null" { 1751 t.Value = nil 1752 return nil 1753 } 1754 var h0 SemanticTokensOptions 1755 if err := json.Unmarshal(x, &h0); err == nil { 1756 t.Value = h0 1757 return nil 1758 } 1759 var h1 SemanticTokensRegistrationOptions 1760 if err := json.Unmarshal(x, &h1); err == nil { 1761 t.Value = h1 1762 return nil 1763 } 1764 return &UnmarshalError{"unmarshal failed to match one of [SemanticTokensOptions SemanticTokensRegistrationOptions]"} 1765 } 1766 1767 func (t Or_ServerCapabilities_textDocumentSync) MarshalJSON() ([]byte, error) { 1768 switch x := t.Value.(type) { 1769 case TextDocumentSyncKind: 1770 return json.Marshal(x) 1771 case TextDocumentSyncOptions: 1772 return json.Marshal(x) 1773 case nil: 1774 return []byte("null"), nil 1775 } 1776 return nil, fmt.Errorf("type %T not one of [TextDocumentSyncKind TextDocumentSyncOptions]", t) 1777 } 1778 1779 func (t *Or_ServerCapabilities_textDocumentSync) UnmarshalJSON(x []byte) error { 1780 if string(x) == "null" { 1781 t.Value = nil 1782 return nil 1783 } 1784 var h0 TextDocumentSyncKind 1785 if err := json.Unmarshal(x, &h0); err == nil { 1786 t.Value = h0 1787 return nil 1788 } 1789 var h1 TextDocumentSyncOptions 1790 if err := json.Unmarshal(x, &h1); err == nil { 1791 t.Value = h1 1792 return nil 1793 } 1794 return &UnmarshalError{"unmarshal failed to match one of [TextDocumentSyncKind TextDocumentSyncOptions]"} 1795 } 1796 1797 func (t Or_ServerCapabilities_typeDefinitionProvider) MarshalJSON() ([]byte, error) { 1798 switch x := t.Value.(type) { 1799 case TypeDefinitionOptions: 1800 return json.Marshal(x) 1801 case TypeDefinitionRegistrationOptions: 1802 return json.Marshal(x) 1803 case bool: 1804 return json.Marshal(x) 1805 case nil: 1806 return []byte("null"), nil 1807 } 1808 return nil, fmt.Errorf("type %T not one of [TypeDefinitionOptions TypeDefinitionRegistrationOptions bool]", t) 1809 } 1810 1811 func (t *Or_ServerCapabilities_typeDefinitionProvider) UnmarshalJSON(x []byte) error { 1812 if string(x) == "null" { 1813 t.Value = nil 1814 return nil 1815 } 1816 var h0 TypeDefinitionOptions 1817 if err := json.Unmarshal(x, &h0); err == nil { 1818 t.Value = h0 1819 return nil 1820 } 1821 var h1 TypeDefinitionRegistrationOptions 1822 if err := json.Unmarshal(x, &h1); err == nil { 1823 t.Value = h1 1824 return nil 1825 } 1826 var h2 bool 1827 if err := json.Unmarshal(x, &h2); err == nil { 1828 t.Value = h2 1829 return nil 1830 } 1831 return &UnmarshalError{"unmarshal failed to match one of [TypeDefinitionOptions TypeDefinitionRegistrationOptions bool]"} 1832 } 1833 1834 func (t Or_ServerCapabilities_typeHierarchyProvider) MarshalJSON() ([]byte, error) { 1835 switch x := t.Value.(type) { 1836 case TypeHierarchyOptions: 1837 return json.Marshal(x) 1838 case TypeHierarchyRegistrationOptions: 1839 return json.Marshal(x) 1840 case bool: 1841 return json.Marshal(x) 1842 case nil: 1843 return []byte("null"), nil 1844 } 1845 return nil, fmt.Errorf("type %T not one of [TypeHierarchyOptions TypeHierarchyRegistrationOptions bool]", t) 1846 } 1847 1848 func (t *Or_ServerCapabilities_typeHierarchyProvider) UnmarshalJSON(x []byte) error { 1849 if string(x) == "null" { 1850 t.Value = nil 1851 return nil 1852 } 1853 var h0 TypeHierarchyOptions 1854 if err := json.Unmarshal(x, &h0); err == nil { 1855 t.Value = h0 1856 return nil 1857 } 1858 var h1 TypeHierarchyRegistrationOptions 1859 if err := json.Unmarshal(x, &h1); err == nil { 1860 t.Value = h1 1861 return nil 1862 } 1863 var h2 bool 1864 if err := json.Unmarshal(x, &h2); err == nil { 1865 t.Value = h2 1866 return nil 1867 } 1868 return &UnmarshalError{"unmarshal failed to match one of [TypeHierarchyOptions TypeHierarchyRegistrationOptions bool]"} 1869 } 1870 1871 func (t Or_ServerCapabilities_workspaceSymbolProvider) MarshalJSON() ([]byte, error) { 1872 switch x := t.Value.(type) { 1873 case WorkspaceSymbolOptions: 1874 return json.Marshal(x) 1875 case bool: 1876 return json.Marshal(x) 1877 case nil: 1878 return []byte("null"), nil 1879 } 1880 return nil, fmt.Errorf("type %T not one of [WorkspaceSymbolOptions bool]", t) 1881 } 1882 1883 func (t *Or_ServerCapabilities_workspaceSymbolProvider) UnmarshalJSON(x []byte) error { 1884 if string(x) == "null" { 1885 t.Value = nil 1886 return nil 1887 } 1888 var h0 WorkspaceSymbolOptions 1889 if err := json.Unmarshal(x, &h0); err == nil { 1890 t.Value = h0 1891 return nil 1892 } 1893 var h1 bool 1894 if err := json.Unmarshal(x, &h1); err == nil { 1895 t.Value = h1 1896 return nil 1897 } 1898 return &UnmarshalError{"unmarshal failed to match one of [WorkspaceSymbolOptions bool]"} 1899 } 1900 1901 func (t Or_SignatureInformation_documentation) MarshalJSON() ([]byte, error) { 1902 switch x := t.Value.(type) { 1903 case MarkupContent: 1904 return json.Marshal(x) 1905 case string: 1906 return json.Marshal(x) 1907 case nil: 1908 return []byte("null"), nil 1909 } 1910 return nil, fmt.Errorf("type %T not one of [MarkupContent string]", t) 1911 } 1912 1913 func (t *Or_SignatureInformation_documentation) UnmarshalJSON(x []byte) error { 1914 if string(x) == "null" { 1915 t.Value = nil 1916 return nil 1917 } 1918 var h0 MarkupContent 1919 if err := json.Unmarshal(x, &h0); err == nil { 1920 t.Value = h0 1921 return nil 1922 } 1923 var h1 string 1924 if err := json.Unmarshal(x, &h1); err == nil { 1925 t.Value = h1 1926 return nil 1927 } 1928 return &UnmarshalError{"unmarshal failed to match one of [MarkupContent string]"} 1929 } 1930 1931 func (t Or_TextDocumentEdit_edits_Elem) MarshalJSON() ([]byte, error) { 1932 switch x := t.Value.(type) { 1933 case AnnotatedTextEdit: 1934 return json.Marshal(x) 1935 case TextEdit: 1936 return json.Marshal(x) 1937 case nil: 1938 return []byte("null"), nil 1939 } 1940 return nil, fmt.Errorf("type %T not one of [AnnotatedTextEdit TextEdit]", t) 1941 } 1942 1943 func (t *Or_TextDocumentEdit_edits_Elem) UnmarshalJSON(x []byte) error { 1944 if string(x) == "null" { 1945 t.Value = nil 1946 return nil 1947 } 1948 var h0 AnnotatedTextEdit 1949 if err := json.Unmarshal(x, &h0); err == nil { 1950 t.Value = h0 1951 return nil 1952 } 1953 var h1 TextEdit 1954 if err := json.Unmarshal(x, &h1); err == nil { 1955 t.Value = h1 1956 return nil 1957 } 1958 return &UnmarshalError{"unmarshal failed to match one of [AnnotatedTextEdit TextEdit]"} 1959 } 1960 1961 func (t Or_TextDocumentFilter) MarshalJSON() ([]byte, error) { 1962 switch x := t.Value.(type) { 1963 case TextDocumentFilterLanguage: 1964 return json.Marshal(x) 1965 case TextDocumentFilterPattern: 1966 return json.Marshal(x) 1967 case TextDocumentFilterScheme: 1968 return json.Marshal(x) 1969 case nil: 1970 return []byte("null"), nil 1971 } 1972 return nil, fmt.Errorf("type %T not one of [TextDocumentFilterLanguage TextDocumentFilterPattern TextDocumentFilterScheme]", t) 1973 } 1974 1975 func (t *Or_TextDocumentFilter) UnmarshalJSON(x []byte) error { 1976 if string(x) == "null" { 1977 t.Value = nil 1978 return nil 1979 } 1980 var h0 TextDocumentFilterLanguage 1981 if err := json.Unmarshal(x, &h0); err == nil { 1982 t.Value = h0 1983 return nil 1984 } 1985 var h1 TextDocumentFilterPattern 1986 if err := json.Unmarshal(x, &h1); err == nil { 1987 t.Value = h1 1988 return nil 1989 } 1990 var h2 TextDocumentFilterScheme 1991 if err := json.Unmarshal(x, &h2); err == nil { 1992 t.Value = h2 1993 return nil 1994 } 1995 return &UnmarshalError{"unmarshal failed to match one of [TextDocumentFilterLanguage TextDocumentFilterPattern TextDocumentFilterScheme]"} 1996 } 1997 1998 func (t Or_TextDocumentSyncOptions_save) MarshalJSON() ([]byte, error) { 1999 switch x := t.Value.(type) { 2000 case SaveOptions: 2001 return json.Marshal(x) 2002 case bool: 2003 return json.Marshal(x) 2004 case nil: 2005 return []byte("null"), nil 2006 } 2007 return nil, fmt.Errorf("type %T not one of [SaveOptions bool]", t) 2008 } 2009 2010 func (t *Or_TextDocumentSyncOptions_save) UnmarshalJSON(x []byte) error { 2011 if string(x) == "null" { 2012 t.Value = nil 2013 return nil 2014 } 2015 var h0 SaveOptions 2016 if err := json.Unmarshal(x, &h0); err == nil { 2017 t.Value = h0 2018 return nil 2019 } 2020 var h1 bool 2021 if err := json.Unmarshal(x, &h1); err == nil { 2022 t.Value = h1 2023 return nil 2024 } 2025 return &UnmarshalError{"unmarshal failed to match one of [SaveOptions bool]"} 2026 } 2027 2028 func (t Or_WorkspaceDocumentDiagnosticReport) MarshalJSON() ([]byte, error) { 2029 switch x := t.Value.(type) { 2030 case WorkspaceFullDocumentDiagnosticReport: 2031 return json.Marshal(x) 2032 case WorkspaceUnchangedDocumentDiagnosticReport: 2033 return json.Marshal(x) 2034 case nil: 2035 return []byte("null"), nil 2036 } 2037 return nil, fmt.Errorf("type %T not one of [WorkspaceFullDocumentDiagnosticReport WorkspaceUnchangedDocumentDiagnosticReport]", t) 2038 } 2039 2040 func (t *Or_WorkspaceDocumentDiagnosticReport) UnmarshalJSON(x []byte) error { 2041 if string(x) == "null" { 2042 t.Value = nil 2043 return nil 2044 } 2045 var h0 WorkspaceFullDocumentDiagnosticReport 2046 if err := json.Unmarshal(x, &h0); err == nil { 2047 t.Value = h0 2048 return nil 2049 } 2050 var h1 WorkspaceUnchangedDocumentDiagnosticReport 2051 if err := json.Unmarshal(x, &h1); err == nil { 2052 t.Value = h1 2053 return nil 2054 } 2055 return &UnmarshalError{"unmarshal failed to match one of [WorkspaceFullDocumentDiagnosticReport WorkspaceUnchangedDocumentDiagnosticReport]"} 2056 } 2057 2058 func (t Or_WorkspaceEdit_documentChanges_Elem) MarshalJSON() ([]byte, error) { 2059 switch x := t.Value.(type) { 2060 case CreateFile: 2061 return json.Marshal(x) 2062 case DeleteFile: 2063 return json.Marshal(x) 2064 case RenameFile: 2065 return json.Marshal(x) 2066 case TextDocumentEdit: 2067 return json.Marshal(x) 2068 case nil: 2069 return []byte("null"), nil 2070 } 2071 return nil, fmt.Errorf("type %T not one of [CreateFile DeleteFile RenameFile TextDocumentEdit]", t) 2072 } 2073 2074 func (t *Or_WorkspaceEdit_documentChanges_Elem) UnmarshalJSON(x []byte) error { 2075 if string(x) == "null" { 2076 t.Value = nil 2077 return nil 2078 } 2079 var h0 CreateFile 2080 if err := json.Unmarshal(x, &h0); err == nil { 2081 t.Value = h0 2082 return nil 2083 } 2084 var h1 DeleteFile 2085 if err := json.Unmarshal(x, &h1); err == nil { 2086 t.Value = h1 2087 return nil 2088 } 2089 var h2 RenameFile 2090 if err := json.Unmarshal(x, &h2); err == nil { 2091 t.Value = h2 2092 return nil 2093 } 2094 var h3 TextDocumentEdit 2095 if err := json.Unmarshal(x, &h3); err == nil { 2096 t.Value = h3 2097 return nil 2098 } 2099 return &UnmarshalError{"unmarshal failed to match one of [CreateFile DeleteFile RenameFile TextDocumentEdit]"} 2100 } 2101 2102 func (t Or_textDocument_declaration) MarshalJSON() ([]byte, error) { 2103 switch x := t.Value.(type) { 2104 case Declaration: 2105 return json.Marshal(x) 2106 case []DeclarationLink: 2107 return json.Marshal(x) 2108 case nil: 2109 return []byte("null"), nil 2110 } 2111 return nil, fmt.Errorf("type %T not one of [Declaration []DeclarationLink]", t) 2112 } 2113 2114 func (t *Or_textDocument_declaration) UnmarshalJSON(x []byte) error { 2115 if string(x) == "null" { 2116 t.Value = nil 2117 return nil 2118 } 2119 var h0 Declaration 2120 if err := json.Unmarshal(x, &h0); err == nil { 2121 t.Value = h0 2122 return nil 2123 } 2124 var h1 []DeclarationLink 2125 if err := json.Unmarshal(x, &h1); err == nil { 2126 t.Value = h1 2127 return nil 2128 } 2129 return &UnmarshalError{"unmarshal failed to match one of [Declaration []DeclarationLink]"} 2130 }