tsc-ts 0.0.9 → 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 (373) hide show
  1. package/README.md +2 -2
  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 +22 -15
  6. package/dist/api/compiler/ast.js +1026 -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 +178 -124
  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 +472 -440
  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 -107
  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 +212 -75
  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 +145 -36
  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 +104 -31
  73. package/dist/api/compiler/checker.js +181 -33
  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 +42 -3
  77. package/dist/api/compiler/compile-program.js +139 -27
  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.d.ts +22 -0
  81. package/dist/api/compiler/diagnostics.js +93 -11
  82. package/dist/api/compiler/emitter.d.ts +7 -1
  83. package/dist/api/compiler/emitter.js +53 -11
  84. package/dist/api/compiler/file-include.d.ts +2 -1
  85. package/dist/api/compiler/file-include.js +11 -7
  86. package/dist/api/compiler/file-loader.d.ts +21 -1
  87. package/dist/api/compiler/file-loader.js +201 -48
  88. package/dist/api/compiler/instantiation.d.ts +7 -0
  89. package/dist/api/compiler/instantiation.js +101 -49
  90. package/dist/api/compiler/jsdoc.js +23 -23
  91. package/dist/api/compiler/link-tables.d.ts +48 -18
  92. package/dist/api/compiler/link-tables.js +80 -37
  93. package/dist/api/compiler/locales/cs-CZ.d.ts +1 -1
  94. package/dist/api/compiler/locales/cs-CZ.js +1 -1
  95. package/dist/api/compiler/locales/de-DE.d.ts +1 -1
  96. package/dist/api/compiler/locales/de-DE.js +1 -1
  97. package/dist/api/compiler/locales/es-ES.d.ts +1 -1
  98. package/dist/api/compiler/locales/es-ES.js +1 -1
  99. package/dist/api/compiler/locales/fr-FR.d.ts +1 -1
  100. package/dist/api/compiler/locales/fr-FR.js +1 -1
  101. package/dist/api/compiler/locales/it-IT.d.ts +1 -1
  102. package/dist/api/compiler/locales/it-IT.js +1 -1
  103. package/dist/api/compiler/locales/ja-JP.d.ts +1 -1
  104. package/dist/api/compiler/locales/ja-JP.js +1 -1
  105. package/dist/api/compiler/locales/ko-KR.d.ts +1 -1
  106. package/dist/api/compiler/locales/ko-KR.js +1 -1
  107. package/dist/api/compiler/locales/pl-PL.d.ts +1 -1
  108. package/dist/api/compiler/locales/pl-PL.js +1 -1
  109. package/dist/api/compiler/locales/pt-BR.d.ts +1 -1
  110. package/dist/api/compiler/locales/pt-BR.js +1 -1
  111. package/dist/api/compiler/locales/ru-RU.d.ts +1 -1
  112. package/dist/api/compiler/locales/ru-RU.js +1 -1
  113. package/dist/api/compiler/locales/tr-TR.d.ts +1 -1
  114. package/dist/api/compiler/locales/tr-TR.js +1 -1
  115. package/dist/api/compiler/locales/zh-CN.d.ts +1 -1
  116. package/dist/api/compiler/locales/zh-CN.js +1 -1
  117. package/dist/api/compiler/locales/zh-TW.d.ts +1 -1
  118. package/dist/api/compiler/locales/zh-TW.js +1 -1
  119. package/dist/api/compiler/module-resolution-types.js +6 -6
  120. package/dist/api/compiler/module-resolution.d.ts +10 -1
  121. package/dist/api/compiler/module-resolution.js +115 -84
  122. package/dist/api/compiler/module-specifiers.d.ts +15 -0
  123. package/dist/api/compiler/module-specifiers.js +24 -18
  124. package/dist/api/compiler/name-resolver.js +74 -65
  125. package/dist/api/compiler/node-builder-names.d.ts +11 -3
  126. package/dist/api/compiler/node-builder-names.js +210 -90
  127. package/dist/api/compiler/node-builder-pseudo.js +29 -31
  128. package/dist/api/compiler/node-builder-reuse.js +23 -22
  129. package/dist/api/compiler/node-builder.d.ts +18 -1
  130. package/dist/api/compiler/node-builder.js +191 -102
  131. package/dist/api/compiler/option-declarations.d.ts +2 -6
  132. package/dist/api/compiler/option-declarations.js +315 -375
  133. package/dist/api/compiler/options.d.ts +15 -33
  134. package/dist/api/compiler/options.js +21 -54
  135. package/dist/api/compiler/output-paths.d.ts +4 -1
  136. package/dist/api/compiler/output-paths.js +6 -11
  137. package/dist/api/compiler/package-json.d.ts +3 -3
  138. package/dist/api/compiler/package-json.js +11 -10
  139. package/dist/api/compiler/parallel-parse.d.ts +3 -2
  140. package/dist/api/compiler/parallel-parse.js +17 -5
  141. package/dist/api/compiler/parser.d.ts +40 -19
  142. package/dist/api/compiler/parser.js +308 -216
  143. package/dist/api/compiler/path.d.ts +9 -0
  144. package/dist/api/compiler/path.js +20 -3
  145. package/dist/api/compiler/printer/emit-context.d.ts +5 -1
  146. package/dist/api/compiler/printer/emit-context.js +20 -1
  147. package/dist/api/compiler/printer/factory-base.d.ts +2 -2
  148. package/dist/api/compiler/printer/factory-base.js +7 -3
  149. package/dist/api/compiler/printer/factory.js +3 -1
  150. package/dist/api/compiler/printer/helpers.js +10 -1
  151. package/dist/api/compiler/printer/name-generator.d.ts +1 -1
  152. package/dist/api/compiler/printer/name-generator.js +35 -16
  153. package/dist/api/compiler/printer/printer.d.ts +49 -2
  154. package/dist/api/compiler/printer/printer.js +539 -293
  155. package/dist/api/compiler/printer/utilities.js +149 -147
  156. package/dist/api/compiler/program-checker.d.ts +12 -2
  157. package/dist/api/compiler/program-checker.js +88 -34
  158. package/dist/api/compiler/program-utilities.d.ts +3 -1
  159. package/dist/api/compiler/program-utilities.js +28 -15
  160. package/dist/api/compiler/program.d.ts +4 -6
  161. package/dist/api/compiler/program.js +74 -87
  162. package/dist/api/compiler/pseudo-bigint.d.ts +2 -0
  163. package/dist/api/compiler/pseudo-bigint.js +18 -0
  164. package/dist/api/compiler/regexp-checker.d.ts +1 -1
  165. package/dist/api/compiler/regexp-checker.js +93 -76
  166. package/dist/api/compiler/relations.d.ts +27 -4
  167. package/dist/api/compiler/relations.js +347 -180
  168. package/dist/api/compiler/reparser.js +60 -56
  169. package/dist/api/compiler/scanner.d.ts +19 -2
  170. package/dist/api/compiler/scanner.js +123 -108
  171. package/dist/api/compiler/shared-results.d.ts +463 -0
  172. package/dist/api/compiler/shared-results.js +2128 -0
  173. package/dist/api/compiler/sourcemap.js +2 -2
  174. package/dist/api/compiler/symbol-accessibility.js +87 -74
  175. package/dist/api/compiler/symbol.d.ts +23 -14
  176. package/dist/api/compiler/symbol.js +23 -11
  177. package/dist/api/compiler/syntax-kind.d.ts +198 -197
  178. package/dist/api/compiler/transformers/alias-references.js +247 -139
  179. package/dist/api/compiler/transformers/async-utilities.js +25 -25
  180. package/dist/api/compiler/transformers/async.d.ts +0 -1
  181. package/dist/api/compiler/transformers/async.js +64 -77
  182. package/dist/api/compiler/transformers/class-fields.d.ts +1 -0
  183. package/dist/api/compiler/transformers/class-fields.js +81 -78
  184. package/dist/api/compiler/transformers/commonjs-module.js +18 -15
  185. package/dist/api/compiler/transformers/const-enum-inliner.js +1 -1
  186. package/dist/api/compiler/transformers/declarations-diagnostics.js +247 -244
  187. package/dist/api/compiler/transformers/declarations-pseudo.js +100 -100
  188. package/dist/api/compiler/transformers/declarations-resolver.d.ts +0 -3
  189. package/dist/api/compiler/transformers/declarations-syntactic.d.ts +1 -2
  190. package/dist/api/compiler/transformers/declarations-syntactic.js +134 -156
  191. package/dist/api/compiler/transformers/declarations-tracker.js +18 -18
  192. package/dist/api/compiler/transformers/declarations.d.ts +4 -1
  193. package/dist/api/compiler/transformers/declarations.js +305 -238
  194. package/dist/api/compiler/transformers/decorator-metadata.d.ts +1 -1
  195. package/dist/api/compiler/transformers/decorator-metadata.js +53 -45
  196. package/dist/api/compiler/transformers/decorator-utilities.js +24 -24
  197. package/dist/api/compiler/transformers/destructuring.js +19 -18
  198. package/dist/api/compiler/transformers/emit-resolver.js +1 -1
  199. package/dist/api/compiler/transformers/es-decorators.js +55 -55
  200. package/dist/api/compiler/transformers/external-module-info.js +3 -3
  201. package/dist/api/compiler/transformers/for-await.js +25 -25
  202. package/dist/api/compiler/transformers/import-elision.js +14 -14
  203. package/dist/api/compiler/transformers/jsx.js +12 -12
  204. package/dist/api/compiler/transformers/legacy-decorators.js +17 -17
  205. package/dist/api/compiler/transformers/module.js +8 -8
  206. package/dist/api/compiler/transformers/named-evaluation.js +4 -4
  207. package/dist/api/compiler/transformers/object-rest-spread.js +20 -20
  208. package/dist/api/compiler/transformers/optional-chain.js +10 -10
  209. package/dist/api/compiler/transformers/reference-resolver.d.ts +12 -1
  210. package/dist/api/compiler/transformers/reference-resolver.js +131 -69
  211. package/dist/api/compiler/transformers/runtime-syntax.js +35 -31
  212. package/dist/api/compiler/transformers/subtree-facts.js +47 -47
  213. package/dist/api/compiler/transformers/syntax-facts.js +56 -58
  214. package/dist/api/compiler/transformers/type-eraser.js +73 -66
  215. package/dist/api/compiler/transformers/type-serialization.js +24 -24
  216. package/dist/api/compiler/transformers/using.js +12 -12
  217. package/dist/api/compiler/transformers/utilities.js +77 -77
  218. package/dist/api/compiler/transformers/visitor-base.js +172 -172
  219. package/dist/api/compiler/transformers/visitor-hooks.js +6 -2
  220. package/dist/api/compiler/tsconfig.d.ts +10 -2
  221. package/dist/api/compiler/tsconfig.js +136 -48
  222. package/dist/api/compiler/type-printer.js +40 -3
  223. package/dist/api/compiler/types.d.ts +2 -1
  224. package/dist/api/library/ast.generated.d.ts +42 -39
  225. package/dist/api/library/ast.generated.js +1 -1
  226. package/dist/api/library/compiler-options.generated.d.ts +111 -100
  227. package/dist/api/library/compiler-options.generated.js +1 -1
  228. package/dist/api/library/disk.js +12 -1
  229. package/dist/api/library/enums.generated.d.ts +206 -206
  230. package/dist/api/library/enums.generated.js +206 -206
  231. package/dist/api/library/nodes.js +26 -26
  232. package/package.json +9 -9
  233. package/src/compiler/ast-utilities.ts +99 -7
  234. package/src/compiler/ast.ts +58 -26
  235. package/src/compiler/binder.ts +39 -4
  236. package/src/compiler/character-codes.ts +2 -2
  237. package/src/compiler/checker-calls.ts +79 -9
  238. package/src/compiler/checker-classes.ts +78 -24
  239. package/src/compiler/checker-contextual.ts +6 -1
  240. package/src/compiler/checker-declarations.ts +31 -4
  241. package/src/compiler/checker-declared-types.ts +8 -5
  242. package/src/compiler/checker-decorators.ts +1 -1
  243. package/src/compiler/checker-deprecation.ts +29 -8
  244. package/src/compiler/checker-destructuring.ts +10 -3
  245. package/src/compiler/checker-emit-helpers.ts +1 -0
  246. package/src/compiler/checker-emit-resolver.ts +16 -6
  247. package/src/compiler/checker-expressions.ts +79 -46
  248. package/src/compiler/checker-functions.ts +21 -6
  249. package/src/compiler/checker-generated-code.ts +2 -22
  250. package/src/compiler/checker-grammar.ts +136 -62
  251. package/src/compiler/checker-heritage.ts +22 -21
  252. package/src/compiler/checker-inference.ts +514 -82
  253. package/src/compiler/checker-iteration.ts +18 -31
  254. package/src/compiler/checker-javascript.ts +1 -1
  255. package/src/compiler/checker-jsdoc.ts +50 -27
  256. package/src/compiler/checker-jsx.ts +26 -4
  257. package/src/compiler/checker-members.ts +200 -56
  258. package/src/compiler/checker-modules.ts +332 -65
  259. package/src/compiler/checker-narrowing.ts +98 -19
  260. package/src/compiler/checker-object-literals.ts +3 -0
  261. package/src/compiler/checker-operators.ts +11 -4
  262. package/src/compiler/checker-property-access.ts +7 -2
  263. package/src/compiler/checker-services.ts +39 -12
  264. package/src/compiler/checker-signatures.ts +15 -1
  265. package/src/compiler/checker-source-file.ts +39 -13
  266. package/src/compiler/checker-statements.ts +3 -2
  267. package/src/compiler/checker-symbol-types.ts +29 -6
  268. package/src/compiler/checker-symbols.ts +158 -15
  269. package/src/compiler/checker-type-factory.ts +124 -23
  270. package/src/compiler/checker-type-nodes.ts +46 -3
  271. package/src/compiler/checker-type-operators.ts +83 -26
  272. package/src/compiler/checker-types.ts +147 -4
  273. package/src/compiler/checker-unused.ts +9 -14
  274. package/src/compiler/checker.ts +203 -39
  275. package/src/compiler/command-line.ts +28 -28
  276. package/src/compiler/compile-program.ts +167 -27
  277. package/src/compiler/decoder.ts +13 -4
  278. package/src/compiler/diagnostic-messages.ts +1973 -1892
  279. package/src/compiler/diagnostics.ts +84 -3
  280. package/src/compiler/emitter.ts +57 -8
  281. package/src/compiler/encoder.ts +23 -8
  282. package/src/compiler/file-include.ts +9 -3
  283. package/src/compiler/file-loader.ts +197 -38
  284. package/src/compiler/help.ts +10 -14
  285. package/src/compiler/incremental.ts +165 -30
  286. package/src/compiler/init.ts +2 -7
  287. package/src/compiler/instantiation.ts +77 -22
  288. package/src/compiler/jsdoc.ts +3 -1
  289. package/src/compiler/link-tables.ts +82 -37
  290. package/src/compiler/locales/cs-CZ.ts +1 -1
  291. package/src/compiler/locales/de-DE.ts +1 -1
  292. package/src/compiler/locales/es-ES.ts +1 -1
  293. package/src/compiler/locales/fr-FR.ts +1 -1
  294. package/src/compiler/locales/it-IT.ts +1 -1
  295. package/src/compiler/locales/ja-JP.ts +1 -1
  296. package/src/compiler/locales/ko-KR.ts +1 -1
  297. package/src/compiler/locales/pl-PL.ts +1 -1
  298. package/src/compiler/locales/pt-BR.ts +1 -1
  299. package/src/compiler/locales/ru-RU.ts +1 -1
  300. package/src/compiler/locales/tr-TR.ts +1 -1
  301. package/src/compiler/locales/zh-CN.ts +1 -1
  302. package/src/compiler/locales/zh-TW.ts +1 -1
  303. package/src/compiler/module-resolution.ts +44 -8
  304. package/src/compiler/module-specifiers.ts +62 -20
  305. package/src/compiler/name-resolver.ts +9 -1
  306. package/src/compiler/node-builder-names.ts +236 -54
  307. package/src/compiler/node-builder-pseudo.ts +4 -7
  308. package/src/compiler/node-builder-reuse.ts +5 -4
  309. package/src/compiler/node-builder.ts +130 -31
  310. package/src/compiler/option-declarations.ts +33 -103
  311. package/src/compiler/options.ts +23 -62
  312. package/src/compiler/output-paths.ts +5 -18
  313. package/src/compiler/package-entrypoints.ts +345 -0
  314. package/src/compiler/package-json.ts +4 -4
  315. package/src/compiler/parallel-check.ts +326 -52
  316. package/src/compiler/parallel-emit.ts +320 -0
  317. package/src/compiler/parallel-parse.ts +16 -5
  318. package/src/compiler/parse-thread.ts +3 -0
  319. package/src/compiler/parser.ts +156 -39
  320. package/src/compiler/path.ts +22 -2
  321. package/src/compiler/printer/emit-context.ts +21 -0
  322. package/src/compiler/printer/factory-base.ts +10 -3
  323. package/src/compiler/printer/factory.ts +4 -1
  324. package/src/compiler/printer/helpers.ts +10 -1
  325. package/src/compiler/printer/name-generator.ts +24 -2
  326. package/src/compiler/printer/printer.ts +266 -30
  327. package/src/compiler/printer/utilities.ts +8 -2
  328. package/src/compiler/program-checker.ts +57 -5
  329. package/src/compiler/program-utilities.ts +23 -10
  330. package/src/compiler/program.ts +18 -26
  331. package/src/compiler/pseudo-bigint.ts +17 -0
  332. package/src/compiler/regexp-checker.ts +63 -30
  333. package/src/compiler/relations.ts +240 -77
  334. package/src/compiler/reparser.ts +7 -2
  335. package/src/compiler/scanner.ts +109 -79
  336. package/src/compiler/shared-results.ts +2414 -0
  337. package/src/compiler/show-config.ts +18 -1
  338. package/src/compiler/sourcemap.ts +2 -2
  339. package/src/compiler/symbol-accessibility.ts +26 -3
  340. package/src/compiler/symbol.ts +46 -24
  341. package/src/compiler/syntax-kind.ts +188 -187
  342. package/src/compiler/thread-entry.ts +64 -4
  343. package/src/compiler/transformers/alias-references.ts +123 -4
  344. package/src/compiler/transformers/async.ts +2 -17
  345. package/src/compiler/transformers/class-fields.ts +13 -12
  346. package/src/compiler/transformers/commonjs-module.ts +11 -7
  347. package/src/compiler/transformers/declarations-diagnostics.ts +5 -3
  348. package/src/compiler/transformers/declarations-pseudo.ts +2 -4
  349. package/src/compiler/transformers/declarations-resolver.ts +0 -3
  350. package/src/compiler/transformers/declarations-syntactic.ts +1 -21
  351. package/src/compiler/transformers/declarations.ts +134 -48
  352. package/src/compiler/transformers/decorator-metadata.ts +9 -1
  353. package/src/compiler/transformers/destructuring.ts +4 -3
  354. package/src/compiler/transformers/external-module-info.ts +1 -1
  355. package/src/compiler/transformers/jsx.ts +2 -1
  356. package/src/compiler/transformers/reference-resolver.ts +83 -19
  357. package/src/compiler/transformers/runtime-syntax.ts +6 -1
  358. package/src/compiler/transformers/syntax-facts.ts +2 -7
  359. package/src/compiler/transformers/type-eraser.ts +10 -1
  360. package/src/compiler/transformers/type-serialization.ts +3 -2
  361. package/src/compiler/transformers/visitor-base.ts +2 -1
  362. package/src/compiler/transformers/visitor-hooks.ts +9 -4
  363. package/src/compiler/tsc-build.ts +66 -9
  364. package/src/compiler/tsc-cli.ts +7 -0
  365. package/src/compiler/tsc-compile.ts +284 -4
  366. package/src/compiler/tsc-watch.ts +74 -45
  367. package/src/compiler/tsconfig.ts +176 -19
  368. package/src/compiler/type-printer.ts +36 -2
  369. package/src/compiler/types.ts +2 -1
  370. package/src/library/ast.generated.ts +57 -41
  371. package/src/library/compiler-options.generated.ts +117 -103
  372. package/src/library/disk.ts +10 -1
  373. package/src/library/enums.generated.ts +196 -196
@@ -167,191 +167,192 @@ export declare const enum SyntaxKind {
167
167
  OverrideKeyword = 164,
168
168
  OfKeyword = 165,
169
169
  DeferKeyword = 166,
170
- QualifiedName = 167,
171
- ComputedPropertyName = 168,
172
- TypeParameter = 169,
173
- Parameter = 170,
174
- Decorator = 171,
175
- PropertySignature = 172,
176
- PropertyDeclaration = 173,
177
- MethodSignature = 174,
178
- MethodDeclaration = 175,
179
- ClassStaticBlockDeclaration = 176,
180
- Constructor = 177,
181
- GetAccessor = 178,
182
- SetAccessor = 179,
183
- CallSignature = 180,
184
- ConstructSignature = 181,
185
- IndexSignature = 182,
186
- TypePredicate = 183,
187
- TypeReference = 184,
188
- FunctionType = 185,
189
- ConstructorType = 186,
190
- TypeQuery = 187,
191
- TypeLiteral = 188,
192
- ArrayType = 189,
193
- TupleType = 190,
194
- OptionalType = 191,
195
- RestType = 192,
196
- UnionType = 193,
197
- IntersectionType = 194,
198
- ConditionalType = 195,
199
- InferType = 196,
200
- ParenthesizedType = 197,
201
- ThisType = 198,
202
- TypeOperator = 199,
203
- IndexedAccessType = 200,
204
- MappedType = 201,
205
- LiteralType = 202,
206
- NamedTupleMember = 203,
207
- TemplateLiteralType = 204,
208
- TemplateLiteralTypeSpan = 205,
209
- ImportType = 206,
210
- ObjectBindingPattern = 207,
211
- ArrayBindingPattern = 208,
212
- BindingElement = 209,
213
- ArrayLiteralExpression = 210,
214
- ObjectLiteralExpression = 211,
215
- PropertyAccessExpression = 212,
216
- ElementAccessExpression = 213,
217
- CallExpression = 214,
218
- NewExpression = 215,
219
- TaggedTemplateExpression = 216,
220
- TypeAssertionExpression = 217,
221
- ParenthesizedExpression = 218,
222
- FunctionExpression = 219,
223
- ArrowFunction = 220,
224
- DeleteExpression = 221,
225
- TypeOfExpression = 222,
226
- VoidExpression = 223,
227
- AwaitExpression = 224,
228
- PrefixUnaryExpression = 225,
229
- PostfixUnaryExpression = 226,
230
- BinaryExpression = 227,
231
- ConditionalExpression = 228,
232
- TemplateExpression = 229,
233
- YieldExpression = 230,
234
- SpreadElement = 231,
235
- ClassExpression = 232,
236
- OmittedExpression = 233,
237
- ExpressionWithTypeArguments = 234,
238
- AsExpression = 235,
239
- NonNullExpression = 236,
240
- MetaProperty = 237,
241
- SyntheticExpression = 238,
242
- SatisfiesExpression = 239,
243
- TemplateSpan = 240,
244
- SemicolonClassElement = 241,
245
- Block = 242,
246
- EmptyStatement = 243,
247
- VariableStatement = 244,
248
- ExpressionStatement = 245,
249
- IfStatement = 246,
250
- DoStatement = 247,
251
- WhileStatement = 248,
252
- ForStatement = 249,
253
- ForInStatement = 250,
254
- ForOfStatement = 251,
255
- ContinueStatement = 252,
256
- BreakStatement = 253,
257
- ReturnStatement = 254,
258
- WithStatement = 255,
259
- SwitchStatement = 256,
260
- LabeledStatement = 257,
261
- ThrowStatement = 258,
262
- TryStatement = 259,
263
- DebuggerStatement = 260,
264
- VariableDeclaration = 261,
265
- VariableDeclarationList = 262,
266
- FunctionDeclaration = 263,
267
- ClassDeclaration = 264,
268
- InterfaceDeclaration = 265,
269
- TypeAliasDeclaration = 266,
270
- EnumDeclaration = 267,
271
- ModuleDeclaration = 268,
272
- ModuleBlock = 269,
273
- CaseBlock = 270,
274
- NamespaceExportDeclaration = 271,
275
- ImportEqualsDeclaration = 272,
276
- ImportDeclaration = 273,
277
- ImportClause = 274,
278
- NamespaceImport = 275,
279
- NamedImports = 276,
280
- ImportSpecifier = 277,
281
- ExportAssignment = 278,
282
- ExportDeclaration = 279,
283
- NamedExports = 280,
284
- NamespaceExport = 281,
285
- ExportSpecifier = 282,
286
- MissingDeclaration = 283,
287
- ExternalModuleReference = 284,
288
- JsxElement = 285,
289
- JsxSelfClosingElement = 286,
290
- JsxOpeningElement = 287,
291
- JsxClosingElement = 288,
292
- JsxFragment = 289,
293
- JsxOpeningFragment = 290,
294
- JsxClosingFragment = 291,
295
- JsxAttribute = 292,
296
- JsxAttributes = 293,
297
- JsxSpreadAttribute = 294,
298
- JsxExpression = 295,
299
- JsxNamespacedName = 296,
300
- CaseClause = 297,
301
- DefaultClause = 298,
302
- HeritageClause = 299,
303
- CatchClause = 300,
304
- ImportAttributes = 301,
305
- ImportAttribute = 302,
306
- PropertyAssignment = 303,
307
- ShorthandPropertyAssignment = 304,
308
- SpreadAssignment = 305,
309
- EnumMember = 306,
310
- SourceFile = 307,
311
- JSDocTypeExpression = 308,
312
- JSDocNameReference = 309,
313
- JSDocAllType = 310,
314
- JSDocNullableType = 311,
315
- JSDocNonNullableType = 312,
316
- JSDocOptionalType = 313,
317
- JSDocVariadicType = 314,
318
- JSDoc = 315,
319
- JSDocText = 316,
320
- JSDocTypeLiteral = 317,
321
- JSDocSignature = 318,
322
- JSDocLink = 319,
323
- JSDocLinkCode = 320,
324
- JSDocLinkPlain = 321,
325
- JSDocUnknownTag = 322,
326
- JSDocAugmentsTag = 323,
327
- JSDocImplementsTag = 324,
328
- JSDocDeprecatedTag = 325,
329
- JSDocPublicTag = 326,
330
- JSDocPrivateTag = 327,
331
- JSDocProtectedTag = 328,
332
- JSDocReadonlyTag = 329,
333
- JSDocOverrideTag = 330,
334
- JSDocCallbackTag = 331,
335
- JSDocOverloadTag = 332,
336
- JSDocParameterTag = 333,
337
- JSDocReturnTag = 334,
338
- JSDocThisTag = 335,
339
- JSDocTypeTag = 336,
340
- JSDocTemplateTag = 337,
341
- JSDocTypedefTag = 338,
342
- JSDocSeeTag = 339,
343
- JSDocPropertyTag = 340,
344
- JSDocThrowsTag = 341,
345
- JSDocSatisfiesTag = 342,
346
- JSDocImportTag = 343,
347
- SyntaxList = 344,
348
- JSTypeAliasDeclaration = 345,
349
- JSImportDeclaration = 346,
350
- NotEmittedStatement = 347,
351
- PartiallyEmittedExpression = 348,
352
- SyntheticReferenceExpression = 349,
353
- NotEmittedTypeElement = 350,
354
- Count = 351,
170
+ SourceKeyword = 167,
171
+ QualifiedName = 168,
172
+ ComputedPropertyName = 169,
173
+ TypeParameter = 170,
174
+ Parameter = 171,
175
+ Decorator = 172,
176
+ PropertySignature = 173,
177
+ PropertyDeclaration = 174,
178
+ MethodSignature = 175,
179
+ MethodDeclaration = 176,
180
+ ClassStaticBlockDeclaration = 177,
181
+ Constructor = 178,
182
+ GetAccessor = 179,
183
+ SetAccessor = 180,
184
+ CallSignature = 181,
185
+ ConstructSignature = 182,
186
+ IndexSignature = 183,
187
+ TypePredicate = 184,
188
+ TypeReference = 185,
189
+ FunctionType = 186,
190
+ ConstructorType = 187,
191
+ TypeQuery = 188,
192
+ TypeLiteral = 189,
193
+ ArrayType = 190,
194
+ TupleType = 191,
195
+ OptionalType = 192,
196
+ RestType = 193,
197
+ UnionType = 194,
198
+ IntersectionType = 195,
199
+ ConditionalType = 196,
200
+ InferType = 197,
201
+ ParenthesizedType = 198,
202
+ ThisType = 199,
203
+ TypeOperator = 200,
204
+ IndexedAccessType = 201,
205
+ MappedType = 202,
206
+ LiteralType = 203,
207
+ NamedTupleMember = 204,
208
+ TemplateLiteralType = 205,
209
+ TemplateLiteralTypeSpan = 206,
210
+ ImportType = 207,
211
+ ObjectBindingPattern = 208,
212
+ ArrayBindingPattern = 209,
213
+ BindingElement = 210,
214
+ ArrayLiteralExpression = 211,
215
+ ObjectLiteralExpression = 212,
216
+ PropertyAccessExpression = 213,
217
+ ElementAccessExpression = 214,
218
+ CallExpression = 215,
219
+ NewExpression = 216,
220
+ TaggedTemplateExpression = 217,
221
+ TypeAssertionExpression = 218,
222
+ ParenthesizedExpression = 219,
223
+ FunctionExpression = 220,
224
+ ArrowFunction = 221,
225
+ DeleteExpression = 222,
226
+ TypeOfExpression = 223,
227
+ VoidExpression = 224,
228
+ AwaitExpression = 225,
229
+ PrefixUnaryExpression = 226,
230
+ PostfixUnaryExpression = 227,
231
+ BinaryExpression = 228,
232
+ ConditionalExpression = 229,
233
+ TemplateExpression = 230,
234
+ YieldExpression = 231,
235
+ SpreadElement = 232,
236
+ ClassExpression = 233,
237
+ OmittedExpression = 234,
238
+ ExpressionWithTypeArguments = 235,
239
+ AsExpression = 236,
240
+ NonNullExpression = 237,
241
+ MetaProperty = 238,
242
+ SyntheticExpression = 239,
243
+ SatisfiesExpression = 240,
244
+ TemplateSpan = 241,
245
+ SemicolonClassElement = 242,
246
+ Block = 243,
247
+ EmptyStatement = 244,
248
+ VariableStatement = 245,
249
+ ExpressionStatement = 246,
250
+ IfStatement = 247,
251
+ DoStatement = 248,
252
+ WhileStatement = 249,
253
+ ForStatement = 250,
254
+ ForInStatement = 251,
255
+ ForOfStatement = 252,
256
+ ContinueStatement = 253,
257
+ BreakStatement = 254,
258
+ ReturnStatement = 255,
259
+ WithStatement = 256,
260
+ SwitchStatement = 257,
261
+ LabeledStatement = 258,
262
+ ThrowStatement = 259,
263
+ TryStatement = 260,
264
+ DebuggerStatement = 261,
265
+ VariableDeclaration = 262,
266
+ VariableDeclarationList = 263,
267
+ FunctionDeclaration = 264,
268
+ ClassDeclaration = 265,
269
+ InterfaceDeclaration = 266,
270
+ TypeAliasDeclaration = 267,
271
+ EnumDeclaration = 268,
272
+ ModuleDeclaration = 269,
273
+ ModuleBlock = 270,
274
+ CaseBlock = 271,
275
+ NamespaceExportDeclaration = 272,
276
+ ImportEqualsDeclaration = 273,
277
+ ImportDeclaration = 274,
278
+ ImportClause = 275,
279
+ NamespaceImport = 276,
280
+ NamedImports = 277,
281
+ ImportSpecifier = 278,
282
+ ExportAssignment = 279,
283
+ ExportDeclaration = 280,
284
+ NamedExports = 281,
285
+ NamespaceExport = 282,
286
+ ExportSpecifier = 283,
287
+ MissingDeclaration = 284,
288
+ ExternalModuleReference = 285,
289
+ JsxElement = 286,
290
+ JsxSelfClosingElement = 287,
291
+ JsxOpeningElement = 288,
292
+ JsxClosingElement = 289,
293
+ JsxFragment = 290,
294
+ JsxOpeningFragment = 291,
295
+ JsxClosingFragment = 292,
296
+ JsxAttribute = 293,
297
+ JsxAttributes = 294,
298
+ JsxSpreadAttribute = 295,
299
+ JsxExpression = 296,
300
+ JsxNamespacedName = 297,
301
+ CaseClause = 298,
302
+ DefaultClause = 299,
303
+ HeritageClause = 300,
304
+ CatchClause = 301,
305
+ ImportAttributes = 302,
306
+ ImportAttribute = 303,
307
+ PropertyAssignment = 304,
308
+ ShorthandPropertyAssignment = 305,
309
+ SpreadAssignment = 306,
310
+ EnumMember = 307,
311
+ SourceFile = 308,
312
+ JSDocTypeExpression = 309,
313
+ JSDocNameReference = 310,
314
+ JSDocAllType = 311,
315
+ JSDocNullableType = 312,
316
+ JSDocNonNullableType = 313,
317
+ JSDocOptionalType = 314,
318
+ JSDocVariadicType = 315,
319
+ JSDoc = 316,
320
+ JSDocText = 317,
321
+ JSDocTypeLiteral = 318,
322
+ JSDocSignature = 319,
323
+ JSDocLink = 320,
324
+ JSDocLinkCode = 321,
325
+ JSDocLinkPlain = 322,
326
+ JSDocUnknownTag = 323,
327
+ JSDocAugmentsTag = 324,
328
+ JSDocImplementsTag = 325,
329
+ JSDocDeprecatedTag = 326,
330
+ JSDocPublicTag = 327,
331
+ JSDocPrivateTag = 328,
332
+ JSDocProtectedTag = 329,
333
+ JSDocReadonlyTag = 330,
334
+ JSDocOverrideTag = 331,
335
+ JSDocCallbackTag = 332,
336
+ JSDocOverloadTag = 333,
337
+ JSDocParameterTag = 334,
338
+ JSDocReturnTag = 335,
339
+ JSDocThisTag = 336,
340
+ JSDocTypeTag = 337,
341
+ JSDocTemplateTag = 338,
342
+ JSDocTypedefTag = 339,
343
+ JSDocSeeTag = 340,
344
+ JSDocPropertyTag = 341,
345
+ JSDocThrowsTag = 342,
346
+ JSDocSatisfiesTag = 343,
347
+ JSDocImportTag = 344,
348
+ SyntaxList = 345,
349
+ JSTypeAliasDeclaration = 346,
350
+ JSImportDeclaration = 347,
351
+ NotEmittedStatement = 348,
352
+ PartiallyEmittedExpression = 349,
353
+ SyntheticReferenceExpression = 350,
354
+ NotEmittedTypeElement = 351,
355
+ Count = 352,
355
356
  FirstAssignment = 63,
356
357
  LastAssignment = 78,
357
358
  FirstCompoundAssignment = 64,
@@ -359,30 +360,30 @@ export declare const enum SyntaxKind {
359
360
  FirstReservedWord = 82,
360
361
  LastReservedWord = 117,
361
362
  FirstKeyword = 82,
362
- LastKeyword = 166,
363
+ LastKeyword = 167,
363
364
  FirstFutureReservedWord = 118,
364
365
  LastFutureReservedWord = 126,
365
- FirstTypeNode = 183,
366
- LastTypeNode = 206,
366
+ FirstTypeNode = 184,
367
+ LastTypeNode = 207,
367
368
  FirstPunctuation = 18,
368
369
  LastPunctuation = 78,
369
370
  FirstToken = 0,
370
- LastToken = 166,
371
+ LastToken = 167,
371
372
  FirstLiteralToken = 8,
372
373
  LastLiteralToken = 14,
373
374
  FirstTemplateToken = 14,
374
375
  LastTemplateToken = 17,
375
376
  FirstBinaryOperator = 29,
376
377
  LastBinaryOperator = 78,
377
- FirstStatement = 244,
378
- LastStatement = 260,
379
- FirstNode = 167,
380
- FirstJSDocNode = 308,
381
- LastJSDocNode = 343,
382
- FirstJSDocTagNode = 322,
383
- LastJSDocTagNode = 343,
378
+ FirstStatement = 245,
379
+ LastStatement = 261,
380
+ FirstNode = 168,
381
+ FirstJSDocNode = 309,
382
+ LastJSDocNode = 344,
383
+ FirstJSDocTagNode = 323,
384
+ LastJSDocTagNode = 344,
384
385
  FirstContextualKeyword = 127,
385
- LastContextualKeyword = 166,
386
+ LastContextualKeyword = 167,
386
387
  LastUnaryOperator = 54,
387
388
  FirstTriviaToken = 2,
388
389
  LastTriviaToken = 6