blob: 3c9781ade0b3c9de74afef1a1d13bb97adbb08fe [file] [log] [blame]
// Copyright 2019-2022 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package protocol
// Code generated from version 3.17.0 of protocol/metaModel.json.
// git hash 8de18faed635819dd2bc631d2c26ce4a18f7cf4a (as of Fri Sep 16 13:04:31 2022)
// Code generated; DO NOT EDIT.
import "encoding/json"
import "errors"
import "fmt"
func (t OrFEditRangePItemDefaults) MarshalJSON() ([]byte, error) {
switch x := t.Value.(type) {
case FEditRangePItemDefaults:
return json.Marshal(x)
case Range:
return json.Marshal(x)
case nil:
return []byte("null"), nil
}
return nil, fmt.Errorf("type %T not one of [FEditRangePItemDefaults Range]", t)
}
func (t *OrFEditRangePItemDefaults) UnmarshalJSON(x []byte) error {
if string(x) == "null" {
t.Value = nil
return nil
}
var h0 FEditRangePItemDefaults
if err := json.Unmarshal(x, &h0); err == nil {
t.Value = h0
return nil
}
var h1 Range
if err := json.Unmarshal(x, &h1); err == nil {
t.Value = h1
return nil
}
return errors.New("unmarshal failed to match one of [FEditRangePItemDefaults Range]")
}
func (t OrFNotebookPNotebookSelector) MarshalJSON() ([]byte, error) {
switch x := t.Value.(type) {
case NotebookDocumentFilter:
return json.Marshal(x)
case string:
return json.Marshal(x)
case nil:
return []byte("null"), nil
}
return nil, fmt.Errorf("type %T not one of [NotebookDocumentFilter string]", t)
}
func (t *OrFNotebookPNotebookSelector) UnmarshalJSON(x []byte) error {
if string(x) == "null" {
t.Value = nil
return nil
}
var h0 NotebookDocumentFilter
if err := json.Unmarshal(x, &h0); err == nil {
t.Value = h0
return nil
}
var h1 string
if err := json.Unmarshal(x, &h1); err == nil {
t.Value = h1
return nil
}
return errors.New("unmarshal failed to match one of [NotebookDocumentFilter string]")
}
func (t OrPLocation_workspace_symbol) MarshalJSON() ([]byte, error) {
switch x := t.Value.(type) {
case Location:
return json.Marshal(x)
case PLocationMsg_workspace_symbol:
return json.Marshal(x)
case nil:
return []byte("null"), nil
}
return nil, fmt.Errorf("type %T not one of [Location PLocationMsg_workspace_symbol]", t)
}
func (t *OrPLocation_workspace_symbol) UnmarshalJSON(x []byte) error {
if string(x) == "null" {
t.Value = nil
return nil
}
var h0 Location
if err := json.Unmarshal(x, &h0); err == nil {
t.Value = h0
return nil
}
var h1 PLocationMsg_workspace_symbol
if err := json.Unmarshal(x, &h1); err == nil {
t.Value = h1
return nil
}
return errors.New("unmarshal failed to match one of [Location PLocationMsg_workspace_symbol]")
}
func (t OrPSection_workspace_didChangeConfiguration) MarshalJSON() ([]byte, error) {
switch x := t.Value.(type) {
case []string:
return json.Marshal(x)
case string:
return json.Marshal(x)
case nil:
return []byte("null"), nil
}
return nil, fmt.Errorf("type %T not one of [[]string string]", t)
}
func (t *OrPSection_workspace_didChangeConfiguration) UnmarshalJSON(x []byte) error {
if string(x) == "null" {
t.Value = nil
return nil
}
var h0 []string
if err := json.Unmarshal(x, &h0); err == nil {
t.Value = h0
return nil
}
var h1 string
if err := json.Unmarshal(x, &h1); err == nil {
t.Value = h1
return nil
}
return errors.New("unmarshal failed to match one of [[]string string]")
}
func (t OrPTooltipPLabel) MarshalJSON() ([]byte, error) {
switch x := t.Value.(type) {
case MarkupContent:
return json.Marshal(x)
case string:
return json.Marshal(x)
case nil:
return []byte("null"), nil
}
return nil, fmt.Errorf("type %T not one of [MarkupContent string]", t)
}
func (t *OrPTooltipPLabel) UnmarshalJSON(x []byte) error {
if string(x) == "null" {
t.Value = nil
return nil
}
var h0 MarkupContent
if err := json.Unmarshal(x, &h0); err == nil {
t.Value = h0
return nil
}
var h1 string
if err := json.Unmarshal(x, &h1); err == nil {
t.Value = h1
return nil
}
return errors.New("unmarshal failed to match one of [MarkupContent string]")
}
func (t OrPTooltip_textDocument_inlayHint) MarshalJSON() ([]byte, error) {
switch x := t.Value.(type) {
case MarkupContent:
return json.Marshal(x)
case string:
return json.Marshal(x)
case nil:
return []byte("null"), nil
}
return nil, fmt.Errorf("type %T not one of [MarkupContent string]", t)
}
func (t *OrPTooltip_textDocument_inlayHint) UnmarshalJSON(x []byte) error {
if string(x) == "null" {
t.Value = nil
return nil
}
var h0 MarkupContent
if err := json.Unmarshal(x, &h0); err == nil {
t.Value = h0
return nil
}
var h1 string
if err := json.Unmarshal(x, &h1); err == nil {
t.Value = h1
return nil
}
return errors.New("unmarshal failed to match one of [MarkupContent string]")
}
func (t Or_Definition) MarshalJSON() ([]byte, error) {
switch x := t.Value.(type) {
case Location:
return json.Marshal(x)
case []Location:
return json.Marshal(x)
case nil:
return []byte("null"), nil
}
return nil, fmt.Errorf("type %T not one of [Location []Location]", t)
}
func (t *Or_Definition) UnmarshalJSON(x []byte) error {
if string(x) == "null" {
t.Value = nil
return nil
}
var h0 Location
if err := json.Unmarshal(x, &h0); err == nil {
t.Value = h0
return nil
}
var h1 []Location
if err := json.Unmarshal(x, &h1); err == nil {
t.Value = h1
return nil
}
return errors.New("unmarshal failed to match one of [Location []Location]")
}
func (t Or_DocumentDiagnosticReport) MarshalJSON() ([]byte, error) {
switch x := t.Value.(type) {
case RelatedFullDocumentDiagnosticReport:
return json.Marshal(x)
case RelatedUnchangedDocumentDiagnosticReport:
return json.Marshal(x)
case nil:
return []byte("null"), nil
}
return nil, fmt.Errorf("type %T not one of [RelatedFullDocumentDiagnosticReport RelatedUnchangedDocumentDiagnosticReport]", t)
}
func (t *Or_DocumentDiagnosticReport) UnmarshalJSON(x []byte) error {
if string(x) == "null" {
t.Value = nil
return nil
}
var h0 RelatedFullDocumentDiagnosticReport
if err := json.Unmarshal(x, &h0); err == nil {
t.Value = h0
return nil
}
var h1 RelatedUnchangedDocumentDiagnosticReport
if err := json.Unmarshal(x, &h1); err == nil {
t.Value = h1
return nil
}
return errors.New("unmarshal failed to match one of [RelatedFullDocumentDiagnosticReport RelatedUnchangedDocumentDiagnosticReport]")
}
func (t Or_DocumentFilter) MarshalJSON() ([]byte, error) {
switch x := t.Value.(type) {
case NotebookCellTextDocumentFilter:
return json.Marshal(x)
case TextDocumentFilter:
return json.Marshal(x)
case nil:
return []byte("null"), nil
}
return nil, fmt.Errorf("type %T not one of [NotebookCellTextDocumentFilter TextDocumentFilter]", t)
}
func (t *Or_DocumentFilter) UnmarshalJSON(x []byte) error {
if string(x) == "null" {
t.Value = nil
return nil
}
var h0 NotebookCellTextDocumentFilter
if err := json.Unmarshal(x, &h0); err == nil {
t.Value = h0
return nil
}
var h1 TextDocumentFilter
if err := json.Unmarshal(x, &h1); err == nil {
t.Value = h1
return nil
}
return errors.New("unmarshal failed to match one of [NotebookCellTextDocumentFilter TextDocumentFilter]")
}
func (t Or_InlineValue) MarshalJSON() ([]byte, error) {
switch x := t.Value.(type) {
case InlineValueEvaluatableExpression:
return json.Marshal(x)
case InlineValueText:
return json.Marshal(x)
case InlineValueVariableLookup:
return json.Marshal(x)
case nil:
return []byte("null"), nil
}
return nil, fmt.Errorf("type %T not one of [InlineValueEvaluatableExpression InlineValueText InlineValueVariableLookup]", t)
}
func (t *Or_InlineValue) UnmarshalJSON(x []byte) error {
if string(x) == "null" {
t.Value = nil
return nil
}
var h0 InlineValueEvaluatableExpression
if err := json.Unmarshal(x, &h0); err == nil {
t.Value = h0
return nil
}
var h1 InlineValueText
if err := json.Unmarshal(x, &h1); err == nil {
t.Value = h1
return nil
}
var h2 InlineValueVariableLookup
if err := json.Unmarshal(x, &h2); err == nil {
t.Value = h2
return nil
}
return errors.New("unmarshal failed to match one of [InlineValueEvaluatableExpression InlineValueText InlineValueVariableLookup]")
}
func (t Or_MarkedString) MarshalJSON() ([]byte, error) {
switch x := t.Value.(type) {
case Msg_MarkedString:
return json.Marshal(x)
case string:
return json.Marshal(x)
case nil:
return []byte("null"), nil
}
return nil, fmt.Errorf("type %T not one of [Msg_MarkedString string]", t)
}
func (t *Or_MarkedString) UnmarshalJSON(x []byte) error {
if string(x) == "null" {
t.Value = nil
return nil
}
var h0 Msg_MarkedString
if err := json.Unmarshal(x, &h0); err == nil {
t.Value = h0
return nil
}
var h1 string
if err := json.Unmarshal(x, &h1); err == nil {
t.Value = h1
return nil
}
return errors.New("unmarshal failed to match one of [Msg_MarkedString string]")
}
func (t Or_RelativePattern_baseUri) MarshalJSON() ([]byte, error) {
switch x := t.Value.(type) {
case URI:
return json.Marshal(x)
case WorkspaceFolder:
return json.Marshal(x)
case nil:
return []byte("null"), nil
}
return nil, fmt.Errorf("type %T not one of [URI WorkspaceFolder]", t)
}
func (t *Or_RelativePattern_baseUri) UnmarshalJSON(x []byte) error {
if string(x) == "null" {
t.Value = nil
return nil
}
var h0 URI
if err := json.Unmarshal(x, &h0); err == nil {
t.Value = h0
return nil
}
var h1 WorkspaceFolder
if err := json.Unmarshal(x, &h1); err == nil {
t.Value = h1
return nil
}
return errors.New("unmarshal failed to match one of [URI WorkspaceFolder]")
}
func (t Or_WorkspaceDocumentDiagnosticReport) MarshalJSON() ([]byte, error) {
switch x := t.Value.(type) {
case WorkspaceFullDocumentDiagnosticReport:
return json.Marshal(x)
case WorkspaceUnchangedDocumentDiagnosticReport:
return json.Marshal(x)
case nil:
return []byte("null"), nil
}
return nil, fmt.Errorf("type %T not one of [WorkspaceFullDocumentDiagnosticReport WorkspaceUnchangedDocumentDiagnosticReport]", t)
}
func (t *Or_WorkspaceDocumentDiagnosticReport) UnmarshalJSON(x []byte) error {
if string(x) == "null" {
t.Value = nil
return nil
}
var h0 WorkspaceFullDocumentDiagnosticReport
if err := json.Unmarshal(x, &h0); err == nil {
t.Value = h0
return nil
}
var h1 WorkspaceUnchangedDocumentDiagnosticReport
if err := json.Unmarshal(x, &h1); err == nil {
t.Value = h1
return nil
}
return errors.New("unmarshal failed to match one of [WorkspaceFullDocumentDiagnosticReport WorkspaceUnchangedDocumentDiagnosticReport]")
}
func (t Or_textDocument_declaration) MarshalJSON() ([]byte, error) {
switch x := t.Value.(type) {
case Declaration:
return json.Marshal(x)
case []DeclarationLink:
return json.Marshal(x)
case nil:
return []byte("null"), nil
}
return nil, fmt.Errorf("type %T not one of [Declaration []DeclarationLink]", t)
}
func (t *Or_textDocument_declaration) UnmarshalJSON(x []byte) error {
if string(x) == "null" {
t.Value = nil
return nil
}
var h0 Declaration
if err := json.Unmarshal(x, &h0); err == nil {
t.Value = h0
return nil
}
var h1 []DeclarationLink
if err := json.Unmarshal(x, &h1); err == nil {
t.Value = h1
return nil
}
return errors.New("unmarshal failed to match one of [Declaration []DeclarationLink]")
}