• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2021-2024 Huawei Device Co., Ltd.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at
5#
6# http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13
14extensions:
15  - name: 'js'
16    description: JavaScript keyword
17  - name: 'ts'
18    description: TypeScript keyword
19  - name: 'as'
20    description: AssemblyScript keyword
21  - name: 'ets'
22    description: ETS keyword
23
24keywords:
25  - name: 'abstract'
26    token: KEYW_ABSTRACT
27    keyword: [ets]
28    keyword_like: [ts]
29
30  - name: 'any'
31    token: KEYW_ANY
32    keyword_like: [ts]
33
34  - name: 'anyref'
35    token: KEYW_ANYREF
36    keyword_like: [as]
37
38  - name: 'arguments'
39    token: KEYW_ARGUMENTS
40    keyword_like: [js, ts]
41
42  - name: 'as'
43    token: KEYW_AS
44    keyword: [ets]
45    custom_handler: [js, ts, as]
46
47  - name: 'assert'
48    token: KEYW_ASSERT
49    keyword: [ets]
50
51  - name: 'asserts'
52    token: KEYW_ASSERTS
53    keyword_like: [ts]
54
55  - name: 'async'
56    token: KEYW_ASYNC
57    keyword: [as, ets]
58    keyword_like: [js, ts]
59
60  - name: 'await'
61    token: KEYW_AWAIT
62    keyword: [ets]
63    custom_handler: [js, ts]
64
65  - name: 'bigint'
66    token: KEYW_BIGINT
67    keyword_like: [ts]
68
69  - name: 'boolean'
70    token: KEYW_BOOLEAN
71    keyword_like: [ets, js, ts]
72
73  - name: 'break'
74    token: KEYW_BREAK
75    keyword: [js, ts, as, ets]
76
77  - name: 'byte'
78    token: KEYW_BYTE
79    keyword_like: [ets]
80
81  - name: 'case'
82    token: KEYW_CASE
83    keyword: [js, ts, as, ets]
84
85  - name: 'catch'
86    token: KEYW_CATCH
87    keyword: [js, ts, as]
88    keyword_like: [ets]
89
90  - name: 'char'
91    token: KEYW_CHAR
92    keyword_like: [ets]
93
94  - name: 'class'
95    token: KEYW_CLASS
96    keyword: [js, ts, as, ets]
97
98  - name: 'const'
99    token: KEYW_CONST
100    keyword: [js, ts, as, ets]
101
102  - name: 'constructor'
103    token: KEYW_CONSTRUCTOR
104    keyword: [ets]
105
106  - name: 'continue'
107    token: KEYW_CONTINUE
108    keyword: [js, ts, as, ets]
109
110  - name: 'dataref'
111    token: KEYW_DATAREF
112    keyword_like: [as]
113
114  - name: 'debugger'
115    token: KEYW_DEBUGGER
116    keyword: [js, ets, ts]
117
118  - name: 'declare'
119    token: KEYW_DECLARE
120    keyword_like: [js, ts, as, ets]
121
122  - name: 'default'
123    token: KEYW_DEFAULT
124    keyword: [js, ts, as]
125    keyword_like: [ets]
126
127  - name: 'delete'
128    token: KEYW_DELETE
129    keyword: [js, as, ts]
130
131  - name: 'do'
132    token: KEYW_DO
133    keyword: [js, ts, as, ets]
134
135  - name: 'double'
136    token: KEYW_DOUBLE
137    keyword_like: [ets]
138
139  - name: 'else'
140    token: KEYW_ELSE
141    keyword: [js, ts, as, ets]
142
143  - name: 'enum'
144    token: KEYW_ENUM
145    keyword: [js, as, ets, ts]
146
147  - name: 'eqref'
148    token: KEYW_EQREF
149    keyword_like: [as]
150
151  - name: 'eval'
152    token: KEYW_EVAL
153    keyword_like: [js, ts]
154
155  - name: 'export'
156    token: KEYW_EXPORT
157    keyword: [as, js, ets, ts]
158
159  - name: 'extends'
160    token: KEYW_EXTENDS
161    keyword: [as, js, ets, ts]
162
163  - name: 'externref'
164    token: KEYW_EXTERNREF
165    keyword_like: [as]
166
167  - name: 'f32'
168    token: KEYW_F32
169    keyword_like: [as]
170
171  - name: 'f64'
172    token: KEYW_F64
173    keyword_like: [as]
174
175  - name: 'false'
176    token: LITERAL_FALSE
177    keyword: [as, js, ets, ts]
178
179  - name: 'finally'
180    token: KEYW_FINALLY
181    keyword: [js, ts]
182    keyword_like: [ets]
183
184  - name: 'float'
185    token: KEYW_FLOAT
186    keyword_like: [ets]
187
188  - name: 'for'
189    token: KEYW_FOR
190    keyword: [as, js, ets, ts]
191
192  - name: 'from'
193    token: KEYW_FROM
194    keyword_like: [as, js, ts, ets]
195
196  - name: 'funcref'
197    token: KEYW_FUNCREF
198    keyword_like: [as]
199
200  - name: 'function'
201    token: KEYW_FUNCTION
202    keyword: [as, js, ets, ts]
203
204  - name: 'get'
205    token: KEYW_GET
206    keyword_like: [as, js, ts, ets]
207
208  - name: 'global'
209    token: KEYW_GLOBAL
210    keyword_like: [as, ts]
211
212  - name: 'i8'
213    token: KEYW_I8
214    keyword_like: [as]
215
216  - name: 'i16'
217    token: KEYW_I16
218    keyword_like: [as]
219
220  - name: 'i31ref'
221    token: KEYW_I31REF
222    keyword_like: [as]
223
224  - name: 'i32'
225    token: KEYW_I32
226    keyword_like: [as]
227
228  - name: 'i64'
229    token: KEYW_I64
230    keyword_like: [as]
231
232  - name: 'if'
233    token: KEYW_IF
234    keyword: [as, js, ets, ts]
235
236  - name: 'implements'
237    token: KEYW_IMPLEMENTS
238    keyword: [as, js, ets, ts]
239
240  - name: 'import'
241    token: KEYW_IMPORT
242    keyword: [as, js, ets, ts]
243
244  - name: 'in'
245    token: KEYW_IN
246    keyword: [as, js, ts]
247    keyword_like: [ets]
248
249  - name: 'infer'
250    token: KEYW_INFER
251    keyword_like: [ts]
252
253  - name: 'instanceof'
254    token: KEYW_INSTANCEOF
255    keyword: [as, js, ets, ts]
256
257  - name: 'int'
258    token: KEYW_INT
259    keyword_like: [ets]
260
261  - name: 'interface'
262    token: KEYW_INTERFACE
263    keyword: [js, as, ets, ts]
264
265  - name: 'is'
266    token: KEYW_IS
267    keyword_like: [ets, ts]
268
269  - name: 'isize'
270    token: KEYW_ISIZE
271    keyword_like: [as]
272
273  - name: 'keyof'
274    token: KEYW_KEYOF
275    keyword_like: [ts]
276
277  - name: 'let'
278    token: KEYW_LET
279    keyword: [as, js, ets, ts]
280
281  - name: 'launch'
282    token: KEYW_LAUNCH
283    keyword: [ets]
284
285  - name: 'long'
286    token: KEYW_LONG
287    keyword_like: [ets]
288
289  - name: 'meta'
290    token: KEYW_META
291    keyword_like: [js, ts]
292
293  - name: 'module'
294    token: KEYW_MODULE
295    keyword_like: [as, js, ts]
296
297  - name: 'namespace'
298    token: KEYW_NAMESPACE
299    keyword: [ets]
300    keyword_like: [as, ts]
301
302  - name: 'native'
303    token: KEYW_NATIVE
304    keyword: [ets]
305
306  - name: 'never'
307    token: KEYW_NEVER
308    keyword_like: [ts]
309
310  - name: 'new'
311    token: KEYW_NEW
312    keyword: [as, js, ets, ts]
313
314  - name: 'null'
315    token: LITERAL_NULL
316    keyword: [as, js, ets, ts]
317
318  - name: 'number'
319    token: KEYW_NUMBER
320    keyword_like: [ts]
321
322  - name: 'object'
323    token: KEYW_OBJECT
324    keyword_like: [ets, ts]
325
326  - name: 'of'
327    token: KEYW_OF
328    keyword_like: [ets, js, ts, as]
329
330  - name: 'final'
331    token: KEYW_FINAL
332    keyword: [ets]
333
334  - name: 'out'
335    token: KEYW_OUT
336    keyword_like: [ets]
337
338  - name: 'override'
339    token: KEYW_OVERRIDE
340    keyword: [ets]
341    keyword_like: [ts]
342
343  - name: 'package'
344    token: KEYW_PACKAGE
345    keyword: [js, ts, as, ets]
346
347  - name: 'internal'
348    token: KEYW_INTERNAL
349    keyword: [ets]
350
351  - name: 'private'
352    token: KEYW_PRIVATE
353    keyword: [js, as, ets, ts]
354
355  - name: 'protected'
356    token: KEYW_PROTECTED
357    keyword: [js, as, ets, ts]
358
359  - name: 'public'
360    token: KEYW_PUBLIC
361    keyword: [js, as, ets, ts]
362
363  - name: 'readonly'
364    token: KEYW_READONLY
365    keyword_like: [as, ts, ets]
366
367  - name: 'rethrows'
368    token: KEYW_RETHROWS
369    keyword_like: [ets]
370
371  - name: 'return'
372    token: KEYW_RETURN
373    keyword: [as, js, ets, ts]
374
375  - name: 'require'
376    token: KEYW_REQUIRE
377    keyword_like: [ts]
378
379  - name: 'set'
380    token: KEYW_SET
381    keyword_like: [as, js, ts, ets]
382
383  - name: 'short'
384    token: KEYW_SHORT
385    keyword_like: [ets]
386
387  - name: 'static'
388    token: KEYW_STATIC
389    keyword: [js, as, ets, ts]
390
391  - name: 'string'
392    token: KEYW_STRING
393    keyword_like: [ts]
394
395  - name: 'struct'
396    token: KEYW_STRUCT
397    keyword_like: [ets]
398
399  - name: 'super'
400    token: KEYW_SUPER
401    keyword: [js, ts, ets]
402
403  - name: 'switch'
404    token: KEYW_SWITCH
405    keyword: [js, as, ets, ts]
406
407  - name: 'target'
408    token: KEYW_TARGET
409    keyword_like: [js, ts]
410
411  - name: 'this'
412    token: KEYW_THIS
413    keyword: [as, js, ets, ts]
414
415  - name: 'throw'
416    token: KEYW_THROW
417    keyword: [js, ets, ts, as]
418
419  - name: 'throws'
420    token: KEYW_THROWS
421    keyword_like: [ets]
422
423  - name: 'true'
424    token: LITERAL_TRUE
425    keyword: [as, js, ets, ts]
426
427  - name: 'try'
428    token: KEYW_TRY
429    keyword: [as, js, ets, ts]
430
431  - name: 'type'
432    token: KEYW_TYPE
433    keyword: [ets]
434    keyword_like: [js, ts]
435
436  - name: 'typeof'
437    token: KEYW_TYPEOF
438    keyword: [js, ets, ts]
439
440  - name: 'u8'
441    token: KEYW_U8
442    keyword_like: [as]
443
444  - name: 'u16'
445    token: KEYW_U16
446    keyword_like: [as]
447
448  - name: 'u32'
449    token: KEYW_U32
450    keyword_like: [as]
451
452  - name: 'u64'
453    token: KEYW_U64
454    keyword_like: [as]
455
456  - name: 'undefined'
457    token: KEYW_UNDEFINED
458    keyword: [ets]
459    keyword_like: [js, ts]
460
461  - name: 'unknown'
462    token: KEYW_UNKNOWN
463    keyword_like: [ts]
464
465  - name: 'usize'
466    token: KEYW_USIZE
467    keyword_like: [as]
468
469  - name: 'v128'
470    token: KEYW_V128
471    keyword_like: [as]
472
473  - name: 'var'
474    token: KEYW_VAR
475    keyword: [as, js, ets, ts]
476
477  - name: 'void'
478    token: KEYW_VOID
479    keyword: [as, js, ts]
480
481  - name: 'while'
482    token: KEYW_WHILE
483    keyword: [as, js, ets, ts]
484
485  - name: 'with'
486    token: KEYW_WITH
487    keyword: [js, ts]
488
489  - name: 'yield'
490    token: KEYW_YIELD
491    keyword: [ets]
492    custom_handler: [js, ts]
493