ttsc 0.7.2 → 0.8.0-dev.20260505

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 (72) hide show
  1. package/README.md +5 -5
  2. package/cmd/platform/main.go +86 -76
  3. package/cmd/ttsc/api_compile.go +122 -105
  4. package/cmd/ttsc/api_transform.go +57 -49
  5. package/cmd/ttsc/build.go +116 -103
  6. package/cmd/ttsc/main.go +117 -117
  7. package/cmd/ttsc/main_test.go +191 -191
  8. package/driver/host.go +9 -9
  9. package/driver/program.go +285 -285
  10. package/driver/rewrite.go +266 -219
  11. package/lib/compiler/internal/compileProjectInMemory.js +3 -3
  12. package/lib/compiler/internal/compileProjectInMemory.js.map +1 -1
  13. package/lib/compiler/internal/resolveEmittedJavaScript.js +2 -1
  14. package/lib/compiler/internal/resolveEmittedJavaScript.js.map +1 -1
  15. package/lib/compiler/internal/resolveTsgo.js.map +1 -1
  16. package/lib/compiler/internal/runBuild.js +47 -49
  17. package/lib/compiler/internal/runBuild.js.map +1 -1
  18. package/lib/compiler/internal/transformProjectInMemory.js +44 -4
  19. package/lib/compiler/internal/transformProjectInMemory.js.map +1 -1
  20. package/lib/launcher/internal/getCompilerVersionText.js +1 -2
  21. package/lib/launcher/internal/getCompilerVersionText.js.map +1 -1
  22. package/lib/launcher/internal/prepareExecution.js +6 -4
  23. package/lib/launcher/internal/prepareExecution.js.map +1 -1
  24. package/lib/launcher/internal/runTtsc.js +49 -5
  25. package/lib/launcher/internal/runTtsc.js.map +1 -1
  26. package/lib/launcher/internal/runTtsx.js +7 -2
  27. package/lib/launcher/internal/runTtsx.js.map +1 -1
  28. package/lib/plugin/internal/buildSourcePlugin.js +6 -0
  29. package/lib/plugin/internal/buildSourcePlugin.js.map +1 -1
  30. package/lib/plugin/internal/loadProjectPlugins.js +55 -2
  31. package/lib/plugin/internal/loadProjectPlugins.js.map +1 -1
  32. package/lib/structures/ITtscPlugin.d.ts +19 -3
  33. package/lib/structures/ITtscPlugin.js +4 -0
  34. package/lib/structures/ITtscPlugin.js.map +1 -1
  35. package/lib/structures/TtscPluginStage.d.ts +4 -10
  36. package/lib/structures/internal/ITtscLoadedNativePlugin.d.ts +5 -0
  37. package/package.json +11 -10
  38. package/shim/ast/lint.go +172 -171
  39. package/shim/ast/shim.go +84 -83
  40. package/shim/bundled/shim.go +5 -1
  41. package/shim/checker/shim.go +79 -79
  42. package/shim/compiler/emit_hooks.go +494 -0
  43. package/shim/compiler/shim.go +16 -1
  44. package/shim/core/shim.go +13 -10
  45. package/shim/diagnosticwriter/lint.go +79 -79
  46. package/shim/diagnosticwriter/shim.go +19 -19
  47. package/shim/parser/shim.go +7 -1
  48. package/shim/scanner/shim.go +39 -1
  49. package/shim/tsoptions/shim.go +51 -1
  50. package/shim/tspath/shim.go +72 -1
  51. package/shim/vfs/cachedvfs/shim.go +1 -1
  52. package/shim/vfs/osvfs/shim.go +1 -1
  53. package/shim/vfs/shim.go +4 -1
  54. package/src/compiler/internal/compileProjectInMemory.ts +6 -3
  55. package/src/compiler/internal/resolveEmittedJavaScript.ts +2 -1
  56. package/src/compiler/internal/resolveTsgo.ts +0 -1
  57. package/src/compiler/internal/runBuild.ts +58 -86
  58. package/src/compiler/internal/transformProjectInMemory.ts +51 -6
  59. package/src/launcher/internal/getCompilerVersionText.ts +1 -2
  60. package/src/launcher/internal/prepareExecution.ts +6 -6
  61. package/src/launcher/internal/runTtsc.ts +52 -5
  62. package/src/launcher/internal/runTtsx.ts +16 -5
  63. package/src/plugin/internal/buildSourcePlugin.ts +30 -2
  64. package/src/plugin/internal/loadProjectPlugins.ts +81 -2
  65. package/src/structures/ITtscPlugin.ts +30 -3
  66. package/src/structures/TtscPluginStage.ts +4 -10
  67. package/src/structures/internal/ITtscLoadedNativePlugin.ts +5 -0
  68. package/test/compiler.test.ts +3 -3
  69. package/test/platform.test.ts +1 -3
  70. package/test/tsgo.test.ts +15 -7
  71. package/tools/gen_shims/main.go +409 -409
  72. package/utility/host.go +707 -0
package/shim/ast/lint.go CHANGED
@@ -13,7 +13,7 @@
13
13
  package ast
14
14
 
15
15
  import (
16
- innerast "github.com/microsoft/typescript-go/internal/ast"
16
+ innerast "github.com/microsoft/typescript-go/internal/ast"
17
17
  )
18
18
 
19
19
  // ---- Node-list / visitor primitives ----
@@ -127,185 +127,186 @@ type ExternalModuleIndicatorOptions = innerast.ExternalModuleIndicatorOptions
127
127
  // ---- Node-flag constants ----
128
128
 
129
129
  const (
130
- NodeFlagsNone = innerast.NodeFlagsNone
131
- NodeFlagsLet = innerast.NodeFlagsLet
132
- NodeFlagsConst = innerast.NodeFlagsConst
133
- NodeFlagsBlockScoped = innerast.NodeFlagsBlockScoped
134
- NodeFlagsAwaitContext = innerast.NodeFlagsAwaitContext
130
+ NodeFlagsNone = innerast.NodeFlagsNone
131
+ NodeFlagsSynthesized = innerast.NodeFlagsSynthesized
132
+ NodeFlagsLet = innerast.NodeFlagsLet
133
+ NodeFlagsConst = innerast.NodeFlagsConst
134
+ NodeFlagsBlockScoped = innerast.NodeFlagsBlockScoped
135
+ NodeFlagsAwaitContext = innerast.NodeFlagsAwaitContext
135
136
  )
136
137
 
137
138
  // ---- Statement / declaration / expression kinds ----
138
139
 
139
140
  const (
140
- KindSourceFile = innerast.KindSourceFile
141
-
142
- // Statements
143
- KindBlock = innerast.KindBlock
144
- KindBreakStatement = innerast.KindBreakStatement
145
- KindCaseBlock = innerast.KindCaseBlock
146
- KindCaseClause = innerast.KindCaseClause
147
- KindCatchClause = innerast.KindCatchClause
148
- KindContinueStatement = innerast.KindContinueStatement
149
- KindDebuggerStatement = innerast.KindDebuggerStatement
150
- KindDefaultClause = innerast.KindDefaultClause
151
- KindDoStatement = innerast.KindDoStatement
152
- KindEmptyStatement = innerast.KindEmptyStatement
153
- KindExpressionStatement = innerast.KindExpressionStatement
154
- KindForInStatement = innerast.KindForInStatement
155
- KindForOfStatement = innerast.KindForOfStatement
156
- KindForStatement = innerast.KindForStatement
157
- KindIfStatement = innerast.KindIfStatement
158
- KindLabeledStatement = innerast.KindLabeledStatement
159
- KindReturnStatement = innerast.KindReturnStatement
160
- KindSwitchStatement = innerast.KindSwitchStatement
161
- KindThrowStatement = innerast.KindThrowStatement
162
- KindTryStatement = innerast.KindTryStatement
163
- KindVariableDeclaration = innerast.KindVariableDeclaration
164
- KindVariableDeclarationList = innerast.KindVariableDeclarationList
165
- KindVariableStatement = innerast.KindVariableStatement
166
- KindWhileStatement = innerast.KindWhileStatement
167
- KindWithStatement = innerast.KindWithStatement
168
-
169
- // Class / enum / module
170
- KindClassDeclaration = innerast.KindClassDeclaration
171
- KindClassExpression = innerast.KindClassExpression
172
- KindConstructor = innerast.KindConstructor
173
- KindEnumDeclaration = innerast.KindEnumDeclaration
174
- KindEnumMember = innerast.KindEnumMember
175
- KindGetAccessor = innerast.KindGetAccessor
176
- KindSetAccessor = innerast.KindSetAccessor
177
- KindHeritageClause = innerast.KindHeritageClause
178
- KindPropertyDeclaration = innerast.KindPropertyDeclaration
179
-
180
- // Module syntax
181
- KindExportAssignment = innerast.KindExportAssignment
182
- KindExportDeclaration = innerast.KindExportDeclaration
183
- KindImportEqualsDeclaration = innerast.KindImportEqualsDeclaration
184
- KindExternalModuleReference = innerast.KindExternalModuleReference
185
- KindImportType = innerast.KindImportType
186
- KindImportKeyword = innerast.KindImportKeyword
187
-
188
- // Binding
189
- KindBindingElement = innerast.KindBindingElement
190
- KindObjectBindingPattern = innerast.KindObjectBindingPattern
191
- KindArrayBindingPattern = innerast.KindArrayBindingPattern
192
- KindOmittedExpression = innerast.KindOmittedExpression
193
-
194
- // Expressions
195
- KindArrayLiteralExpression = innerast.KindArrayLiteralExpression
196
- KindArrowFunction = innerast.KindArrowFunction
197
- KindAsExpression = innerast.KindAsExpression
198
- KindAwaitExpression = innerast.KindAwaitExpression
199
- KindBinaryExpression = innerast.KindBinaryExpression
200
- KindConditionalExpression = innerast.KindConditionalExpression
201
- KindDeleteExpression = innerast.KindDeleteExpression
202
- KindElementAccessExpression = innerast.KindElementAccessExpression
203
- KindFunctionExpression = innerast.KindFunctionExpression
204
- KindNewExpression = innerast.KindNewExpression
205
- KindNonNullExpression = innerast.KindNonNullExpression
206
- KindObjectLiteralExpression = innerast.KindObjectLiteralExpression
207
- KindParenthesizedExpression = innerast.KindParenthesizedExpression
208
- KindPostfixUnaryExpression = innerast.KindPostfixUnaryExpression
209
- KindPropertyAssignment = innerast.KindPropertyAssignment
210
- KindShorthandPropertyAssignment = innerast.KindShorthandPropertyAssignment
211
- KindSpreadAssignment = innerast.KindSpreadAssignment
212
- KindSpreadElement = innerast.KindSpreadElement
213
- KindTaggedTemplateExpression = innerast.KindTaggedTemplateExpression
214
- KindTemplateExpression = innerast.KindTemplateExpression
215
- KindTemplateSpan = innerast.KindTemplateSpan
216
- KindTypeAssertionExpression = innerast.KindTypeAssertionExpression
217
- KindTypeOfExpression = innerast.KindTypeOfExpression
218
- KindVoidExpression = innerast.KindVoidExpression
219
- KindYieldExpression = innerast.KindYieldExpression
220
- KindRegularExpressionLiteral = innerast.KindRegularExpressionLiteral
221
- KindSatisfiesExpression = innerast.KindSatisfiesExpression
222
-
223
- // Keywords / tokens used by rules
224
- KindThisKeyword = innerast.KindThisKeyword
225
- KindSuperKeyword = innerast.KindSuperKeyword
226
- KindEqualsToken = innerast.KindEqualsToken
227
- KindEqualsEqualsToken = innerast.KindEqualsEqualsToken
228
- KindEqualsEqualsEqualsToken = innerast.KindEqualsEqualsEqualsToken
229
- KindExclamationEqualsToken = innerast.KindExclamationEqualsToken
230
- KindExclamationEqualsEqualsToken = innerast.KindExclamationEqualsEqualsToken
231
- KindLessThanToken = innerast.KindLessThanToken
232
- KindGreaterThanToken = innerast.KindGreaterThanToken
233
- KindLessThanEqualsToken = innerast.KindLessThanEqualsToken
234
- KindGreaterThanEqualsToken = innerast.KindGreaterThanEqualsToken
235
- KindPlusToken = innerast.KindPlusToken
236
- KindPlusEqualsToken = innerast.KindPlusEqualsToken
237
- KindMinusEqualsToken = innerast.KindMinusEqualsToken
238
- KindAsteriskToken = innerast.KindAsteriskToken
239
- KindSlashToken = innerast.KindSlashToken
240
- KindAmpersandAmpersandToken = innerast.KindAmpersandAmpersandToken
241
- KindBarBarToken = innerast.KindBarBarToken
242
- KindQuestionQuestionToken = innerast.KindQuestionQuestionToken
243
- KindExclamationToken = innerast.KindExclamationToken
244
- KindTildeToken = innerast.KindTildeToken
245
- KindInKeyword = innerast.KindInKeyword
246
- KindInstanceOfKeyword = innerast.KindInstanceOfKeyword
247
- KindAsKeyword = innerast.KindAsKeyword
248
- KindPlusPlusToken = innerast.KindPlusPlusToken
249
- KindMinusMinusToken = innerast.KindMinusMinusToken
250
- KindDotToken = innerast.KindDotToken
251
-
252
- // Bitwise / shift / exponent operator tokens — needed by
253
- // no-bitwise, prefer-exponentiation-operator, etc.
254
- KindAmpersandToken = innerast.KindAmpersandToken
255
- KindBarToken = innerast.KindBarToken
256
- KindCaretToken = innerast.KindCaretToken
257
- KindLessThanLessThanToken = innerast.KindLessThanLessThanToken
258
- KindGreaterThanGreaterThanToken = innerast.KindGreaterThanGreaterThanToken
259
- KindGreaterThanGreaterThanGreaterThanToken = innerast.KindGreaterThanGreaterThanGreaterThanToken
260
- KindAsteriskAsteriskToken = innerast.KindAsteriskAsteriskToken
261
- KindAmpersandAmpersandEqualsToken = innerast.KindAmpersandAmpersandEqualsToken
262
- KindBarBarEqualsToken = innerast.KindBarBarEqualsToken
263
- KindQuestionQuestionEqualsToken = innerast.KindQuestionQuestionEqualsToken
264
- KindAsteriskEqualsToken = innerast.KindAsteriskEqualsToken
265
- KindSlashEqualsToken = innerast.KindSlashEqualsToken
266
- KindPercentEqualsToken = innerast.KindPercentEqualsToken
267
- KindAsteriskAsteriskEqualsToken = innerast.KindAsteriskAsteriskEqualsToken
268
- KindAmpersandEqualsToken = innerast.KindAmpersandEqualsToken
269
- KindBarEqualsToken = innerast.KindBarEqualsToken
270
- KindCaretEqualsToken = innerast.KindCaretEqualsToken
271
- KindLessThanLessThanEqualsToken = innerast.KindLessThanLessThanEqualsToken
272
- KindGreaterThanGreaterThanEqualsToken = innerast.KindGreaterThanGreaterThanEqualsToken
273
- KindGreaterThanGreaterThanGreaterThanEqualsToken = innerast.KindGreaterThanGreaterThanGreaterThanEqualsToken
274
- KindCommaToken = innerast.KindCommaToken
275
- KindQuestionToken = innerast.KindQuestionToken
276
-
277
- // Metaprogramming / privacy / async syntax
278
- KindMetaProperty = innerast.KindMetaProperty
279
- KindPrivateIdentifier = innerast.KindPrivateIdentifier
280
- KindClassStaticBlockDeclaration = innerast.KindClassStaticBlockDeclaration
281
-
282
- // Misc syntax used by suggestion rules
283
- KindSymbolKeyword = innerast.KindSymbolKeyword
284
- KindObjectKeyword = innerast.KindObjectKeyword
285
-
286
- // Modifier-style keywords
287
- KindAsyncKeyword = innerast.KindAsyncKeyword
288
- KindAwaitKeyword = innerast.KindAwaitKeyword
289
- KindReadonlyKeyword = innerast.KindReadonlyKeyword
290
- KindStaticKeyword = innerast.KindStaticKeyword
291
- KindAbstractKeyword = innerast.KindAbstractKeyword
292
- KindExportKeyword = innerast.KindExportKeyword
293
- KindDeclareKeyword = innerast.KindDeclareKeyword
294
- KindModuleKeyword = innerast.KindModuleKeyword
295
- KindTypeKeyword = innerast.KindTypeKeyword
296
-
297
- // TypeScript-specific kinds used by ts rules
298
- KindCallSignature = innerast.KindCallSignature
299
- KindConstructSignature = innerast.KindConstructSignature
300
- KindTypeQuery = innerast.KindTypeQuery
301
- KindTypeOperator = innerast.KindTypeOperator
141
+ KindSourceFile = innerast.KindSourceFile
142
+
143
+ // Statements
144
+ KindBlock = innerast.KindBlock
145
+ KindBreakStatement = innerast.KindBreakStatement
146
+ KindCaseBlock = innerast.KindCaseBlock
147
+ KindCaseClause = innerast.KindCaseClause
148
+ KindCatchClause = innerast.KindCatchClause
149
+ KindContinueStatement = innerast.KindContinueStatement
150
+ KindDebuggerStatement = innerast.KindDebuggerStatement
151
+ KindDefaultClause = innerast.KindDefaultClause
152
+ KindDoStatement = innerast.KindDoStatement
153
+ KindEmptyStatement = innerast.KindEmptyStatement
154
+ KindExpressionStatement = innerast.KindExpressionStatement
155
+ KindForInStatement = innerast.KindForInStatement
156
+ KindForOfStatement = innerast.KindForOfStatement
157
+ KindForStatement = innerast.KindForStatement
158
+ KindIfStatement = innerast.KindIfStatement
159
+ KindLabeledStatement = innerast.KindLabeledStatement
160
+ KindReturnStatement = innerast.KindReturnStatement
161
+ KindSwitchStatement = innerast.KindSwitchStatement
162
+ KindThrowStatement = innerast.KindThrowStatement
163
+ KindTryStatement = innerast.KindTryStatement
164
+ KindVariableDeclaration = innerast.KindVariableDeclaration
165
+ KindVariableDeclarationList = innerast.KindVariableDeclarationList
166
+ KindVariableStatement = innerast.KindVariableStatement
167
+ KindWhileStatement = innerast.KindWhileStatement
168
+ KindWithStatement = innerast.KindWithStatement
169
+
170
+ // Class / enum / module
171
+ KindClassDeclaration = innerast.KindClassDeclaration
172
+ KindClassExpression = innerast.KindClassExpression
173
+ KindConstructor = innerast.KindConstructor
174
+ KindEnumDeclaration = innerast.KindEnumDeclaration
175
+ KindEnumMember = innerast.KindEnumMember
176
+ KindGetAccessor = innerast.KindGetAccessor
177
+ KindSetAccessor = innerast.KindSetAccessor
178
+ KindHeritageClause = innerast.KindHeritageClause
179
+ KindPropertyDeclaration = innerast.KindPropertyDeclaration
180
+
181
+ // Module syntax
182
+ KindExportAssignment = innerast.KindExportAssignment
183
+ KindExportDeclaration = innerast.KindExportDeclaration
184
+ KindImportEqualsDeclaration = innerast.KindImportEqualsDeclaration
185
+ KindExternalModuleReference = innerast.KindExternalModuleReference
186
+ KindImportType = innerast.KindImportType
187
+ KindImportKeyword = innerast.KindImportKeyword
188
+
189
+ // Binding
190
+ KindBindingElement = innerast.KindBindingElement
191
+ KindObjectBindingPattern = innerast.KindObjectBindingPattern
192
+ KindArrayBindingPattern = innerast.KindArrayBindingPattern
193
+ KindOmittedExpression = innerast.KindOmittedExpression
194
+
195
+ // Expressions
196
+ KindArrayLiteralExpression = innerast.KindArrayLiteralExpression
197
+ KindArrowFunction = innerast.KindArrowFunction
198
+ KindAsExpression = innerast.KindAsExpression
199
+ KindAwaitExpression = innerast.KindAwaitExpression
200
+ KindBinaryExpression = innerast.KindBinaryExpression
201
+ KindConditionalExpression = innerast.KindConditionalExpression
202
+ KindDeleteExpression = innerast.KindDeleteExpression
203
+ KindElementAccessExpression = innerast.KindElementAccessExpression
204
+ KindFunctionExpression = innerast.KindFunctionExpression
205
+ KindNewExpression = innerast.KindNewExpression
206
+ KindNonNullExpression = innerast.KindNonNullExpression
207
+ KindObjectLiteralExpression = innerast.KindObjectLiteralExpression
208
+ KindParenthesizedExpression = innerast.KindParenthesizedExpression
209
+ KindPostfixUnaryExpression = innerast.KindPostfixUnaryExpression
210
+ KindPropertyAssignment = innerast.KindPropertyAssignment
211
+ KindShorthandPropertyAssignment = innerast.KindShorthandPropertyAssignment
212
+ KindSpreadAssignment = innerast.KindSpreadAssignment
213
+ KindSpreadElement = innerast.KindSpreadElement
214
+ KindTaggedTemplateExpression = innerast.KindTaggedTemplateExpression
215
+ KindTemplateExpression = innerast.KindTemplateExpression
216
+ KindTemplateSpan = innerast.KindTemplateSpan
217
+ KindTypeAssertionExpression = innerast.KindTypeAssertionExpression
218
+ KindTypeOfExpression = innerast.KindTypeOfExpression
219
+ KindVoidExpression = innerast.KindVoidExpression
220
+ KindYieldExpression = innerast.KindYieldExpression
221
+ KindRegularExpressionLiteral = innerast.KindRegularExpressionLiteral
222
+ KindSatisfiesExpression = innerast.KindSatisfiesExpression
223
+
224
+ // Keywords / tokens used by rules
225
+ KindThisKeyword = innerast.KindThisKeyword
226
+ KindSuperKeyword = innerast.KindSuperKeyword
227
+ KindEqualsToken = innerast.KindEqualsToken
228
+ KindEqualsEqualsToken = innerast.KindEqualsEqualsToken
229
+ KindEqualsEqualsEqualsToken = innerast.KindEqualsEqualsEqualsToken
230
+ KindExclamationEqualsToken = innerast.KindExclamationEqualsToken
231
+ KindExclamationEqualsEqualsToken = innerast.KindExclamationEqualsEqualsToken
232
+ KindLessThanToken = innerast.KindLessThanToken
233
+ KindGreaterThanToken = innerast.KindGreaterThanToken
234
+ KindLessThanEqualsToken = innerast.KindLessThanEqualsToken
235
+ KindGreaterThanEqualsToken = innerast.KindGreaterThanEqualsToken
236
+ KindPlusToken = innerast.KindPlusToken
237
+ KindPlusEqualsToken = innerast.KindPlusEqualsToken
238
+ KindMinusEqualsToken = innerast.KindMinusEqualsToken
239
+ KindAsteriskToken = innerast.KindAsteriskToken
240
+ KindSlashToken = innerast.KindSlashToken
241
+ KindAmpersandAmpersandToken = innerast.KindAmpersandAmpersandToken
242
+ KindBarBarToken = innerast.KindBarBarToken
243
+ KindQuestionQuestionToken = innerast.KindQuestionQuestionToken
244
+ KindExclamationToken = innerast.KindExclamationToken
245
+ KindTildeToken = innerast.KindTildeToken
246
+ KindInKeyword = innerast.KindInKeyword
247
+ KindInstanceOfKeyword = innerast.KindInstanceOfKeyword
248
+ KindAsKeyword = innerast.KindAsKeyword
249
+ KindPlusPlusToken = innerast.KindPlusPlusToken
250
+ KindMinusMinusToken = innerast.KindMinusMinusToken
251
+ KindDotToken = innerast.KindDotToken
252
+
253
+ // Bitwise / shift / exponent operator tokens — needed by
254
+ // no-bitwise, prefer-exponentiation-operator, etc.
255
+ KindAmpersandToken = innerast.KindAmpersandToken
256
+ KindBarToken = innerast.KindBarToken
257
+ KindCaretToken = innerast.KindCaretToken
258
+ KindLessThanLessThanToken = innerast.KindLessThanLessThanToken
259
+ KindGreaterThanGreaterThanToken = innerast.KindGreaterThanGreaterThanToken
260
+ KindGreaterThanGreaterThanGreaterThanToken = innerast.KindGreaterThanGreaterThanGreaterThanToken
261
+ KindAsteriskAsteriskToken = innerast.KindAsteriskAsteriskToken
262
+ KindAmpersandAmpersandEqualsToken = innerast.KindAmpersandAmpersandEqualsToken
263
+ KindBarBarEqualsToken = innerast.KindBarBarEqualsToken
264
+ KindQuestionQuestionEqualsToken = innerast.KindQuestionQuestionEqualsToken
265
+ KindAsteriskEqualsToken = innerast.KindAsteriskEqualsToken
266
+ KindSlashEqualsToken = innerast.KindSlashEqualsToken
267
+ KindPercentEqualsToken = innerast.KindPercentEqualsToken
268
+ KindAsteriskAsteriskEqualsToken = innerast.KindAsteriskAsteriskEqualsToken
269
+ KindAmpersandEqualsToken = innerast.KindAmpersandEqualsToken
270
+ KindBarEqualsToken = innerast.KindBarEqualsToken
271
+ KindCaretEqualsToken = innerast.KindCaretEqualsToken
272
+ KindLessThanLessThanEqualsToken = innerast.KindLessThanLessThanEqualsToken
273
+ KindGreaterThanGreaterThanEqualsToken = innerast.KindGreaterThanGreaterThanEqualsToken
274
+ KindGreaterThanGreaterThanGreaterThanEqualsToken = innerast.KindGreaterThanGreaterThanGreaterThanEqualsToken
275
+ KindCommaToken = innerast.KindCommaToken
276
+ KindQuestionToken = innerast.KindQuestionToken
277
+
278
+ // Metaprogramming / privacy / async syntax
279
+ KindMetaProperty = innerast.KindMetaProperty
280
+ KindPrivateIdentifier = innerast.KindPrivateIdentifier
281
+ KindClassStaticBlockDeclaration = innerast.KindClassStaticBlockDeclaration
282
+
283
+ // Misc syntax used by suggestion rules
284
+ KindSymbolKeyword = innerast.KindSymbolKeyword
285
+ KindObjectKeyword = innerast.KindObjectKeyword
286
+
287
+ // Modifier-style keywords
288
+ KindAsyncKeyword = innerast.KindAsyncKeyword
289
+ KindAwaitKeyword = innerast.KindAwaitKeyword
290
+ KindReadonlyKeyword = innerast.KindReadonlyKeyword
291
+ KindStaticKeyword = innerast.KindStaticKeyword
292
+ KindAbstractKeyword = innerast.KindAbstractKeyword
293
+ KindExportKeyword = innerast.KindExportKeyword
294
+ KindDeclareKeyword = innerast.KindDeclareKeyword
295
+ KindModuleKeyword = innerast.KindModuleKeyword
296
+ KindTypeKeyword = innerast.KindTypeKeyword
297
+
298
+ // TypeScript-specific kinds used by ts rules
299
+ KindCallSignature = innerast.KindCallSignature
300
+ KindConstructSignature = innerast.KindConstructSignature
301
+ KindTypeQuery = innerast.KindTypeQuery
302
+ KindTypeOperator = innerast.KindTypeOperator
302
303
  )
303
304
 
304
305
  // ---- Comment-directive kind constants ----
305
306
 
306
307
  const (
307
- CommentDirectiveKindIgnore = innerast.CommentDirectiveKindIgnore
308
- CommentDirectiveKindExpectError = innerast.CommentDirectiveKindExpectError
308
+ CommentDirectiveKindIgnore = innerast.CommentDirectiveKindIgnore
309
+ CommentDirectiveKindExpectError = innerast.CommentDirectiveKindExpectError
309
310
  )
310
311
 
311
312
  // ---- Helpers ----
@@ -315,7 +316,7 @@ const (
315
316
  // internally; lint rules need it to detect `var` declarations whose flag
316
317
  // lives on the VariableDeclarationList rather than the declaration itself.
317
318
  func GetCombinedNodeFlags(node *Node) NodeFlags {
318
- return innerast.GetCombinedNodeFlags(node)
319
+ return innerast.GetCombinedNodeFlags(node)
319
320
  }
320
321
 
321
322
  // IsLet reports whether the declaration was introduced by `let` / `using`.
package/shim/ast/shim.go CHANGED
@@ -1,8 +1,8 @@
1
1
  package ast
2
2
 
3
3
  import (
4
- innerast "github.com/microsoft/typescript-go/internal/ast"
5
- _ "unsafe"
4
+ innerast "github.com/microsoft/typescript-go/internal/ast"
5
+ _ "unsafe"
6
6
  )
7
7
 
8
8
  type CallExpression = innerast.CallExpression
@@ -92,114 +92,115 @@ type ParameterDeclaration = innerast.ParameterDeclaration
92
92
  type ParenthesizedTypeNode = innerast.ParenthesizedTypeNode
93
93
 
94
94
  const (
95
- KindCallExpression = innerast.KindCallExpression
96
- KindIdentifier = innerast.KindIdentifier
97
- KindPropertyAccessExpression = innerast.KindPropertyAccessExpression
98
- KindPropertySignature = innerast.KindPropertySignature
99
- KindComputedPropertyName = innerast.KindComputedPropertyName
100
- KindMethodSignature = innerast.KindMethodSignature
101
- KindMethodDeclaration = innerast.KindMethodDeclaration
102
- KindIndexSignature = innerast.KindIndexSignature
103
- KindParameter = innerast.KindParameter
104
- KindStringKeyword = innerast.KindStringKeyword
105
- KindNumberKeyword = innerast.KindNumberKeyword
106
- KindBooleanKeyword = innerast.KindBooleanKeyword
107
- KindBigIntKeyword = innerast.KindBigIntKeyword
108
- KindAnyKeyword = innerast.KindAnyKeyword
109
- KindUnknownKeyword = innerast.KindUnknownKeyword
110
- KindNeverKeyword = innerast.KindNeverKeyword
111
- KindUndefinedKeyword = innerast.KindUndefinedKeyword
112
- KindNullKeyword = innerast.KindNullKeyword
113
- KindVoidKeyword = innerast.KindVoidKeyword
114
- KindTrueKeyword = innerast.KindTrueKeyword
115
- KindFalseKeyword = innerast.KindFalseKeyword
116
- KindStringLiteral = innerast.KindStringLiteral
117
- KindNoSubstitutionTemplateLiteral = innerast.KindNoSubstitutionTemplateLiteral
118
- KindTemplateHead = innerast.KindTemplateHead
119
- KindTemplateMiddle = innerast.KindTemplateMiddle
120
- KindTemplateTail = innerast.KindTemplateTail
121
- KindNumericLiteral = innerast.KindNumericLiteral
122
- KindBigIntLiteral = innerast.KindBigIntLiteral
123
- KindTypeReference = innerast.KindTypeReference
124
- KindFunctionType = innerast.KindFunctionType
125
- KindLiteralType = innerast.KindLiteralType
126
- KindArrayType = innerast.KindArrayType
127
- KindTypeLiteral = innerast.KindTypeLiteral
128
- KindInterfaceDeclaration = innerast.KindInterfaceDeclaration
129
- KindTupleType = innerast.KindTupleType
130
- KindUnionType = innerast.KindUnionType
131
- KindIntersectionType = innerast.KindIntersectionType
132
- KindNamedTupleMember = innerast.KindNamedTupleMember
133
- KindOptionalType = innerast.KindOptionalType
134
- KindParenthesizedType = innerast.KindParenthesizedType
135
- KindRestType = innerast.KindRestType
136
- KindTemplateLiteralType = innerast.KindTemplateLiteralType
137
- KindTemplateLiteralTypeSpan = innerast.KindTemplateLiteralTypeSpan
138
- KindPrefixUnaryExpression = innerast.KindPrefixUnaryExpression
139
- KindQualifiedName = innerast.KindQualifiedName
140
- KindTypeAliasDeclaration = innerast.KindTypeAliasDeclaration
141
- KindTypeParameter = innerast.KindTypeParameter
142
- KindImportSpecifier = innerast.KindImportSpecifier
143
- KindImportDeclaration = innerast.KindImportDeclaration
144
- KindNamedImports = innerast.KindNamedImports
145
- KindNamespaceImport = innerast.KindNamespaceImport
146
- KindExportSpecifier = innerast.KindExportSpecifier
147
- KindModuleBlock = innerast.KindModuleBlock
148
- KindModuleDeclaration = innerast.KindModuleDeclaration
149
- KindFunctionDeclaration = innerast.KindFunctionDeclaration
150
- KindMinusToken = innerast.KindMinusToken
151
- KindQuestionDotToken = innerast.KindQuestionDotToken
152
- KindAssertsKeyword = innerast.KindAssertsKeyword
153
- KindEqualsGreaterThanToken = innerast.KindEqualsGreaterThanToken
154
-
155
- NodeFlagsOptionalChain = innerast.NodeFlagsOptionalChain
156
-
157
- TokenFlagsNone = innerast.TokenFlagsNone
158
-
159
- SymbolFlagsOptional = innerast.SymbolFlagsOptional
160
- SymbolFlagsAlias = innerast.SymbolFlagsAlias
161
- SymbolFlagsType = innerast.SymbolFlagsType
162
- SymbolFlagsNamespace = innerast.SymbolFlagsNamespace
163
-
164
- ModifierFlagsPrivate = innerast.ModifierFlagsPrivate
165
- ModifierFlagsProtected = innerast.ModifierFlagsProtected
166
- ModifierFlagsReadonly = innerast.ModifierFlagsReadonly
95
+ KindCallExpression = innerast.KindCallExpression
96
+ KindIdentifier = innerast.KindIdentifier
97
+ KindMultiLineCommentTrivia = innerast.KindMultiLineCommentTrivia
98
+ KindPropertyAccessExpression = innerast.KindPropertyAccessExpression
99
+ KindPropertySignature = innerast.KindPropertySignature
100
+ KindComputedPropertyName = innerast.KindComputedPropertyName
101
+ KindMethodSignature = innerast.KindMethodSignature
102
+ KindMethodDeclaration = innerast.KindMethodDeclaration
103
+ KindIndexSignature = innerast.KindIndexSignature
104
+ KindParameter = innerast.KindParameter
105
+ KindStringKeyword = innerast.KindStringKeyword
106
+ KindNumberKeyword = innerast.KindNumberKeyword
107
+ KindBooleanKeyword = innerast.KindBooleanKeyword
108
+ KindBigIntKeyword = innerast.KindBigIntKeyword
109
+ KindAnyKeyword = innerast.KindAnyKeyword
110
+ KindUnknownKeyword = innerast.KindUnknownKeyword
111
+ KindNeverKeyword = innerast.KindNeverKeyword
112
+ KindUndefinedKeyword = innerast.KindUndefinedKeyword
113
+ KindNullKeyword = innerast.KindNullKeyword
114
+ KindVoidKeyword = innerast.KindVoidKeyword
115
+ KindTrueKeyword = innerast.KindTrueKeyword
116
+ KindFalseKeyword = innerast.KindFalseKeyword
117
+ KindStringLiteral = innerast.KindStringLiteral
118
+ KindNoSubstitutionTemplateLiteral = innerast.KindNoSubstitutionTemplateLiteral
119
+ KindTemplateHead = innerast.KindTemplateHead
120
+ KindTemplateMiddle = innerast.KindTemplateMiddle
121
+ KindTemplateTail = innerast.KindTemplateTail
122
+ KindNumericLiteral = innerast.KindNumericLiteral
123
+ KindBigIntLiteral = innerast.KindBigIntLiteral
124
+ KindTypeReference = innerast.KindTypeReference
125
+ KindFunctionType = innerast.KindFunctionType
126
+ KindLiteralType = innerast.KindLiteralType
127
+ KindArrayType = innerast.KindArrayType
128
+ KindTypeLiteral = innerast.KindTypeLiteral
129
+ KindInterfaceDeclaration = innerast.KindInterfaceDeclaration
130
+ KindTupleType = innerast.KindTupleType
131
+ KindUnionType = innerast.KindUnionType
132
+ KindIntersectionType = innerast.KindIntersectionType
133
+ KindNamedTupleMember = innerast.KindNamedTupleMember
134
+ KindOptionalType = innerast.KindOptionalType
135
+ KindParenthesizedType = innerast.KindParenthesizedType
136
+ KindRestType = innerast.KindRestType
137
+ KindTemplateLiteralType = innerast.KindTemplateLiteralType
138
+ KindTemplateLiteralTypeSpan = innerast.KindTemplateLiteralTypeSpan
139
+ KindPrefixUnaryExpression = innerast.KindPrefixUnaryExpression
140
+ KindQualifiedName = innerast.KindQualifiedName
141
+ KindTypeAliasDeclaration = innerast.KindTypeAliasDeclaration
142
+ KindTypeParameter = innerast.KindTypeParameter
143
+ KindImportSpecifier = innerast.KindImportSpecifier
144
+ KindImportDeclaration = innerast.KindImportDeclaration
145
+ KindNamedImports = innerast.KindNamedImports
146
+ KindNamespaceImport = innerast.KindNamespaceImport
147
+ KindExportSpecifier = innerast.KindExportSpecifier
148
+ KindModuleBlock = innerast.KindModuleBlock
149
+ KindModuleDeclaration = innerast.KindModuleDeclaration
150
+ KindFunctionDeclaration = innerast.KindFunctionDeclaration
151
+ KindMinusToken = innerast.KindMinusToken
152
+ KindQuestionDotToken = innerast.KindQuestionDotToken
153
+ KindAssertsKeyword = innerast.KindAssertsKeyword
154
+ KindEqualsGreaterThanToken = innerast.KindEqualsGreaterThanToken
155
+
156
+ NodeFlagsOptionalChain = innerast.NodeFlagsOptionalChain
157
+
158
+ TokenFlagsNone = innerast.TokenFlagsNone
159
+
160
+ SymbolFlagsOptional = innerast.SymbolFlagsOptional
161
+ SymbolFlagsAlias = innerast.SymbolFlagsAlias
162
+ SymbolFlagsType = innerast.SymbolFlagsType
163
+ SymbolFlagsNamespace = innerast.SymbolFlagsNamespace
164
+
165
+ ModifierFlagsPrivate = innerast.ModifierFlagsPrivate
166
+ ModifierFlagsProtected = innerast.ModifierFlagsProtected
167
+ ModifierFlagsReadonly = innerast.ModifierFlagsReadonly
167
168
  )
168
169
 
169
170
  func NewNodeFactory(hooks NodeFactoryHooks) *NodeFactory {
170
- return innerast.NewNodeFactory(hooks)
171
+ return innerast.NewNodeFactory(hooks)
171
172
  }
172
173
 
173
174
  func NewNodeVisitor(visit func(node *Node) *Node, factory *NodeFactory, hooks NodeVisitorHooks) *NodeVisitor {
174
- return innerast.NewNodeVisitor(visit, factory, hooks)
175
+ return innerast.NewNodeVisitor(visit, factory, hooks)
175
176
  }
176
177
 
177
178
  func IsFunctionLike(node *Node) bool {
178
- return innerast.IsFunctionLike(node)
179
+ return innerast.IsFunctionLike(node)
179
180
  }
180
181
 
181
182
  func IsPropertyAssignment(node *Node) bool {
182
- return innerast.IsPropertyAssignment(node)
183
+ return innerast.IsPropertyAssignment(node)
183
184
  }
184
185
 
185
186
  func IsPropertyDeclaration(node *Node) bool {
186
- return innerast.IsPropertyDeclaration(node)
187
+ return innerast.IsPropertyDeclaration(node)
187
188
  }
188
189
 
189
190
  func IsModuleBlock(node *Node) bool {
190
- return innerast.IsModuleBlock(node)
191
+ return innerast.IsModuleBlock(node)
191
192
  }
192
193
 
193
194
  func IsStringLiteral(node *Node) bool {
194
- return innerast.IsStringLiteral(node)
195
+ return innerast.IsStringLiteral(node)
195
196
  }
196
197
 
197
198
  func IsPropertyAccessExpression(node *Node) bool {
198
- return innerast.IsPropertyAccessExpression(node)
199
+ return innerast.IsPropertyAccessExpression(node)
199
200
  }
200
201
 
201
202
  func IsElementAccessExpression(node *Node) bool {
202
- return innerast.IsElementAccessExpression(node)
203
+ return innerast.IsElementAccessExpression(node)
203
204
  }
204
205
 
205
206
  //go:linkname GetSourceFileOfNode github.com/microsoft/typescript-go/internal/ast.GetSourceFileOfNode
@@ -1,4 +1,3 @@
1
-
2
1
  // Code generated by packages/ttsc/tools/gen_shims. DO NOT EDIT.
3
2
 
4
3
  package bundled
@@ -8,12 +7,17 @@ import "github.com/microsoft/typescript-go/internal/vfs"
8
7
  import _ "unsafe"
9
8
 
10
9
  const Embedded = bundled.Embedded
10
+
11
11
  //go:linkname IsBundled github.com/microsoft/typescript-go/internal/bundled.IsBundled
12
12
  func IsBundled(path string) bool
13
+
13
14
  var LibNames = bundled.LibNames
15
+
14
16
  //go:linkname LibPath github.com/microsoft/typescript-go/internal/bundled.LibPath
15
17
  func LibPath() string
18
+
16
19
  //go:linkname TestingLibPath github.com/microsoft/typescript-go/internal/bundled.TestingLibPath
17
20
  func TestingLibPath() string
21
+
18
22
  //go:linkname WrapFS github.com/microsoft/typescript-go/internal/bundled.WrapFS
19
23
  func WrapFS(fs vfs.FS) vfs.FS