@idlizer/arktscgen 2.1.7 → 2.1.9-arktscgen-5

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 (328) hide show
  1. package/build/libarkts-copy/generator/options.json5 +34 -0
  2. package/build/libarkts-copy/native/meson.build +128 -75
  3. package/build/libarkts-copy/native/meson_options.txt +6 -0
  4. package/build/libarkts-copy/native/src/bridges.cc +271 -8
  5. package/build/libarkts-copy/native/src/common.cc +168 -47
  6. package/build/libarkts-copy/native/src/common.h +53 -8
  7. package/build/libarkts-copy/native/src/generated/bridges.cc +2625 -319
  8. package/build/libarkts-copy/package.json +31 -17
  9. package/build/libarkts-copy/src/Es2pandaNativeModule.ts +98 -4
  10. package/build/libarkts-copy/src/arkts-api/AbstractVisitor.ts +1 -1
  11. package/build/libarkts-copy/src/arkts-api/ChainExpressionFilter.ts +78 -0
  12. package/build/libarkts-copy/src/arkts-api/CheckedBackFilter.ts +86 -8
  13. package/build/libarkts-copy/src/arkts-api/CompileWithCache.ts +193 -0
  14. package/build/libarkts-copy/src/arkts-api/ImportStorage.ts +78 -0
  15. package/build/libarkts-copy/src/arkts-api/InferVoidReturnType.ts +89 -0
  16. package/build/libarkts-copy/src/arkts-api/ProgramProvider.ts +50 -0
  17. package/build/libarkts-copy/src/arkts-api/SetBaseOverloads.ts +10 -17
  18. package/build/libarkts-copy/src/arkts-api/class-by-peer.ts +2 -3
  19. package/build/libarkts-copy/src/arkts-api/factory/nodeFactory.ts +18 -6
  20. package/build/libarkts-copy/src/arkts-api/index.ts +10 -1
  21. package/build/libarkts-copy/src/arkts-api/node-cache.ts +8 -4
  22. package/build/libarkts-copy/src/arkts-api/node-utilities/AnnotationUsage.ts +29 -0
  23. package/build/libarkts-copy/src/arkts-api/node-utilities/ArkTsConfig.ts +25 -0
  24. package/build/libarkts-copy/src/arkts-api/node-utilities/ArrayExpression.ts +1 -1
  25. package/build/libarkts-copy/src/arkts-api/node-utilities/BlockStatement.ts +29 -0
  26. package/build/libarkts-copy/src/arkts-api/node-utilities/CallExpression.ts +2 -2
  27. package/build/libarkts-copy/src/arkts-api/node-utilities/ClassDeclaration.ts +54 -0
  28. package/build/libarkts-copy/src/arkts-api/node-utilities/ClassDefinition.ts +1 -1
  29. package/build/libarkts-copy/src/arkts-api/node-utilities/ClassProperty.ts +3 -3
  30. package/build/libarkts-copy/src/arkts-api/node-utilities/ETSFunctionType.ts +2 -2
  31. package/build/libarkts-copy/src/arkts-api/node-utilities/ETSImportDeclaration.ts +3 -33
  32. package/build/libarkts-copy/src/arkts-api/node-utilities/ETSParameterExpression.ts +3 -9
  33. package/build/libarkts-copy/src/arkts-api/node-utilities/ETSStructDeclaration.ts +1 -1
  34. package/build/libarkts-copy/src/arkts-api/node-utilities/ETSTuple.ts +1 -1
  35. package/build/libarkts-copy/src/arkts-api/node-utilities/MemberExpression.ts +1 -1
  36. package/build/libarkts-copy/src/arkts-api/node-utilities/MethodDefinition.ts +2 -2
  37. package/build/libarkts-copy/src/arkts-api/node-utilities/NumberLiteral.ts +2 -2
  38. package/build/libarkts-copy/src/arkts-api/node-utilities/ObjectExpression.ts +1 -1
  39. package/build/libarkts-copy/src/arkts-api/node-utilities/Program.ts +40 -0
  40. package/build/libarkts-copy/src/arkts-api/node-utilities/TSInterfaceDeclaration.ts +2 -2
  41. package/build/libarkts-copy/src/arkts-api/node-utilities/TSTypeParameter.ts +1 -1
  42. package/build/libarkts-copy/src/arkts-api/node-utilities/TSTypeReferencePart.ts +1 -1
  43. package/build/libarkts-copy/src/arkts-api/node-utilities/VariableDeclaration.ts +1 -1
  44. package/build/libarkts-copy/src/arkts-api/node-utilities/VariableDeclarator.ts +1 -1
  45. package/build/libarkts-copy/src/arkts-api/peers/ArktsObject.ts +3 -1
  46. package/build/libarkts-copy/src/arkts-api/peers/AstNode.ts +80 -15
  47. package/build/libarkts-copy/src/arkts-api/peers/Config.ts +8 -1
  48. package/build/libarkts-copy/src/arkts-api/peers/Context.ts +71 -4
  49. package/build/libarkts-copy/src/arkts-api/peers/{Program.ts → ExternalSource.ts} +2 -22
  50. package/build/libarkts-copy/src/arkts-api/peers/Options.ts +34 -0
  51. package/build/libarkts-copy/src/arkts-api/plugins.ts +26 -12
  52. package/build/libarkts-copy/src/arkts-api/static/global.ts +10 -4
  53. package/build/libarkts-copy/src/arkts-api/static/profiler.ts +180 -23
  54. package/build/libarkts-copy/src/arkts-api/utilities/private.ts +22 -24
  55. package/build/libarkts-copy/src/arkts-api/utilities/public.ts +54 -12
  56. package/build/libarkts-copy/src/arkts-api/visitor.ts +32 -37
  57. package/build/libarkts-copy/src/arkts-api/wrapper-compat.ts +32 -0
  58. package/build/libarkts-copy/src/checkSdk.ts +25 -0
  59. package/build/libarkts-copy/src/generated/Es2pandaEnums.ts +450 -442
  60. package/build/libarkts-copy/src/generated/Es2pandaNativeModule.ts +769 -63
  61. package/build/libarkts-copy/src/generated/factory.ts +12 -15
  62. package/build/libarkts-copy/src/generated/index.ts +10 -3
  63. package/build/libarkts-copy/src/generated/peers/AnnotatedAstNode.ts +7 -1
  64. package/build/libarkts-copy/src/generated/peers/AnnotatedExpression.ts +7 -1
  65. package/build/libarkts-copy/src/generated/peers/AnnotatedStatement.ts +7 -1
  66. package/build/libarkts-copy/src/generated/peers/AnnotationDeclaration.ts +64 -6
  67. package/build/libarkts-copy/src/generated/peers/AnnotationUsage.ts +16 -4
  68. package/build/libarkts-copy/src/generated/peers/ArkTsConfig.ts +67 -0
  69. package/build/libarkts-copy/src/generated/peers/ArrayExpression.ts +17 -5
  70. package/build/libarkts-copy/src/generated/peers/ArrowFunctionExpression.ts +46 -6
  71. package/build/libarkts-copy/src/generated/peers/AssertStatement.ts +13 -3
  72. package/build/libarkts-copy/src/generated/peers/AssignmentExpression.ts +17 -5
  73. package/build/libarkts-copy/src/generated/peers/AstDumper.ts +7 -1
  74. package/build/libarkts-copy/src/generated/peers/AstVerifier.ts +7 -1
  75. package/build/libarkts-copy/src/generated/peers/AstVisitor.ts +7 -1
  76. package/build/libarkts-copy/src/generated/peers/AwaitExpression.ts +13 -3
  77. package/build/libarkts-copy/src/generated/peers/BigIntLiteral.ts +13 -3
  78. package/build/libarkts-copy/src/generated/peers/BinaryExpression.ts +13 -3
  79. package/build/libarkts-copy/src/generated/peers/BindingProps.ts +7 -1
  80. package/build/libarkts-copy/src/generated/peers/BlockExpression.ts +14 -4
  81. package/build/libarkts-copy/src/generated/peers/BlockStatement.ts +30 -7
  82. package/build/libarkts-copy/src/generated/peers/BooleanLiteral.ts +13 -3
  83. package/build/libarkts-copy/src/generated/peers/BreakStatement.ts +16 -4
  84. package/build/libarkts-copy/src/generated/peers/CallExpression.ts +24 -3
  85. package/build/libarkts-copy/src/generated/peers/CatchClause.ts +16 -4
  86. package/build/libarkts-copy/src/generated/peers/ChainExpression.ts +13 -3
  87. package/build/libarkts-copy/src/generated/peers/CharLiteral.ts +13 -3
  88. package/build/libarkts-copy/src/generated/peers/ClassDeclaration.ts +37 -4
  89. package/build/libarkts-copy/src/generated/peers/ClassDefinition.ts +136 -42
  90. package/build/libarkts-copy/src/generated/peers/ClassElement.ts +28 -4
  91. package/build/libarkts-copy/src/generated/peers/ClassExpression.ts +13 -3
  92. package/build/libarkts-copy/src/generated/peers/ClassProperty.ts +43 -5
  93. package/build/libarkts-copy/src/generated/peers/ClassStaticBlock.ts +13 -3
  94. package/build/libarkts-copy/src/generated/peers/CodeGen.ts +7 -1
  95. package/build/libarkts-copy/src/generated/peers/ConditionalExpression.ts +13 -3
  96. package/build/libarkts-copy/src/generated/peers/ContinueStatement.ts +16 -4
  97. package/build/libarkts-copy/src/generated/peers/DebuggerStatement.ts +13 -3
  98. package/build/libarkts-copy/src/generated/peers/Declaration.ts +7 -1
  99. package/build/libarkts-copy/src/generated/peers/Decorator.ts +13 -3
  100. package/build/libarkts-copy/src/generated/peers/{OverloadInfo.ts → DiagnosticInfo.ts} +8 -2
  101. package/build/libarkts-copy/src/generated/peers/DirectEvalExpression.ts +13 -3
  102. package/build/libarkts-copy/src/generated/peers/DoWhileStatement.ts +13 -3
  103. package/build/libarkts-copy/src/generated/peers/DynamicImportData.ts +7 -1
  104. package/build/libarkts-copy/src/generated/peers/ETSClassLiteral.ts +14 -4
  105. package/build/libarkts-copy/src/generated/peers/ETSFunctionType.ts +14 -4
  106. package/build/libarkts-copy/src/generated/peers/ETSImportDeclaration.ts +20 -5
  107. package/build/libarkts-copy/src/generated/peers/ETSKeyofType.ts +14 -4
  108. package/build/libarkts-copy/src/generated/peers/ETSModule.ts +63 -4
  109. package/build/libarkts-copy/src/generated/peers/ETSNewArrayInstanceExpression.ts +14 -4
  110. package/build/libarkts-copy/src/generated/peers/ETSNewClassInstanceExpression.ts +17 -5
  111. package/build/libarkts-copy/src/generated/peers/ETSNewMultiDimArrayInstanceExpression.ts +17 -5
  112. package/build/libarkts-copy/src/generated/peers/ETSNullType.ts +14 -4
  113. package/build/libarkts-copy/src/generated/peers/ETSPackageDeclaration.ts +14 -4
  114. package/build/libarkts-copy/src/generated/peers/ETSParameterExpression.ts +54 -12
  115. package/build/libarkts-copy/src/generated/peers/ETSPrimitiveType.ts +14 -4
  116. package/build/libarkts-copy/src/generated/peers/ETSReExportDeclaration.ts +7 -1
  117. package/build/libarkts-copy/src/generated/peers/ETSStringLiteralType.ts +14 -4
  118. package/build/libarkts-copy/src/generated/peers/ETSStructDeclaration.ts +14 -4
  119. package/build/libarkts-copy/src/generated/peers/ETSTuple.ts +26 -8
  120. package/build/libarkts-copy/src/generated/peers/ETSTypeReference.ts +14 -4
  121. package/build/libarkts-copy/src/generated/peers/ETSTypeReferencePart.ts +17 -5
  122. package/build/libarkts-copy/src/generated/peers/ETSUndefinedType.ts +14 -4
  123. package/build/libarkts-copy/src/generated/peers/ETSUnionType.ts +19 -4
  124. package/build/libarkts-copy/src/generated/peers/ETSWildcardType.ts +14 -4
  125. package/build/libarkts-copy/src/generated/peers/EmptyStatement.ts +22 -4
  126. package/build/libarkts-copy/src/generated/peers/ErrorLogger.ts +7 -1
  127. package/build/libarkts-copy/src/generated/peers/ExportAllDeclaration.ts +13 -3
  128. package/build/libarkts-copy/src/generated/peers/ExportDefaultDeclaration.ts +13 -3
  129. package/build/libarkts-copy/src/generated/peers/ExportNamedDeclaration.ts +30 -7
  130. package/build/libarkts-copy/src/generated/peers/ExportSpecifier.ts +30 -3
  131. package/build/libarkts-copy/src/generated/peers/Expression.ts +7 -1
  132. package/build/libarkts-copy/src/generated/peers/ExpressionStatement.ts +13 -3
  133. package/build/libarkts-copy/src/generated/peers/ForInStatement.ts +13 -3
  134. package/build/libarkts-copy/src/generated/peers/ForOfStatement.ts +13 -3
  135. package/build/libarkts-copy/src/generated/peers/ForUpdateStatement.ts +10 -2
  136. package/build/libarkts-copy/src/generated/peers/FunctionDecl.ts +7 -1
  137. package/build/libarkts-copy/src/generated/peers/FunctionDeclaration.ts +50 -6
  138. package/build/libarkts-copy/src/generated/peers/FunctionExpression.ts +16 -4
  139. package/build/libarkts-copy/src/generated/peers/FunctionSignature.ts +7 -1
  140. package/build/libarkts-copy/src/generated/peers/IRNode.ts +7 -1
  141. package/build/libarkts-copy/src/generated/peers/Identifier.ts +24 -5
  142. package/build/libarkts-copy/src/generated/peers/IfStatement.ts +18 -3
  143. package/build/libarkts-copy/src/generated/peers/ImportDeclaration.ts +32 -4
  144. package/build/libarkts-copy/src/generated/peers/ImportDefaultSpecifier.ts +13 -3
  145. package/build/libarkts-copy/src/generated/peers/ImportExpression.ts +13 -3
  146. package/build/libarkts-copy/src/generated/peers/ImportNamespaceSpecifier.ts +13 -3
  147. package/build/libarkts-copy/src/generated/peers/ImportSource.ts +7 -1
  148. package/build/libarkts-copy/src/generated/peers/ImportSpecifier.ts +13 -3
  149. package/build/libarkts-copy/src/generated/peers/IndexInfo.ts +7 -1
  150. package/build/libarkts-copy/src/generated/peers/InterfaceDecl.ts +7 -1
  151. package/build/libarkts-copy/src/generated/peers/LabelPair.ts +7 -1
  152. package/build/libarkts-copy/src/generated/peers/LabelledStatement.ts +13 -3
  153. package/build/libarkts-copy/src/generated/peers/Literal.ts +15 -1
  154. package/build/libarkts-copy/src/generated/peers/LoopStatement.ts +7 -1
  155. package/build/libarkts-copy/src/generated/peers/MaybeOptionalExpression.ts +7 -1
  156. package/build/libarkts-copy/src/generated/peers/MemberExpression.ts +13 -3
  157. package/build/libarkts-copy/src/generated/peers/MetaProperty.ts +13 -3
  158. package/build/libarkts-copy/src/generated/peers/MethodDefinition.ts +30 -10
  159. package/build/libarkts-copy/src/generated/peers/NamedType.ts +13 -3
  160. package/build/libarkts-copy/src/generated/peers/NewExpression.ts +13 -3
  161. package/build/libarkts-copy/src/generated/peers/NullLiteral.ts +13 -3
  162. package/build/libarkts-copy/src/generated/peers/NumberLiteral.ts +25 -9
  163. package/build/libarkts-copy/src/generated/peers/ObjectDescriptor.ts +7 -1
  164. package/build/libarkts-copy/src/generated/peers/ObjectExpression.ts +14 -4
  165. package/build/libarkts-copy/src/generated/peers/OmittedExpression.ts +13 -3
  166. package/build/libarkts-copy/src/generated/peers/OpaqueTypeNode.ts +14 -4
  167. package/build/libarkts-copy/src/generated/peers/PrefixAssertionExpression.ts +13 -3
  168. package/build/libarkts-copy/src/generated/peers/Program.ts +189 -0
  169. package/build/libarkts-copy/src/generated/peers/Property.ts +16 -4
  170. package/build/libarkts-copy/src/generated/peers/RegExpLiteral.ts +13 -3
  171. package/build/libarkts-copy/src/generated/peers/ReturnStatement.ts +16 -4
  172. package/build/libarkts-copy/src/generated/peers/ScopeFindResult.ts +7 -1
  173. package/build/libarkts-copy/src/generated/peers/ScriptFunction.ts +81 -10
  174. package/build/libarkts-copy/src/generated/peers/ScriptFunctionData.ts +7 -1
  175. package/build/libarkts-copy/src/generated/peers/SequenceExpression.ts +13 -3
  176. package/build/libarkts-copy/src/generated/peers/SignatureInfo.ts +7 -1
  177. package/build/libarkts-copy/src/generated/peers/SourcePosition.ts +7 -1
  178. package/build/libarkts-copy/src/generated/peers/SourceRange.ts +7 -1
  179. package/build/libarkts-copy/src/generated/peers/SpreadElement.ts +14 -4
  180. package/build/libarkts-copy/src/generated/peers/SrcDumper.ts +46 -9
  181. package/build/libarkts-copy/src/generated/peers/Statement.ts +7 -1
  182. package/build/libarkts-copy/src/generated/peers/StringLiteral.ts +16 -4
  183. package/build/libarkts-copy/src/generated/peers/{ETSDynamicFunctionType.ts → SuggestionInfo.ts} +7 -5
  184. package/build/libarkts-copy/src/generated/peers/SuperExpression.ts +14 -4
  185. package/build/libarkts-copy/src/generated/peers/SwitchCaseStatement.ts +14 -4
  186. package/build/libarkts-copy/src/generated/peers/SwitchStatement.ts +14 -4
  187. package/build/libarkts-copy/src/generated/peers/TSAnyKeyword.ts +14 -4
  188. package/build/libarkts-copy/src/generated/peers/TSArrayType.ts +14 -4
  189. package/build/libarkts-copy/src/generated/peers/TSAsExpression.ts +14 -4
  190. package/build/libarkts-copy/src/generated/peers/TSBigintKeyword.ts +14 -4
  191. package/build/libarkts-copy/src/generated/peers/TSBooleanKeyword.ts +14 -4
  192. package/build/libarkts-copy/src/generated/peers/TSClassImplements.ts +17 -5
  193. package/build/libarkts-copy/src/generated/peers/TSConditionalType.ts +14 -4
  194. package/build/libarkts-copy/src/generated/peers/TSConstructorType.ts +14 -4
  195. package/build/libarkts-copy/src/generated/peers/TSEnumDeclaration.ts +52 -6
  196. package/build/libarkts-copy/src/generated/peers/TSEnumMember.ts +17 -5
  197. package/build/libarkts-copy/src/generated/peers/TSExternalModuleReference.ts +14 -4
  198. package/build/libarkts-copy/src/generated/peers/TSFunctionType.ts +14 -4
  199. package/build/libarkts-copy/src/generated/peers/TSImportEqualsDeclaration.ts +14 -4
  200. package/build/libarkts-copy/src/generated/peers/TSImportType.ts +14 -4
  201. package/build/libarkts-copy/src/generated/peers/TSIndexSignature.ts +14 -4
  202. package/build/libarkts-copy/src/generated/peers/TSIndexedAccessType.ts +14 -4
  203. package/build/libarkts-copy/src/generated/peers/TSInferType.ts +14 -4
  204. package/build/libarkts-copy/src/generated/peers/TSInterfaceBody.ts +14 -4
  205. package/build/libarkts-copy/src/generated/peers/TSInterfaceDeclaration.ts +82 -8
  206. package/build/libarkts-copy/src/generated/peers/TSInterfaceHeritage.ts +14 -4
  207. package/build/libarkts-copy/src/generated/peers/TSIntersectionType.ts +14 -4
  208. package/build/libarkts-copy/src/generated/peers/TSLiteralType.ts +14 -4
  209. package/build/libarkts-copy/src/generated/peers/TSMappedType.ts +14 -4
  210. package/build/libarkts-copy/src/generated/peers/TSMethodSignature.ts +14 -4
  211. package/build/libarkts-copy/src/generated/peers/TSModuleBlock.ts +14 -4
  212. package/build/libarkts-copy/src/generated/peers/TSModuleDeclaration.ts +14 -4
  213. package/build/libarkts-copy/src/generated/peers/TSNamedTupleMember.ts +14 -4
  214. package/build/libarkts-copy/src/generated/peers/TSNeverKeyword.ts +14 -4
  215. package/build/libarkts-copy/src/generated/peers/TSNonNullExpression.ts +14 -4
  216. package/build/libarkts-copy/src/generated/peers/TSNullKeyword.ts +14 -4
  217. package/build/libarkts-copy/src/generated/peers/TSNumberKeyword.ts +14 -4
  218. package/build/libarkts-copy/src/generated/peers/TSObjectKeyword.ts +14 -4
  219. package/build/libarkts-copy/src/generated/peers/TSParameterProperty.ts +14 -4
  220. package/build/libarkts-copy/src/generated/peers/TSParenthesizedType.ts +14 -4
  221. package/build/libarkts-copy/src/generated/peers/TSPropertySignature.ts +14 -4
  222. package/build/libarkts-copy/src/generated/peers/TSQualifiedName.ts +14 -4
  223. package/build/libarkts-copy/src/generated/peers/TSSignatureDeclaration.ts +14 -4
  224. package/build/libarkts-copy/src/generated/peers/TSStringKeyword.ts +14 -4
  225. package/build/libarkts-copy/src/generated/peers/TSThisType.ts +14 -4
  226. package/build/libarkts-copy/src/generated/peers/TSTupleType.ts +14 -4
  227. package/build/libarkts-copy/src/generated/peers/TSTypeAliasDeclaration.ts +59 -6
  228. package/build/libarkts-copy/src/generated/peers/TSTypeAssertion.ts +14 -4
  229. package/build/libarkts-copy/src/generated/peers/TSTypeLiteral.ts +14 -4
  230. package/build/libarkts-copy/src/generated/peers/TSTypeOperator.ts +14 -4
  231. package/build/libarkts-copy/src/generated/peers/TSTypeParameter.ts +47 -7
  232. package/build/libarkts-copy/src/generated/peers/TSTypeParameterDeclaration.ts +19 -4
  233. package/build/libarkts-copy/src/generated/peers/TSTypeParameterInstantiation.ts +14 -4
  234. package/build/libarkts-copy/src/generated/peers/TSTypePredicate.ts +14 -4
  235. package/build/libarkts-copy/src/generated/peers/TSTypeQuery.ts +14 -4
  236. package/build/libarkts-copy/src/generated/peers/TSTypeReference.ts +14 -4
  237. package/build/libarkts-copy/src/generated/peers/TSUndefinedKeyword.ts +14 -4
  238. package/build/libarkts-copy/src/generated/peers/TSUnionType.ts +14 -4
  239. package/build/libarkts-copy/src/generated/peers/TSUnknownKeyword.ts +14 -4
  240. package/build/libarkts-copy/src/generated/peers/TSVoidKeyword.ts +14 -4
  241. package/build/libarkts-copy/src/generated/peers/TaggedTemplateExpression.ts +14 -4
  242. package/build/libarkts-copy/src/generated/peers/TemplateElement.ts +17 -5
  243. package/build/libarkts-copy/src/generated/peers/TemplateLiteral.ts +14 -4
  244. package/build/libarkts-copy/src/generated/peers/ThisExpression.ts +14 -4
  245. package/build/libarkts-copy/src/generated/peers/ThrowStatement.ts +14 -4
  246. package/build/libarkts-copy/src/generated/peers/TryStatement.ts +17 -5
  247. package/build/libarkts-copy/src/generated/peers/TypeNode.ts +37 -3
  248. package/build/libarkts-copy/src/generated/peers/TypedAstNode.ts +7 -1
  249. package/build/libarkts-copy/src/generated/peers/TypedStatement.ts +7 -1
  250. package/build/libarkts-copy/src/generated/peers/TypeofExpression.ts +14 -4
  251. package/build/libarkts-copy/src/generated/peers/UnaryExpression.ts +19 -4
  252. package/build/libarkts-copy/src/generated/peers/UndefinedLiteral.ts +13 -3
  253. package/build/libarkts-copy/src/generated/peers/UpdateExpression.ts +14 -4
  254. package/build/libarkts-copy/src/generated/peers/VReg.ts +7 -1
  255. package/build/libarkts-copy/src/generated/peers/ValidationInfo.ts +7 -1
  256. package/build/libarkts-copy/src/generated/peers/VariableDeclaration.ts +52 -8
  257. package/build/libarkts-copy/src/generated/peers/VariableDeclarator.ts +17 -5
  258. package/build/libarkts-copy/src/generated/peers/VerificationContext.ts +7 -1
  259. package/build/libarkts-copy/src/generated/peers/VerifierMessage.ts +7 -1
  260. package/build/libarkts-copy/src/generated/peers/WhileStatement.ts +19 -4
  261. package/build/libarkts-copy/src/generated/peers/YieldExpression.ts +14 -4
  262. package/build/libarkts-copy/src/index.ts +13 -1
  263. package/build/libarkts-copy/src/plugin-utils.ts +117 -0
  264. package/build/libarkts-copy/src/utils.ts +17 -28
  265. package/build/libarkts-copy/src/wrapper-compat/README.md +16 -0
  266. package/build/libarkts-copy/src/wrapper-compat/arkts-api/class-by-peer.ts +46 -0
  267. package/build/libarkts-copy/src/wrapper-compat/arkts-api/factory/nodeFactory.ts +454 -0
  268. package/build/libarkts-copy/src/wrapper-compat/arkts-api/factory/nodeTests.ts +99 -0
  269. package/build/libarkts-copy/src/wrapper-compat/arkts-api/index.ts +88 -0
  270. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/ArrayExpression.ts +38 -0
  271. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/ArrowFunctionExpression.ts +35 -0
  272. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/AssignmentExpression.ts +38 -0
  273. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/BlockStatement.ts +27 -0
  274. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/CallExpression.ts +45 -0
  275. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/ClassDeclaration.ts +27 -0
  276. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/ClassDefinition.ts +73 -0
  277. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/ClassProperty.ts +51 -0
  278. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/ETSFunctionType.ts +42 -0
  279. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/ETSImportDeclaration.ts +39 -0
  280. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/ETSParameterExpression.ts +43 -0
  281. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/ExpressionStatement.ts +28 -0
  282. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/FunctionDeclaration.ts +37 -0
  283. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/FunctionExpression.ts +28 -0
  284. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/IfStatement.ts +37 -0
  285. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/MemberExpression.ts +42 -0
  286. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/MethodDefinition.ts +46 -0
  287. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/NumberLiteral.ts +30 -0
  288. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/ObjectExpression.ts +37 -0
  289. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/Property.ts +27 -0
  290. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/ScriptFunction.ts +46 -0
  291. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/StructDeclaration.ts +28 -0
  292. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/TSInterfaceDeclaration.ts +47 -0
  293. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/TSTypeAliasDeclaration.ts +40 -0
  294. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/TSTypeParameter.ts +36 -0
  295. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/TryStatement.ts +41 -0
  296. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/VariableDeclaration.ts +42 -0
  297. package/build/libarkts-copy/src/wrapper-compat/arkts-api/node-utilities/VariableDeclarator.ts +39 -0
  298. package/build/libarkts-copy/src/wrapper-compat/arkts-api/peers/ArktsObject.ts +45 -0
  299. package/build/libarkts-copy/src/wrapper-compat/arkts-api/peers/AstNode.ts +26 -0
  300. package/build/libarkts-copy/src/wrapper-compat/arkts-api/peers/Config.ts +53 -0
  301. package/build/libarkts-copy/src/wrapper-compat/arkts-api/peers/Context.ts +60 -0
  302. package/build/libarkts-copy/src/wrapper-compat/arkts-api/peers/Diagnostic.ts +39 -0
  303. package/build/libarkts-copy/src/wrapper-compat/arkts-api/peers/DiagnosticInfo.ts +33 -0
  304. package/build/libarkts-copy/src/wrapper-compat/arkts-api/peers/DiagnosticKind.ts +33 -0
  305. package/build/libarkts-copy/src/wrapper-compat/arkts-api/peers/ImportPathManager.ts +34 -0
  306. package/build/libarkts-copy/src/wrapper-compat/arkts-api/peers/Program.ts +105 -0
  307. package/build/libarkts-copy/src/wrapper-compat/arkts-api/peers/SourcePosition.ts +38 -0
  308. package/build/libarkts-copy/src/wrapper-compat/arkts-api/peers/SourceRange.ts +38 -0
  309. package/build/libarkts-copy/src/wrapper-compat/arkts-api/peers/SuggestionInfo.ts +33 -0
  310. package/build/libarkts-copy/src/wrapper-compat/arkts-api/static/global.ts +16 -0
  311. package/build/libarkts-copy/src/wrapper-compat/arkts-api/static/globalUtils.ts +27 -0
  312. package/build/libarkts-copy/src/wrapper-compat/arkts-api/to-be-generated/MemberExpression.ts +108 -0
  313. package/build/libarkts-copy/src/wrapper-compat/arkts-api/types.ts +907 -0
  314. package/build/libarkts-copy/src/wrapper-compat/arkts-api/utilities/nativePtrDecoder.ts +69 -0
  315. package/build/libarkts-copy/src/wrapper-compat/arkts-api/utilities/performance.ts +190 -0
  316. package/build/libarkts-copy/src/wrapper-compat/arkts-api/utilities/private.ts +198 -0
  317. package/build/libarkts-copy/src/wrapper-compat/arkts-api/utilities/public.ts +325 -0
  318. package/build/libarkts-copy/src/wrapper-compat/arkts-api/visitor.ts +421 -0
  319. package/build/libarkts-copy/src/wrapper-compat/index.ts +20 -0
  320. package/lib/index.js +330 -149
  321. package/package.json +2 -2
  322. package/templates/Es2pandaEnums.ts +4 -0
  323. package/templates/Es2pandaNativeModule.ts +5 -1
  324. package/templates/factory.ts +5 -1
  325. package/templates/index.ts +5 -1
  326. package/templates/node-map.ts +5 -1
  327. package/templates/peer.ts +5 -1
  328. package/build/libarkts-copy/README.md +0 -36
@@ -0,0 +1,421 @@
1
+ /*
2
+ * Copyright (c) 2022-2025 Huawei Device Co., Ltd.
3
+ * Licensed under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License.
5
+ * You may obtain a copy of the License at
6
+ *
7
+ * http://www.apache.org/licenses/LICENSE-2.0
8
+ *
9
+ * Unless required by applicable law or agreed to in writing, software
10
+ * distributed under the License is distributed on an "AS IS" BASIS,
11
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ * See the License for the specific language governing permissions and
13
+ * limitations under the License.
14
+ */
15
+
16
+ import { global } from './static/global';
17
+ import { factory } from './factory/nodeFactory';
18
+ import { factory as factory1 } from '../../arkts-api/factory/nodeFactory';
19
+ import { AstNode } from './peers/AstNode';
20
+ import {
21
+ isBlockStatement,
22
+ isConditionalExpression,
23
+ isTSInterfaceBody,
24
+ isTSInterfaceDeclaration,
25
+ isClassDeclaration,
26
+ isClassDefinition,
27
+ isTSAsExpression,
28
+ isETSImportDeclaration,
29
+ ImportSource,
30
+ isScriptFunction,
31
+ FunctionSignature,
32
+ Property,
33
+ isClassProperty,
34
+ isImportDeclaration,
35
+ isObjectExpression,
36
+ ObjectExpression,
37
+ isProperty,
38
+ Expression,
39
+ isETSNewClassInstanceExpression,
40
+ isTemplateLiteral,
41
+ isBlockExpression,
42
+ isReturnStatement,
43
+ isArrayExpression,
44
+ isTryStatement,
45
+ isBinaryExpression,
46
+ } from '../../generated';
47
+ import {
48
+ isEtsScript,
49
+ isCallExpression,
50
+ isFunctionDeclaration,
51
+ isExpressionStatement,
52
+ isStructDeclaration,
53
+ isMethodDefinition,
54
+ // isScriptFunction,
55
+ isMemberExpression,
56
+ isIfStatement,
57
+ isVariableDeclaration,
58
+ isVariableDeclarator,
59
+ isArrowFunctionExpression,
60
+ isAssignmentExpression,
61
+ } from './factory/nodeTests';
62
+ import { classDefinitionFlags } from './utilities/public';
63
+ import { Es2pandaAstNodeType } from '../../generated/Es2pandaEnums';
64
+
65
+ type Visitor = (node: AstNode) => AstNode;
66
+
67
+ // TODO: rethink (remove as)
68
+ function nodeVisitor<T extends AstNode | undefined>(node: T, visitor: Visitor): T {
69
+ if (node === undefined) {
70
+ return node;
71
+ }
72
+ return visitor(node) as T;
73
+ }
74
+
75
+ // TODO: rethink (remove as)
76
+ function nodesVisitor<T extends AstNode, TIn extends readonly T[] | undefined>(
77
+ nodes: TIn,
78
+ visitor: Visitor
79
+ ): T[] | TIn {
80
+ if (nodes === undefined) {
81
+ return nodes;
82
+ }
83
+ return nodes.map((node) => visitor(node) as T);
84
+ }
85
+
86
+ let updated: boolean = false;
87
+
88
+ export function visitEachChild(node: AstNode, visitor: Visitor): AstNode {
89
+ updated = false;
90
+ let script: AstNode = node;
91
+ script = visitETSModule(script, visitor);
92
+ script = visitDeclaration(script, visitor);
93
+ script = visitDefinition(script, visitor);
94
+ script = visitDefinitionBody(script, visitor);
95
+ script = visitStatement(script, visitor);
96
+ script = visitOuterExpression(script, visitor);
97
+ script = visitInnerExpression(script, visitor);
98
+ script = visitTrivialExpression(script, visitor);
99
+ script = visitLiteral(script, visitor);
100
+ // TODO
101
+ return visitWithoutUpdate(script, visitor);
102
+ }
103
+
104
+ function visitOuterExpression(node: AstNode, visitor: Visitor): AstNode {
105
+ if (updated) {
106
+ return node;
107
+ } else if (isBlockExpression(node)) {
108
+ updated = true;
109
+ return factory1.updateBlockExpression(node, nodesVisitor(node.statements, visitor));
110
+ } else if (isCallExpression(node)) {
111
+ updated = true;
112
+ const call = factory.updateCallExpression(
113
+ node,
114
+ nodeVisitor(node.expression, visitor),
115
+ nodesVisitor(node.typeArguments, visitor),
116
+ nodesVisitor(node.arguments, visitor)
117
+ );
118
+ if (!!node.trailingBlock) {
119
+ call.setTralingBlock(nodeVisitor(node.trailingBlock, visitor));
120
+ }
121
+ return call;
122
+ } else if (isArrowFunctionExpression(node)) {
123
+ updated = true;
124
+ return factory.updateArrowFunction(node, nodeVisitor(node.scriptFunction, visitor));
125
+ } else if (isAssignmentExpression(node)) {
126
+ updated = true;
127
+ return factory.updateAssignmentExpression(
128
+ node,
129
+ nodeVisitor(node.left as Expression, visitor),
130
+ node.operatorType,
131
+ nodeVisitor(node.right as Expression, visitor)
132
+ );
133
+ } else if (isETSNewClassInstanceExpression(node)) {
134
+ updated = true;
135
+ return factory1.updateETSNewClassInstanceExpression(
136
+ node,
137
+ node.typeRef,
138
+ nodesVisitor(node.arguments, visitor)
139
+ );
140
+ }
141
+ if (isArrayExpression(node)) {
142
+ updated = true;
143
+ return factory.updateArrayExpression(
144
+ node,
145
+ nodesVisitor(node.elements, visitor)
146
+ );
147
+ }
148
+ return node;
149
+ }
150
+
151
+ function visitInnerExpression(node: AstNode, visitor: Visitor): AstNode {
152
+ if (updated) {
153
+ return node;
154
+ }
155
+ if (isMemberExpression(node)) {
156
+ updated = true;
157
+ return factory.updateMemberExpression(
158
+ node,
159
+ nodeVisitor(node.object, visitor),
160
+ nodeVisitor(node.property, visitor),
161
+ node.kind,
162
+ node.computed,
163
+ node.optional
164
+ );
165
+ }
166
+ if (isConditionalExpression(node)) {
167
+ updated = true;
168
+ return factory1.updateConditionalExpression(
169
+ node,
170
+ nodeVisitor(node.test, visitor),
171
+ nodeVisitor(node.consequent, visitor),
172
+ nodeVisitor(node.alternate, visitor)
173
+ );
174
+ }
175
+ if (isTSAsExpression(node)) {
176
+ updated = true;
177
+ return factory1.updateTSAsExpression(
178
+ node,
179
+ nodeVisitor(node.expr, visitor),
180
+ nodeVisitor(node.typeAnnotation, visitor),
181
+ node.isConst
182
+ );
183
+ }
184
+ if (isObjectExpression(node)) {
185
+ updated = true;
186
+ return factory.updateObjectExpression(
187
+ node,
188
+ Es2pandaAstNodeType.AST_NODE_TYPE_OBJECT_EXPRESSION,
189
+ nodesVisitor(node.properties as Property[], visitor),
190
+ false
191
+ );
192
+ }
193
+ if (isProperty(node)) {
194
+ updated = true;
195
+ return factory.updateProperty(node, node.key, nodeVisitor(node.value, visitor));
196
+ }
197
+ // TODO
198
+ return node;
199
+ }
200
+
201
+ function visitTrivialExpression(node: AstNode, visitor: Visitor): AstNode {
202
+ if (updated) {
203
+ return node;
204
+ }
205
+ if (isBinaryExpression(node)) {
206
+ updated = true;
207
+ return factory1.updateBinaryExpression(
208
+ node,
209
+ nodeVisitor(node.left, visitor),
210
+ nodeVisitor(node.right, visitor),
211
+ node.operatorType
212
+ );
213
+ }
214
+ // TODO
215
+ return node;
216
+ }
217
+
218
+ function visitDeclaration(node: AstNode, visitor: Visitor): AstNode {
219
+ if (updated) {
220
+ return node;
221
+ }
222
+ if (isFunctionDeclaration(node)) {
223
+ updated = true;
224
+ return factory.updateFunctionDeclaration(
225
+ node,
226
+ nodeVisitor(node.scriptFunction, visitor),
227
+ node.isAnon,
228
+ node.annotations
229
+ );
230
+ }
231
+ if (isClassDeclaration(node)) {
232
+ updated = true;
233
+ return factory.updateClassDeclaration(node, nodeVisitor(node.definition, visitor));
234
+ }
235
+ if (isStructDeclaration(node)) {
236
+ updated = true;
237
+ return factory.updateStructDeclaration(node, nodeVisitor(node.definition, visitor));
238
+ }
239
+ if (isTSInterfaceDeclaration(node)) {
240
+ updated = true;
241
+ return factory.updateInterfaceDeclaration(
242
+ node,
243
+ nodesVisitor(node.extends, visitor),
244
+ nodeVisitor(node.id, visitor),
245
+ nodeVisitor(node.typeParams, visitor),
246
+ nodeVisitor(node.body, visitor),
247
+ node.isStatic,
248
+ // TODO: how do I get it?
249
+ true
250
+ );
251
+ }
252
+ if (isVariableDeclaration(node)) {
253
+ updated = true;
254
+ return factory.updateVariableDeclaration(
255
+ node,
256
+ 0,
257
+ node.declarationKind,
258
+ nodesVisitor(node.declarators, visitor)
259
+ );
260
+ }
261
+ // TODO
262
+ return node;
263
+ }
264
+
265
+ function visitDefinition(node: AstNode, visitor: Visitor): AstNode {
266
+ if (updated) {
267
+ return node;
268
+ }
269
+ if (isClassDefinition(node)) {
270
+ updated = true;
271
+ return factory.updateClassDefinition(
272
+ node,
273
+ node.ident,
274
+ node.typeParams,
275
+ node.superTypeParams,
276
+ node.implements,
277
+ undefined,
278
+ node.super,
279
+ nodesVisitor(node.body, visitor),
280
+ node.modifiers,
281
+ classDefinitionFlags(node)
282
+ );
283
+ }
284
+ if (isMethodDefinition(node)) {
285
+ updated = true;
286
+ return factory.updateMethodDefinition(
287
+ node,
288
+ node.kind,
289
+ node.name,
290
+ nodeVisitor(node.scriptFunction, visitor),
291
+ node.modifiers,
292
+ false
293
+ );
294
+ }
295
+ if (isTSInterfaceBody(node)) {
296
+ updated = true;
297
+ return factory1.updateInterfaceBody(node, nodesVisitor(node.body, visitor));
298
+ }
299
+ if (isVariableDeclarator(node)) {
300
+ updated = true;
301
+ return factory.updateVariableDeclarator(
302
+ node,
303
+ global.generatedEs2panda._VariableDeclaratorFlag(global.context, node.peer),
304
+ nodeVisitor(node.name, visitor),
305
+ nodeVisitor(node.initializer, visitor)
306
+ );
307
+ }
308
+ return node;
309
+ }
310
+
311
+ function visitStatement(node: AstNode, visitor: Visitor): AstNode {
312
+ if (updated) {
313
+ return node;
314
+ }
315
+ if (isBlockStatement(node)) {
316
+ updated = true;
317
+ return factory.updateBlock(node, nodesVisitor(node.statements, visitor));
318
+ }
319
+ if (isExpressionStatement(node)) {
320
+ updated = true;
321
+ return factory.updateExpressionStatement(node, nodeVisitor(node.expression, visitor));
322
+ }
323
+ if (isIfStatement(node)) {
324
+ updated = true;
325
+ return factory.updateIfStatement(
326
+ node,
327
+ nodeVisitor(node.test, visitor),
328
+ nodeVisitor(node.consequent, visitor),
329
+ nodeVisitor(node.alternate, visitor)
330
+ );
331
+ }
332
+ if (isReturnStatement(node)) {
333
+ updated = true;
334
+ return factory1.updateReturnStatement(node, nodeVisitor(node.argument, visitor));
335
+ }
336
+ if (isTryStatement(node)) {
337
+ updated = true;
338
+ return factory.updateTryStatement(
339
+ node,
340
+ nodeVisitor(node.block, visitor),
341
+ nodesVisitor(node.catchClauses, visitor),
342
+ nodeVisitor(node.finallyBlock, visitor),
343
+ [],
344
+ []
345
+ );
346
+ }
347
+ // TODO
348
+ return node;
349
+ }
350
+
351
+ function visitETSModule(node: AstNode, visitor: Visitor): AstNode {
352
+ if (updated) {
353
+ return node;
354
+ }
355
+ if (isEtsScript(node)) {
356
+ updated = true;
357
+ return factory.updateEtsScript(node, nodesVisitor(node.statements, visitor));
358
+ }
359
+ return node;
360
+ }
361
+
362
+ function visitDefinitionBody(node: AstNode, visitor: Visitor): AstNode {
363
+ if (updated) {
364
+ return node;
365
+ }
366
+ if (isScriptFunction(node)) {
367
+ updated = true;
368
+ return factory.updateScriptFunction(
369
+ node,
370
+ nodeVisitor(node.body, visitor),
371
+ factory.createFunctionSignature(
372
+ nodeVisitor(node.typeParams, visitor),
373
+ nodesVisitor(node.params, visitor),
374
+ nodeVisitor(node.returnTypeAnnotation, visitor),
375
+ node.hasReceiver
376
+ ),
377
+ node.flags,
378
+ node.modifiers
379
+ );
380
+ }
381
+ if (isClassProperty(node)) {
382
+ updated = true;
383
+ return factory.updateClassProperty(
384
+ node,
385
+ node.key,
386
+ nodeVisitor(node.value, visitor),
387
+ node.typeAnnotation,
388
+ node.modifiers,
389
+ node.isComputed
390
+ );
391
+ }
392
+ // TODO
393
+ return node;
394
+ }
395
+
396
+ function visitLiteral(node: AstNode, visitor: Visitor): AstNode {
397
+ if (updated) {
398
+ return node;
399
+ }
400
+ if (isTemplateLiteral(node)) {
401
+ updated = true;
402
+ return factory1.updateTemplateLiteral(
403
+ node,
404
+ nodesVisitor(node.quasis, visitor),
405
+ nodesVisitor(node.expressions, visitor),
406
+ node.multilineString
407
+ );
408
+ }
409
+ return node;
410
+ }
411
+
412
+ // TODO: apply this to all nodes that does not require updating
413
+ function visitWithoutUpdate<T extends AstNode>(node: T, visitor: Visitor): T {
414
+ if (updated) {
415
+ return node;
416
+ }
417
+ if (isImportDeclaration(node)) {
418
+ nodesVisitor(node.specifiers, visitor);
419
+ }
420
+ return node;
421
+ }
@@ -0,0 +1,20 @@
1
+ /*
2
+ * Copyright (c) 2022-2025 Huawei Device Co., Ltd.
3
+ * Licensed under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License.
5
+ * You may obtain a copy of the License at
6
+ *
7
+ * http://www.apache.org/licenses/LICENSE-2.0
8
+ *
9
+ * Unless required by applicable law or agreed to in writing, software
10
+ * distributed under the License is distributed on an "AS IS" BASIS,
11
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ * See the License for the specific language governing permissions and
13
+ * limitations under the License.
14
+ */
15
+
16
+ import { global } from "../arkts-api/static/global"
17
+ import * as arkts from "./arkts-api"
18
+
19
+ export * from "./arkts-api"
20
+ export {arkts, global as arktsGlobal}