thyscript 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/bin/thy-node.js +332 -0
  2. package/bin/thy.js +828 -0
  3. package/bin/thys.js +25 -0
  4. package/examples/calculator.thy +274 -0
  5. package/examples/calculator.thy.js +628 -0
  6. package/examples/hello.thy +34 -0
  7. package/examples/login.thy +382 -0
  8. package/examples/login.thy.js +710 -0
  9. package/package.json +54 -0
  10. package/scripts/_class.js +18 -0
  11. package/scripts/_class2.js +11 -0
  12. package/scripts/_class3.js +21 -0
  13. package/scripts/_dstruct.js +20 -0
  14. package/scripts/_dstruct2.js +24 -0
  15. package/scripts/_scaffold.js +16 -0
  16. package/scripts/_scaffold2.js +16 -0
  17. package/scripts/_scaffold3.js +26 -0
  18. package/scripts/_tpl_compile.js +13 -0
  19. package/scripts/_tpl_test.js +9 -0
  20. package/scripts/_typeof.js +26 -0
  21. package/scripts/_typeof2.js +25 -0
  22. package/scripts/patch_genmethod.js +44 -0
  23. package/scripts/smoke_test.js +167 -0
  24. package/scripts/smoke_test2.js +151 -0
  25. package/scripts/test_control_panel.js +58 -0
  26. package/src/compiler/CodeGenerator.js +1449 -0
  27. package/src/compiler/JITCompiler.js +325 -0
  28. package/src/database/DatabaseEngine.js +931 -0
  29. package/src/errors/ErrorDetector.js +305 -0
  30. package/src/errors/ErrorMessages.js +497 -0
  31. package/src/index.js +169 -0
  32. package/src/lexer/Lexer.js +342 -0
  33. package/src/lexer/TokenTypes.js +1234 -0
  34. package/src/memory/MemoryManager.js +283 -0
  35. package/src/parser/AST.js +606 -0
  36. package/src/parser/Parser.js +1942 -0
  37. package/src/runtime/ThyRuntime.js +265 -0
  38. package/src/runtime/stdlib/ArrayLib.js +207 -0
  39. package/src/runtime/stdlib/FileLib.js +168 -0
  40. package/src/runtime/stdlib/MathLib.js +411 -0
  41. package/src/runtime/stdlib/StringLib.js +387 -0
  42. package/src/server/ControlPanel.js +1188 -0
  43. package/src/server/HTMLCSSEngine.js +866 -0
  44. package/src/server/SecurityEngine.js +714 -0
  45. package/src/server/ServerEngine.js +738 -0
  46. package/tests/test1_math.thy +82 -0
  47. package/tests/test2_oop.thy +133 -0
  48. package/tests/test3_server.thy +143 -0
  49. package/tests/test4_functions.thy +159 -0
@@ -0,0 +1,1234 @@
1
+ 'use strict';
2
+ /**
3
+ * ThyScript Token Types
4
+ * Complete token type registry for all ThyScript language constructs
5
+ */
6
+
7
+ const TokenType = {
8
+ // Literals
9
+ NUMBER: 'NUMBER',
10
+ FLOAT: 'FLOAT',
11
+ STRING: 'STRING',
12
+ TEMPLATE_LITERAL: 'TEMPLATE_LITERAL',
13
+ BOOLEAN: 'BOOLEAN',
14
+ NULL: 'NULL',
15
+ IDENTIFIER: 'IDENTIFIER',
16
+
17
+ // Whitespace / Structure
18
+ NEWLINE: 'NEWLINE',
19
+ EOF: 'EOF',
20
+ COMMENT: 'COMMENT',
21
+ INDENT: 'INDENT',
22
+ DEDENT: 'DEDENT',
23
+
24
+ // Arithmetic
25
+ PLUS: 'PLUS',
26
+ MINUS: 'MINUS',
27
+ STAR: 'STAR',
28
+ SLASH: 'SLASH',
29
+ PERCENT: 'PERCENT',
30
+ POWER: 'POWER',
31
+ PLUS_PLUS: 'PLUS_PLUS',
32
+ MINUS_MINUS: 'MINUS_MINUS',
33
+ PLUS_ASSIGN: 'PLUS_ASSIGN',
34
+ MINUS_ASSIGN: 'MINUS_ASSIGN',
35
+ MUL_ASSIGN: 'MUL_ASSIGN',
36
+ DIV_ASSIGN: 'DIV_ASSIGN',
37
+ MOD_ASSIGN: 'MOD_ASSIGN',
38
+
39
+ // Comparison
40
+ EQ_EQ: 'EQ_EQ',
41
+ EQ_STRICT: 'EQ_STRICT',
42
+ NOT_EQ: 'NOT_EQ',
43
+ NOT_EQ_STRICT: 'NOT_EQ_STRICT',
44
+ LT: 'LT',
45
+ LT_EQ: 'LT_EQ',
46
+ GT: 'GT',
47
+ GT_EQ: 'GT_EQ',
48
+
49
+ // Logical
50
+ AND_AND: 'AND_AND',
51
+ OR_OR: 'OR_OR',
52
+ NOT: 'NOT',
53
+
54
+ // Bitwise
55
+ AMPERSAND: 'AMPERSAND',
56
+ PIPE: 'PIPE',
57
+ CARET: 'CARET',
58
+ TILDE: 'TILDE',
59
+ SHIFT_LEFT: 'SHIFT_LEFT',
60
+ SHIFT_RIGHT: 'SHIFT_RIGHT',
61
+
62
+ // Assignment & punctuation
63
+ ASSIGN: 'ASSIGN',
64
+ ARROW: 'ARROW',
65
+ FAT_ARROW: 'FAT_ARROW',
66
+ DOT: 'DOT',
67
+ SPREAD: 'SPREAD',
68
+ COMMA: 'COMMA',
69
+ COLON: 'COLON',
70
+ SEMICOLON: 'SEMICOLON',
71
+ LPAREN: 'LPAREN',
72
+ RPAREN: 'RPAREN',
73
+ LBRACE: 'LBRACE',
74
+ RBRACE: 'RBRACE',
75
+ LBRACKET: 'LBRACKET',
76
+ RBRACKET: 'RBRACKET',
77
+ AT: 'AT',
78
+ DOLLAR: 'DOLLAR',
79
+ QUESTION: 'QUESTION',
80
+ BACKSLASH: 'BACKSLASH',
81
+ NULL_COALESCE: 'NULL_COALESCE',
82
+ OPTIONAL_CHAIN: 'OPTIONAL_CHAIN',
83
+
84
+ // ThyScript Keywords
85
+ KW_PRINT: 'KW_PRINT',
86
+ KW_CONST: 'KW_CONST',
87
+ KW_TABLE: 'KW_TABLE',
88
+ KW_PUBLIC: 'KW_PUBLIC',
89
+ KW_PRIVATE: 'KW_PRIVATE',
90
+ KW_PROTECTED: 'KW_PROTECTED',
91
+ KW_CLASS: 'KW_CLASS',
92
+ KW_END: 'KW_END',
93
+ KW_IF: 'KW_IF',
94
+ KW_ELSE: 'KW_ELSE',
95
+ KW_ELIF: 'KW_ELIF',
96
+ KW_DO: 'KW_DO',
97
+ KW_THEN: 'KW_THEN',
98
+ KW_WHILE: 'KW_WHILE',
99
+ KW_FOR: 'KW_FOR',
100
+ KW_IN: 'KW_IN',
101
+ KW_ADD: 'KW_ADD',
102
+ KW_CHANGE: 'KW_CHANGE',
103
+ KW_TO: 'KW_TO',
104
+ KW_TRUE: 'KW_TRUE',
105
+ KW_FALSE: 'KW_FALSE',
106
+ KW_FAKE: 'KW_FAKE',
107
+ KW_AND: 'KW_AND',
108
+ KW_OR: 'KW_OR',
109
+ KW_NOT: 'KW_NOT',
110
+ KW_EXCEPT: 'KW_EXCEPT',
111
+ KW_EXPECT: 'KW_EXPECT',
112
+ KW_SAVE: 'KW_SAVE',
113
+ KW_FREE: 'KW_FREE',
114
+ KW_INPUT: 'KW_INPUT',
115
+ KW_CALCULATE: 'KW_CALCULATE',
116
+ KW_TYPE: 'KW_TYPE',
117
+ KW_TEKS: 'KW_TEKS',
118
+ KW_BECOME: 'KW_BECOME',
119
+ KW_FUNC: 'KW_FUNC',
120
+ KW_RETURN: 'KW_RETURN',
121
+ KW_IMPORT: 'KW_IMPORT',
122
+ KW_FROM: 'KW_FROM',
123
+ KW_EXPORT: 'KW_EXPORT',
124
+ KW_ASYNC: 'KW_ASYNC',
125
+ KW_AWAIT: 'KW_AWAIT',
126
+ KW_TRY: 'KW_TRY',
127
+ KW_CATCH: 'KW_CATCH',
128
+ KW_FINALLY: 'KW_FINALLY',
129
+ KW_THROW: 'KW_THROW',
130
+ KW_NEW: 'KW_NEW',
131
+ KW_DELETE: 'KW_DELETE',
132
+ KW_TYPEOF: 'KW_TYPEOF',
133
+ KW_INSTANCEOF: 'KW_INSTANCEOF',
134
+ KW_BREAK: 'KW_BREAK',
135
+ KW_CONTINUE: 'KW_CONTINUE',
136
+ KW_SWITCH: 'KW_SWITCH',
137
+ KW_CASE: 'KW_CASE',
138
+ KW_DEFAULT: 'KW_DEFAULT',
139
+ KW_CLASS_HTML: 'KW_CLASS_HTML',
140
+ KW_SERVER: 'KW_SERVER',
141
+ KW_CLIENT: 'KW_CLIENT',
142
+ KW_ROUTE: 'KW_ROUTE',
143
+ KW_GET: 'KW_GET',
144
+ KW_POST: 'KW_POST',
145
+ KW_PUT: 'KW_PUT',
146
+ KW_DELETE_HTTP: 'KW_DELETE_HTTP',
147
+ KW_PATCH: 'KW_PATCH',
148
+ KW_MIDDLEWARE: 'KW_MIDDLEWARE',
149
+ KW_SOCKET: 'KW_SOCKET',
150
+ KW_EMIT: 'KW_EMIT',
151
+ KW_ON: 'KW_ON',
152
+ KW_LISTEN: 'KW_LISTEN',
153
+ KW_CONNECT: 'KW_CONNECT',
154
+ KW_DATABASE: 'KW_DATABASE',
155
+ KW_QUERY: 'KW_QUERY',
156
+ KW_INSERT: 'KW_INSERT',
157
+ KW_UPDATE: 'KW_UPDATE',
158
+ KW_SELECT: 'KW_SELECT',
159
+ KW_WHERE: 'KW_WHERE',
160
+ KW_JOIN: 'KW_JOIN',
161
+ KW_CREATE: 'KW_CREATE',
162
+ KW_DROP: 'KW_DROP',
163
+ KW_TABLE_DB: 'KW_TABLE_DB',
164
+ KW_RENDER: 'KW_RENDER',
165
+ KW_COMPONENT: 'KW_COMPONENT',
166
+ KW_STATE: 'KW_STATE',
167
+ KW_PROPS: 'KW_PROPS',
168
+ KW_STYLE: 'KW_STYLE',
169
+ KW_ANIMATE: 'KW_ANIMATE',
170
+ KW_MATRIX: 'KW_MATRIX',
171
+ KW_VECTOR: 'KW_VECTOR',
172
+ KW_TENSOR: 'KW_TENSOR',
173
+ KW_NEURAL: 'KW_NEURAL',
174
+ KW_TRAIN: 'KW_TRAIN',
175
+ KW_PREDICT: 'KW_PREDICT',
176
+ KW_SIMULATE: 'KW_SIMULATE',
177
+ KW_PHYSICS: 'KW_PHYSICS',
178
+ KW_PARTICLE: 'KW_PARTICLE',
179
+ KW_FORCE: 'KW_FORCE',
180
+ KW_GRAVITY: 'KW_GRAVITY',
181
+ KW_COLLISION: 'KW_COLLISION',
182
+ KW_SCENE: 'KW_SCENE',
183
+ KW_CANVAS: 'KW_CANVAS',
184
+ KW_DRAW: 'KW_DRAW',
185
+ KW_CLEAR: 'KW_CLEAR',
186
+ KW_COLOR: 'KW_COLOR',
187
+ KW_FILL: 'KW_FILL',
188
+ KW_STROKE: 'KW_STROKE',
189
+ KW_TEXT: 'KW_TEXT',
190
+ KW_IMAGE: 'KW_IMAGE',
191
+ KW_SPRITE: 'KW_SPRITE',
192
+ KW_LOAD: 'KW_LOAD',
193
+ KW_SECURITY: 'KW_SECURITY',
194
+ KW_ENCRYPT: 'KW_ENCRYPT',
195
+ KW_DECRYPT: 'KW_DECRYPT',
196
+ KW_HASH: 'KW_HASH',
197
+ KW_TOKEN: 'KW_TOKEN',
198
+ KW_AUTH: 'KW_AUTH',
199
+ KW_VALIDATE: 'KW_VALIDATE',
200
+ KW_SANITIZE: 'KW_SANITIZE',
201
+ KW_NULL: 'KW_NULL',
202
+ KW_UNDEFINED: 'KW_UNDEFINED',
203
+ KW_VOID: 'KW_VOID',
204
+ KW_STATIC: 'KW_STATIC',
205
+ KW_ABSTRACT: 'KW_ABSTRACT',
206
+ KW_INTERFACE: 'KW_INTERFACE',
207
+ KW_EXTENDS: 'KW_EXTENDS',
208
+ KW_IMPLEMENTS: 'KW_IMPLEMENTS',
209
+ KW_SUPER: 'KW_SUPER',
210
+ KW_THIS: 'KW_THIS',
211
+ KW_SELF: 'KW_SELF',
212
+ KW_YIELD: 'KW_YIELD',
213
+ KW_GENERATOR: 'KW_GENERATOR',
214
+ KW_LAZY: 'KW_LAZY',
215
+ KW_EAGER: 'KW_EAGER',
216
+ KW_PARALLEL: 'KW_PARALLEL',
217
+ KW_CONCURRENT: 'KW_CONCURRENT',
218
+ KW_MUTEX: 'KW_MUTEX',
219
+ KW_LOCK: 'KW_LOCK',
220
+ KW_UNLOCK: 'KW_UNLOCK',
221
+ KW_THREAD: 'KW_THREAD',
222
+ KW_WORKER: 'KW_WORKER',
223
+ KW_SPAWN: 'KW_SPAWN',
224
+ KW_CHANNEL: 'KW_CHANNEL',
225
+ KW_SEND: 'KW_SEND',
226
+ KW_RECEIVE: 'KW_RECEIVE',
227
+ KW_PIPE_OP: 'KW_PIPE_OP',
228
+ KW_MATCH: 'KW_MATCH',
229
+ KW_WHEN: 'KW_WHEN',
230
+ KW_OTHERWISE: 'KW_OTHERWISE',
231
+ KW_ENUM: 'KW_ENUM',
232
+ KW_STRUCT: 'KW_STRUCT',
233
+ KW_TRAIT: 'KW_TRAIT',
234
+ KW_IMPL: 'KW_IMPL',
235
+ KW_MOD: 'KW_MOD',
236
+ KW_USE: 'KW_USE',
237
+ KW_LET: 'KW_LET',
238
+ KW_VAR: 'KW_VAR',
239
+ KW_MUT: 'KW_MUT',
240
+ KW_REF: 'KW_REF',
241
+ KW_DEREF: 'KW_DEREF',
242
+ KW_BOX: 'KW_BOX',
243
+ KW_UNBOX: 'KW_UNBOX',
244
+ KW_CLONE: 'KW_CLONE',
245
+ KW_MOVE: 'KW_MOVE',
246
+ KW_COPY: 'KW_COPY',
247
+ KW_SHARE: 'KW_SHARE',
248
+ KW_BORROW: 'KW_BORROW',
249
+ KW_DEFER: 'KW_DEFER',
250
+ KW_PANIC: 'KW_PANIC',
251
+ KW_RECOVER: 'KW_RECOVER',
252
+ KW_LOG: 'KW_LOG',
253
+ KW_WARN: 'KW_WARN',
254
+ KW_ERROR: 'KW_ERROR',
255
+ KW_DEBUG: 'KW_DEBUG',
256
+ KW_INFO: 'KW_INFO',
257
+ KW_BENCHMARK: 'KW_BENCHMARK',
258
+ KW_PROFILE: 'KW_PROFILE',
259
+ KW_MEASURE: 'KW_MEASURE',
260
+ KW_CACHE: 'KW_CACHE',
261
+ KW_MEMO: 'KW_MEMO',
262
+ KW_PROXY: 'KW_PROXY',
263
+ KW_REFLECT: 'KW_REFLECT',
264
+ KW_META: 'KW_META',
265
+ KW_DECORATOR: 'KW_DECORATOR',
266
+ KW_INJECT: 'KW_INJECT',
267
+ KW_PROVIDE: 'KW_PROVIDE',
268
+ KW_OBSERVE: 'KW_OBSERVE',
269
+ KW_EMIT_EVENT: 'KW_EMIT_EVENT',
270
+ KW_SUBSCRIBE: 'KW_SUBSCRIBE',
271
+ KW_UNSUBSCRIBE: 'KW_UNSUBSCRIBE',
272
+ KW_PIPELINE: 'KW_PIPELINE',
273
+ KW_STREAM: 'KW_STREAM',
274
+ KW_BUFFER: 'KW_BUFFER',
275
+ KW_CHUNK: 'KW_CHUNK',
276
+ KW_FLUSH: 'KW_FLUSH',
277
+ KW_COMPRESS: 'KW_COMPRESS',
278
+ KW_DECOMPRESS: 'KW_DECOMPRESS',
279
+ KW_SERIALIZE: 'KW_SERIALIZE',
280
+ KW_DESERIALIZE: 'KW_DESERIALIZE',
281
+ KW_PARSE: 'KW_PARSE',
282
+ KW_FORMAT: 'KW_FORMAT',
283
+ KW_ENCODE: 'KW_ENCODE',
284
+ KW_DECODE: 'KW_DECODE',
285
+ KW_TRANSFORM: 'KW_TRANSFORM',
286
+ KW_MAP: 'KW_MAP',
287
+ KW_FILTER: 'KW_FILTER',
288
+ KW_REDUCE: 'KW_REDUCE',
289
+ KW_SORT: 'KW_SORT',
290
+ KW_FIND: 'KW_FIND',
291
+ KW_SEARCH: 'KW_SEARCH',
292
+ KW_INDEX: 'KW_INDEX',
293
+ KW_SLICE: 'KW_SLICE',
294
+ KW_SPLICE: 'KW_SPLICE',
295
+ KW_JOIN_ARR: 'KW_JOIN_ARR',
296
+ KW_SPLIT: 'KW_SPLIT',
297
+ KW_TRIM: 'KW_TRIM',
298
+ KW_UPPER: 'KW_UPPER',
299
+ KW_LOWER: 'KW_LOWER',
300
+ KW_REPLACE: 'KW_REPLACE',
301
+ KW_MATCH_RE: 'KW_MATCH_RE',
302
+ KW_TEST_RE: 'KW_TEST_RE',
303
+ KW_REGEX: 'KW_REGEX',
304
+ KW_FILE: 'KW_FILE',
305
+ KW_READ: 'KW_READ',
306
+ KW_WRITE: 'KW_WRITE',
307
+ KW_APPEND: 'KW_APPEND',
308
+ KW_DELETE_FILE: 'KW_DELETE_FILE',
309
+ KW_EXISTS: 'KW_EXISTS',
310
+ KW_MKDIR: 'KW_MKDIR',
311
+ KW_LIST_DIR: 'KW_LIST_DIR',
312
+ KW_PATH: 'KW_PATH',
313
+ KW_ENV: 'KW_ENV',
314
+ KW_CONFIG: 'KW_CONFIG',
315
+ KW_PROCESS: 'KW_PROCESS',
316
+ KW_EXIT: 'KW_EXIT',
317
+ KW_SLEEP: 'KW_SLEEP',
318
+ KW_TIMEOUT: 'KW_TIMEOUT',
319
+ KW_INTERVAL: 'KW_INTERVAL',
320
+ KW_IMMEDIATE: 'KW_IMMEDIATE',
321
+ KW_FETCH: 'KW_FETCH',
322
+ KW_HTTP: 'KW_HTTP',
323
+ KW_HTTPS: 'KW_HTTPS',
324
+ KW_URL: 'KW_URL',
325
+ KW_COOKIE: 'KW_COOKIE',
326
+ KW_SESSION: 'KW_SESSION',
327
+ KW_HEADER: 'KW_HEADER',
328
+ KW_BODY: 'KW_BODY',
329
+ KW_PARAM: 'KW_PARAM',
330
+ KW_QUERY_PARAM: 'KW_QUERY_PARAM',
331
+ KW_FORM: 'KW_FORM',
332
+ KW_UPLOAD: 'KW_UPLOAD',
333
+ KW_DOWNLOAD: 'KW_DOWNLOAD',
334
+ KW_SERVE: 'KW_SERVE',
335
+ KW_STATIC_FILES: 'KW_STATIC_FILES',
336
+ KW_TEMPLATE: 'KW_TEMPLATE',
337
+ KW_LAYOUT: 'KW_LAYOUT',
338
+ KW_PAGE: 'KW_PAGE',
339
+ KW_SECTION: 'KW_SECTION',
340
+ KW_WIDGET: 'KW_WIDGET',
341
+ KW_BUTTON: 'KW_BUTTON',
342
+ KW_INPUT_UI: 'KW_INPUT_UI',
343
+ KW_FORM_UI: 'KW_FORM_UI',
344
+ KW_TABLE_UI: 'KW_TABLE_UI',
345
+ KW_CHART: 'KW_CHART',
346
+ KW_GRAPH: 'KW_GRAPH',
347
+ KW_PLOT: 'KW_PLOT',
348
+ KW_DASHBOARD: 'KW_DASHBOARD',
349
+ KW_CARD: 'KW_CARD',
350
+ KW_MODAL: 'KW_MODAL',
351
+ KW_TOAST: 'KW_TOAST',
352
+ KW_ALERT: 'KW_ALERT',
353
+ KW_NAV: 'KW_NAV',
354
+ KW_MENU: 'KW_MENU',
355
+ KW_SIDEBAR: 'KW_SIDEBAR',
356
+ KW_FOOTER: 'KW_FOOTER',
357
+ KW_HEADER_UI: 'KW_HEADER_UI',
358
+ KW_THEME: 'KW_THEME',
359
+ KW_DARK: 'KW_DARK',
360
+ KW_LIGHT: 'KW_LIGHT',
361
+ KW_GRID: 'KW_GRID',
362
+ KW_FLEX: 'KW_FLEX',
363
+ KW_RESPONSIVE: 'KW_RESPONSIVE',
364
+ KW_MEDIA: 'KW_MEDIA',
365
+ KW_TRANSITION: 'KW_TRANSITION',
366
+ KW_EFFECT: 'KW_EFFECT',
367
+ KW_SHADOW: 'KW_SHADOW',
368
+ KW_BORDER: 'KW_BORDER',
369
+ KW_RADIUS: 'KW_RADIUS',
370
+ KW_PADDING: 'KW_PADDING',
371
+ KW_MARGIN: 'KW_MARGIN',
372
+ KW_FONT: 'KW_FONT',
373
+ KW_SIZE: 'KW_SIZE',
374
+ KW_WIDTH: 'KW_WIDTH',
375
+ KW_HEIGHT: 'KW_HEIGHT',
376
+ KW_POSITION: 'KW_POSITION',
377
+ KW_LAYER: 'KW_LAYER',
378
+ KW_OPACITY: 'KW_OPACITY',
379
+ KW_BLUR: 'KW_BLUR',
380
+ KW_CURSOR: 'KW_CURSOR',
381
+ KW_HOVER: 'KW_HOVER',
382
+ KW_CLICK: 'KW_CLICK',
383
+ KW_SCROLL: 'KW_SCROLL',
384
+ KW_DRAG: 'KW_DRAG',
385
+ KW_DROP: 'KW_DROP',
386
+ KW_RESIZE: 'KW_RESIZE',
387
+ KW_KEYBOARD: 'KW_KEYBOARD',
388
+ KW_MOUSE: 'KW_MOUSE',
389
+ KW_TOUCH: 'KW_TOUCH',
390
+ KW_GAMEPAD: 'KW_GAMEPAD',
391
+ KW_AUDIO: 'KW_AUDIO',
392
+ KW_VIDEO: 'KW_VIDEO',
393
+ KW_CAMERA: 'KW_CAMERA',
394
+ KW_MICROPHONE: 'KW_MICROPHONE',
395
+ KW_STORAGE: 'KW_STORAGE',
396
+ KW_CACHE_STORAGE: 'KW_CACHE_STORAGE',
397
+ KW_WORKER_SW: 'KW_WORKER_SW',
398
+ KW_NOTIFICATION: 'KW_NOTIFICATION',
399
+ KW_PERMISSION: 'KW_PERMISSION',
400
+ KW_GEO: 'KW_GEO',
401
+ KW_CLIPBOARD: 'KW_CLIPBOARD',
402
+ KW_SHARE_WEB: 'KW_SHARE_WEB',
403
+ KW_BATTERY: 'KW_BATTERY',
404
+ KW_NETWORK: 'KW_NETWORK',
405
+ KW_BLUETOOTH: 'KW_BLUETOOTH',
406
+ KW_USB: 'KW_USB',
407
+ KW_SERIAL: 'KW_SERIAL',
408
+ KW_WEBGL: 'KW_WEBGL',
409
+ KW_WEBGPU: 'KW_WEBGPU',
410
+ KW_SHADER: 'KW_SHADER',
411
+ KW_VERTEX: 'KW_VERTEX',
412
+ KW_FRAGMENT: 'KW_FRAGMENT',
413
+ KW_TEXTURE: 'KW_TEXTURE',
414
+ KW_MESH: 'KW_MESH',
415
+ KW_LIGHT_3D: 'KW_LIGHT_3D',
416
+ KW_CAMERA_3D: 'KW_CAMERA_3D',
417
+ KW_MODEL: 'KW_MODEL',
418
+ KW_MATERIAL: 'KW_MATERIAL',
419
+ KW_GEOMETRY: 'KW_GEOMETRY',
420
+ KW_TRANSFORM_3D: 'KW_TRANSFORM_3D',
421
+ KW_ROTATION: 'KW_ROTATION',
422
+ KW_SCALE: 'KW_SCALE',
423
+ KW_TRANSLATE: 'KW_TRANSLATE',
424
+ KW_PROJECTION: 'KW_PROJECTION',
425
+ KW_VIEW: 'KW_VIEW',
426
+ KW_CLIP: 'KW_CLIP',
427
+ KW_RASTERIZE: 'KW_RASTERIZE',
428
+ KW_BLEND: 'KW_BLEND',
429
+ KW_DEPTH: 'KW_DEPTH',
430
+ KW_STENCIL: 'KW_STENCIL',
431
+ KW_FRAMEBUFFER: 'KW_FRAMEBUFFER',
432
+ KW_RENDERBUFFER: 'KW_RENDERBUFFER',
433
+ KW_UNIFORM: 'KW_UNIFORM',
434
+ KW_ATTRIBUTE: 'KW_ATTRIBUTE',
435
+ KW_VARYING: 'KW_VARYING',
436
+ KW_PRECISION: 'KW_PRECISION',
437
+ KW_LAYOUT_3D: 'KW_LAYOUT_3D',
438
+ KW_BINDING: 'KW_BINDING',
439
+ KW_COMPUTE: 'KW_COMPUTE',
440
+ KW_DISPATCH: 'KW_DISPATCH',
441
+ KW_BARRIER: 'KW_BARRIER',
442
+ KW_ATOMIC: 'KW_ATOMIC',
443
+ KW_MEMORY_FENCE: 'KW_MEMORY_FENCE',
444
+ KW_SYNC: 'KW_SYNC',
445
+ KW_FENCE: 'KW_FENCE',
446
+ KW_SIGNAL: 'KW_SIGNAL',
447
+ KW_WAIT: 'KW_WAIT',
448
+ KW_NOTIFY: 'KW_NOTIFY',
449
+ KW_BROADCAST: 'KW_BROADCAST',
450
+ KW_CLUSTER: 'KW_CLUSTER',
451
+ KW_WORKER_NODE: 'KW_WORKER_NODE',
452
+ KW_MASTER: 'KW_MASTER',
453
+ KW_FORK: 'KW_FORK',
454
+ KW_IPC: 'KW_IPC',
455
+ KW_SHARED_MEM: 'KW_SHARED_MEM',
456
+ KW_SIMD: 'KW_SIMD',
457
+ KW_VECTORIZE: 'KW_VECTORIZE',
458
+ KW_UNROLL: 'KW_UNROLL',
459
+ KW_INLINE: 'KW_INLINE',
460
+ KW_NOINLINE: 'KW_NOINLINE',
461
+ KW_PURE: 'KW_PURE',
462
+ KW_CONST_EVAL: 'KW_CONST_EVAL',
463
+ KW_COMPTIME: 'KW_COMPTIME',
464
+ KW_BUILTIN: 'KW_BUILTIN',
465
+ KW_EXTERN: 'KW_EXTERN',
466
+ KW_NATIVE: 'KW_NATIVE',
467
+ KW_FFI: 'KW_FFI',
468
+ KW_WASM: 'KW_WASM',
469
+ KW_MACRO: 'KW_MACRO',
470
+ KW_QUOTE: 'KW_QUOTE',
471
+ KW_UNQUOTE: 'KW_UNQUOTE',
472
+ KW_SPLICE_MACRO: 'KW_SPLICE_MACRO',
473
+ KW_ASM: 'KW_ASM',
474
+ KW_INTRINSIC: 'KW_INTRINSIC',
475
+ KW_VOLATILE: 'KW_VOLATILE',
476
+ KW_PACKED: 'KW_PACKED',
477
+ KW_ALIGN: 'KW_ALIGN',
478
+ KW_OFFSET: 'KW_OFFSET',
479
+ KW_SIZEOF: 'KW_SIZEOF',
480
+ KW_ALIGNOF: 'KW_ALIGNOF',
481
+ KW_OFFSETOF: 'KW_OFFSETOF',
482
+ KW_BITCAST: 'KW_BITCAST',
483
+ KW_TRUNCATE: 'KW_TRUNCATE',
484
+ KW_EXTEND: 'KW_EXTEND',
485
+ KW_WRAP: 'KW_WRAP',
486
+ KW_SATURATE: 'KW_SATURATE',
487
+ KW_OVERFLOW: 'KW_OVERFLOW',
488
+ KW_UNDERFLOW: 'KW_UNDERFLOW',
489
+ KW_NAN: 'KW_NAN',
490
+ KW_INF: 'KW_INF',
491
+ KW_EPSILON: 'KW_EPSILON',
492
+ KW_PI: 'KW_PI',
493
+ KW_E: 'KW_E',
494
+ KW_SQRT: 'KW_SQRT',
495
+ KW_POW: 'KW_POW',
496
+ KW_ABS: 'KW_ABS',
497
+ KW_FLOOR: 'KW_FLOOR',
498
+ KW_CEIL: 'KW_CEIL',
499
+ KW_ROUND: 'KW_ROUND',
500
+ KW_SIN: 'KW_SIN',
501
+ KW_COS: 'KW_COS',
502
+ KW_TAN: 'KW_TAN',
503
+ KW_ASIN: 'KW_ASIN',
504
+ KW_ACOS: 'KW_ACOS',
505
+ KW_ATAN: 'KW_ATAN',
506
+ KW_ATAN2: 'KW_ATAN2',
507
+ KW_LOG_MATH: 'KW_LOG_MATH',
508
+ KW_LOG2: 'KW_LOG2',
509
+ KW_LOG10: 'KW_LOG10',
510
+ KW_EXP: 'KW_EXP',
511
+ KW_RANDOM: 'KW_RANDOM',
512
+ KW_SEED: 'KW_SEED',
513
+ KW_MIN: 'KW_MIN',
514
+ KW_MAX: 'KW_MAX',
515
+ KW_CLAMP: 'KW_CLAMP',
516
+ KW_LERP: 'KW_LERP',
517
+ KW_NORMALIZE: 'KW_NORMALIZE',
518
+ KW_DOT: 'KW_DOT',
519
+ KW_CROSS: 'KW_CROSS',
520
+ KW_LENGTH: 'KW_LENGTH',
521
+ KW_DISTANCE: 'KW_DISTANCE',
522
+ KW_MAGNITUDE: 'KW_MAGNITUDE',
523
+ KW_DETERMINANT: 'KW_DETERMINANT',
524
+ KW_INVERSE: 'KW_INVERSE',
525
+ KW_TRANSPOSE: 'KW_TRANSPOSE',
526
+ KW_EIGENVALUE: 'KW_EIGENVALUE',
527
+ KW_EIGENVECTOR: 'KW_EIGENVECTOR',
528
+ KW_GRADIENT: 'KW_GRADIENT',
529
+ KW_HESSIAN: 'KW_HESSIAN',
530
+ KW_JACOBIAN: 'KW_JACOBIAN',
531
+ KW_INTEGRATE: 'KW_INTEGRATE',
532
+ KW_DIFFERENTIATE: 'KW_DIFFERENTIATE',
533
+ KW_SOLVE: 'KW_SOLVE',
534
+ KW_OPTIMIZE: 'KW_OPTIMIZE',
535
+ KW_MINIMIZE: 'KW_MINIMIZE',
536
+ KW_MAXIMIZE: 'KW_MAXIMIZE',
537
+ KW_OBJECTIVE: 'KW_OBJECTIVE',
538
+ KW_CONSTRAINT: 'KW_CONSTRAINT',
539
+ KW_LOSS: 'KW_LOSS',
540
+ KW_BACKPROP: 'KW_BACKPROP',
541
+ KW_LAYER_ML: 'KW_LAYER_ML',
542
+ KW_DENSE: 'KW_DENSE',
543
+ KW_CONV: 'KW_CONV',
544
+ KW_POOL: 'KW_POOL',
545
+ KW_DROPOUT: 'KW_DROPOUT',
546
+ KW_BATCH_NORM: 'KW_BATCH_NORM',
547
+ KW_ACTIVATION: 'KW_ACTIVATION',
548
+ KW_RELU: 'KW_RELU',
549
+ KW_SIGMOID: 'KW_SIGMOID',
550
+ KW_SOFTMAX: 'KW_SOFTMAX',
551
+ KW_TANH_ML: 'KW_TANH_ML',
552
+ KW_ATTENTION: 'KW_ATTENTION',
553
+ KW_TRANSFORMER: 'KW_TRANSFORMER',
554
+ KW_EMBEDDING: 'KW_EMBEDDING',
555
+ KW_TOKENIZE: 'KW_TOKENIZE',
556
+ KW_DATASET: 'KW_DATASET',
557
+ KW_BATCH: 'KW_BATCH',
558
+ KW_EPOCH: 'KW_EPOCH',
559
+ KW_LEARNING_RATE: 'KW_LEARNING_RATE',
560
+ KW_OPTIMIZER: 'KW_OPTIMIZER',
561
+ KW_SGD: 'KW_SGD',
562
+ KW_ADAM: 'KW_ADAM',
563
+ KW_MOMENTUM: 'KW_MOMENTUM',
564
+ KW_REGULARIZE: 'KW_REGULARIZE',
565
+ KW_CHECKPOINT: 'KW_CHECKPOINT',
566
+ KW_INFERENCE: 'KW_INFERENCE',
567
+ KW_ACCURACY: 'KW_ACCURACY',
568
+ KW_PRECISION_ML: 'KW_PRECISION_ML',
569
+ KW_RECALL: 'KW_RECALL',
570
+ KW_F1: 'KW_F1',
571
+ KW_CONFUSION: 'KW_CONFUSION',
572
+ KW_ROC: 'KW_ROC',
573
+ KW_AUC: 'KW_AUC',
574
+ KW_FEATURE: 'KW_FEATURE',
575
+ KW_LABEL: 'KW_LABEL',
576
+ KW_NORMALIZE_ML: 'KW_NORMALIZE_ML',
577
+ KW_STANDARDIZE: 'KW_STANDARDIZE',
578
+ KW_AUGMENT: 'KW_AUGMENT',
579
+ KW_OVERFIT: 'KW_OVERFIT',
580
+ KW_UNDERFIT: 'KW_UNDERFIT',
581
+ KW_CROSSVAL: 'KW_CROSSVAL',
582
+ KW_ENSEMBLE: 'KW_ENSEMBLE',
583
+ KW_BOOST: 'KW_BOOST',
584
+ KW_BAGGING: 'KW_BAGGING',
585
+ KW_CLUSTER_ML: 'KW_CLUSTER_ML',
586
+ KW_KMEANS: 'KW_KMEANS',
587
+ KW_PCA: 'KW_PCA',
588
+ KW_SVM: 'KW_SVM',
589
+ KW_DECISION_TREE: 'KW_DECISION_TREE',
590
+ KW_RANDOM_FOREST: 'KW_RANDOM_FOREST',
591
+ KW_NAIVE_BAYES: 'KW_NAIVE_BAYES',
592
+ KW_KNN: 'KW_KNN',
593
+ KW_REGRESSION: 'KW_REGRESSION',
594
+ KW_CLASSIFICATION: 'KW_CLASSIFICATION',
595
+ KW_DETECTION: 'KW_DETECTION',
596
+ KW_SEGMENTATION: 'KW_SEGMENTATION',
597
+ KW_GENERATION: 'KW_GENERATION',
598
+ KW_DIFFUSION: 'KW_DIFFUSION',
599
+ KW_GAN: 'KW_GAN',
600
+ KW_VAE: 'KW_VAE',
601
+ KW_REINFORCE: 'KW_REINFORCE',
602
+ KW_REWARD: 'KW_REWARD',
603
+ KW_AGENT_ML: 'KW_AGENT_ML',
604
+ KW_ENVIRONMENT: 'KW_ENVIRONMENT',
605
+ KW_ACTION: 'KW_ACTION',
606
+ KW_OBSERVATION: 'KW_OBSERVATION',
607
+ KW_POLICY: 'KW_POLICY',
608
+ KW_VALUE: 'KW_VALUE',
609
+ KW_QLEARNING: 'KW_QLEARNING',
610
+ KW_PPO: 'KW_PPO',
611
+ KW_DQN: 'KW_DQN',
612
+ KW_A3C: 'KW_A3C',
613
+ KW_PHYSICS_BODY: 'KW_PHYSICS_BODY',
614
+ KW_RIGIDBODY: 'KW_RIGIDBODY',
615
+ KW_SOFTBODY: 'KW_SOFTBODY',
616
+ KW_FLUID: 'KW_FLUID',
617
+ KW_SPRING: 'KW_SPRING',
618
+ KW_DAMPER: 'KW_DAMPER',
619
+ KW_JOINT: 'KW_JOINT',
620
+ KW_CONSTRAINT_PHYS: 'KW_CONSTRAINT_PHYS',
621
+ KW_FRICTION: 'KW_FRICTION',
622
+ KW_RESTITUTION: 'KW_RESTITUTION',
623
+ KW_MASS: 'KW_MASS',
624
+ KW_INERTIA: 'KW_INERTIA',
625
+ KW_VELOCITY: 'KW_VELOCITY',
626
+ KW_ACCELERATION: 'KW_ACCELERATION',
627
+ KW_TORQUE: 'KW_TORQUE',
628
+ KW_ANGULAR: 'KW_ANGULAR',
629
+ KW_LINEAR: 'KW_LINEAR',
630
+ KW_BROADPHASE: 'KW_BROADPHASE',
631
+ KW_NARROWPHASE: 'KW_NARROWPHASE',
632
+ KW_RAYCAST: 'KW_RAYCAST',
633
+ KW_SHAPECAST: 'KW_SHAPECAST',
634
+ KW_MANIFOLD: 'KW_MANIFOLD',
635
+ KW_CONTACT: 'KW_CONTACT',
636
+ KW_IMPULSE: 'KW_IMPULSE',
637
+ KW_ITERATION: 'KW_ITERATION',
638
+ KW_TIMESTEP: 'KW_TIMESTEP',
639
+ KW_SUBSTEP: 'KW_SUBSTEP',
640
+ KW_FIXED_UPDATE: 'KW_FIXED_UPDATE',
641
+ KW_UPDATE: 'KW_UPDATE',
642
+ KW_LATE_UPDATE: 'KW_LATE_UPDATE',
643
+ KW_FIXED: 'KW_FIXED',
644
+ KW_GAME_OBJECT: 'KW_GAME_OBJECT',
645
+ KW_ENTITY: 'KW_ENTITY',
646
+ KW_COMPONENT_ECS: 'KW_COMPONENT_ECS',
647
+ KW_SYSTEM_ECS: 'KW_SYSTEM_ECS',
648
+ KW_WORLD: 'KW_WORLD',
649
+ KW_ARCHETYPE: 'KW_ARCHETYPE',
650
+ KW_QUERY_ECS: 'KW_QUERY_ECS',
651
+ KW_SPAWN_ENTITY: 'KW_SPAWN_ENTITY',
652
+ KW_DESPAWN: 'KW_DESPAWN',
653
+ KW_COMPONENT_ADD: 'KW_COMPONENT_ADD',
654
+ KW_COMPONENT_REMOVE: 'KW_COMPONENT_REMOVE',
655
+ KW_RESOURCE: 'KW_RESOURCE',
656
+ KW_EVENT: 'KW_EVENT',
657
+ KW_COMMAND: 'KW_COMMAND',
658
+ KW_PLUGIN: 'KW_PLUGIN',
659
+ KW_SCHEDULE_ECS: 'KW_SCHEDULE_ECS',
660
+ KW_RUN_CRITERIA: 'KW_RUN_CRITERIA',
661
+ KW_STAGE: 'KW_STAGE',
662
+ KW_LABEL_ECS: 'KW_LABEL_ECS',
663
+ KW_ORDERED: 'KW_ORDERED',
664
+ KW_PARALLEL_ECS: 'KW_PARALLEL_ECS',
665
+ KW_EXCLUSIVE: 'KW_EXCLUSIVE',
666
+ KW_AMBIGUOUS: 'KW_AMBIGUOUS',
667
+ KW_CHANGED: 'KW_CHANGED',
668
+ KW_ADDED: 'KW_ADDED',
669
+ KW_REMOVED: 'KW_REMOVED',
670
+ KW_WITH: 'KW_WITH',
671
+ KW_WITHOUT: 'KW_WITHOUT',
672
+ KW_MAYBE: 'KW_MAYBE',
673
+ KW_ANY_OF: 'KW_ANY_OF',
674
+ KW_ALL_OF: 'KW_ALL_OF',
675
+ KW_NONE_OF: 'KW_NONE_OF',
676
+ KW_OPTIONAL_COMPONENT: 'KW_OPTIONAL_COMPONENT',
677
+
678
+ // HTML keywords (90 total)
679
+ KW_HTML_DIV: 'KW_HTML_DIV',
680
+ KW_HTML_SPAN: 'KW_HTML_SPAN',
681
+ KW_HTML_H1: 'KW_HTML_H1',
682
+ KW_HTML_H2: 'KW_HTML_H2',
683
+ KW_HTML_H3: 'KW_HTML_H3',
684
+ KW_HTML_H4: 'KW_HTML_H4',
685
+ KW_HTML_H5: 'KW_HTML_H5',
686
+ KW_HTML_H6: 'KW_HTML_H6',
687
+ KW_HTML_P: 'KW_HTML_P',
688
+ KW_HTML_A: 'KW_HTML_A',
689
+ KW_HTML_IMG: 'KW_HTML_IMG',
690
+ KW_HTML_VIDEO_EL: 'KW_HTML_VIDEO_EL',
691
+ KW_HTML_AUDIO_EL: 'KW_HTML_AUDIO_EL',
692
+ KW_HTML_FORM_EL: 'KW_HTML_FORM_EL',
693
+ KW_HTML_INPUT_EL: 'KW_HTML_INPUT_EL',
694
+ KW_HTML_BUTTON_EL: 'KW_HTML_BUTTON_EL',
695
+ KW_HTML_SELECT: 'KW_HTML_SELECT',
696
+ KW_HTML_OPTION: 'KW_HTML_OPTION',
697
+ KW_HTML_TEXTAREA: 'KW_HTML_TEXTAREA',
698
+ KW_HTML_TABLE_EL: 'KW_HTML_TABLE_EL',
699
+ KW_HTML_TR: 'KW_HTML_TR',
700
+ KW_HTML_TD: 'KW_HTML_TD',
701
+ KW_HTML_TH: 'KW_HTML_TH',
702
+ KW_HTML_THEAD: 'KW_HTML_THEAD',
703
+ KW_HTML_TBODY: 'KW_HTML_TBODY',
704
+ KW_HTML_TFOOT: 'KW_HTML_TFOOT',
705
+ KW_HTML_UL: 'KW_HTML_UL',
706
+ KW_HTML_OL: 'KW_HTML_OL',
707
+ KW_HTML_LI: 'KW_HTML_LI',
708
+ KW_HTML_NAV_EL: 'KW_HTML_NAV_EL',
709
+ KW_HTML_HEADER_EL: 'KW_HTML_HEADER_EL',
710
+ KW_HTML_FOOTER_EL: 'KW_HTML_FOOTER_EL',
711
+ KW_HTML_MAIN: 'KW_HTML_MAIN',
712
+ KW_HTML_SECTION_EL: 'KW_HTML_SECTION_EL',
713
+ KW_HTML_ARTICLE: 'KW_HTML_ARTICLE',
714
+ KW_HTML_ASIDE: 'KW_HTML_ASIDE',
715
+ KW_HTML_DETAILS: 'KW_HTML_DETAILS',
716
+ KW_HTML_SUMMARY: 'KW_HTML_SUMMARY',
717
+ KW_HTML_DIALOG: 'KW_HTML_DIALOG',
718
+ KW_HTML_TEMPLATE: 'KW_HTML_TEMPLATE',
719
+ KW_HTML_SLOT: 'KW_HTML_SLOT',
720
+ KW_HTML_CANVAS_EL: 'KW_HTML_CANVAS_EL',
721
+ KW_HTML_SVG: 'KW_HTML_SVG',
722
+ KW_HTML_IFRAME: 'KW_HTML_IFRAME',
723
+ KW_HTML_EMBED: 'KW_HTML_EMBED',
724
+ KW_HTML_OBJECT: 'KW_HTML_OBJECT',
725
+ KW_HTML_SOURCE: 'KW_HTML_SOURCE',
726
+ KW_HTML_TRACK: 'KW_HTML_TRACK',
727
+ KW_HTML_MAP: 'KW_HTML_MAP',
728
+ KW_HTML_AREA: 'KW_HTML_AREA',
729
+ KW_HTML_PROGRESS: 'KW_HTML_PROGRESS',
730
+ KW_HTML_METER: 'KW_HTML_METER',
731
+ KW_HTML_OUTPUT: 'KW_HTML_OUTPUT',
732
+ KW_HTML_FIELDSET: 'KW_HTML_FIELDSET',
733
+ KW_HTML_LEGEND: 'KW_HTML_LEGEND',
734
+ KW_HTML_LABEL_EL: 'KW_HTML_LABEL_EL',
735
+ KW_HTML_DATALIST: 'KW_HTML_DATALIST',
736
+ KW_HTML_OPTGROUP: 'KW_HTML_OPTGROUP',
737
+ KW_HTML_KEYGEN: 'KW_HTML_KEYGEN',
738
+ KW_HTML_OUTPUT2: 'KW_HTML_OUTPUT2',
739
+ KW_HTML_BR: 'KW_HTML_BR',
740
+ KW_HTML_HR: 'KW_HTML_HR',
741
+ KW_HTML_PRE: 'KW_HTML_PRE',
742
+ KW_HTML_CODE_EL: 'KW_HTML_CODE_EL',
743
+ KW_HTML_STRONG: 'KW_HTML_STRONG',
744
+ KW_HTML_EM: 'KW_HTML_EM',
745
+ KW_HTML_MARK: 'KW_HTML_MARK',
746
+ KW_HTML_SMALL: 'KW_HTML_SMALL',
747
+ KW_HTML_DEL: 'KW_HTML_DEL',
748
+ KW_HTML_INS: 'KW_HTML_INS',
749
+ KW_HTML_SUB: 'KW_HTML_SUB',
750
+ KW_HTML_SUP: 'KW_HTML_SUP',
751
+ KW_HTML_Q: 'KW_HTML_Q',
752
+ KW_HTML_CITE: 'KW_HTML_CITE',
753
+ KW_HTML_BLOCKQUOTE: 'KW_HTML_BLOCKQUOTE',
754
+ KW_HTML_ABBR: 'KW_HTML_ABBR',
755
+ KW_HTML_ADDRESS: 'KW_HTML_ADDRESS',
756
+ KW_HTML_TIME: 'KW_HTML_TIME',
757
+ KW_HTML_DATA: 'KW_HTML_DATA',
758
+ KW_HTML_FIGURE: 'KW_HTML_FIGURE',
759
+ KW_HTML_FIGCAPTION: 'KW_HTML_FIGCAPTION',
760
+ KW_HTML_PICTURE: 'KW_HTML_PICTURE',
761
+ KW_HTML_WBDR: 'KW_HTML_WBDR',
762
+ KW_HTML_BDI: 'KW_HTML_BDI',
763
+ KW_HTML_BDO: 'KW_HTML_BDO',
764
+ KW_HTML_RUBY: 'KW_HTML_RUBY',
765
+ KW_HTML_RT: 'KW_HTML_RT',
766
+ KW_HTML_RP: 'KW_HTML_RP',
767
+ KW_HTML_SCRIPT_EL: 'KW_HTML_SCRIPT_EL',
768
+ KW_HTML_STYLE_EL: 'KW_HTML_STYLE_EL',
769
+ KW_HTML_LINK_EL: 'KW_HTML_LINK_EL',
770
+ KW_HTML_META_EL: 'KW_HTML_META_EL',
771
+ KW_HTML_TITLE_EL: 'KW_HTML_TITLE_EL',
772
+ KW_HTML_BASE: 'KW_HTML_BASE',
773
+ KW_HTML_HEAD: 'KW_HTML_HEAD',
774
+ KW_HTML_BODY_EL: 'KW_HTML_BODY_EL',
775
+ KW_HTML_HTML: 'KW_HTML_HTML',
776
+ };
777
+
778
+ // Build the KEYWORDS lookup map from identifier -> token type
779
+ const KEYWORDS = {
780
+ // Core ThyScript keywords
781
+ 'print': TokenType.KW_PRINT,
782
+ 'const': TokenType.KW_CONST,
783
+ 'table': TokenType.KW_TABLE,
784
+ 'public': TokenType.KW_PUBLIC,
785
+ 'private': TokenType.KW_PRIVATE,
786
+ 'protected': TokenType.KW_PROTECTED,
787
+ 'class': TokenType.KW_CLASS,
788
+ 'end': TokenType.KW_END,
789
+ 'if': TokenType.KW_IF,
790
+ 'else': TokenType.KW_ELSE,
791
+ 'elif': TokenType.KW_ELIF,
792
+ 'do': TokenType.KW_DO,
793
+ 'then': TokenType.KW_THEN,
794
+ 'while': TokenType.KW_WHILE,
795
+ 'for': TokenType.KW_FOR,
796
+ 'in': TokenType.KW_IN,
797
+ 'add': TokenType.KW_ADD,
798
+ 'change': TokenType.KW_CHANGE,
799
+ 'to': TokenType.KW_TO,
800
+ 'true': TokenType.KW_TRUE,
801
+ 'false': TokenType.KW_FALSE,
802
+ 'fake': TokenType.KW_FAKE,
803
+ 'and': TokenType.KW_AND,
804
+ 'or': TokenType.KW_OR,
805
+ 'not': TokenType.KW_NOT,
806
+ 'except': TokenType.KW_EXCEPT,
807
+ 'expect': TokenType.KW_EXPECT,
808
+ 'save': TokenType.KW_SAVE,
809
+ 'free': TokenType.KW_FREE,
810
+ 'input': TokenType.KW_INPUT,
811
+ 'calculate': TokenType.KW_CALCULATE,
812
+ 'type': TokenType.KW_TYPE,
813
+ 'teks': TokenType.KW_TEKS,
814
+ 'become': TokenType.KW_BECOME,
815
+ 'func': TokenType.KW_FUNC,
816
+ 'return': TokenType.KW_RETURN,
817
+ 'import': TokenType.KW_IMPORT,
818
+ 'from': TokenType.KW_FROM,
819
+ 'export': TokenType.KW_EXPORT,
820
+ 'async': TokenType.KW_ASYNC,
821
+ 'await': TokenType.KW_AWAIT,
822
+ 'try': TokenType.KW_TRY,
823
+ 'catch': TokenType.KW_CATCH,
824
+ 'finally': TokenType.KW_FINALLY,
825
+ 'throw': TokenType.KW_THROW,
826
+ 'new': TokenType.KW_NEW,
827
+ 'delete': TokenType.KW_DELETE,
828
+ 'typeof': TokenType.KW_TYPEOF,
829
+ 'instanceof': TokenType.KW_INSTANCEOF,
830
+ 'break': TokenType.KW_BREAK,
831
+ 'continue': TokenType.KW_CONTINUE,
832
+ 'switch': TokenType.KW_SWITCH,
833
+ 'case': TokenType.KW_CASE,
834
+ 'default': TokenType.KW_DEFAULT,
835
+ 'classHtml': TokenType.KW_CLASS_HTML,
836
+ 'server': TokenType.KW_SERVER,
837
+ 'client': TokenType.KW_CLIENT,
838
+ 'route': TokenType.KW_ROUTE,
839
+ 'get': TokenType.KW_GET,
840
+ 'post': TokenType.KW_POST,
841
+ 'put': TokenType.KW_PUT,
842
+ 'patch': TokenType.KW_PATCH,
843
+ 'middleware': TokenType.KW_MIDDLEWARE,
844
+ 'socket': TokenType.KW_SOCKET,
845
+ 'emit': TokenType.KW_EMIT,
846
+ 'on': TokenType.KW_ON,
847
+ 'listen': TokenType.KW_LISTEN,
848
+ 'connect': TokenType.KW_CONNECT,
849
+ 'database': TokenType.KW_DATABASE,
850
+ 'query': TokenType.KW_QUERY,
851
+ 'insert': TokenType.KW_INSERT,
852
+ 'update': TokenType.KW_UPDATE,
853
+ 'select': TokenType.KW_SELECT,
854
+ 'where': TokenType.KW_WHERE,
855
+ 'join': TokenType.KW_JOIN,
856
+ 'create': TokenType.KW_CREATE,
857
+ 'drop': TokenType.KW_DROP,
858
+ 'render': TokenType.KW_RENDER,
859
+ 'component': TokenType.KW_COMPONENT,
860
+ 'state': TokenType.KW_STATE,
861
+ 'props': TokenType.KW_PROPS,
862
+ 'style': TokenType.KW_STYLE,
863
+ 'animate': TokenType.KW_ANIMATE,
864
+ 'matrix': TokenType.KW_MATRIX,
865
+ 'vector': TokenType.KW_VECTOR,
866
+ 'tensor': TokenType.KW_TENSOR,
867
+ 'neural': TokenType.KW_NEURAL,
868
+ 'train': TokenType.KW_TRAIN,
869
+ 'predict': TokenType.KW_PREDICT,
870
+ 'simulate': TokenType.KW_SIMULATE,
871
+ 'physics': TokenType.KW_PHYSICS,
872
+ 'particle': TokenType.KW_PARTICLE,
873
+ 'force': TokenType.KW_FORCE,
874
+ 'gravity': TokenType.KW_GRAVITY,
875
+ 'collision': TokenType.KW_COLLISION,
876
+ 'scene': TokenType.KW_SCENE,
877
+ 'canvas': TokenType.KW_CANVAS,
878
+ 'draw': TokenType.KW_DRAW,
879
+ 'clear': TokenType.KW_CLEAR,
880
+ 'color': TokenType.KW_COLOR,
881
+ 'fill': TokenType.KW_FILL,
882
+ 'stroke': TokenType.KW_STROKE,
883
+ 'image': TokenType.KW_IMAGE,
884
+ 'sprite': TokenType.KW_SPRITE,
885
+ 'load': TokenType.KW_LOAD,
886
+ 'security': TokenType.KW_SECURITY,
887
+ 'encrypt': TokenType.KW_ENCRYPT,
888
+ 'decrypt': TokenType.KW_DECRYPT,
889
+ 'hash': TokenType.KW_HASH,
890
+ 'token': TokenType.KW_TOKEN,
891
+ 'auth': TokenType.KW_AUTH,
892
+ 'validate': TokenType.KW_VALIDATE,
893
+ 'sanitize': TokenType.KW_SANITIZE,
894
+ 'null': TokenType.KW_NULL,
895
+ 'undefined': TokenType.KW_UNDEFINED,
896
+ 'void': TokenType.KW_VOID,
897
+ 'static': TokenType.KW_STATIC,
898
+ 'abstract': TokenType.KW_ABSTRACT,
899
+ 'interface': TokenType.KW_INTERFACE,
900
+ 'extends': TokenType.KW_EXTENDS,
901
+ 'implements': TokenType.KW_IMPLEMENTS,
902
+ 'super': TokenType.KW_SUPER,
903
+ 'this': TokenType.KW_THIS,
904
+ 'self': TokenType.KW_SELF,
905
+ 'yield': TokenType.KW_YIELD,
906
+ 'lazy': TokenType.KW_LAZY,
907
+ 'eager': TokenType.KW_EAGER,
908
+ 'parallel': TokenType.KW_PARALLEL,
909
+ 'concurrent': TokenType.KW_CONCURRENT,
910
+ 'mutex': TokenType.KW_MUTEX,
911
+ 'lock': TokenType.KW_LOCK,
912
+ 'unlock': TokenType.KW_UNLOCK,
913
+ 'thread': TokenType.KW_THREAD,
914
+ 'worker': TokenType.KW_WORKER,
915
+ 'spawn': TokenType.KW_SPAWN,
916
+ 'channel': TokenType.KW_CHANNEL,
917
+ 'send': TokenType.KW_SEND,
918
+ 'receive': TokenType.KW_RECEIVE,
919
+ 'match': TokenType.KW_MATCH,
920
+ 'when': TokenType.KW_WHEN,
921
+ 'otherwise': TokenType.KW_OTHERWISE,
922
+ 'enum': TokenType.KW_ENUM,
923
+ 'struct': TokenType.KW_STRUCT,
924
+ 'trait': TokenType.KW_TRAIT,
925
+ 'impl': TokenType.KW_IMPL,
926
+ 'mod': TokenType.KW_MOD,
927
+ 'use': TokenType.KW_USE,
928
+ 'let': TokenType.KW_LET,
929
+ 'var': TokenType.KW_VAR,
930
+ 'mut': TokenType.KW_MUT,
931
+ 'ref': TokenType.KW_REF,
932
+ 'clone': TokenType.KW_CLONE,
933
+ 'move': TokenType.KW_MOVE,
934
+ 'copy': TokenType.KW_COPY,
935
+ 'share': TokenType.KW_SHARE,
936
+ 'defer': TokenType.KW_DEFER,
937
+ 'panic': TokenType.KW_PANIC,
938
+ 'recover': TokenType.KW_RECOVER,
939
+ 'log': TokenType.KW_LOG,
940
+ 'warn': TokenType.KW_WARN,
941
+ 'error': TokenType.KW_ERROR,
942
+ 'debug': TokenType.KW_DEBUG,
943
+ 'info': TokenType.KW_INFO,
944
+ 'benchmark': TokenType.KW_BENCHMARK,
945
+ 'profile': TokenType.KW_PROFILE,
946
+ 'measure': TokenType.KW_MEASURE,
947
+ 'cache': TokenType.KW_CACHE,
948
+ 'memo': TokenType.KW_MEMO,
949
+ 'proxy': TokenType.KW_PROXY,
950
+ 'reflect': TokenType.KW_REFLECT,
951
+ 'meta': TokenType.KW_META,
952
+ 'decorator': TokenType.KW_DECORATOR,
953
+ 'inject': TokenType.KW_INJECT,
954
+ 'provide': TokenType.KW_PROVIDE,
955
+ 'observe': TokenType.KW_OBSERVE,
956
+ 'subscribe': TokenType.KW_SUBSCRIBE,
957
+ 'unsubscribe': TokenType.KW_UNSUBSCRIBE,
958
+ 'pipeline': TokenType.KW_PIPELINE,
959
+ 'stream': TokenType.KW_STREAM,
960
+ 'buffer': TokenType.KW_BUFFER,
961
+ 'chunk': TokenType.KW_CHUNK,
962
+ 'flush': TokenType.KW_FLUSH,
963
+ 'compress': TokenType.KW_COMPRESS,
964
+ 'decompress': TokenType.KW_DECOMPRESS,
965
+ 'serialize': TokenType.KW_SERIALIZE,
966
+ 'deserialize': TokenType.KW_DESERIALIZE,
967
+ 'parse': TokenType.KW_PARSE,
968
+ 'format': TokenType.KW_FORMAT,
969
+ 'encode': TokenType.KW_ENCODE,
970
+ 'decode': TokenType.KW_DECODE,
971
+ 'transform': TokenType.KW_TRANSFORM,
972
+ 'filter': TokenType.KW_FILTER,
973
+ 'reduce': TokenType.KW_REDUCE,
974
+ 'sort': TokenType.KW_SORT,
975
+ 'find': TokenType.KW_FIND,
976
+ 'search': TokenType.KW_SEARCH,
977
+ 'index': TokenType.KW_INDEX,
978
+ 'slice': TokenType.KW_SLICE,
979
+ 'splice': TokenType.KW_SPLICE,
980
+ 'split': TokenType.KW_SPLIT,
981
+ 'trim': TokenType.KW_TRIM,
982
+ 'upper': TokenType.KW_UPPER,
983
+ 'lower': TokenType.KW_LOWER,
984
+ 'replace': TokenType.KW_REPLACE,
985
+ 'regex': TokenType.KW_REGEX,
986
+ 'file': TokenType.KW_FILE,
987
+ 'read': TokenType.KW_READ,
988
+ 'write': TokenType.KW_WRITE,
989
+ 'append': TokenType.KW_APPEND,
990
+ 'exists': TokenType.KW_EXISTS,
991
+ 'mkdir': TokenType.KW_MKDIR,
992
+ 'path': TokenType.KW_PATH,
993
+ 'env': TokenType.KW_ENV,
994
+ 'config': TokenType.KW_CONFIG,
995
+ 'process': TokenType.KW_PROCESS,
996
+ 'exit': TokenType.KW_EXIT,
997
+ 'sleep': TokenType.KW_SLEEP,
998
+ 'timeout': TokenType.KW_TIMEOUT,
999
+ 'interval': TokenType.KW_INTERVAL,
1000
+ 'fetch': TokenType.KW_FETCH,
1001
+ 'http': TokenType.KW_HTTP,
1002
+ 'https': TokenType.KW_HTTPS,
1003
+ 'url': TokenType.KW_URL,
1004
+ 'cookie': TokenType.KW_COOKIE,
1005
+ 'session': TokenType.KW_SESSION,
1006
+ 'header': TokenType.KW_HEADER,
1007
+ 'body': TokenType.KW_BODY,
1008
+ 'param': TokenType.KW_PARAM,
1009
+ 'form': TokenType.KW_FORM,
1010
+ 'upload': TokenType.KW_UPLOAD,
1011
+ 'download': TokenType.KW_DOWNLOAD,
1012
+ 'serve': TokenType.KW_SERVE,
1013
+ 'template': TokenType.KW_TEMPLATE,
1014
+ 'layout': TokenType.KW_LAYOUT,
1015
+ 'page': TokenType.KW_PAGE,
1016
+ 'section': TokenType.KW_SECTION,
1017
+ 'widget': TokenType.KW_WIDGET,
1018
+ 'button': TokenType.KW_BUTTON,
1019
+ 'chart': TokenType.KW_CHART,
1020
+ 'graph': TokenType.KW_GRAPH,
1021
+ 'plot': TokenType.KW_PLOT,
1022
+ 'dashboard': TokenType.KW_DASHBOARD,
1023
+ 'card': TokenType.KW_CARD,
1024
+ 'modal': TokenType.KW_MODAL,
1025
+ 'toast': TokenType.KW_TOAST,
1026
+ 'alert': TokenType.KW_ALERT,
1027
+ 'nav': TokenType.KW_NAV,
1028
+ 'menu': TokenType.KW_MENU,
1029
+ 'sidebar': TokenType.KW_SIDEBAR,
1030
+ 'footer': TokenType.KW_FOOTER,
1031
+ 'theme': TokenType.KW_THEME,
1032
+ 'dark': TokenType.KW_DARK,
1033
+ 'light': TokenType.KW_LIGHT,
1034
+ 'grid': TokenType.KW_GRID,
1035
+ 'flex': TokenType.KW_FLEX,
1036
+ 'responsive': TokenType.KW_RESPONSIVE,
1037
+ 'media': TokenType.KW_MEDIA,
1038
+ 'transition': TokenType.KW_TRANSITION,
1039
+ 'effect': TokenType.KW_EFFECT,
1040
+ 'shadow': TokenType.KW_SHADOW,
1041
+ 'border': TokenType.KW_BORDER,
1042
+ 'radius': TokenType.KW_RADIUS,
1043
+ 'padding': TokenType.KW_PADDING,
1044
+ 'margin': TokenType.KW_MARGIN,
1045
+ 'font': TokenType.KW_FONT,
1046
+ 'size': TokenType.KW_SIZE,
1047
+ 'width': TokenType.KW_WIDTH,
1048
+ 'height': TokenType.KW_HEIGHT,
1049
+ 'position': TokenType.KW_POSITION,
1050
+ 'layer': TokenType.KW_LAYER,
1051
+ 'opacity': TokenType.KW_OPACITY,
1052
+ 'blur': TokenType.KW_BLUR,
1053
+ 'cursor': TokenType.KW_CURSOR,
1054
+ 'hover': TokenType.KW_HOVER,
1055
+ 'click': TokenType.KW_CLICK,
1056
+ 'scroll': TokenType.KW_SCROLL,
1057
+ 'drag': TokenType.KW_DRAG,
1058
+ 'drop': TokenType.KW_DROP,
1059
+ 'resize': TokenType.KW_RESIZE,
1060
+ 'keyboard': TokenType.KW_KEYBOARD,
1061
+ 'mouse': TokenType.KW_MOUSE,
1062
+ 'touch': TokenType.KW_TOUCH,
1063
+ 'gamepad': TokenType.KW_GAMEPAD,
1064
+ 'audio': TokenType.KW_AUDIO,
1065
+ 'video': TokenType.KW_VIDEO,
1066
+ 'camera': TokenType.KW_CAMERA,
1067
+ 'microphone': TokenType.KW_MICROPHONE,
1068
+ 'storage': TokenType.KW_STORAGE,
1069
+ 'notification': TokenType.KW_NOTIFICATION,
1070
+ 'permission': TokenType.KW_PERMISSION,
1071
+ 'geo': TokenType.KW_GEO,
1072
+ 'clipboard': TokenType.KW_CLIPBOARD,
1073
+ 'network': TokenType.KW_NETWORK,
1074
+ 'webgl': TokenType.KW_WEBGL,
1075
+ 'webgpu': TokenType.KW_WEBGPU,
1076
+ 'shader': TokenType.KW_SHADER,
1077
+ 'vertex': TokenType.KW_VERTEX,
1078
+ 'fragment': TokenType.KW_FRAGMENT,
1079
+ 'texture': TokenType.KW_TEXTURE,
1080
+ 'mesh': TokenType.KW_MESH,
1081
+ 'model': TokenType.KW_MODEL,
1082
+ 'material': TokenType.KW_MATERIAL,
1083
+ 'geometry': TokenType.KW_GEOMETRY,
1084
+ 'rotation': TokenType.KW_ROTATION,
1085
+ 'scale': TokenType.KW_SCALE,
1086
+ 'translate': TokenType.KW_TRANSLATE,
1087
+ 'view': TokenType.KW_VIEW,
1088
+ 'blend': TokenType.KW_BLEND,
1089
+ 'depth': TokenType.KW_DEPTH,
1090
+ 'uniform': TokenType.KW_UNIFORM,
1091
+ 'compute': TokenType.KW_COMPUTE,
1092
+ 'dispatch': TokenType.KW_DISPATCH,
1093
+ 'atomic': TokenType.KW_ATOMIC,
1094
+ 'sync': TokenType.KW_SYNC,
1095
+ 'wait': TokenType.KW_WAIT,
1096
+ 'notify': TokenType.KW_NOTIFY,
1097
+ 'broadcast': TokenType.KW_BROADCAST,
1098
+ 'cluster': TokenType.KW_CLUSTER,
1099
+ 'master': TokenType.KW_MASTER,
1100
+ 'fork': TokenType.KW_FORK,
1101
+ 'simd': TokenType.KW_SIMD,
1102
+ 'inline': TokenType.KW_INLINE,
1103
+ 'pure': TokenType.KW_PURE,
1104
+ 'extern': TokenType.KW_EXTERN,
1105
+ 'native': TokenType.KW_NATIVE,
1106
+ 'wasm': TokenType.KW_WASM,
1107
+ 'macro': TokenType.KW_MACRO,
1108
+ 'asm': TokenType.KW_ASM,
1109
+ 'volatile': TokenType.KW_VOLATILE,
1110
+ 'align': TokenType.KW_ALIGN,
1111
+ 'sizeof': TokenType.KW_SIZEOF,
1112
+ 'nan': TokenType.KW_NAN,
1113
+ 'inf': TokenType.KW_INF,
1114
+ 'epsilon': TokenType.KW_EPSILON,
1115
+ 'pi': TokenType.KW_PI,
1116
+ 'sqrt': TokenType.KW_SQRT,
1117
+ 'pow': TokenType.KW_POW,
1118
+ 'abs': TokenType.KW_ABS,
1119
+ 'floor': TokenType.KW_FLOOR,
1120
+ 'ceil': TokenType.KW_CEIL,
1121
+ 'round': TokenType.KW_ROUND,
1122
+ 'sin': TokenType.KW_SIN,
1123
+ 'cos': TokenType.KW_COS,
1124
+ 'tan': TokenType.KW_TAN,
1125
+ 'asin': TokenType.KW_ASIN,
1126
+ 'acos': TokenType.KW_ACOS,
1127
+ 'atan': TokenType.KW_ATAN,
1128
+ 'atan2': TokenType.KW_ATAN2,
1129
+ 'exp': TokenType.KW_EXP,
1130
+ 'random': TokenType.KW_RANDOM,
1131
+ 'seed': TokenType.KW_SEED,
1132
+ 'min': TokenType.KW_MIN,
1133
+ 'max': TokenType.KW_MAX,
1134
+ 'clamp': TokenType.KW_CLAMP,
1135
+ 'lerp': TokenType.KW_LERP,
1136
+ 'normalize': TokenType.KW_NORMALIZE,
1137
+ 'distance': TokenType.KW_DISTANCE,
1138
+ 'magnitude': TokenType.KW_MAGNITUDE,
1139
+ 'determinant': TokenType.KW_DETERMINANT,
1140
+ 'inverse': TokenType.KW_INVERSE,
1141
+ 'transpose': TokenType.KW_TRANSPOSE,
1142
+ 'gradient': TokenType.KW_GRADIENT,
1143
+ 'integrate': TokenType.KW_INTEGRATE,
1144
+ 'differentiate': TokenType.KW_DIFFERENTIATE,
1145
+ 'solve': TokenType.KW_SOLVE,
1146
+ 'optimize': TokenType.KW_OPTIMIZE,
1147
+ 'minimize': TokenType.KW_MINIMIZE,
1148
+ 'maximize': TokenType.KW_MAXIMIZE,
1149
+ 'objective': TokenType.KW_OBJECTIVE,
1150
+ 'constraint': TokenType.KW_CONSTRAINT,
1151
+ 'loss': TokenType.KW_LOSS,
1152
+ 'backprop': TokenType.KW_BACKPROP,
1153
+ 'dense': TokenType.KW_DENSE,
1154
+ 'conv': TokenType.KW_CONV,
1155
+ 'pool': TokenType.KW_POOL,
1156
+ 'dropout': TokenType.KW_DROPOUT,
1157
+ 'activation': TokenType.KW_ACTIVATION,
1158
+ 'relu': TokenType.KW_RELU,
1159
+ 'sigmoid': TokenType.KW_SIGMOID,
1160
+ 'softmax': TokenType.KW_SOFTMAX,
1161
+ 'attention': TokenType.KW_ATTENTION,
1162
+ 'transformer': TokenType.KW_TRANSFORMER,
1163
+ 'embedding': TokenType.KW_EMBEDDING,
1164
+ 'tokenize': TokenType.KW_TOKENIZE,
1165
+ 'dataset': TokenType.KW_DATASET,
1166
+ 'batch': TokenType.KW_BATCH,
1167
+ 'epoch': TokenType.KW_EPOCH,
1168
+ 'optimizer': TokenType.KW_OPTIMIZER,
1169
+ 'sgd': TokenType.KW_SGD,
1170
+ 'adam': TokenType.KW_ADAM,
1171
+ 'momentum': TokenType.KW_MOMENTUM,
1172
+ 'regularize': TokenType.KW_REGULARIZE,
1173
+ 'checkpoint': TokenType.KW_CHECKPOINT,
1174
+ 'inference': TokenType.KW_INFERENCE,
1175
+ 'accuracy': TokenType.KW_ACCURACY,
1176
+ 'recall': TokenType.KW_RECALL,
1177
+ 'feature': TokenType.KW_FEATURE,
1178
+ 'label': TokenType.KW_LABEL,
1179
+ 'ensemble': TokenType.KW_ENSEMBLE,
1180
+ 'boost': TokenType.KW_BOOST,
1181
+ 'kmeans': TokenType.KW_KMEANS,
1182
+ 'pca': TokenType.KW_PCA,
1183
+ 'svm': TokenType.KW_SVM,
1184
+ 'regression': TokenType.KW_REGRESSION,
1185
+ 'classification': TokenType.KW_CLASSIFICATION,
1186
+ 'detection': TokenType.KW_DETECTION,
1187
+ 'segmentation': TokenType.KW_SEGMENTATION,
1188
+ 'generation': TokenType.KW_GENERATION,
1189
+ 'diffusion': TokenType.KW_DIFFUSION,
1190
+ 'gan': TokenType.KW_GAN,
1191
+ 'vae': TokenType.KW_VAE,
1192
+ 'reinforce': TokenType.KW_REINFORCE,
1193
+ 'reward': TokenType.KW_REWARD,
1194
+ 'environment': TokenType.KW_ENVIRONMENT,
1195
+ 'action': TokenType.KW_ACTION,
1196
+ 'observation': TokenType.KW_OBSERVATION,
1197
+ 'policy': TokenType.KW_POLICY,
1198
+ 'value': TokenType.KW_VALUE,
1199
+ 'rigidbody': TokenType.KW_RIGIDBODY,
1200
+ 'softbody': TokenType.KW_SOFTBODY,
1201
+ 'fluid': TokenType.KW_FLUID,
1202
+ 'spring': TokenType.KW_SPRING,
1203
+ 'damper': TokenType.KW_DAMPER,
1204
+ 'friction': TokenType.KW_FRICTION,
1205
+ 'restitution': TokenType.KW_RESTITUTION,
1206
+ 'mass': TokenType.KW_MASS,
1207
+ 'inertia': TokenType.KW_INERTIA,
1208
+ 'velocity': TokenType.KW_VELOCITY,
1209
+ 'acceleration': TokenType.KW_ACCELERATION,
1210
+ 'torque': TokenType.KW_TORQUE,
1211
+ 'raycast': TokenType.KW_RAYCAST,
1212
+ 'impulse': TokenType.KW_IMPULSE,
1213
+ 'timestep': TokenType.KW_TIMESTEP,
1214
+ 'substep': TokenType.KW_SUBSTEP,
1215
+ 'entity': TokenType.KW_ENTITY,
1216
+ 'world': TokenType.KW_WORLD,
1217
+ 'resource': TokenType.KW_RESOURCE,
1218
+ 'event': TokenType.KW_EVENT,
1219
+ 'command': TokenType.KW_COMMAND,
1220
+ 'plugin': TokenType.KW_PLUGIN,
1221
+ 'stage': TokenType.KW_STAGE,
1222
+ 'ordered': TokenType.KW_ORDERED,
1223
+ 'with': TokenType.KW_WITH,
1224
+ 'without': TokenType.KW_WITHOUT,
1225
+ 'maybe': TokenType.KW_MAYBE,
1226
+ 'div': TokenType.KW_HTML_DIV,
1227
+ 'span': TokenType.KW_HTML_SPAN,
1228
+ 'paragraph': TokenType.KW_HTML_P,
1229
+ 'link': TokenType.KW_HTML_A,
1230
+ };
1231
+
1232
+ TokenType.KEYWORDS = KEYWORDS;
1233
+
1234
+ module.exports = TokenType;