1// Copyright 2021 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// Don't include this file during code generation, or it will break the build
6// if existing interface methods have been modified.
7//go:build !generate
8// +build !generate
9
10package command
11
12// Code generated by generate.go. DO NOT EDIT.
13
14import (
15	"context"
16	"fmt"
17
18	"golang.org/x/tools/internal/lsp/protocol"
19)
20
21const (
22	AddDependency     Command = "add_dependency"
23	AddImport         Command = "add_import"
24	ApplyFix          Command = "apply_fix"
25	CheckUpgrades     Command = "check_upgrades"
26	GCDetails         Command = "gc_details"
27	Generate          Command = "generate"
28	GenerateGoplsMod  Command = "generate_gopls_mod"
29	GoGetPackage      Command = "go_get_package"
30	ListKnownPackages Command = "list_known_packages"
31	RegenerateCgo     Command = "regenerate_cgo"
32	RemoveDependency  Command = "remove_dependency"
33	RunTests          Command = "run_tests"
34	StartDebugging    Command = "start_debugging"
35	Test              Command = "test"
36	Tidy              Command = "tidy"
37	ToggleGCDetails   Command = "toggle_gc_details"
38	UpdateGoSum       Command = "update_go_sum"
39	UpgradeDependency Command = "upgrade_dependency"
40	Vendor            Command = "vendor"
41	WorkspaceMetadata Command = "workspace_metadata"
42)
43
44var Commands = []Command{
45	AddDependency,
46	AddImport,
47	ApplyFix,
48	CheckUpgrades,
49	GCDetails,
50	Generate,
51	GenerateGoplsMod,
52	GoGetPackage,
53	ListKnownPackages,
54	RegenerateCgo,
55	RemoveDependency,
56	RunTests,
57	StartDebugging,
58	Test,
59	Tidy,
60	ToggleGCDetails,
61	UpdateGoSum,
62	UpgradeDependency,
63	Vendor,
64	WorkspaceMetadata,
65}
66
67func Dispatch(ctx context.Context, params *protocol.ExecuteCommandParams, s Interface) (interface{}, error) {
68	switch params.Command {
69	case "gopls.add_dependency":
70		var a0 DependencyArgs
71		if err := UnmarshalArgs(params.Arguments, &a0); err != nil {
72			return nil, err
73		}
74		return nil, s.AddDependency(ctx, a0)
75	case "gopls.add_import":
76		var a0 AddImportArgs
77		if err := UnmarshalArgs(params.Arguments, &a0); err != nil {
78			return nil, err
79		}
80		return s.AddImport(ctx, a0)
81	case "gopls.apply_fix":
82		var a0 ApplyFixArgs
83		if err := UnmarshalArgs(params.Arguments, &a0); err != nil {
84			return nil, err
85		}
86		return nil, s.ApplyFix(ctx, a0)
87	case "gopls.check_upgrades":
88		var a0 CheckUpgradesArgs
89		if err := UnmarshalArgs(params.Arguments, &a0); err != nil {
90			return nil, err
91		}
92		return nil, s.CheckUpgrades(ctx, a0)
93	case "gopls.gc_details":
94		var a0 protocol.DocumentURI
95		if err := UnmarshalArgs(params.Arguments, &a0); err != nil {
96			return nil, err
97		}
98		return nil, s.GCDetails(ctx, a0)
99	case "gopls.generate":
100		var a0 GenerateArgs
101		if err := UnmarshalArgs(params.Arguments, &a0); err != nil {
102			return nil, err
103		}
104		return nil, s.Generate(ctx, a0)
105	case "gopls.generate_gopls_mod":
106		var a0 URIArg
107		if err := UnmarshalArgs(params.Arguments, &a0); err != nil {
108			return nil, err
109		}
110		return nil, s.GenerateGoplsMod(ctx, a0)
111	case "gopls.go_get_package":
112		var a0 GoGetPackageArgs
113		if err := UnmarshalArgs(params.Arguments, &a0); err != nil {
114			return nil, err
115		}
116		return nil, s.GoGetPackage(ctx, a0)
117	case "gopls.list_known_packages":
118		var a0 URIArg
119		if err := UnmarshalArgs(params.Arguments, &a0); err != nil {
120			return nil, err
121		}
122		return s.ListKnownPackages(ctx, a0)
123	case "gopls.regenerate_cgo":
124		var a0 URIArg
125		if err := UnmarshalArgs(params.Arguments, &a0); err != nil {
126			return nil, err
127		}
128		return nil, s.RegenerateCgo(ctx, a0)
129	case "gopls.remove_dependency":
130		var a0 RemoveDependencyArgs
131		if err := UnmarshalArgs(params.Arguments, &a0); err != nil {
132			return nil, err
133		}
134		return nil, s.RemoveDependency(ctx, a0)
135	case "gopls.run_tests":
136		var a0 RunTestsArgs
137		if err := UnmarshalArgs(params.Arguments, &a0); err != nil {
138			return nil, err
139		}
140		return nil, s.RunTests(ctx, a0)
141	case "gopls.start_debugging":
142		var a0 DebuggingArgs
143		if err := UnmarshalArgs(params.Arguments, &a0); err != nil {
144			return nil, err
145		}
146		return s.StartDebugging(ctx, a0)
147	case "gopls.test":
148		var a0 protocol.DocumentURI
149		var a1 []string
150		var a2 []string
151		if err := UnmarshalArgs(params.Arguments, &a0, &a1, &a2); err != nil {
152			return nil, err
153		}
154		return nil, s.Test(ctx, a0, a1, a2)
155	case "gopls.tidy":
156		var a0 URIArgs
157		if err := UnmarshalArgs(params.Arguments, &a0); err != nil {
158			return nil, err
159		}
160		return nil, s.Tidy(ctx, a0)
161	case "gopls.toggle_gc_details":
162		var a0 URIArg
163		if err := UnmarshalArgs(params.Arguments, &a0); err != nil {
164			return nil, err
165		}
166		return nil, s.ToggleGCDetails(ctx, a0)
167	case "gopls.update_go_sum":
168		var a0 URIArgs
169		if err := UnmarshalArgs(params.Arguments, &a0); err != nil {
170			return nil, err
171		}
172		return nil, s.UpdateGoSum(ctx, a0)
173	case "gopls.upgrade_dependency":
174		var a0 DependencyArgs
175		if err := UnmarshalArgs(params.Arguments, &a0); err != nil {
176			return nil, err
177		}
178		return nil, s.UpgradeDependency(ctx, a0)
179	case "gopls.vendor":
180		var a0 URIArg
181		if err := UnmarshalArgs(params.Arguments, &a0); err != nil {
182			return nil, err
183		}
184		return nil, s.Vendor(ctx, a0)
185	case "gopls.workspace_metadata":
186		return s.WorkspaceMetadata(ctx)
187	}
188	return nil, fmt.Errorf("unsupported command %q", params.Command)
189}
190
191func NewAddDependencyCommand(title string, a0 DependencyArgs) (protocol.Command, error) {
192	args, err := MarshalArgs(a0)
193	if err != nil {
194		return protocol.Command{}, err
195	}
196	return protocol.Command{
197		Title:     title,
198		Command:   "gopls.add_dependency",
199		Arguments: args,
200	}, nil
201}
202
203func NewAddImportCommand(title string, a0 AddImportArgs) (protocol.Command, error) {
204	args, err := MarshalArgs(a0)
205	if err != nil {
206		return protocol.Command{}, err
207	}
208	return protocol.Command{
209		Title:     title,
210		Command:   "gopls.add_import",
211		Arguments: args,
212	}, nil
213}
214
215func NewApplyFixCommand(title string, a0 ApplyFixArgs) (protocol.Command, error) {
216	args, err := MarshalArgs(a0)
217	if err != nil {
218		return protocol.Command{}, err
219	}
220	return protocol.Command{
221		Title:     title,
222		Command:   "gopls.apply_fix",
223		Arguments: args,
224	}, nil
225}
226
227func NewCheckUpgradesCommand(title string, a0 CheckUpgradesArgs) (protocol.Command, error) {
228	args, err := MarshalArgs(a0)
229	if err != nil {
230		return protocol.Command{}, err
231	}
232	return protocol.Command{
233		Title:     title,
234		Command:   "gopls.check_upgrades",
235		Arguments: args,
236	}, nil
237}
238
239func NewGCDetailsCommand(title string, a0 protocol.DocumentURI) (protocol.Command, error) {
240	args, err := MarshalArgs(a0)
241	if err != nil {
242		return protocol.Command{}, err
243	}
244	return protocol.Command{
245		Title:     title,
246		Command:   "gopls.gc_details",
247		Arguments: args,
248	}, nil
249}
250
251func NewGenerateCommand(title string, a0 GenerateArgs) (protocol.Command, error) {
252	args, err := MarshalArgs(a0)
253	if err != nil {
254		return protocol.Command{}, err
255	}
256	return protocol.Command{
257		Title:     title,
258		Command:   "gopls.generate",
259		Arguments: args,
260	}, nil
261}
262
263func NewGenerateGoplsModCommand(title string, a0 URIArg) (protocol.Command, error) {
264	args, err := MarshalArgs(a0)
265	if err != nil {
266		return protocol.Command{}, err
267	}
268	return protocol.Command{
269		Title:     title,
270		Command:   "gopls.generate_gopls_mod",
271		Arguments: args,
272	}, nil
273}
274
275func NewGoGetPackageCommand(title string, a0 GoGetPackageArgs) (protocol.Command, error) {
276	args, err := MarshalArgs(a0)
277	if err != nil {
278		return protocol.Command{}, err
279	}
280	return protocol.Command{
281		Title:     title,
282		Command:   "gopls.go_get_package",
283		Arguments: args,
284	}, nil
285}
286
287func NewListKnownPackagesCommand(title string, a0 URIArg) (protocol.Command, error) {
288	args, err := MarshalArgs(a0)
289	if err != nil {
290		return protocol.Command{}, err
291	}
292	return protocol.Command{
293		Title:     title,
294		Command:   "gopls.list_known_packages",
295		Arguments: args,
296	}, nil
297}
298
299func NewRegenerateCgoCommand(title string, a0 URIArg) (protocol.Command, error) {
300	args, err := MarshalArgs(a0)
301	if err != nil {
302		return protocol.Command{}, err
303	}
304	return protocol.Command{
305		Title:     title,
306		Command:   "gopls.regenerate_cgo",
307		Arguments: args,
308	}, nil
309}
310
311func NewRemoveDependencyCommand(title string, a0 RemoveDependencyArgs) (protocol.Command, error) {
312	args, err := MarshalArgs(a0)
313	if err != nil {
314		return protocol.Command{}, err
315	}
316	return protocol.Command{
317		Title:     title,
318		Command:   "gopls.remove_dependency",
319		Arguments: args,
320	}, nil
321}
322
323func NewRunTestsCommand(title string, a0 RunTestsArgs) (protocol.Command, error) {
324	args, err := MarshalArgs(a0)
325	if err != nil {
326		return protocol.Command{}, err
327	}
328	return protocol.Command{
329		Title:     title,
330		Command:   "gopls.run_tests",
331		Arguments: args,
332	}, nil
333}
334
335func NewStartDebuggingCommand(title string, a0 DebuggingArgs) (protocol.Command, error) {
336	args, err := MarshalArgs(a0)
337	if err != nil {
338		return protocol.Command{}, err
339	}
340	return protocol.Command{
341		Title:     title,
342		Command:   "gopls.start_debugging",
343		Arguments: args,
344	}, nil
345}
346
347func NewTestCommand(title string, a0 protocol.DocumentURI, a1 []string, a2 []string) (protocol.Command, error) {
348	args, err := MarshalArgs(a0, a1, a2)
349	if err != nil {
350		return protocol.Command{}, err
351	}
352	return protocol.Command{
353		Title:     title,
354		Command:   "gopls.test",
355		Arguments: args,
356	}, nil
357}
358
359func NewTidyCommand(title string, a0 URIArgs) (protocol.Command, error) {
360	args, err := MarshalArgs(a0)
361	if err != nil {
362		return protocol.Command{}, err
363	}
364	return protocol.Command{
365		Title:     title,
366		Command:   "gopls.tidy",
367		Arguments: args,
368	}, nil
369}
370
371func NewToggleGCDetailsCommand(title string, a0 URIArg) (protocol.Command, error) {
372	args, err := MarshalArgs(a0)
373	if err != nil {
374		return protocol.Command{}, err
375	}
376	return protocol.Command{
377		Title:     title,
378		Command:   "gopls.toggle_gc_details",
379		Arguments: args,
380	}, nil
381}
382
383func NewUpdateGoSumCommand(title string, a0 URIArgs) (protocol.Command, error) {
384	args, err := MarshalArgs(a0)
385	if err != nil {
386		return protocol.Command{}, err
387	}
388	return protocol.Command{
389		Title:     title,
390		Command:   "gopls.update_go_sum",
391		Arguments: args,
392	}, nil
393}
394
395func NewUpgradeDependencyCommand(title string, a0 DependencyArgs) (protocol.Command, error) {
396	args, err := MarshalArgs(a0)
397	if err != nil {
398		return protocol.Command{}, err
399	}
400	return protocol.Command{
401		Title:     title,
402		Command:   "gopls.upgrade_dependency",
403		Arguments: args,
404	}, nil
405}
406
407func NewVendorCommand(title string, a0 URIArg) (protocol.Command, error) {
408	args, err := MarshalArgs(a0)
409	if err != nil {
410		return protocol.Command{}, err
411	}
412	return protocol.Command{
413		Title:     title,
414		Command:   "gopls.vendor",
415		Arguments: args,
416	}, nil
417}
418
419func NewWorkspaceMetadataCommand(title string) (protocol.Command, error) {
420	args, err := MarshalArgs()
421	if err != nil {
422		return protocol.Command{}, err
423	}
424	return protocol.Command{
425		Title:     title,
426		Command:   "gopls.workspace_metadata",
427		Arguments: args,
428	}, nil
429}
430