tsc-ts 0.0.10 → 0.1.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 (367) hide show
  1. package/README.md +1 -1
  2. package/bin/tsc-ts.js +70 -1
  3. package/dist/api/compiler/ast-utilities.d.ts +19 -1
  4. package/dist/api/compiler/ast-utilities.js +180 -95
  5. package/dist/api/compiler/ast.d.ts +20 -15
  6. package/dist/api/compiler/ast.js +1023 -995
  7. package/dist/api/compiler/astnav.js +15 -15
  8. package/dist/api/compiler/binder-utilities.js +186 -186
  9. package/dist/api/compiler/binder.js +290 -263
  10. package/dist/api/compiler/character-codes.js +2 -2
  11. package/dist/api/compiler/checker-calls.js +173 -123
  12. package/dist/api/compiler/checker-classes.d.ts +14 -3
  13. package/dist/api/compiler/checker-classes.js +134 -90
  14. package/dist/api/compiler/checker-contextual.js +64 -61
  15. package/dist/api/compiler/checker-declaration-order.js +79 -79
  16. package/dist/api/compiler/checker-declarations.d.ts +1 -0
  17. package/dist/api/compiler/checker-declarations.js +160 -136
  18. package/dist/api/compiler/checker-declared-types.js +67 -65
  19. package/dist/api/compiler/checker-decorators.js +77 -77
  20. package/dist/api/compiler/checker-deprecation.d.ts +8 -3
  21. package/dist/api/compiler/checker-deprecation.js +76 -55
  22. package/dist/api/compiler/checker-destructuring.js +47 -45
  23. package/dist/api/compiler/checker-elaboration.js +24 -24
  24. package/dist/api/compiler/checker-emit-helpers.js +4 -4
  25. package/dist/api/compiler/checker-emit-resolver.d.ts +4 -2
  26. package/dist/api/compiler/checker-emit-resolver.js +25 -13
  27. package/dist/api/compiler/checker-evaluator.js +9 -9
  28. package/dist/api/compiler/checker-expressions.js +244 -211
  29. package/dist/api/compiler/checker-functions.js +113 -107
  30. package/dist/api/compiler/checker-generated-code.d.ts +0 -11
  31. package/dist/api/compiler/checker-generated-code.js +28 -52
  32. package/dist/api/compiler/checker-grammar.d.ts +1 -0
  33. package/dist/api/compiler/checker-grammar.js +469 -438
  34. package/dist/api/compiler/checker-heritage.js +91 -93
  35. package/dist/api/compiler/checker-inference.d.ts +77 -5
  36. package/dist/api/compiler/checker-inference.js +487 -113
  37. package/dist/api/compiler/checker-iteration.d.ts +0 -10
  38. package/dist/api/compiler/checker-iteration.js +35 -52
  39. package/dist/api/compiler/checker-javascript.js +14 -14
  40. package/dist/api/compiler/checker-jsdoc.d.ts +8 -10
  41. package/dist/api/compiler/checker-jsdoc.js +67 -58
  42. package/dist/api/compiler/checker-jsx.js +105 -88
  43. package/dist/api/compiler/checker-members.d.ts +9 -2
  44. package/dist/api/compiler/checker-members.js +210 -74
  45. package/dist/api/compiler/checker-modules.d.ts +15 -6
  46. package/dist/api/compiler/checker-modules.js +469 -309
  47. package/dist/api/compiler/checker-narrowing.js +273 -189
  48. package/dist/api/compiler/checker-object-literals.js +25 -22
  49. package/dist/api/compiler/checker-operators.js +126 -118
  50. package/dist/api/compiler/checker-overloads.js +27 -27
  51. package/dist/api/compiler/checker-property-access.js +59 -55
  52. package/dist/api/compiler/checker-services.d.ts +1 -0
  53. package/dist/api/compiler/checker-services.js +222 -210
  54. package/dist/api/compiler/checker-signatures.js +65 -49
  55. package/dist/api/compiler/checker-source-file.d.ts +5 -0
  56. package/dist/api/compiler/checker-source-file.js +154 -130
  57. package/dist/api/compiler/checker-statements.js +33 -32
  58. package/dist/api/compiler/checker-super.js +50 -50
  59. package/dist/api/compiler/checker-symbol-types.js +109 -93
  60. package/dist/api/compiler/checker-symbols.d.ts +13 -1
  61. package/dist/api/compiler/checker-symbols.js +264 -149
  62. package/dist/api/compiler/checker-type-factory.d.ts +5 -0
  63. package/dist/api/compiler/checker-type-factory.js +137 -34
  64. package/dist/api/compiler/checker-type-nodes.d.ts +1 -0
  65. package/dist/api/compiler/checker-type-nodes.js +179 -141
  66. package/dist/api/compiler/checker-type-operators.d.ts +2 -0
  67. package/dist/api/compiler/checker-type-operators.js +110 -63
  68. package/dist/api/compiler/checker-types.d.ts +80 -3
  69. package/dist/api/compiler/checker-types.js +121 -2
  70. package/dist/api/compiler/checker-unused.js +114 -118
  71. package/dist/api/compiler/checker-utilities.js +11 -11
  72. package/dist/api/compiler/checker.d.ts +93 -31
  73. package/dist/api/compiler/checker.js +143 -35
  74. package/dist/api/compiler/command-line.d.ts +1 -3
  75. package/dist/api/compiler/command-line.js +47 -44
  76. package/dist/api/compiler/compile-program.d.ts +19 -4
  77. package/dist/api/compiler/compile-program.js +45 -26
  78. package/dist/api/compiler/diagnostic-messages.d.ts +1849 -1774
  79. package/dist/api/compiler/diagnostic-messages.js +128 -122
  80. package/dist/api/compiler/diagnostics.js +7 -7
  81. package/dist/api/compiler/emitter.d.ts +7 -1
  82. package/dist/api/compiler/emitter.js +53 -11
  83. package/dist/api/compiler/file-include.d.ts +2 -1
  84. package/dist/api/compiler/file-include.js +11 -7
  85. package/dist/api/compiler/file-loader.d.ts +10 -0
  86. package/dist/api/compiler/file-loader.js +138 -41
  87. package/dist/api/compiler/instantiation.d.ts +7 -0
  88. package/dist/api/compiler/instantiation.js +101 -49
  89. package/dist/api/compiler/jsdoc.js +23 -23
  90. package/dist/api/compiler/link-tables.d.ts +48 -18
  91. package/dist/api/compiler/link-tables.js +80 -37
  92. package/dist/api/compiler/locales/cs-CZ.d.ts +1 -1
  93. package/dist/api/compiler/locales/cs-CZ.js +1 -1
  94. package/dist/api/compiler/locales/de-DE.d.ts +1 -1
  95. package/dist/api/compiler/locales/de-DE.js +1 -1
  96. package/dist/api/compiler/locales/es-ES.d.ts +1 -1
  97. package/dist/api/compiler/locales/es-ES.js +1 -1
  98. package/dist/api/compiler/locales/fr-FR.d.ts +1 -1
  99. package/dist/api/compiler/locales/fr-FR.js +1 -1
  100. package/dist/api/compiler/locales/it-IT.d.ts +1 -1
  101. package/dist/api/compiler/locales/it-IT.js +1 -1
  102. package/dist/api/compiler/locales/ja-JP.d.ts +1 -1
  103. package/dist/api/compiler/locales/ja-JP.js +1 -1
  104. package/dist/api/compiler/locales/ko-KR.d.ts +1 -1
  105. package/dist/api/compiler/locales/ko-KR.js +1 -1
  106. package/dist/api/compiler/locales/pl-PL.d.ts +1 -1
  107. package/dist/api/compiler/locales/pl-PL.js +1 -1
  108. package/dist/api/compiler/locales/pt-BR.d.ts +1 -1
  109. package/dist/api/compiler/locales/pt-BR.js +1 -1
  110. package/dist/api/compiler/locales/ru-RU.d.ts +1 -1
  111. package/dist/api/compiler/locales/ru-RU.js +1 -1
  112. package/dist/api/compiler/locales/tr-TR.d.ts +1 -1
  113. package/dist/api/compiler/locales/tr-TR.js +1 -1
  114. package/dist/api/compiler/locales/zh-CN.d.ts +1 -1
  115. package/dist/api/compiler/locales/zh-CN.js +1 -1
  116. package/dist/api/compiler/locales/zh-TW.d.ts +1 -1
  117. package/dist/api/compiler/locales/zh-TW.js +1 -1
  118. package/dist/api/compiler/module-resolution-types.js +6 -6
  119. package/dist/api/compiler/module-resolution.d.ts +10 -1
  120. package/dist/api/compiler/module-resolution.js +115 -84
  121. package/dist/api/compiler/module-specifiers.d.ts +15 -0
  122. package/dist/api/compiler/module-specifiers.js +24 -18
  123. package/dist/api/compiler/name-resolver.js +74 -65
  124. package/dist/api/compiler/node-builder-names.d.ts +11 -3
  125. package/dist/api/compiler/node-builder-names.js +210 -90
  126. package/dist/api/compiler/node-builder-pseudo.js +29 -31
  127. package/dist/api/compiler/node-builder-reuse.js +23 -22
  128. package/dist/api/compiler/node-builder.d.ts +18 -1
  129. package/dist/api/compiler/node-builder.js +191 -102
  130. package/dist/api/compiler/option-declarations.d.ts +2 -6
  131. package/dist/api/compiler/option-declarations.js +315 -375
  132. package/dist/api/compiler/options.d.ts +15 -33
  133. package/dist/api/compiler/options.js +21 -54
  134. package/dist/api/compiler/output-paths.d.ts +4 -1
  135. package/dist/api/compiler/output-paths.js +6 -11
  136. package/dist/api/compiler/package-json.d.ts +3 -3
  137. package/dist/api/compiler/package-json.js +11 -10
  138. package/dist/api/compiler/parser.d.ts +40 -19
  139. package/dist/api/compiler/parser.js +308 -216
  140. package/dist/api/compiler/path.d.ts +9 -0
  141. package/dist/api/compiler/path.js +20 -3
  142. package/dist/api/compiler/printer/emit-context.d.ts +3 -1
  143. package/dist/api/compiler/printer/emit-context.js +16 -1
  144. package/dist/api/compiler/printer/factory-base.d.ts +2 -2
  145. package/dist/api/compiler/printer/factory-base.js +7 -3
  146. package/dist/api/compiler/printer/factory.js +3 -1
  147. package/dist/api/compiler/printer/helpers.js +10 -1
  148. package/dist/api/compiler/printer/name-generator.d.ts +1 -1
  149. package/dist/api/compiler/printer/name-generator.js +35 -16
  150. package/dist/api/compiler/printer/printer.d.ts +1 -0
  151. package/dist/api/compiler/printer/printer.js +303 -281
  152. package/dist/api/compiler/printer/utilities.js +149 -147
  153. package/dist/api/compiler/program-checker.d.ts +8 -2
  154. package/dist/api/compiler/program-checker.js +84 -34
  155. package/dist/api/compiler/program-utilities.d.ts +3 -1
  156. package/dist/api/compiler/program-utilities.js +28 -15
  157. package/dist/api/compiler/program.d.ts +2 -0
  158. package/dist/api/compiler/program.js +69 -57
  159. package/dist/api/compiler/pseudo-bigint.d.ts +2 -0
  160. package/dist/api/compiler/pseudo-bigint.js +18 -0
  161. package/dist/api/compiler/regexp-checker.d.ts +1 -1
  162. package/dist/api/compiler/regexp-checker.js +93 -76
  163. package/dist/api/compiler/relations.d.ts +27 -4
  164. package/dist/api/compiler/relations.js +337 -180
  165. package/dist/api/compiler/reparser.js +60 -56
  166. package/dist/api/compiler/scanner.d.ts +19 -2
  167. package/dist/api/compiler/scanner.js +123 -108
  168. package/dist/api/compiler/shared-results.d.ts +463 -0
  169. package/dist/api/compiler/shared-results.js +2128 -0
  170. package/dist/api/compiler/sourcemap.js +2 -2
  171. package/dist/api/compiler/symbol-accessibility.js +87 -74
  172. package/dist/api/compiler/symbol.d.ts +22 -13
  173. package/dist/api/compiler/symbol.js +15 -1
  174. package/dist/api/compiler/syntax-kind.d.ts +198 -197
  175. package/dist/api/compiler/transformers/alias-references.js +247 -139
  176. package/dist/api/compiler/transformers/async-utilities.js +25 -25
  177. package/dist/api/compiler/transformers/async.d.ts +0 -1
  178. package/dist/api/compiler/transformers/async.js +64 -77
  179. package/dist/api/compiler/transformers/class-fields.d.ts +1 -0
  180. package/dist/api/compiler/transformers/class-fields.js +81 -78
  181. package/dist/api/compiler/transformers/commonjs-module.js +18 -15
  182. package/dist/api/compiler/transformers/const-enum-inliner.js +1 -1
  183. package/dist/api/compiler/transformers/declarations-diagnostics.js +247 -244
  184. package/dist/api/compiler/transformers/declarations-pseudo.js +100 -100
  185. package/dist/api/compiler/transformers/declarations-resolver.d.ts +0 -3
  186. package/dist/api/compiler/transformers/declarations-syntactic.d.ts +1 -2
  187. package/dist/api/compiler/transformers/declarations-syntactic.js +134 -156
  188. package/dist/api/compiler/transformers/declarations-tracker.js +18 -18
  189. package/dist/api/compiler/transformers/declarations.d.ts +4 -1
  190. package/dist/api/compiler/transformers/declarations.js +305 -238
  191. package/dist/api/compiler/transformers/decorator-metadata.d.ts +1 -1
  192. package/dist/api/compiler/transformers/decorator-metadata.js +53 -45
  193. package/dist/api/compiler/transformers/decorator-utilities.js +24 -24
  194. package/dist/api/compiler/transformers/destructuring.js +19 -18
  195. package/dist/api/compiler/transformers/emit-resolver.js +1 -1
  196. package/dist/api/compiler/transformers/es-decorators.js +55 -55
  197. package/dist/api/compiler/transformers/external-module-info.js +3 -3
  198. package/dist/api/compiler/transformers/for-await.js +25 -25
  199. package/dist/api/compiler/transformers/import-elision.js +14 -14
  200. package/dist/api/compiler/transformers/jsx.js +12 -12
  201. package/dist/api/compiler/transformers/legacy-decorators.js +17 -17
  202. package/dist/api/compiler/transformers/module.js +8 -8
  203. package/dist/api/compiler/transformers/named-evaluation.js +4 -4
  204. package/dist/api/compiler/transformers/object-rest-spread.js +20 -20
  205. package/dist/api/compiler/transformers/optional-chain.js +10 -10
  206. package/dist/api/compiler/transformers/reference-resolver.d.ts +12 -1
  207. package/dist/api/compiler/transformers/reference-resolver.js +131 -69
  208. package/dist/api/compiler/transformers/runtime-syntax.js +35 -31
  209. package/dist/api/compiler/transformers/subtree-facts.js +47 -47
  210. package/dist/api/compiler/transformers/syntax-facts.js +56 -58
  211. package/dist/api/compiler/transformers/type-eraser.js +73 -66
  212. package/dist/api/compiler/transformers/type-serialization.js +24 -24
  213. package/dist/api/compiler/transformers/using.js +12 -12
  214. package/dist/api/compiler/transformers/utilities.js +77 -77
  215. package/dist/api/compiler/transformers/visitor-base.js +172 -172
  216. package/dist/api/compiler/transformers/visitor-hooks.js +6 -2
  217. package/dist/api/compiler/tsconfig.d.ts +10 -2
  218. package/dist/api/compiler/tsconfig.js +136 -48
  219. package/dist/api/compiler/type-printer.js +40 -3
  220. package/dist/api/compiler/types.d.ts +2 -1
  221. package/dist/api/library/ast.generated.d.ts +42 -39
  222. package/dist/api/library/ast.generated.js +1 -1
  223. package/dist/api/library/compiler-options.generated.d.ts +111 -100
  224. package/dist/api/library/compiler-options.generated.js +1 -1
  225. package/dist/api/library/disk.js +12 -1
  226. package/dist/api/library/enums.generated.d.ts +206 -206
  227. package/dist/api/library/enums.generated.js +206 -206
  228. package/dist/api/library/nodes.js +26 -26
  229. package/package.json +9 -9
  230. package/src/compiler/ast-utilities.ts +99 -7
  231. package/src/compiler/ast.ts +55 -26
  232. package/src/compiler/binder.ts +39 -4
  233. package/src/compiler/character-codes.ts +2 -2
  234. package/src/compiler/checker-calls.ts +76 -8
  235. package/src/compiler/checker-classes.ts +78 -24
  236. package/src/compiler/checker-contextual.ts +6 -1
  237. package/src/compiler/checker-declarations.ts +31 -4
  238. package/src/compiler/checker-declared-types.ts +8 -5
  239. package/src/compiler/checker-decorators.ts +1 -1
  240. package/src/compiler/checker-deprecation.ts +29 -8
  241. package/src/compiler/checker-destructuring.ts +10 -3
  242. package/src/compiler/checker-emit-helpers.ts +1 -0
  243. package/src/compiler/checker-emit-resolver.ts +16 -6
  244. package/src/compiler/checker-expressions.ts +79 -46
  245. package/src/compiler/checker-functions.ts +21 -6
  246. package/src/compiler/checker-generated-code.ts +2 -22
  247. package/src/compiler/checker-grammar.ts +133 -60
  248. package/src/compiler/checker-heritage.ts +22 -21
  249. package/src/compiler/checker-inference.ts +514 -87
  250. package/src/compiler/checker-iteration.ts +18 -31
  251. package/src/compiler/checker-javascript.ts +1 -1
  252. package/src/compiler/checker-jsdoc.ts +50 -27
  253. package/src/compiler/checker-jsx.ts +26 -4
  254. package/src/compiler/checker-members.ts +197 -55
  255. package/src/compiler/checker-modules.ts +332 -65
  256. package/src/compiler/checker-narrowing.ts +98 -19
  257. package/src/compiler/checker-object-literals.ts +3 -0
  258. package/src/compiler/checker-operators.ts +11 -4
  259. package/src/compiler/checker-property-access.ts +7 -2
  260. package/src/compiler/checker-services.ts +39 -12
  261. package/src/compiler/checker-signatures.ts +15 -1
  262. package/src/compiler/checker-source-file.ts +39 -13
  263. package/src/compiler/checker-statements.ts +3 -2
  264. package/src/compiler/checker-symbol-types.ts +29 -6
  265. package/src/compiler/checker-symbols.ts +158 -15
  266. package/src/compiler/checker-type-factory.ts +120 -21
  267. package/src/compiler/checker-type-nodes.ts +46 -3
  268. package/src/compiler/checker-type-operators.ts +83 -26
  269. package/src/compiler/checker-types.ts +147 -4
  270. package/src/compiler/checker-unused.ts +9 -14
  271. package/src/compiler/checker.ts +168 -41
  272. package/src/compiler/command-line.ts +28 -28
  273. package/src/compiler/compile-program.ts +51 -25
  274. package/src/compiler/decoder.ts +13 -4
  275. package/src/compiler/diagnostic-messages.ts +1973 -1892
  276. package/src/compiler/emitter.ts +57 -8
  277. package/src/compiler/encoder.ts +23 -8
  278. package/src/compiler/file-include.ts +9 -3
  279. package/src/compiler/file-loader.ts +139 -32
  280. package/src/compiler/help.ts +10 -14
  281. package/src/compiler/incremental.ts +86 -18
  282. package/src/compiler/init.ts +2 -7
  283. package/src/compiler/instantiation.ts +77 -22
  284. package/src/compiler/jsdoc.ts +3 -1
  285. package/src/compiler/link-tables.ts +82 -37
  286. package/src/compiler/locales/cs-CZ.ts +1 -1
  287. package/src/compiler/locales/de-DE.ts +1 -1
  288. package/src/compiler/locales/es-ES.ts +1 -1
  289. package/src/compiler/locales/fr-FR.ts +1 -1
  290. package/src/compiler/locales/it-IT.ts +1 -1
  291. package/src/compiler/locales/ja-JP.ts +1 -1
  292. package/src/compiler/locales/ko-KR.ts +1 -1
  293. package/src/compiler/locales/pl-PL.ts +1 -1
  294. package/src/compiler/locales/pt-BR.ts +1 -1
  295. package/src/compiler/locales/ru-RU.ts +1 -1
  296. package/src/compiler/locales/tr-TR.ts +1 -1
  297. package/src/compiler/locales/zh-CN.ts +1 -1
  298. package/src/compiler/locales/zh-TW.ts +1 -1
  299. package/src/compiler/module-resolution.ts +44 -8
  300. package/src/compiler/module-specifiers.ts +62 -20
  301. package/src/compiler/name-resolver.ts +9 -1
  302. package/src/compiler/node-builder-names.ts +236 -54
  303. package/src/compiler/node-builder-pseudo.ts +4 -7
  304. package/src/compiler/node-builder-reuse.ts +5 -4
  305. package/src/compiler/node-builder.ts +130 -31
  306. package/src/compiler/option-declarations.ts +33 -103
  307. package/src/compiler/options.ts +23 -62
  308. package/src/compiler/output-paths.ts +5 -18
  309. package/src/compiler/package-entrypoints.ts +345 -0
  310. package/src/compiler/package-json.ts +4 -4
  311. package/src/compiler/parallel-check.ts +197 -8
  312. package/src/compiler/parallel-emit.ts +1 -1
  313. package/src/compiler/parser.ts +156 -39
  314. package/src/compiler/path.ts +22 -2
  315. package/src/compiler/printer/emit-context.ts +16 -0
  316. package/src/compiler/printer/factory-base.ts +10 -3
  317. package/src/compiler/printer/factory.ts +4 -1
  318. package/src/compiler/printer/helpers.ts +10 -1
  319. package/src/compiler/printer/name-generator.ts +24 -2
  320. package/src/compiler/printer/printer.ts +35 -14
  321. package/src/compiler/printer/utilities.ts +8 -2
  322. package/src/compiler/program-checker.ts +53 -5
  323. package/src/compiler/program-utilities.ts +23 -10
  324. package/src/compiler/program.ts +13 -1
  325. package/src/compiler/pseudo-bigint.ts +17 -0
  326. package/src/compiler/regexp-checker.ts +63 -30
  327. package/src/compiler/relations.ts +233 -77
  328. package/src/compiler/reparser.ts +7 -2
  329. package/src/compiler/scanner.ts +109 -79
  330. package/src/compiler/shared-results.ts +2414 -0
  331. package/src/compiler/show-config.ts +18 -1
  332. package/src/compiler/sourcemap.ts +2 -2
  333. package/src/compiler/symbol-accessibility.ts +26 -3
  334. package/src/compiler/symbol.ts +31 -14
  335. package/src/compiler/syntax-kind.ts +188 -187
  336. package/src/compiler/thread-entry.ts +19 -2
  337. package/src/compiler/transformers/alias-references.ts +123 -4
  338. package/src/compiler/transformers/async.ts +2 -17
  339. package/src/compiler/transformers/class-fields.ts +13 -12
  340. package/src/compiler/transformers/commonjs-module.ts +11 -7
  341. package/src/compiler/transformers/declarations-diagnostics.ts +5 -3
  342. package/src/compiler/transformers/declarations-pseudo.ts +2 -4
  343. package/src/compiler/transformers/declarations-resolver.ts +0 -3
  344. package/src/compiler/transformers/declarations-syntactic.ts +1 -21
  345. package/src/compiler/transformers/declarations.ts +134 -48
  346. package/src/compiler/transformers/decorator-metadata.ts +9 -1
  347. package/src/compiler/transformers/destructuring.ts +4 -3
  348. package/src/compiler/transformers/external-module-info.ts +1 -1
  349. package/src/compiler/transformers/jsx.ts +2 -1
  350. package/src/compiler/transformers/reference-resolver.ts +83 -19
  351. package/src/compiler/transformers/runtime-syntax.ts +6 -1
  352. package/src/compiler/transformers/syntax-facts.ts +2 -7
  353. package/src/compiler/transformers/type-eraser.ts +10 -1
  354. package/src/compiler/transformers/type-serialization.ts +3 -2
  355. package/src/compiler/transformers/visitor-base.ts +2 -1
  356. package/src/compiler/transformers/visitor-hooks.ts +9 -4
  357. package/src/compiler/tsc-build.ts +3 -0
  358. package/src/compiler/tsc-cli.ts +2 -0
  359. package/src/compiler/tsc-compile.ts +7 -2
  360. package/src/compiler/tsc-watch.ts +74 -45
  361. package/src/compiler/tsconfig.ts +176 -19
  362. package/src/compiler/type-printer.ts +36 -2
  363. package/src/compiler/types.ts +2 -1
  364. package/src/library/ast.generated.ts +57 -41
  365. package/src/library/compiler-options.generated.ts +117 -103
  366. package/src/library/disk.ts +10 -1
  367. package/src/library/enums.generated.ts +196 -196
@@ -32,7 +32,7 @@ export function checkIfStatement(c, node) {
32
32
  const t = checkTruthinessExpression(c, s.expression, 0 /* CheckMode.Normal */);
33
33
  checkTestingKnownTruthyType(c, s.expression, t, s.thenStatement);
34
34
  checkSourceElement(c, s.thenStatement);
35
- if (s.thenStatement.kind === 243 /* SyntaxKind.EmptyStatement */)
35
+ if (s.thenStatement.kind === 244 /* SyntaxKind.EmptyStatement */)
36
36
  c.error(s.thenStatement, 249 /* Diagnostics.The_body_of_an_if_statement_cannot_be_the_empty_statement */);
37
37
  checkSourceElement(c, s.elseStatement);
38
38
  }
@@ -50,7 +50,7 @@ export function checkForStatement(c, node) {
50
50
  const s = node;
51
51
  const initializer = s.initializer;
52
52
  if (initializer !== undefined) {
53
- if (initializer.kind === 262 /* SyntaxKind.VariableDeclarationList */)
53
+ if (initializer.kind === 263 /* SyntaxKind.VariableDeclarationList */)
54
54
  checkVariableDeclarationList(c, initializer);
55
55
  else
56
56
  checkExpression(c, initializer);
@@ -67,10 +67,10 @@ export function checkForInStatement(c, node) {
67
67
  const rightType = hasTypeFacts(c, expressionType, 50331648 /* TypeFacts.IsUndefinedOrNull */)
68
68
  ? getNonNullableType(c, expressionType)
69
69
  : expressionType;
70
- if (s.initializer.kind === 262 /* SyntaxKind.VariableDeclarationList */) {
70
+ if (s.initializer.kind === 263 /* SyntaxKind.VariableDeclarationList */) {
71
71
  const declarations = s.initializer.declarations.nodes;
72
72
  if (declarations.length !== 0 && isBindingPattern(getName(declarations[0])))
73
- c.error(getName(declarations[0]), 651 /* Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern */);
73
+ c.error(getName(declarations[0]), 658 /* Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern */);
74
74
  for (const d of declarations)
75
75
  checkVariableLikeDeclaration(c, d);
76
76
  }
@@ -78,16 +78,16 @@ export function checkForInStatement(c, node) {
78
78
  // The variable must be a reference that the keys of the object, as strings, are assignable to.
79
79
  const varExpr = s.initializer;
80
80
  const leftType = checkExpression(c, varExpr);
81
- if (varExpr.kind === 210 /* SyntaxKind.ArrayLiteralExpression */ || varExpr.kind === 211 /* SyntaxKind.ObjectLiteralExpression */)
82
- c.error(varExpr, 651 /* Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern */);
81
+ if (varExpr.kind === 211 /* SyntaxKind.ArrayLiteralExpression */ || varExpr.kind === 212 /* SyntaxKind.ObjectLiteralExpression */)
82
+ c.error(varExpr, 658 /* Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern */);
83
83
  else if (!isTypeAssignableTo(c, getIndexTypeOrString(c, rightType), leftType))
84
- c.error(varExpr, 576 /* Diagnostics.The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any */);
84
+ c.error(varExpr, 583 /* Diagnostics.The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any */);
85
85
  else
86
- checkReferenceExpression(c, varExpr, 577 /* Diagnostics.The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access */, 912 /* Diagnostics.The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access */);
86
+ checkReferenceExpression(c, varExpr, 584 /* Diagnostics.The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access */, 919 /* Diagnostics.The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access */);
87
87
  }
88
88
  if ((rightType.flags & 262144 /* TypeFlags.Never */) !== 0 ||
89
89
  !isTypeAssignableToKind(c, rightType, 131072 /* TypeFlags.NonPrimitive */ | 117964800 /* TypeFlags.InstantiableNonPrimitive */, false))
90
- c.error(s.expression, 578 /* Diagnostics.The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0 */, typeToString(c, rightType));
90
+ c.error(s.expression, 585 /* Diagnostics.The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0 */, typeToString(c, rightType));
91
91
  checkSourceElement(c, s.statement);
92
92
  }
93
93
  function getIndexTypeOrString(c, t) {
@@ -99,25 +99,25 @@ export function checkForOfStatement(c, node) {
99
99
  // for await..of in an async function before ES2018 uses __asyncValues.
100
100
  if (s.awaitModifier !== undefined) {
101
101
  const container = getContainingFunctionOrClassStaticBlock(node);
102
- if ((container === undefined || container.kind !== 176 /* SyntaxKind.ClassStaticBlockDeclaration */) &&
102
+ if ((container === undefined || container.kind !== 177 /* SyntaxKind.ClassStaticBlockDeclaration */) &&
103
103
  (getFunctionFlags(container) & (4 /* FunctionFlags.Invalid */ | 2 /* FunctionFlags.Async */)) === 2 /* FunctionFlags.Async */ &&
104
104
  c.languageVersion < ScriptTarget.ES2018)
105
105
  checkExternalEmitHelpers(c, node, 256 /* ExternalEmitHelpers.ForAwaitOfIncludes */);
106
106
  }
107
107
  // A declaration checks the right side through its type; an expression is checked as a
108
108
  // destructuring assignment or a reference the iterated type must be assignable to.
109
- if (s.initializer.kind === 262 /* SyntaxKind.VariableDeclarationList */) {
109
+ if (s.initializer.kind === 263 /* SyntaxKind.VariableDeclarationList */) {
110
110
  for (const d of s.initializer.declarations.nodes)
111
111
  checkVariableLikeDeclaration(c, d);
112
112
  }
113
113
  else {
114
114
  const varExpr = s.initializer;
115
115
  const iteratedType = checkRightHandSideOfForOf(c, s);
116
- if (varExpr.kind === 210 /* SyntaxKind.ArrayLiteralExpression */ || varExpr.kind === 211 /* SyntaxKind.ObjectLiteralExpression */)
116
+ if (varExpr.kind === 211 /* SyntaxKind.ArrayLiteralExpression */ || varExpr.kind === 212 /* SyntaxKind.ObjectLiteralExpression */)
117
117
  checkDestructuringAssignment(c, varExpr, iteratedType, 0 /* CheckMode.Normal */, false);
118
118
  else {
119
119
  const leftType = checkExpression(c, varExpr);
120
- checkReferenceExpression(c, varExpr, 647 /* Diagnostics.The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access */, 913 /* Diagnostics.The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access */);
120
+ checkReferenceExpression(c, varExpr, 654 /* Diagnostics.The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access */, 920 /* Diagnostics.The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access */);
121
121
  checkTypeAssignableToAndOptionallyElaborate(c, iteratedType, leftType, varExpr, s.expression);
122
122
  }
123
123
  }
@@ -131,6 +131,9 @@ export function checkRightHandSideOfForOf(c, statement) {
131
131
  }
132
132
  export function checkReturnStatement(c, node) {
133
133
  const s = node;
134
+ // The expression is checked also where a return statement is a grammar error.
135
+ const exprNode = s.expression;
136
+ const exprType = exprNode !== undefined ? checkExpressionCached(c, exprNode) : c.undefinedType;
134
137
  const container = getContainingFunction(node);
135
138
  // Returns outside functions and in static blocks are grammar errors.
136
139
  if (container === undefined)
@@ -138,43 +141,41 @@ export function checkReturnStatement(c, node) {
138
141
  const signature = getSignatureFromDeclaration(c, container);
139
142
  const returnType = getReturnTypeOfSignature(c, signature);
140
143
  const functionFlags = getFunctionFlags(container);
141
- const exprNode = s.expression;
142
144
  if (c.strictNullChecks || exprNode !== undefined || (returnType.flags & 262144 /* TypeFlags.Never */) !== 0) {
143
- const exprType = exprNode !== undefined ? checkExpressionCached(c, exprNode) : c.undefinedType;
144
- if (container.kind === 179 /* SyntaxKind.SetAccessor */) {
145
+ if (container.kind === 180 /* SyntaxKind.SetAccessor */) {
145
146
  if (exprNode !== undefined)
146
- c.error(node, 579 /* Diagnostics.Setters_cannot_return_a_value */);
147
+ c.error(node, 586 /* Diagnostics.Setters_cannot_return_a_value */);
147
148
  }
148
- else if (container.kind === 177 /* SyntaxKind.Constructor */) {
149
+ else if (container.kind === 178 /* SyntaxKind.Constructor */) {
149
150
  if (exprNode !== undefined &&
150
151
  !checkTypeAssignableToAndOptionallyElaborate(c, exprType, returnType, node, exprNode))
151
- c.error(node, 580 /* Diagnostics.Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class */);
152
+ c.error(node, 587 /* Diagnostics.Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class */);
152
153
  }
153
154
  else if (getReturnTypeFromAnnotation(c, container) !== undefined) {
154
155
  const unwrappedReturnType = unwrapReturnType(c, returnType, functionFlags);
155
156
  checkReturnExpression(c, container, unwrappedReturnType, node, exprNode, exprType, false);
156
157
  }
157
158
  }
158
- else if (container.kind !== 177 /* SyntaxKind.Constructor */ &&
159
+ else if (container.kind !== 178 /* SyntaxKind.Constructor */ &&
159
160
  c.compilerOptions.noImplicitReturns === true &&
160
161
  !isUnwrappedReturnTypeUndefinedVoidOrAny(c, container, returnType))
161
162
  // The function has a return type, but this return statement has no expression.
162
- c.error(node, 1701 /* Diagnostics.Not_all_code_paths_return_a_value */);
163
+ c.error(node, 1720 /* Diagnostics.Not_all_code_paths_return_a_value */);
163
164
  }
164
165
  function getContainingFunction(node) {
165
166
  let current = node.parent;
166
167
  while (current !== undefined) {
167
168
  switch (current.kind) {
168
- case 263 /* SyntaxKind.FunctionDeclaration */:
169
- case 219 /* SyntaxKind.FunctionExpression */:
170
- case 220 /* SyntaxKind.ArrowFunction */:
171
- case 175 /* SyntaxKind.MethodDeclaration */:
172
- case 178 /* SyntaxKind.GetAccessor */:
173
- case 179 /* SyntaxKind.SetAccessor */:
174
- case 177 /* SyntaxKind.Constructor */:
169
+ case 264 /* SyntaxKind.FunctionDeclaration */:
170
+ case 220 /* SyntaxKind.FunctionExpression */:
171
+ case 221 /* SyntaxKind.ArrowFunction */:
172
+ case 176 /* SyntaxKind.MethodDeclaration */:
173
+ case 179 /* SyntaxKind.GetAccessor */:
174
+ case 180 /* SyntaxKind.SetAccessor */:
175
+ case 178 /* SyntaxKind.Constructor */:
175
176
  return current;
176
- case 176 /* SyntaxKind.ClassStaticBlockDeclaration */:
177
- case 307 /* SyntaxKind.SourceFile */:
177
+ case 177 /* SyntaxKind.ClassStaticBlockDeclaration */:
178
+ case 308 /* SyntaxKind.SourceFile */:
178
179
  return undefined;
179
180
  }
180
181
  current = current.parent;
@@ -197,14 +198,14 @@ export function checkSwitchStatement(c, node) {
197
198
  if (c.compilerOptions.noFallthroughCasesInSwitch === true &&
198
199
  caseClause.fallthroughFlowNode !== undefined &&
199
200
  isReachableFlowNode(c, caseClause.fallthroughFlowNode))
200
- c.error(clause, 1700 /* Diagnostics.Fallthrough_case_in_switch */);
201
+ c.error(clause, 1719 /* Diagnostics.Fallthrough_case_in_switch */);
201
202
  }
202
203
  }
203
204
  export function checkLabeledStatement(c, node) {
204
205
  const { label, statement } = node;
205
206
  // The binder marks the labels that no break or continue statement references.
206
207
  if ((label.flags & 134217728 /* NodeFlags.Unreachable */) !== 0 && c.compilerOptions.allowUnusedLabels !== true)
207
- c.addErrorOrSuggestion(c.compilerOptions.allowUnusedLabels === false, createDiagnosticForNode(label, 1699 /* Diagnostics.Unused_label */, []));
208
+ c.addErrorOrSuggestion(c.compilerOptions.allowUnusedLabels === false, createDiagnosticForNode(label, 1718 /* Diagnostics.Unused_label */, []));
208
209
  checkSourceElement(c, statement);
209
210
  }
210
211
  export function checkThrowStatement(c, node) {
@@ -10,34 +10,34 @@ import { getSymbolOfDeclaration } from './checker-symbols.js';
10
10
  /** The type of `super` in `super(...)`, `super.x` or `super[x]`, reporting where it can't be used. */
11
11
  export function checkSuperExpression(c, node) {
12
12
  const parent = node.parent;
13
- const isCallExpression = parent.kind === 214 /* SyntaxKind.CallExpression */ && getExpression(parent) === node;
13
+ const isCallExpression = parent.kind === 215 /* SyntaxKind.CallExpression */ && getExpression(parent) === node;
14
14
  const immediateContainer = getSuperContainer(node, true);
15
15
  let container = immediateContainer;
16
16
  // `super` property accesses in arrow functions belong to the enclosing container.
17
17
  if (!isCallExpression)
18
- while (container !== undefined && container.kind === 220 /* SyntaxKind.ArrowFunction */)
18
+ while (container !== undefined && container.kind === 221 /* SyntaxKind.ArrowFunction */)
19
19
  container = getSuperContainer(container, true);
20
20
  if (container === undefined || !isLegalUsageOfSuperExpression(container, isCallExpression)) {
21
21
  if (isInComputedPropertyNameBefore(node, container))
22
- c.error(node, 632 /* Diagnostics.X_super_cannot_be_referenced_in_a_computed_property_name */);
22
+ c.error(node, 639 /* Diagnostics.X_super_cannot_be_referenced_in_a_computed_property_name */);
23
23
  else if (isCallExpression)
24
- c.error(node, 514 /* Diagnostics.Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors */);
24
+ c.error(node, 521 /* Diagnostics.Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors */);
25
25
  else if (container === undefined ||
26
26
  container.parent === undefined ||
27
- !(isClassLike(container.parent) || container.parent.kind === 211 /* SyntaxKind.ObjectLiteralExpression */))
28
- c.error(node, 794 /* Diagnostics.X_super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions */);
27
+ !(isClassLike(container.parent) || container.parent.kind === 212 /* SyntaxKind.ObjectLiteralExpression */))
28
+ c.error(node, 801 /* Diagnostics.X_super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions */);
29
29
  else
30
- c.error(node, 515 /* Diagnostics.X_super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class */);
30
+ c.error(node, 522 /* Diagnostics.X_super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class */);
31
31
  return c.errorType;
32
32
  }
33
- if (!isCallExpression && immediateContainer.kind === 177 /* SyntaxKind.Constructor */)
34
- checkThisBeforeSuper(c, node, container, 1814 /* Diagnostics.X_super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class */);
33
+ if (!isCallExpression && immediateContainer.kind === 178 /* SyntaxKind.Constructor */)
34
+ checkThisBeforeSuper(c, node, container, 1834 /* Diagnostics.X_super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class */);
35
35
  // `super` in an object literal is `any`.
36
- if (container.parent.kind === 211 /* SyntaxKind.ObjectLiteralExpression */)
36
+ if (container.parent.kind === 212 /* SyntaxKind.ObjectLiteralExpression */)
37
37
  return c.anyType;
38
38
  const classLikeDeclaration = container.parent;
39
39
  if (getExtendsHeritageClauseElement(classLikeDeclaration) === undefined) {
40
- c.error(node, 512 /* Diagnostics.X_super_can_only_be_referenced_in_a_derived_class */);
40
+ c.error(node, 519 /* Diagnostics.X_super_can_only_be_referenced_in_a_derived_class */);
41
41
  return c.errorType;
42
42
  }
43
43
  if (classDeclarationExtendsNull(c, classLikeDeclaration))
@@ -49,14 +49,14 @@ export function checkSuperExpression(c, node) {
49
49
  const baseTypes = getBaseTypes(c, classType);
50
50
  if (baseTypes.length === 0)
51
51
  return c.errorType;
52
- if (container.kind === 177 /* SyntaxKind.Constructor */ && isInConstructorArgumentInitializer(node, container)) {
53
- c.error(node, 513 /* Diagnostics.X_super_cannot_be_referenced_in_constructor_arguments */);
52
+ if (container.kind === 178 /* SyntaxKind.Constructor */ && isInConstructorArgumentInitializer(node, container)) {
53
+ c.error(node, 520 /* Diagnostics.X_super_cannot_be_referenced_in_constructor_arguments */);
54
54
  return c.errorType;
55
55
  }
56
56
  if (isStatic(container) || isCallExpression) {
57
57
  if (!isCallExpression &&
58
58
  c.languageVersion <= ScriptTarget.ES2021 &&
59
- (container.kind === 173 /* SyntaxKind.PropertyDeclaration */ || container.kind === 176 /* SyntaxKind.ClassStaticBlockDeclaration */))
59
+ (container.kind === 174 /* SyntaxKind.PropertyDeclaration */ || container.kind === 177 /* SyntaxKind.ClassStaticBlockDeclaration */))
60
60
  markSuperPropertyInStaticInitializer(c, node);
61
61
  return getBaseConstructorTypeOfClass(c, classType);
62
62
  }
@@ -65,22 +65,22 @@ export function checkSuperExpression(c, node) {
65
65
  function isLegalUsageOfSuperExpression(container, isCallExpression) {
66
66
  // Super calls are only permitted in constructors of derived classes.
67
67
  if (isCallExpression)
68
- return container.kind === 177 /* SyntaxKind.Constructor */;
68
+ return container.kind === 178 /* SyntaxKind.Constructor */;
69
69
  // Super property accesses are permitted in members directly within a class or object literal.
70
70
  const parent = container.parent;
71
- if (parent === undefined || !(isClassLike(parent) || parent.kind === 211 /* SyntaxKind.ObjectLiteralExpression */))
71
+ if (parent === undefined || !(isClassLike(parent) || parent.kind === 212 /* SyntaxKind.ObjectLiteralExpression */))
72
72
  return false;
73
73
  switch (container.kind) {
74
- case 175 /* SyntaxKind.MethodDeclaration */:
75
- case 174 /* SyntaxKind.MethodSignature */:
76
- case 178 /* SyntaxKind.GetAccessor */:
77
- case 179 /* SyntaxKind.SetAccessor */:
78
- case 173 /* SyntaxKind.PropertyDeclaration */:
74
+ case 176 /* SyntaxKind.MethodDeclaration */:
75
+ case 175 /* SyntaxKind.MethodSignature */:
76
+ case 179 /* SyntaxKind.GetAccessor */:
77
+ case 180 /* SyntaxKind.SetAccessor */:
78
+ case 174 /* SyntaxKind.PropertyDeclaration */:
79
79
  return true;
80
- case 176 /* SyntaxKind.ClassStaticBlockDeclaration */:
80
+ case 177 /* SyntaxKind.ClassStaticBlockDeclaration */:
81
81
  return isStatic(container);
82
- case 172 /* SyntaxKind.PropertySignature */:
83
- case 177 /* SyntaxKind.Constructor */:
82
+ case 173 /* SyntaxKind.PropertySignature */:
83
+ case 178 /* SyntaxKind.Constructor */:
84
84
  return !isStatic(container);
85
85
  }
86
86
  return false;
@@ -88,7 +88,7 @@ function isLegalUsageOfSuperExpression(container, isCallExpression) {
88
88
  /** Whether `node` is in a computed property name below `container`. */
89
89
  function isInComputedPropertyNameBefore(node, container) {
90
90
  for (let current = node.parent; current !== undefined && current !== container; current = current.parent)
91
- if (current.kind === 168 /* SyntaxKind.ComputedPropertyName */)
91
+ if (current.kind === 169 /* SyntaxKind.ComputedPropertyName */)
92
92
  return true;
93
93
  return false;
94
94
  }
@@ -96,20 +96,20 @@ function isInConstructorArgumentInitializer(node, constructorDeclaration) {
96
96
  for (let current = node; current !== undefined; current = current.parent) {
97
97
  if (isFunctionLikeDeclarationKind(current.kind))
98
98
  return false;
99
- if (current.kind === 170 /* SyntaxKind.Parameter */ && current.parent === constructorDeclaration)
99
+ if (current.kind === 171 /* SyntaxKind.Parameter */ && current.parent === constructorDeclaration)
100
100
  return true;
101
101
  }
102
102
  return false;
103
103
  }
104
104
  function isFunctionLikeDeclarationKind(kind) {
105
105
  switch (kind) {
106
- case 263 /* SyntaxKind.FunctionDeclaration */:
107
- case 175 /* SyntaxKind.MethodDeclaration */:
108
- case 177 /* SyntaxKind.Constructor */:
109
- case 178 /* SyntaxKind.GetAccessor */:
110
- case 179 /* SyntaxKind.SetAccessor */:
111
- case 219 /* SyntaxKind.FunctionExpression */:
112
- case 220 /* SyntaxKind.ArrowFunction */:
106
+ case 264 /* SyntaxKind.FunctionDeclaration */:
107
+ case 176 /* SyntaxKind.MethodDeclaration */:
108
+ case 178 /* SyntaxKind.Constructor */:
109
+ case 179 /* SyntaxKind.GetAccessor */:
110
+ case 180 /* SyntaxKind.SetAccessor */:
111
+ case 220 /* SyntaxKind.FunctionExpression */:
112
+ case 221 /* SyntaxKind.ArrowFunction */:
113
113
  return true;
114
114
  }
115
115
  return false;
@@ -118,28 +118,28 @@ function isFunctionLikeDeclarationKind(kind) {
118
118
  export function getSuperContainer(node, stopOnFunctions) {
119
119
  for (let current = node.parent; current !== undefined; current = current.parent) {
120
120
  switch (current.kind) {
121
- case 168 /* SyntaxKind.ComputedPropertyName */:
121
+ case 169 /* SyntaxKind.ComputedPropertyName */:
122
122
  current = current.parent;
123
123
  break;
124
- case 263 /* SyntaxKind.FunctionDeclaration */:
125
- case 219 /* SyntaxKind.FunctionExpression */:
126
- case 220 /* SyntaxKind.ArrowFunction */:
124
+ case 264 /* SyntaxKind.FunctionDeclaration */:
125
+ case 220 /* SyntaxKind.FunctionExpression */:
126
+ case 221 /* SyntaxKind.ArrowFunction */:
127
127
  if (stopOnFunctions)
128
128
  return current;
129
129
  break;
130
- case 173 /* SyntaxKind.PropertyDeclaration */:
131
- case 172 /* SyntaxKind.PropertySignature */:
132
- case 175 /* SyntaxKind.MethodDeclaration */:
133
- case 174 /* SyntaxKind.MethodSignature */:
134
- case 177 /* SyntaxKind.Constructor */:
135
- case 178 /* SyntaxKind.GetAccessor */:
136
- case 179 /* SyntaxKind.SetAccessor */:
137
- case 176 /* SyntaxKind.ClassStaticBlockDeclaration */:
130
+ case 174 /* SyntaxKind.PropertyDeclaration */:
131
+ case 173 /* SyntaxKind.PropertySignature */:
132
+ case 176 /* SyntaxKind.MethodDeclaration */:
133
+ case 175 /* SyntaxKind.MethodSignature */:
134
+ case 178 /* SyntaxKind.Constructor */:
135
+ case 179 /* SyntaxKind.GetAccessor */:
136
+ case 180 /* SyntaxKind.SetAccessor */:
137
+ case 177 /* SyntaxKind.ClassStaticBlockDeclaration */:
138
138
  return current;
139
- case 171 /* SyntaxKind.Decorator */: {
139
+ case 172 /* SyntaxKind.Decorator */: {
140
140
  // Decorators are applied outside the body of their class or method.
141
141
  const decorated = current.parent;
142
- if (decorated.kind === 170 /* SyntaxKind.Parameter */ && isClassElement(decorated.parent))
142
+ if (decorated.kind === 171 /* SyntaxKind.Parameter */ && isClassElement(decorated.parent))
143
143
  current = decorated.parent;
144
144
  else if (isClassElement(decorated))
145
145
  current = decorated;
@@ -217,21 +217,21 @@ function isPostSuperFlowNode(c, start, noCacheCheckIn) {
217
217
  }
218
218
  /** Reports `this` in a static property initializer of a class with legacy decorators. */
219
219
  export function checkThisInStaticClassFieldInitializerInDecoratedClass(c, thisExpression, container) {
220
- if (container.kind !== 173 /* SyntaxKind.PropertyDeclaration */ || !isStatic(container) || !c.legacyDecorators)
220
+ if (container.kind !== 174 /* SyntaxKind.PropertyDeclaration */ || !isStatic(container) || !c.legacyDecorators)
221
221
  return;
222
222
  const initializer = getInitializer(container);
223
223
  if (initializer !== undefined &&
224
224
  initializer.pos <= thisExpression.pos &&
225
225
  thisExpression.pos <= initializer.end &&
226
226
  hasDecoratorModifier(container.parent))
227
- c.error(thisExpression, 947 /* Diagnostics.Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class */);
227
+ c.error(thisExpression, 954 /* Diagnostics.Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class */);
228
228
  }
229
229
  function hasDecoratorModifier(node) {
230
230
  const modifiers = getModifiersOf(node);
231
231
  if (modifiers === undefined)
232
232
  return false;
233
233
  for (const modifier of modifiers)
234
- if (modifier.kind === 171 /* SyntaxKind.Decorator */)
234
+ if (modifier.kind === 172 /* SyntaxKind.Decorator */)
235
235
  return true;
236
236
  return false;
237
237
  }