z_mirror/luapls

git clone https://git.raiguard.me/z_mirror/luapls

Caleb HeuerRevert "Convert trivia to an interface in preparation annotations-in-AST"5c64afc

main
8.0 KiB436 linesraw
1package ast
2
3import (
4	"encoding/json"
5
6	"github.com/raiguard/luapls/lua/token"
7)
8
9func (node *AssignmentStatement) MarshalJSON() ([]byte, error) {
10	type Alias AssignmentStatement
11	return json.Marshal(&struct {
12		Type  string
13		Range token.Range
14		*Alias
15	}{
16		Type:  "AssignmentStatement",
17		Range: Range(node),
18		Alias: (*Alias)(node),
19	})
20}
21
22func (node *BooleanLiteral) MarshalJSON() ([]byte, error) {
23	type Alias BooleanLiteral
24	return json.Marshal(&struct {
25		Type  string
26		Range token.Range
27		*Alias
28	}{
29		Type:  "BooleanLiteral",
30		Range: Range(node),
31		Alias: (*Alias)(node),
32	})
33}
34
35func (node *BreakStatement) MarshalJSON() ([]byte, error) {
36	type Alias BreakStatement
37	return json.Marshal(&struct {
38		Type  string
39		Range token.Range
40		*Alias
41	}{
42		Type:  "BreakStatement",
43		Range: Range(node),
44		Alias: (*Alias)(node),
45	})
46}
47
48func (node *DoStatement) MarshalJSON() ([]byte, error) {
49	type Alias DoStatement
50	return json.Marshal(&struct {
51		Type  string
52		Range token.Range
53		*Alias
54	}{
55		Type:  "DoStatement",
56		Range: Range(node),
57		Alias: (*Alias)(node),
58	})
59}
60
61func (node *ForInStatement) MarshalJSON() ([]byte, error) {
62	type Alias ForInStatement
63	return json.Marshal(&struct {
64		Type  string
65		Range token.Range
66		*Alias
67	}{
68		Type:  "ForInStatement",
69		Range: Range(node),
70		Alias: (*Alias)(node),
71	})
72}
73
74func (node *ForStatement) MarshalJSON() ([]byte, error) {
75	type Alias ForStatement
76	return json.Marshal(&struct {
77		Type  string
78		Range token.Range
79		*Alias
80	}{
81		Type:  "ForStatement",
82		Range: Range(node),
83		Alias: (*Alias)(node),
84	})
85}
86
87func (node *FunctionCall) MarshalJSON() ([]byte, error) {
88	type Alias FunctionCall
89	return json.Marshal(&struct {
90		Type  string
91		Range token.Range
92		*Alias
93	}{
94		Type:  "FunctionCall",
95		Range: Range(node),
96		Alias: (*Alias)(node),
97	})
98}
99
100func (node *FunctionExpression) MarshalJSON() ([]byte, error) {
101	type Alias FunctionExpression
102	return json.Marshal(&struct {
103		Type  string
104		Range token.Range
105		*Alias
106	}{
107		Type:  "FunctionExpression",
108		Range: Range(node),
109		Alias: (*Alias)(node),
110	})
111}
112
113func (node *FunctionStatement) MarshalJSON() ([]byte, error) {
114	type Alias FunctionStatement
115	return json.Marshal(&struct {
116		Type  string
117		Range token.Range
118		*Alias
119	}{
120		Type:  "FunctionStatement",
121		Range: Range(node),
122		Alias: (*Alias)(node),
123	})
124}
125
126func (node *GotoStatement) MarshalJSON() ([]byte, error) {
127	type Alias GotoStatement
128	return json.Marshal(&struct {
129		Type  string
130		Range token.Range
131		*Alias
132	}{
133		Type:  "GotoStatement",
134		Range: Range(node),
135		Alias: (*Alias)(node),
136	})
137}
138
139func (node *Identifier) MarshalJSON() ([]byte, error) {
140	type Alias Identifier
141	return json.Marshal(&struct {
142		Type  string
143		Range token.Range
144		*Alias
145	}{
146		Type:  "Identifier",
147		Range: Range(node),
148		Alias: (*Alias)(node),
149	})
150}
151
152func (node *IfClause) MarshalJSON() ([]byte, error) {
153	type Alias IfClause
154	return json.Marshal(&struct {
155		Type  string
156		Range token.Range
157		*Alias
158	}{
159		Type:  "IfClause",
160		Range: Range(node),
161		Alias: (*Alias)(node),
162	})
163}
164
165func (node *IfStatement) MarshalJSON() ([]byte, error) {
166	type Alias IfStatement
167	return json.Marshal(&struct {
168		Type  string
169		Range token.Range
170		*Alias
171	}{
172		Type:  "IfStatement",
173		Range: Range(node),
174		Alias: (*Alias)(node),
175	})
176}
177
178func (node *IndexExpression) MarshalJSON() ([]byte, error) {
179	type Alias IndexExpression
180	return json.Marshal(&struct {
181		Type  string
182		Range token.Range
183		*Alias
184	}{
185		Type:  "IndexExpression",
186		Range: Range(node),
187		Alias: (*Alias)(node),
188	})
189}
190
191func (node *InfixExpression) MarshalJSON() ([]byte, error) {
192	type Alias InfixExpression
193	return json.Marshal(&struct {
194		Type  string
195		Range token.Range
196		*Alias
197	}{
198		Type:  "InfixExpression",
199		Range: Range(node),
200		Alias: (*Alias)(node),
201	})
202}
203
204func (node *LabelStatement) MarshalJSON() ([]byte, error) {
205	type Alias LabelStatement
206	return json.Marshal(&struct {
207		Type  string
208		Range token.Range
209		*Alias
210	}{
211		Type:  "LabelStatement",
212		Range: Range(node),
213		Alias: (*Alias)(node),
214	})
215}
216
217func (node *Invalid) MarshalJSON() ([]byte, error) {
218	type Alias Invalid
219	return json.Marshal(&struct {
220		Type  string
221		Range token.Range
222		*Alias
223	}{
224		Type:  "Invalid",
225		Range: Range(node),
226		Alias: (*Alias)(node),
227	})
228}
229
230func (node *LocalStatement) MarshalJSON() ([]byte, error) {
231	type Alias LocalStatement
232	return json.Marshal(&struct {
233		Type  string
234		Range token.Range
235		*Alias
236	}{
237		Type:  "LocalStatement",
238		Range: Range(node),
239		Alias: (*Alias)(node),
240	})
241}
242
243func (node *NilLiteral) MarshalJSON() ([]byte, error) {
244	type Alias NilLiteral
245	return json.Marshal(&struct {
246		Type  string
247		Range token.Range
248		*Alias
249	}{
250		Type:  "NilLiteral",
251		Range: Range(node),
252		Alias: (*Alias)(node),
253	})
254}
255
256func (node *NumberLiteral) MarshalJSON() ([]byte, error) {
257	type Alias NumberLiteral
258	return json.Marshal(&struct {
259		Type  string
260		Range token.Range
261		*Alias
262	}{
263		Type:  "NumberLiteral",
264		Range: Range(node),
265		Alias: (*Alias)(node),
266	})
267}
268
269func (node *Pair[T]) MarshalJSON() ([]byte, error) {
270	type Alias Pair[T]
271	return json.Marshal(&struct {
272		Type  string
273		Range token.Range
274		*Alias
275	}{
276		Type:  "Pair",
277		Range: Range(node),
278		Alias: (*Alias)(node),
279	})
280}
281
282func (node *Punctuated[T]) MarshalJSON() ([]byte, error) {
283	type Alias Punctuated[T]
284	return json.Marshal(&struct {
285		Type  string
286		Range token.Range
287		*Alias
288	}{
289		Type:  "Punctuated",
290		Range: Range(node),
291		Alias: (*Alias)(node),
292	})
293}
294
295func (node *PrefixExpression) MarshalJSON() ([]byte, error) {
296	type Alias PrefixExpression
297	return json.Marshal(&struct {
298		Type  string
299		Range token.Range
300		*Alias
301	}{
302		Type:  "PrefixExpression",
303		Range: Range(node),
304		Alias: (*Alias)(node),
305	})
306}
307
308func (node *RepeatStatement) MarshalJSON() ([]byte, error) {
309	type Alias RepeatStatement
310	return json.Marshal(&struct {
311		Type  string
312		Range token.Range
313		*Alias
314	}{
315		Type:  "RepeatStatement",
316		Range: Range(node),
317		Alias: (*Alias)(node),
318	})
319}
320
321func (node *ReturnStatement) MarshalJSON() ([]byte, error) {
322	type Alias ReturnStatement
323	return json.Marshal(&struct {
324		Type  string
325		Range token.Range
326		*Alias
327	}{
328		Type:  "ReturnStatement",
329		Range: Range(node),
330		Alias: (*Alias)(node),
331	})
332}
333
334func (node *SemicolonStatement) MarshalJSON() ([]byte, error) {
335	type Alias SemicolonStatement
336	return json.Marshal(&struct {
337		Type  string
338		Range token.Range
339		*Alias
340	}{
341		Type:  "SemicolonStatement",
342		Range: Range(node),
343		Alias: (*Alias)(node),
344	})
345}
346
347func (node *StringLiteral) MarshalJSON() ([]byte, error) {
348	type Alias StringLiteral
349	return json.Marshal(&struct {
350		Type  string
351		Range token.Range
352		*Alias
353	}{
354		Type:  "StringLiteral",
355		Range: Range(node),
356		Alias: (*Alias)(node),
357	})
358}
359
360func (node *TableArrayField) MarshalJSON() ([]byte, error) {
361	type Alias TableArrayField
362	return json.Marshal(&struct {
363		Type  string
364		Range token.Range
365		*Alias
366	}{
367		Type:  "TableArrayField",
368		Range: Range(node),
369		Alias: (*Alias)(node),
370	})
371}
372
373func (node *TableSimpleKeyField) MarshalJSON() ([]byte, error) {
374	type Alias TableSimpleKeyField
375	return json.Marshal(&struct {
376		Type  string
377		Range token.Range
378		*Alias
379	}{
380		Type:  "TableSimpleKeyField",
381		Range: Range(node),
382		Alias: (*Alias)(node),
383	})
384}
385
386func (node *TableExpressionKeyField) MarshalJSON() ([]byte, error) {
387	type Alias TableExpressionKeyField
388	return json.Marshal(&struct {
389		Type  string
390		Range token.Range
391		*Alias
392	}{
393		Type:  "TableExpressionKeyField",
394		Range: Range(node),
395		Alias: (*Alias)(node),
396	})
397}
398
399func (node *TableLiteral) MarshalJSON() ([]byte, error) {
400	type Alias TableLiteral
401	return json.Marshal(&struct {
402		Type  string
403		Range token.Range
404		*Alias
405	}{
406		Type:  "TableLiteral",
407		Range: Range(node),
408		Alias: (*Alias)(node),
409	})
410}
411
412func (node *Vararg) MarshalJSON() ([]byte, error) {
413	type Alias Vararg
414	return json.Marshal(&struct {
415		Type  string
416		Range token.Range
417		*Alias
418	}{
419		Type:  "Vararg",
420		Range: Range(node),
421		Alias: (*Alias)(node),
422	})
423}
424
425func (node *WhileStatement) MarshalJSON() ([]byte, error) {
426	type Alias WhileStatement
427	return json.Marshal(&struct {
428		Type  string
429		Range token.Range
430		*Alias
431	}{
432		Type:  "WhileStatement",
433		Range: Range(node),
434		Alias: (*Alias)(node),
435	})
436}