cuelang.org/go@v0.10.1/internal/golangorgx/gopls/protocol/tsclient.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 (
    14  	"context"
    15  
    16  	"cuelang.org/go/internal/golangorgx/tools/jsonrpc2"
    17  )
    18  
    19  type Client interface {
    20  	LogTrace(context.Context, *LogTraceParams) error                                           // $/logTrace
    21  	Progress(context.Context, *ProgressParams) error                                           // $/progress
    22  	RegisterCapability(context.Context, *RegistrationParams) error                             // client/registerCapability
    23  	UnregisterCapability(context.Context, *UnregistrationParams) error                         // client/unregisterCapability
    24  	Event(context.Context, *interface{}) error                                                 // telemetry/event
    25  	PublishDiagnostics(context.Context, *PublishDiagnosticsParams) error                       // textDocument/publishDiagnostics
    26  	LogMessage(context.Context, *LogMessageParams) error                                       // window/logMessage
    27  	ShowDocument(context.Context, *ShowDocumentParams) (*ShowDocumentResult, error)            // window/showDocument
    28  	ShowMessage(context.Context, *ShowMessageParams) error                                     // window/showMessage
    29  	ShowMessageRequest(context.Context, *ShowMessageRequestParams) (*MessageActionItem, error) // window/showMessageRequest
    30  	WorkDoneProgressCreate(context.Context, *WorkDoneProgressCreateParams) error               // window/workDoneProgress/create
    31  	ApplyEdit(context.Context, *ApplyWorkspaceEditParams) (*ApplyWorkspaceEditResult, error)   // workspace/applyEdit
    32  	CodeLensRefresh(context.Context) error                                                     // workspace/codeLens/refresh
    33  	Configuration(context.Context, *ParamConfiguration) ([]LSPAny, error)                      // workspace/configuration
    34  	DiagnosticRefresh(context.Context) error                                                   // workspace/diagnostic/refresh
    35  	FoldingRangeRefresh(context.Context) error                                                 // workspace/foldingRange/refresh
    36  	InlayHintRefresh(context.Context) error                                                    // workspace/inlayHint/refresh
    37  	InlineValueRefresh(context.Context) error                                                  // workspace/inlineValue/refresh
    38  	SemanticTokensRefresh(context.Context) error                                               // workspace/semanticTokens/refresh
    39  	WorkspaceFolders(context.Context) ([]WorkspaceFolder, error)                               // workspace/workspaceFolders
    40  }
    41  
    42  func clientDispatch(ctx context.Context, client Client, reply jsonrpc2.Replier, r jsonrpc2.Request) (bool, error) {
    43  	defer recoverHandlerPanic(r.Method())
    44  	switch r.Method() {
    45  	case "$/logTrace":
    46  		var params LogTraceParams
    47  		if err := UnmarshalJSON(r.Params(), &params); err != nil {
    48  			return true, sendParseError(ctx, reply, err)
    49  		}
    50  		err := client.LogTrace(ctx, &params)
    51  		return true, reply(ctx, nil, err)
    52  
    53  	case "$/progress":
    54  		var params ProgressParams
    55  		if err := UnmarshalJSON(r.Params(), &params); err != nil {
    56  			return true, sendParseError(ctx, reply, err)
    57  		}
    58  		err := client.Progress(ctx, &params)
    59  		return true, reply(ctx, nil, err)
    60  
    61  	case "client/registerCapability":
    62  		var params RegistrationParams
    63  		if err := UnmarshalJSON(r.Params(), &params); err != nil {
    64  			return true, sendParseError(ctx, reply, err)
    65  		}
    66  		err := client.RegisterCapability(ctx, &params)
    67  		return true, reply(ctx, nil, err)
    68  
    69  	case "client/unregisterCapability":
    70  		var params UnregistrationParams
    71  		if err := UnmarshalJSON(r.Params(), &params); err != nil {
    72  			return true, sendParseError(ctx, reply, err)
    73  		}
    74  		err := client.UnregisterCapability(ctx, &params)
    75  		return true, reply(ctx, nil, err)
    76  
    77  	case "telemetry/event":
    78  		var params interface{}
    79  		if err := UnmarshalJSON(r.Params(), &params); err != nil {
    80  			return true, sendParseError(ctx, reply, err)
    81  		}
    82  		err := client.Event(ctx, &params)
    83  		return true, reply(ctx, nil, err)
    84  
    85  	case "textDocument/publishDiagnostics":
    86  		var params PublishDiagnosticsParams
    87  		if err := UnmarshalJSON(r.Params(), &params); err != nil {
    88  			return true, sendParseError(ctx, reply, err)
    89  		}
    90  		err := client.PublishDiagnostics(ctx, &params)
    91  		return true, reply(ctx, nil, err)
    92  
    93  	case "window/logMessage":
    94  		var params LogMessageParams
    95  		if err := UnmarshalJSON(r.Params(), &params); err != nil {
    96  			return true, sendParseError(ctx, reply, err)
    97  		}
    98  		err := client.LogMessage(ctx, &params)
    99  		return true, reply(ctx, nil, err)
   100  
   101  	case "window/showDocument":
   102  		var params ShowDocumentParams
   103  		if err := UnmarshalJSON(r.Params(), &params); err != nil {
   104  			return true, sendParseError(ctx, reply, err)
   105  		}
   106  		resp, err := client.ShowDocument(ctx, &params)
   107  		if err != nil {
   108  			return true, reply(ctx, nil, err)
   109  		}
   110  		return true, reply(ctx, resp, nil)
   111  
   112  	case "window/showMessage":
   113  		var params ShowMessageParams
   114  		if err := UnmarshalJSON(r.Params(), &params); err != nil {
   115  			return true, sendParseError(ctx, reply, err)
   116  		}
   117  		err := client.ShowMessage(ctx, &params)
   118  		return true, reply(ctx, nil, err)
   119  
   120  	case "window/showMessageRequest":
   121  		var params ShowMessageRequestParams
   122  		if err := UnmarshalJSON(r.Params(), &params); err != nil {
   123  			return true, sendParseError(ctx, reply, err)
   124  		}
   125  		resp, err := client.ShowMessageRequest(ctx, &params)
   126  		if err != nil {
   127  			return true, reply(ctx, nil, err)
   128  		}
   129  		return true, reply(ctx, resp, nil)
   130  
   131  	case "window/workDoneProgress/create":
   132  		var params WorkDoneProgressCreateParams
   133  		if err := UnmarshalJSON(r.Params(), &params); err != nil {
   134  			return true, sendParseError(ctx, reply, err)
   135  		}
   136  		err := client.WorkDoneProgressCreate(ctx, &params)
   137  		return true, reply(ctx, nil, err)
   138  
   139  	case "workspace/applyEdit":
   140  		var params ApplyWorkspaceEditParams
   141  		if err := UnmarshalJSON(r.Params(), &params); err != nil {
   142  			return true, sendParseError(ctx, reply, err)
   143  		}
   144  		resp, err := client.ApplyEdit(ctx, &params)
   145  		if err != nil {
   146  			return true, reply(ctx, nil, err)
   147  		}
   148  		return true, reply(ctx, resp, nil)
   149  
   150  	case "workspace/codeLens/refresh":
   151  		err := client.CodeLensRefresh(ctx)
   152  		return true, reply(ctx, nil, err)
   153  
   154  	case "workspace/configuration":
   155  		var params ParamConfiguration
   156  		if err := UnmarshalJSON(r.Params(), &params); err != nil {
   157  			return true, sendParseError(ctx, reply, err)
   158  		}
   159  		resp, err := client.Configuration(ctx, &params)
   160  		if err != nil {
   161  			return true, reply(ctx, nil, err)
   162  		}
   163  		return true, reply(ctx, resp, nil)
   164  
   165  	case "workspace/diagnostic/refresh":
   166  		err := client.DiagnosticRefresh(ctx)
   167  		return true, reply(ctx, nil, err)
   168  
   169  	case "workspace/foldingRange/refresh":
   170  		err := client.FoldingRangeRefresh(ctx)
   171  		return true, reply(ctx, nil, err)
   172  
   173  	case "workspace/inlayHint/refresh":
   174  		err := client.InlayHintRefresh(ctx)
   175  		return true, reply(ctx, nil, err)
   176  
   177  	case "workspace/inlineValue/refresh":
   178  		err := client.InlineValueRefresh(ctx)
   179  		return true, reply(ctx, nil, err)
   180  
   181  	case "workspace/semanticTokens/refresh":
   182  		err := client.SemanticTokensRefresh(ctx)
   183  		return true, reply(ctx, nil, err)
   184  
   185  	case "workspace/workspaceFolders":
   186  		resp, err := client.WorkspaceFolders(ctx)
   187  		if err != nil {
   188  			return true, reply(ctx, nil, err)
   189  		}
   190  		return true, reply(ctx, resp, nil)
   191  
   192  	default:
   193  		return false, nil
   194  	}
   195  }
   196  
   197  func (s *clientDispatcher) LogTrace(ctx context.Context, params *LogTraceParams) error {
   198  	return s.sender.Notify(ctx, "$/logTrace", params)
   199  }
   200  func (s *clientDispatcher) Progress(ctx context.Context, params *ProgressParams) error {
   201  	return s.sender.Notify(ctx, "$/progress", params)
   202  }
   203  func (s *clientDispatcher) RegisterCapability(ctx context.Context, params *RegistrationParams) error {
   204  	return s.sender.Call(ctx, "client/registerCapability", params, nil)
   205  }
   206  func (s *clientDispatcher) UnregisterCapability(ctx context.Context, params *UnregistrationParams) error {
   207  	return s.sender.Call(ctx, "client/unregisterCapability", params, nil)
   208  }
   209  func (s *clientDispatcher) Event(ctx context.Context, params *interface{}) error {
   210  	return s.sender.Notify(ctx, "telemetry/event", params)
   211  }
   212  func (s *clientDispatcher) PublishDiagnostics(ctx context.Context, params *PublishDiagnosticsParams) error {
   213  	return s.sender.Notify(ctx, "textDocument/publishDiagnostics", params)
   214  }
   215  func (s *clientDispatcher) LogMessage(ctx context.Context, params *LogMessageParams) error {
   216  	return s.sender.Notify(ctx, "window/logMessage", params)
   217  }
   218  func (s *clientDispatcher) ShowDocument(ctx context.Context, params *ShowDocumentParams) (*ShowDocumentResult, error) {
   219  	var result *ShowDocumentResult
   220  	if err := s.sender.Call(ctx, "window/showDocument", params, &result); err != nil {
   221  		return nil, err
   222  	}
   223  	return result, nil
   224  }
   225  func (s *clientDispatcher) ShowMessage(ctx context.Context, params *ShowMessageParams) error {
   226  	return s.sender.Notify(ctx, "window/showMessage", params)
   227  }
   228  func (s *clientDispatcher) ShowMessageRequest(ctx context.Context, params *ShowMessageRequestParams) (*MessageActionItem, error) {
   229  	var result *MessageActionItem
   230  	if err := s.sender.Call(ctx, "window/showMessageRequest", params, &result); err != nil {
   231  		return nil, err
   232  	}
   233  	return result, nil
   234  }
   235  func (s *clientDispatcher) WorkDoneProgressCreate(ctx context.Context, params *WorkDoneProgressCreateParams) error {
   236  	return s.sender.Call(ctx, "window/workDoneProgress/create", params, nil)
   237  }
   238  func (s *clientDispatcher) ApplyEdit(ctx context.Context, params *ApplyWorkspaceEditParams) (*ApplyWorkspaceEditResult, error) {
   239  	var result *ApplyWorkspaceEditResult
   240  	if err := s.sender.Call(ctx, "workspace/applyEdit", params, &result); err != nil {
   241  		return nil, err
   242  	}
   243  	return result, nil
   244  }
   245  func (s *clientDispatcher) CodeLensRefresh(ctx context.Context) error {
   246  	return s.sender.Call(ctx, "workspace/codeLens/refresh", nil, nil)
   247  }
   248  func (s *clientDispatcher) Configuration(ctx context.Context, params *ParamConfiguration) ([]LSPAny, error) {
   249  	var result []LSPAny
   250  	if err := s.sender.Call(ctx, "workspace/configuration", params, &result); err != nil {
   251  		return nil, err
   252  	}
   253  	return result, nil
   254  }
   255  func (s *clientDispatcher) DiagnosticRefresh(ctx context.Context) error {
   256  	return s.sender.Call(ctx, "workspace/diagnostic/refresh", nil, nil)
   257  }
   258  func (s *clientDispatcher) FoldingRangeRefresh(ctx context.Context) error {
   259  	return s.sender.Call(ctx, "workspace/foldingRange/refresh", nil, nil)
   260  }
   261  func (s *clientDispatcher) InlayHintRefresh(ctx context.Context) error {
   262  	return s.sender.Call(ctx, "workspace/inlayHint/refresh", nil, nil)
   263  }
   264  func (s *clientDispatcher) InlineValueRefresh(ctx context.Context) error {
   265  	return s.sender.Call(ctx, "workspace/inlineValue/refresh", nil, nil)
   266  }
   267  func (s *clientDispatcher) SemanticTokensRefresh(ctx context.Context) error {
   268  	return s.sender.Call(ctx, "workspace/semanticTokens/refresh", nil, nil)
   269  }
   270  func (s *clientDispatcher) WorkspaceFolders(ctx context.Context) ([]WorkspaceFolder, error) {
   271  	var result []WorkspaceFolder
   272  	if err := s.sender.Call(ctx, "workspace/workspaceFolders", nil, &result); err != nil {
   273  		return nil, err
   274  	}
   275  	return result, nil
   276  }