1
1
{
2
- "$schema" : " https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json" ,
3
- "fileTypes " : [
4
- " bl "
5
- ],
6
- "name " : " bitloops " ,
7
- "patterns" : [
2
+ "$schema" : " https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json" ,
3
+ "name " : " Bitloops " ,
4
+ "patterns" : [
5
+ {
6
+ "include " : " #keywords "
7
+ },
8
8
{
9
- "include" : " #main"
10
- }
11
- ],
12
- "scopeName" : " source.bitloops" ,
13
- "repository" : {
14
- "main" : {
15
- "patterns" : [
16
- {
17
- "match" : " (\b (if|while|for|return|ValueObject|DTO|Props|RESTController|RESTRouter|UseCase|Feature|optional|const|let|isBrokenIf|isNotBrokenIf|Config|enum|switch|case|default|Empty|null|env|concretes|implements|extends)\b )" ,
18
- "name" : " keyword.bitloops"
19
- },
20
- {
21
- "include" : " #numeric"
22
- },
23
- {
24
- "begin" : " (\{ )" ,
25
- "beginCaptures" : {
26
- "1" : {
27
- "name" : " punctuation.bitloops"
28
- }
29
- },
30
- "patterns" : [
31
- {
32
- "include" : " #main__1"
33
- }
34
- ],
35
- "end" : " (\} )" ,
36
- "endCaptures" : {
37
- "1" : {
38
- "name" : " punctuation.bitloops"
39
- }
40
- }
41
- },
42
- {
43
- "begin" : " (\( )" ,
44
- "beginCaptures" : {
45
- "1" : {
46
- "name" : " punctuation.bitloops"
47
- }
48
- },
49
- "patterns" : [
50
- {
51
- "include" : " #main__2"
52
- }
53
- ],
54
- "end" : " (\) )" ,
55
- "endCaptures" : {
56
- "1" : {
57
- "name" : " punctuation.bitloops"
58
- }
59
- }
60
- },
61
- {
62
- "match" : " (;)" ,
63
- "name" : " punctuation.bitloops"
64
- },
65
- {
66
- "match" : " (\( [\x {0020}]*OK[\x {0020}]*\( [\x {0020}]*([A-Z]+[a-zA-Z0-9]*(DTO|UseCase|Aggregate|VO|Entity)[\x {0020}]*)\) [\x {0020}]*,[\x {0020}]*Errors[\x {0020}]*[\x {0020}]*\( [\x {0020}]*(((DomainErrors|ApplicationErrors)[\. ]([A-Z]+[a-zA-Z0-9]*(Error)))([\x {0020}]*[\x {002c}][\x {0020}]*((DomainError|ApplicationErrors)[\. ](\b [A-Z]+[a-zA-Z0-9]*(Error)\b )))*)?[\x {0020}]*\) [\x {0020}]*\) )" ,
67
- "name" : " keyword.bitloops"
68
- },
69
- {
70
- "match" : " (=|:|\+ |-|,|\. )" ,
71
- "name" : " punctuation.bitloops"
72
- },
73
- {
74
- "match" : " (\b [A-Z]+[a-zA-Z0-9]*(DTO|UseCase|Aggregate|VO|Entity|Error|RESTController|RESTRouter|GraphQLController|Feature|Mapper|RepoPort|RepoAdapter|PackagePort|PackageAdapter)\b )" ,
75
- "name" : " text.bitloops"
76
- },
77
- {
78
- "match" : " (\b (DTO|UseCase|Aggregate|Entity|OK|Errors|ValueObject|Props|RESTController|RESTRouter|GraphQLController|Feature|Mapper|RepoPort|RepoAdapter|PackagePort|PackageAdapter|ApplicationErrors|DomainErrors|DomainError|ApplicationError)\b )" ,
79
- "name" : " keyword.bitloops"
80
- },
81
- {
82
- "begin" : " (\\ " )",
83
- "beginCaptures" : {
84
- "1" : {
85
- "name" : " punctuation.bitloops"
86
- }
87
- },
88
- "contentName" : " text.bitloops" ,
89
- "end" : " (\\ " )",
90
- "endCaptures" : {
91
- "1" : {
92
- "name" : " punctuation.bitloops"
93
- }
94
- }
95
- },
96
- {
97
- "begin" : " (')" ,
98
- "beginCaptures" : {
99
- "1" : {
100
- "name" : " punctuation.bitloops"
101
- }
102
- },
103
- "contentName" : " text.bitloops" ,
104
- "end" : " (')" ,
105
- "endCaptures" : {
106
- "1" : {
107
- "name" : " punctuation.bitloops"
108
- }
109
- }
110
- },
111
- {
112
- "begin" : " (`)" ,
113
- "beginCaptures" : {
114
- "1" : {
115
- "name" : " punctuation.bitloops"
116
- }
117
- },
118
- "patterns" : [
119
- {
120
- "include" : " #main__5"
121
- }
122
- ],
123
- "end" : " (`)" ,
124
- "endCaptures" : {
125
- "1" : {
126
- "name" : " punctuation.bitloops"
127
- }
128
- }
129
- },
130
- {
131
- "begin" : " (\( )" ,
132
- "beginCaptures" : {
133
- "1" : {
134
- "name" : " punctuation.bitloops"
135
- }
136
- },
137
- "patterns" : [
138
- {
139
- "include" : " #main__6"
140
- }
141
- ],
142
- "end" : " (\) )" ,
143
- "endCaptures" : {
144
- "1" : {
145
- "name" : " punctuation.bitloops"
146
- }
147
- }
148
- },
149
- {
150
- "include" : " #multi_line_comment"
151
- },
152
- {
153
- "match" : " (//.*)" ,
154
- "name" : " comment.bitloops"
155
- },
156
- {
157
- "match" : " (string|bool|int32|int64|double|float|unit32|uint64|sint32|sint64|fixed32|fixed64|sfixed32|sfixed64|bytes)" ,
158
- "name" : " text.bitloops"
159
- },
160
- {
161
- "match" : " (\b optional\b )" ,
162
- "name" : " text.bitloops"
163
- },
164
- {
165
- "match" : " (\b [a-z][a-zA-Z0-9]*\b )" ,
166
- "name" : " text.bitloops"
167
- },
168
- {
169
- "match" : " (private)" ,
170
- "name" : " text.bitloops"
171
- },
172
- {
173
- "match" : " (Struct)" ,
174
- "name" : " text.bitloops"
175
- },
176
- {
177
- "match" : " ([^\s ])" ,
178
- "name" : " invalid.bitloops"
179
- }
180
- ]
181
- },
182
- "backtick_variable_wrapper" : {
183
- "patterns" : [
184
- {
185
- "begin" : " (\$ {)" ,
186
- "beginCaptures" : {
187
- "1" : {
188
- "name" : " punctuation.bitloops"
189
- }
190
- },
191
- "contentName" : " text.bitloops" ,
192
- "end" : " (})" ,
193
- "endCaptures" : {
194
- "1" : {
195
- "name" : " punctuation.bitloops"
196
- }
197
- }
198
- }
199
- ]
200
- },
201
- "backtick_variable_wrapper__1" : {
202
- "patterns" : []
203
- },
204
- "main__1" : {
205
- "patterns" : [
206
- {
207
- "include" : " #main"
208
- }
209
- ]
210
- },
211
- "main__2" : {
212
- "patterns" : [
213
- {
214
- "include" : " #main"
215
- }
216
- ]
217
- },
218
- "main__3" : {
219
- "patterns" : []
220
- },
221
- "main__4" : {
222
- "patterns" : []
9
+ "include" : " #numeric"
10
+ },
11
+ {
12
+ "include" : " #strings"
13
+ },
14
+ {
15
+ "include" : " #comments"
16
+ },
17
+ {
18
+ "include" : " #bitloopsClasses"
19
+ },
20
+ {
21
+ "include" : " #myClasses"
22
+ }
23
+ ],
24
+ "repository" : {
25
+ "keywords" : {
26
+ "patterns" : [{
27
+ "name" : " keyword.control.bitloops" ,
28
+ "match" : " \\ b(const|let|continue|break|return|concretes|implements|extends)\\ b"
29
+ }]
30
+ },
31
+ "numeric" : {
32
+ "patterns" : [{
33
+ "name" : " constant.numeric.bitloops" ,
34
+ "match" : " \\ b(0x[0-9a-fA-F]+|0b[01]+|\\ d+)\\ b"
35
+ }]
223
36
},
224
- "main__5" : {
225
- "patterns" : [
226
- {
227
- "include" : " #backtick_variable_wrapper"
228
- },
229
- {
230
- "match" : " ([A-Za-z0-9\.\,\+\-\:\x {003d}])" ,
231
- "name" : " text.bitloops"
37
+ "bitloopsClasses" : {
38
+ "patterns" : [{
39
+ "name" : " keyword.control.templateClass.bitloops" ,
40
+ "match" : " \\ b(Config|(REST\\ .Methods)|REST|DTO|UseCase|Aggregate|Entity|OK|Errors|ValueObject|Props|RESTController|RESTRouter|GraphQLController|Feature|Mapper|RepoPort|RepoAdapter|PackagePort|PackageAdapter|ApplicationErrors|DomainErrors|DomainError|ApplicationError)\\ b"
41
+ }]
42
+ },
43
+ "myClasses" : {
44
+ "patterns" : [{
45
+ "name" : " entity.name.class.bitloops" ,
46
+ "match" : " \\ b[A-Z]+[a-zA-Z0-9]*(DTO|UseCase|Aggregate|VO|Entity|Error|Controller|Router|Feature|Mapper|RepoPort|RepoAdapter|PackagePort|PackageAdapter|Error)\\ b"
47
+ }]
48
+ },
49
+ "strings" : {
50
+ "patterns" : [
51
+ {
52
+ "name" : " string.quoted.double.bitloops" ,
53
+ "begin" : " \" " ,
54
+ "end" : " \" "
55
+ },
56
+ {
57
+ "name" : " string.quoted.single.bitloops" ,
58
+ "begin" : " '" ,
59
+ "end" : " '"
60
+ },
61
+ {
62
+ "name" : " string.quoted.backtick.bitloops" ,
63
+ "begin" : " `" ,
64
+ "end" : " `"
232
65
}
233
66
]
234
- },
235
- "main__6 " : {
67
+ },
68
+ "comments " : {
236
69
"patterns" : [
237
70
{
238
- "include" : " #numeric"
71
+ "name" : " comment.line.double-slash.bitloops" ,
72
+ "match" : " //.*$"
239
73
},
240
74
{
241
- "match" : " (,)" ,
242
- "name" : " punctuation.bitloops"
243
- }
244
- ]
245
- },
246
- "multi_line_comment" : {
247
- "patterns" : [
248
- {
249
- "begin" : " (/\* )" ,
250
- "beginCaptures" : {
251
- "1" : {
252
- "name" : " comment.bitloops"
253
- }
254
- },
255
- "contentName" : " comment.bitloops" ,
256
- "end" : " (\* /)" ,
257
- "endCaptures" : {
258
- "1" : {
259
- "name" : " comment.bitloops"
260
- }
261
- }
262
- }
263
- ]
264
- },
265
- "multi_line_comment__1" : {
266
- "patterns" : []
267
- },
268
- "numeric" : {
269
- "patterns" : [
270
- {
271
- "match" : " (\b \d +.?\d *)" ,
272
- "name" : " constant.numeric.bitloops"
75
+ "name" : " comment.block.bitloops" ,
76
+ "begin" : " /\\ *" ,
77
+ "end" : " \\ */"
273
78
}
274
79
]
275
80
}
276
- }
81
+ },
82
+ "scopeName" : " source.bitloops"
277
83
}
0 commit comments