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
3.4 KiB141 linesraw
1package ast
2
3import "github.com/raiguard/luapls/lua/token"
4
5func (node *AssignmentStatement) GetLeadingTrivia() []token.Token {
6	return node.Vars.GetLeadingTrivia()
7}
8
9func (node *BooleanLiteral) GetLeadingTrivia() []token.Token {
10	return node.LeadingTrivia
11}
12
13func (node *BreakStatement) GetLeadingTrivia() []token.Token {
14	return node.LeadingTrivia
15}
16
17func (node *DoStatement) GetLeadingTrivia() []token.Token {
18	return node.DoTok.LeadingTrivia
19}
20
21func (node *ForInStatement) GetLeadingTrivia() []token.Token {
22	return node.ForTok.LeadingTrivia
23}
24
25func (node *ForStatement) GetLeadingTrivia() []token.Token {
26	return node.ForTok.LeadingTrivia
27}
28
29func (node *FunctionCall) GetLeadingTrivia() []token.Token {
30	return node.Name.GetLeadingTrivia()
31}
32
33func (node *FunctionExpression) GetLeadingTrivia() []token.Token {
34	return node.FuncTok.LeadingTrivia
35}
36
37func (node *FunctionStatement) GetLeadingTrivia() []token.Token {
38	if node.LocalTok != nil {
39		return node.LocalTok.LeadingTrivia
40	}
41	return node.FuncTok.LeadingTrivia
42}
43
44func (node *GotoStatement) GetLeadingTrivia() []token.Token {
45	return node.GotoTok.LeadingTrivia
46}
47
48func (node *Identifier) GetLeadingTrivia() []token.Token {
49	return node.LeadingTrivia
50}
51
52func (node *IfClause) GetLeadingTrivia() []token.Token {
53	return node.LeadingTok.LeadingTrivia
54}
55
56func (node *IfStatement) GetLeadingTrivia() []token.Token {
57	return node.IfTok.LeadingTrivia
58}
59
60func (node *IndexExpression) GetLeadingTrivia() []token.Token {
61	return node.Prefix.GetLeadingTrivia()
62}
63
64func (node *InfixExpression) GetLeadingTrivia() []token.Token {
65	return node.Left.GetLeadingTrivia()
66}
67
68func (node *LabelStatement) GetLeadingTrivia() []token.Token {
69	return node.LeadingLabelTok.LeadingTrivia
70}
71
72func (node *Invalid) GetLeadingTrivia() []token.Token {
73	return []token.Token{} // TODO:
74}
75
76func (node *LocalStatement) GetLeadingTrivia() []token.Token {
77	return node.LocalTok.LeadingTrivia
78}
79
80func (node *NilLiteral) GetLeadingTrivia() []token.Token {
81	return node.LeadingTrivia
82}
83
84func (node *NumberLiteral) GetLeadingTrivia() []token.Token {
85	return node.LeadingTrivia
86}
87
88func (node *Pair[T]) GetLeadingTrivia() []token.Token {
89	return node.Node.GetLeadingTrivia()
90}
91
92func (node *Punctuated[T]) GetLeadingTrivia() []token.Token {
93	if len(node.Pairs) == 0 {
94		return []token.Token{}
95	}
96	return node.Pairs[0].GetLeadingTrivia()
97}
98
99func (node *PrefixExpression) GetLeadingTrivia() []token.Token {
100	return node.Operator.LeadingTrivia
101}
102
103func (node *RepeatStatement) GetLeadingTrivia() []token.Token {
104	return node.RepeatTok.LeadingTrivia
105}
106
107func (node *ReturnStatement) GetLeadingTrivia() []token.Token {
108	return node.ReturnTok.LeadingTrivia
109}
110
111func (node *SemicolonStatement) GetLeadingTrivia() []token.Token {
112	return node.LeadingTrivia
113}
114
115func (node *StringLiteral) GetLeadingTrivia() []token.Token {
116	return node.LeadingTrivia
117}
118
119func (node *TableArrayField) GetLeadingTrivia() []token.Token {
120	return node.Expr.GetLeadingTrivia()
121}
122
123func (node *TableSimpleKeyField) GetLeadingTrivia() []token.Token {
124	return node.Name.LeadingTrivia
125}
126
127func (node *TableExpressionKeyField) GetLeadingTrivia() []token.Token {
128	return node.LeftBracket.LeadingTrivia
129}
130
131func (node *TableLiteral) GetLeadingTrivia() []token.Token {
132	return node.LeftBrace.LeadingTrivia
133}
134
135func (node *Vararg) GetLeadingTrivia() []token.Token {
136	return node.LeadingTrivia
137}
138
139func (node *WhileStatement) GetLeadingTrivia() []token.Token {
140	return node.WhileTok.LeadingTrivia
141}