arkanalyzer 1.0.93 → 2.0.0-beta1

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 (326) hide show
  1. package/lib/Config.d.ts +7 -0
  2. package/lib/Config.d.ts.map +1 -1
  3. package/lib/Scene.d.ts +134 -170
  4. package/lib/Scene.d.ts.map +1 -1
  5. package/lib/Scene.js +412 -976
  6. package/lib/callgraph/algorithm/AbstractAnalysis.js +3 -2
  7. package/lib/callgraph/algorithm/RapidTypeAnalysis.d.ts.map +1 -1
  8. package/lib/callgraph/algorithm/RapidTypeAnalysis.js +2 -3
  9. package/lib/callgraph/model/CallGraph.js +1 -1
  10. package/lib/callgraph/pointerAnalysis/PTAUtils.d.ts +1 -3
  11. package/lib/callgraph/pointerAnalysis/PTAUtils.d.ts.map +1 -1
  12. package/lib/callgraph/pointerAnalysis/PTAUtils.js +17 -7
  13. package/lib/callgraph/pointerAnalysis/Pag.d.ts.map +1 -1
  14. package/lib/callgraph/pointerAnalysis/Pag.js +4 -14
  15. package/lib/callgraph/pointerAnalysis/PagBuilder.d.ts.map +1 -1
  16. package/lib/callgraph/pointerAnalysis/PagBuilder.js +2 -1
  17. package/lib/callgraph/pointerAnalysis/PointerAnalysis.d.ts.map +1 -1
  18. package/lib/callgraph/pointerAnalysis/PointerAnalysis.js +1 -2
  19. package/lib/callgraph/pointerAnalysis/plugins/WorkerPlugin.d.ts.map +1 -1
  20. package/lib/callgraph/pointerAnalysis/plugins/WorkerPlugin.js +0 -1
  21. package/lib/cli/commands/cg.d.ts +1 -0
  22. package/lib/cli/commands/cg.d.ts.map +1 -1
  23. package/lib/cli/commands/cg.js +22 -18
  24. package/lib/cli/commands/ir.d.ts +1 -0
  25. package/lib/cli/commands/ir.d.ts.map +1 -1
  26. package/lib/cli/commands/ir.js +5 -2
  27. package/lib/core/base/Constant.d.ts +5 -5
  28. package/lib/core/base/Constant.d.ts.map +1 -1
  29. package/lib/core/base/Constant.js +12 -9
  30. package/lib/core/base/Expr.d.ts +36 -20
  31. package/lib/core/base/Expr.d.ts.map +1 -1
  32. package/lib/core/base/Expr.js +206 -94
  33. package/lib/core/base/Local.d.ts +10 -20
  34. package/lib/core/base/Local.d.ts.map +1 -1
  35. package/lib/core/base/Local.js +25 -28
  36. package/lib/core/base/Position.d.ts +6 -0
  37. package/lib/core/base/Position.d.ts.map +1 -1
  38. package/lib/core/base/Position.js +37 -11
  39. package/lib/core/base/Ref.d.ts +45 -33
  40. package/lib/core/base/Ref.d.ts.map +1 -1
  41. package/lib/core/base/Ref.js +225 -51
  42. package/lib/core/base/Stmt.d.ts +19 -9
  43. package/lib/core/base/Stmt.d.ts.map +1 -1
  44. package/lib/core/base/Stmt.js +135 -52
  45. package/lib/core/base/Type.d.ts +67 -4
  46. package/lib/core/base/Type.d.ts.map +1 -1
  47. package/lib/core/base/Type.js +391 -20
  48. package/lib/core/base/TypeExpr.d.ts +6 -4
  49. package/lib/core/base/TypeExpr.d.ts.map +1 -1
  50. package/lib/core/base/TypeExpr.js +34 -10
  51. package/lib/core/base/Value.d.ts +20 -2
  52. package/lib/core/base/Value.d.ts.map +1 -1
  53. package/lib/core/base/Value.js +12 -0
  54. package/lib/core/common/ArkIRTransformer.d.ts +18 -0
  55. package/lib/core/common/ArkIRTransformer.d.ts.map +1 -1
  56. package/lib/core/common/ArkIRTransformer.js +94 -75
  57. package/lib/core/common/ArkValueTransformer.d.ts +21 -3
  58. package/lib/core/common/ArkValueTransformer.d.ts.map +1 -1
  59. package/lib/core/common/ArkValueTransformer.js +458 -266
  60. package/lib/core/common/Builtin.d.ts +48 -24
  61. package/lib/core/common/Builtin.d.ts.map +1 -1
  62. package/lib/core/common/Builtin.js +90 -52
  63. package/lib/core/common/CanonicalizerValidator.d.ts +308 -0
  64. package/lib/core/common/CanonicalizerValidator.d.ts.map +1 -0
  65. package/lib/core/common/CanonicalizerValidator.js +888 -0
  66. package/lib/core/common/Const.d.ts +3 -3
  67. package/lib/core/common/Const.d.ts.map +1 -1
  68. package/lib/core/common/Const.js +3 -3
  69. package/lib/core/common/DummyMainCreater.d.ts +2 -21
  70. package/lib/core/common/DummyMainCreater.d.ts.map +1 -1
  71. package/lib/core/common/DummyMainCreater.js +8 -105
  72. package/lib/core/common/IRInference.d.ts +55 -3
  73. package/lib/core/common/IRInference.d.ts.map +1 -1
  74. package/lib/core/common/IRInference.js +407 -126
  75. package/lib/core/common/IRUtils.d.ts +1 -0
  76. package/lib/core/common/IRUtils.d.ts.map +1 -1
  77. package/lib/core/common/IRUtils.js +44 -13
  78. package/lib/core/common/ModelUtils.d.ts +44 -20
  79. package/lib/core/common/ModelUtils.d.ts.map +1 -1
  80. package/lib/core/common/ModelUtils.js +378 -208
  81. package/lib/core/common/SdkUtils.d.ts +35 -5
  82. package/lib/core/common/SdkUtils.d.ts.map +1 -1
  83. package/lib/core/common/SdkUtils.js +203 -59
  84. package/lib/core/common/SignatureCanonicalizer.d.ts +95 -0
  85. package/lib/core/common/SignatureCanonicalizer.d.ts.map +1 -0
  86. package/lib/core/common/SignatureCanonicalizer.js +116 -0
  87. package/lib/core/common/SignatureCanonicalizerRegistry.d.ts +176 -0
  88. package/lib/core/common/SignatureCanonicalizerRegistry.d.ts.map +1 -0
  89. package/lib/core/common/SignatureCanonicalizerRegistry.js +343 -0
  90. package/lib/core/common/SignatureModelCanonicalizer.d.ts +69 -0
  91. package/lib/core/common/SignatureModelCanonicalizer.d.ts.map +1 -0
  92. package/lib/core/common/SignatureModelCanonicalizer.js +109 -0
  93. package/lib/core/common/StmtUseReplacer.d.ts +1 -0
  94. package/lib/core/common/StmtUseReplacer.d.ts.map +1 -1
  95. package/lib/core/common/StmtUseReplacer.js +9 -0
  96. package/lib/core/common/StringUtils.d.ts +12 -1
  97. package/lib/core/common/StringUtils.d.ts.map +1 -1
  98. package/lib/core/common/StringUtils.js +36 -17
  99. package/lib/core/common/TempSignatureCanonicalizer.d.ts +82 -0
  100. package/lib/core/common/TempSignatureCanonicalizer.d.ts.map +1 -0
  101. package/lib/core/common/TempSignatureCanonicalizer.js +177 -0
  102. package/lib/core/common/TypeInference.d.ts +24 -6
  103. package/lib/core/common/TypeInference.d.ts.map +1 -1
  104. package/lib/core/common/TypeInference.js +243 -117
  105. package/lib/core/common/ValueUtil.d.ts +2 -1
  106. package/lib/core/common/ValueUtil.d.ts.map +1 -1
  107. package/lib/core/common/ValueUtil.js +4 -1
  108. package/lib/core/graph/Cfg.d.ts.map +1 -1
  109. package/lib/core/graph/Cfg.js +21 -6
  110. package/lib/core/graph/builder/CfgBuilder.d.ts.map +1 -1
  111. package/lib/core/graph/builder/CfgBuilder.js +46 -33
  112. package/lib/core/graph/builder/IfBuilder.d.ts.map +1 -1
  113. package/lib/core/graph/builder/IfBuilder.js +6 -2
  114. package/lib/core/graph/builder/ViewTreeBuilder.d.ts.map +1 -1
  115. package/lib/core/graph/builder/ViewTreeBuilder.js +6 -2
  116. package/lib/core/inference/ModelInference.d.ts +24 -4
  117. package/lib/core/inference/ModelInference.d.ts.map +1 -1
  118. package/lib/core/inference/ModelInference.js +273 -79
  119. package/lib/core/inference/ValueInference.d.ts +3 -2
  120. package/lib/core/inference/ValueInference.d.ts.map +1 -1
  121. package/lib/core/inference/ValueInference.js +90 -40
  122. package/lib/core/inference/abc/AbcInference.d.ts.map +1 -1
  123. package/lib/core/inference/abc/AbcInference.js +28 -15
  124. package/lib/core/inference/arkts/ArkTsInference.d.ts +9 -3
  125. package/lib/core/inference/arkts/ArkTsInference.d.ts.map +1 -1
  126. package/lib/core/inference/arkts/ArkTsInference.js +54 -16
  127. package/lib/core/model/ArkClass.d.ts +192 -18
  128. package/lib/core/model/ArkClass.d.ts.map +1 -1
  129. package/lib/core/model/ArkClass.js +852 -122
  130. package/lib/core/model/ArkExport.d.ts.map +1 -1
  131. package/lib/core/model/ArkExport.js +1 -2
  132. package/lib/core/model/ArkField.d.ts +34 -2
  133. package/lib/core/model/ArkField.d.ts.map +1 -1
  134. package/lib/core/model/ArkField.js +89 -14
  135. package/lib/core/model/ArkFile.d.ts +72 -12
  136. package/lib/core/model/ArkFile.d.ts.map +1 -1
  137. package/lib/core/model/ArkFile.js +275 -65
  138. package/lib/core/model/ArkImport.d.ts.map +1 -1
  139. package/lib/core/model/ArkImport.js +1 -2
  140. package/lib/core/model/ArkMethod.d.ts +101 -15
  141. package/lib/core/model/ArkMethod.d.ts.map +1 -1
  142. package/lib/core/model/ArkMethod.js +252 -39
  143. package/lib/core/model/ArkModule.d.ts +1 -1
  144. package/lib/core/model/ArkModule.js +1 -1
  145. package/lib/core/model/ArkNamespace.d.ts +80 -10
  146. package/lib/core/model/ArkNamespace.d.ts.map +1 -1
  147. package/lib/core/model/ArkNamespace.js +309 -76
  148. package/lib/core/model/ArkSignature.d.ts +242 -18
  149. package/lib/core/model/ArkSignature.d.ts.map +1 -1
  150. package/lib/core/model/ArkSignature.js +725 -95
  151. package/lib/core/model/builder/ArkClassBuilder.d.ts +6 -3
  152. package/lib/core/model/builder/ArkClassBuilder.d.ts.map +1 -1
  153. package/lib/core/model/builder/ArkClassBuilder.js +119 -73
  154. package/lib/core/model/builder/ArkExportBuilder.d.ts +1 -1
  155. package/lib/core/model/builder/ArkExportBuilder.d.ts.map +1 -1
  156. package/lib/core/model/builder/ArkExportBuilder.js +1 -1
  157. package/lib/core/model/builder/ArkFieldBuilder.d.ts +0 -2
  158. package/lib/core/model/builder/ArkFieldBuilder.d.ts.map +1 -1
  159. package/lib/core/model/builder/ArkFieldBuilder.js +9 -43
  160. package/lib/core/model/builder/ArkFileBuilder.d.ts.map +1 -1
  161. package/lib/core/model/builder/ArkFileBuilder.js +32 -33
  162. package/lib/core/model/builder/ArkMethodBuilder.d.ts +10 -3
  163. package/lib/core/model/builder/ArkMethodBuilder.d.ts.map +1 -1
  164. package/lib/core/model/builder/ArkMethodBuilder.js +40 -26
  165. package/lib/core/model/builder/ArkNamespaceBuilder.d.ts +3 -2
  166. package/lib/core/model/builder/ArkNamespaceBuilder.d.ts.map +1 -1
  167. package/lib/core/model/builder/ArkNamespaceBuilder.js +45 -77
  168. package/lib/core/model/builder/ArkSignatureBuilder.d.ts +9 -0
  169. package/lib/core/model/builder/ArkSignatureBuilder.d.ts.map +1 -1
  170. package/lib/core/model/builder/ArkSignatureBuilder.js +26 -3
  171. package/lib/core/model/builder/BodyBuilder.d.ts +1 -0
  172. package/lib/core/model/builder/BodyBuilder.d.ts.map +1 -1
  173. package/lib/core/model/builder/BodyBuilder.js +37 -11
  174. package/lib/core/model/builder/builderUtils.d.ts +11 -1
  175. package/lib/core/model/builder/builderUtils.d.ts.map +1 -1
  176. package/lib/core/model/builder/builderUtils.js +124 -90
  177. package/lib/frontend/FrontendBuilder.d.ts +10 -6
  178. package/lib/frontend/FrontendBuilder.d.ts.map +1 -1
  179. package/lib/frontend/FrontendBuilder.js +19 -45
  180. package/lib/frontend/ModuleScene.d.ts +43 -0
  181. package/lib/frontend/ModuleScene.d.ts.map +1 -0
  182. package/lib/frontend/ModuleScene.js +143 -0
  183. package/lib/frontend/SceneBuildStage.d.ts +15 -0
  184. package/lib/frontend/SceneBuildStage.d.ts.map +1 -0
  185. package/lib/frontend/SceneBuildStage.js +32 -0
  186. package/lib/frontend/SceneBuilder.d.ts +153 -0
  187. package/lib/frontend/SceneBuilder.d.ts.map +1 -0
  188. package/lib/frontend/SceneBuilder.js +859 -0
  189. package/lib/frontend/arktsFrontend/ArktsFrontend.d.ts +0 -2
  190. package/lib/frontend/arktsFrontend/ArktsFrontend.d.ts.map +1 -1
  191. package/lib/frontend/arktsFrontend/ArktsFrontend.js +0 -18
  192. package/lib/frontend/arktsFrontend/FileBodyRemount.d.ts +17 -0
  193. package/lib/frontend/arktsFrontend/FileBodyRemount.d.ts.map +1 -0
  194. package/lib/frontend/arktsFrontend/FileBodyRemount.js +187 -0
  195. package/lib/frontend/common/ModuleBuilder.d.ts +4 -2
  196. package/lib/frontend/common/ModuleBuilder.d.ts.map +1 -1
  197. package/lib/frontend/common/ModuleBuilder.js +19 -9
  198. package/lib/frontend/cppFrontend/CppFrontend.d.ts +0 -6
  199. package/lib/frontend/cppFrontend/CppFrontend.d.ts.map +1 -1
  200. package/lib/frontend/cppFrontend/CppFrontend.js +0 -56
  201. package/lib/frontend/cppFrontend/base/Type.d.ts +7 -0
  202. package/lib/frontend/cppFrontend/base/Type.d.ts.map +1 -1
  203. package/lib/frontend/cppFrontend/base/Type.js +29 -0
  204. package/lib/frontend/cppFrontend/common/ArkIRTransformer.d.ts.map +1 -1
  205. package/lib/frontend/cppFrontend/common/ArkIRTransformer.js +56 -56
  206. package/lib/frontend/cppFrontend/common/ArkValueTransformer.d.ts +1 -1
  207. package/lib/frontend/cppFrontend/common/ArkValueTransformer.d.ts.map +1 -1
  208. package/lib/frontend/cppFrontend/common/ArkValueTransformer.js +124 -113
  209. package/lib/frontend/cppFrontend/common/Builtin.d.ts +29 -19
  210. package/lib/frontend/cppFrontend/common/Builtin.d.ts.map +1 -1
  211. package/lib/frontend/cppFrontend/common/Builtin.js +56 -35
  212. package/lib/frontend/cppFrontend/common/IRInference.d.ts +7 -2
  213. package/lib/frontend/cppFrontend/common/IRInference.d.ts.map +1 -1
  214. package/lib/frontend/cppFrontend/common/IRInference.js +61 -28
  215. package/lib/frontend/cppFrontend/common/IRUtils.d.ts +1 -0
  216. package/lib/frontend/cppFrontend/common/IRUtils.d.ts.map +1 -1
  217. package/lib/frontend/cppFrontend/common/IRUtils.js +22 -10
  218. package/lib/frontend/cppFrontend/common/ModelUtils.d.ts +19 -0
  219. package/lib/frontend/cppFrontend/common/ModelUtils.d.ts.map +1 -1
  220. package/lib/frontend/cppFrontend/common/ModelUtils.js +84 -3
  221. package/lib/frontend/cppFrontend/common/TypeInference.d.ts.map +1 -1
  222. package/lib/frontend/cppFrontend/common/TypeInference.js +44 -54
  223. package/lib/frontend/cppFrontend/graph/builder/CfgBuilder.d.ts.map +1 -1
  224. package/lib/frontend/cppFrontend/graph/builder/CfgBuilder.js +2 -1
  225. package/lib/frontend/cppFrontend/inference/CxxModelInference.d.ts +1 -1
  226. package/lib/frontend/cppFrontend/inference/CxxModelInference.d.ts.map +1 -1
  227. package/lib/frontend/cppFrontend/inference/CxxValueInference.d.ts.map +1 -1
  228. package/lib/frontend/cppFrontend/inference/CxxValueInference.js +41 -5
  229. package/lib/frontend/cppFrontend/model/builder/ArkClassBuilder.d.ts.map +1 -1
  230. package/lib/frontend/cppFrontend/model/builder/ArkClassBuilder.js +18 -28
  231. package/lib/frontend/cppFrontend/model/builder/ArkFieldBuilder.d.ts.map +1 -1
  232. package/lib/frontend/cppFrontend/model/builder/ArkFieldBuilder.js +2 -3
  233. package/lib/frontend/cppFrontend/model/builder/ArkFileBuilder.d.ts +2 -2
  234. package/lib/frontend/cppFrontend/model/builder/ArkFileBuilder.d.ts.map +1 -1
  235. package/lib/frontend/cppFrontend/model/builder/ArkFileBuilder.js +31 -24
  236. package/lib/frontend/cppFrontend/model/builder/ArkMethodBuilder.d.ts.map +1 -1
  237. package/lib/frontend/cppFrontend/model/builder/ArkMethodBuilder.js +10 -16
  238. package/lib/frontend/cppFrontend/model/builder/ArkNamespaceBuilder.d.ts +0 -2
  239. package/lib/frontend/cppFrontend/model/builder/ArkNamespaceBuilder.d.ts.map +1 -1
  240. package/lib/frontend/cppFrontend/model/builder/ArkNamespaceBuilder.js +19 -37
  241. package/lib/frontend/cppFrontend/model/builder/BodyBuilder.d.ts +1 -0
  242. package/lib/frontend/cppFrontend/model/builder/BodyBuilder.d.ts.map +1 -1
  243. package/lib/frontend/cppFrontend/model/builder/BodyBuilder.js +30 -3
  244. package/lib/frontend/cppFrontend/model/builder/builderUtils.d.ts.map +1 -1
  245. package/lib/frontend/cppFrontend/model/builder/builderUtils.js +8 -4
  246. package/lib/index.d.ts +3 -0
  247. package/lib/index.d.ts.map +1 -1
  248. package/lib/index.js +10 -2
  249. package/lib/save/json/JsonSerialization.js +2 -2
  250. package/lib/save/source/SourceStmt.js +1 -1
  251. package/lib/save/source/SourceTransformer.d.ts.map +1 -1
  252. package/lib/save/source/SourceTransformer.js +0 -9
  253. package/lib/statistics/StageStatistics.d.ts +195 -0
  254. package/lib/statistics/StageStatistics.d.ts.map +1 -0
  255. package/lib/statistics/StageStatistics.js +346 -0
  256. package/lib/statistics/StageStatisticsReporter.d.ts +58 -0
  257. package/lib/statistics/StageStatisticsReporter.d.ts.map +1 -0
  258. package/lib/statistics/StageStatisticsReporter.js +255 -0
  259. package/lib/utils/Canonicalizer.d.ts +9 -2
  260. package/lib/utils/Canonicalizer.d.ts.map +1 -1
  261. package/lib/utils/Canonicalizer.js +19 -2
  262. package/lib/utils/CxxSceneUtils.d.ts +7 -0
  263. package/lib/utils/CxxSceneUtils.d.ts.map +1 -1
  264. package/lib/utils/CxxSceneUtils.js +10 -1
  265. package/lib/utils/FileUtils.d.ts +0 -1
  266. package/lib/utils/FileUtils.d.ts.map +1 -1
  267. package/lib/utils/FileUtils.js +1 -9
  268. package/lib/utils/HashUtils.d.ts +9 -0
  269. package/lib/utils/HashUtils.d.ts.map +1 -0
  270. package/lib/utils/HashUtils.js +65 -0
  271. package/lib/utils/ModuleUtils.d.ts.map +1 -1
  272. package/lib/utils/ModuleUtils.js +24 -5
  273. package/lib/utils/VisitedSegment.d.ts +23 -0
  274. package/lib/utils/VisitedSegment.d.ts.map +1 -0
  275. package/lib/utils/VisitedSegment.js +64 -0
  276. package/lib/utils/callGraphUtils.d.ts.map +1 -1
  277. package/lib/utils/callGraphUtils.js +7 -7
  278. package/lib/utils/getAllFiles.d.ts.map +1 -1
  279. package/lib/utils/getAllFiles.js +11 -8
  280. package/lib/utils/logger.d.ts +4 -0
  281. package/lib/utils/logger.d.ts.map +1 -1
  282. package/lib/utils/logger.js +16 -0
  283. package/lib/utils/parseArkSourceFile.d.ts +33 -0
  284. package/lib/utils/parseArkSourceFile.d.ts.map +1 -0
  285. package/lib/utils/parseArkSourceFile.js +131 -0
  286. package/package.json +1 -1
  287. package/lib/node_modules/ohos-typescript/README.OpenSource +0 -11
  288. package/lib/node_modules/ohos-typescript/README.md +0 -81
  289. package/lib/node_modules/ohos-typescript/SECURITY.md +0 -41
  290. package/lib/node_modules/ohos-typescript/ThirdPartyNoticeText.txt +0 -193
  291. package/lib/node_modules/ohos-typescript/bin/tsc +0 -2
  292. package/lib/node_modules/ohos-typescript/bin/tsserver +0 -2
  293. package/lib/node_modules/ohos-typescript/lib/README.md +0 -5
  294. package/lib/node_modules/ohos-typescript/lib/cancellationToken.js +0 -86
  295. package/lib/node_modules/ohos-typescript/lib/cs/diagnosticMessages.generated.json +0 -1880
  296. package/lib/node_modules/ohos-typescript/lib/de/diagnosticMessages.generated.json +0 -1880
  297. package/lib/node_modules/ohos-typescript/lib/es/diagnosticMessages.generated.json +0 -1880
  298. package/lib/node_modules/ohos-typescript/lib/fr/diagnosticMessages.generated.json +0 -1880
  299. package/lib/node_modules/ohos-typescript/lib/it/diagnosticMessages.generated.json +0 -1880
  300. package/lib/node_modules/ohos-typescript/lib/ja/diagnosticMessages.generated.json +0 -1880
  301. package/lib/node_modules/ohos-typescript/lib/ko/diagnosticMessages.generated.json +0 -1880
  302. package/lib/node_modules/ohos-typescript/lib/lib.dom.d.ts +0 -18505
  303. package/lib/node_modules/ohos-typescript/lib/lib.dom.iterable.d.ts +0 -341
  304. package/lib/node_modules/ohos-typescript/lib/lib.scripthost.d.ts +0 -327
  305. package/lib/node_modules/ohos-typescript/lib/lib.webworker.d.ts +0 -6192
  306. package/lib/node_modules/ohos-typescript/lib/lib.webworker.importscripts.d.ts +0 -26
  307. package/lib/node_modules/ohos-typescript/lib/lib.webworker.iterable.d.ts +0 -175
  308. package/lib/node_modules/ohos-typescript/lib/pl/diagnosticMessages.generated.json +0 -1880
  309. package/lib/node_modules/ohos-typescript/lib/pt-br/diagnosticMessages.generated.json +0 -1880
  310. package/lib/node_modules/ohos-typescript/lib/ru/diagnosticMessages.generated.json +0 -1880
  311. package/lib/node_modules/ohos-typescript/lib/tr/diagnosticMessages.generated.json +0 -1880
  312. package/lib/node_modules/ohos-typescript/lib/tsc.js +0 -114551
  313. package/lib/node_modules/ohos-typescript/lib/tsserver.js +0 -179691
  314. package/lib/node_modules/ohos-typescript/lib/tsserverlibrary.d.ts +0 -13648
  315. package/lib/node_modules/ohos-typescript/lib/tsserverlibrary.js +0 -178688
  316. package/lib/node_modules/ohos-typescript/lib/typesMap.json +0 -497
  317. package/lib/node_modules/ohos-typescript/lib/typingsInstaller.js +0 -39871
  318. package/lib/node_modules/ohos-typescript/lib/watchGuard.js +0 -49
  319. package/lib/node_modules/ohos-typescript/lib/zh-cn/diagnosticMessages.generated.json +0 -1880
  320. package/lib/node_modules/ohos-typescript/lib/zh-tw/diagnosticMessages.generated.json +0 -1880
  321. package/lib/utils/DependenciesSort.d.ts +0 -3
  322. package/lib/utils/DependenciesSort.d.ts.map +0 -1
  323. package/lib/utils/DependenciesSort.js +0 -72
  324. package/lib/utils/crypto_utils.d.ts +0 -6
  325. package/lib/utils/crypto_utils.d.ts.map +0 -1
  326. package/lib/utils/crypto_utils.js +0 -57
@@ -39,7 +39,10 @@ var __importStar = (this && this.__importStar) || function (mod) {
39
39
  Object.defineProperty(exports, "__esModule", { value: true });
40
40
  exports.ClosureFieldRef = exports.GlobalRef = exports.ArkCaughtExceptionRef = exports.ArkThisRef = exports.ArkParameterRef = exports.ArkStaticFieldRef = exports.ArkInstanceFieldRef = exports.AbstractFieldRef = exports.ArkArrayRef = exports.AbstractRef = void 0;
41
41
  const logger_1 = __importStar(require("../../utils/logger"));
42
+ const ArkSignature_1 = require("../model/ArkSignature");
43
+ const SignatureCanonicalizerRegistry_1 = require("../common/SignatureCanonicalizerRegistry");
42
44
  const Type_1 = require("./Type");
45
+ const Value_1 = require("./Value");
43
46
  const TypeInference_1 = require("../common/TypeInference");
44
47
  const Stmt_1 = require("./Stmt");
45
48
  const IRInference_1 = require("../common/IRInference");
@@ -47,6 +50,7 @@ const logger = logger_1.default.getLogger(logger_1.LOG_MODULE_TYPE.ARKANALYZER,
47
50
  /**
48
51
  * @category core/base/ref
49
52
  */
53
+ const IS_GENERIC_OR_ANY = (t) => t instanceof Type_1.GenericType || t instanceof Type_1.AnyType;
50
54
  class AbstractRef {
51
55
  inferType(arkMethod) {
52
56
  return this;
@@ -117,13 +121,12 @@ class ArkArrayRef extends AbstractRef {
117
121
  return Type_1.UnknownType.getInstance();
118
122
  }
119
123
  }
120
- getUses() {
121
- let uses = [];
122
- uses.push(this.base);
123
- uses.push(...this.base.getUses());
124
- uses.push(this.index);
125
- uses.push(...this.index.getUses());
126
- return uses;
124
+ getUses(acc = []) {
125
+ acc.push(this.base);
126
+ this.base.getUses(acc);
127
+ acc.push(this.index);
128
+ this.index.getUses(acc);
129
+ return acc;
127
130
  }
128
131
  toString() {
129
132
  return this.base + '[' + this.index + ']';
@@ -133,41 +136,201 @@ exports.ArkArrayRef = ArkArrayRef;
133
136
  class AbstractFieldRef extends AbstractRef {
134
137
  constructor(fieldSignature) {
135
138
  super();
136
- this.fieldSignature = fieldSignature;
139
+ this.route(fieldSignature);
140
+ }
141
+ /** 首路径路由(构造器专用):formal 只读命中 → 持 formal ID(栅栏精化);miss → temp 登记。*/
142
+ route(fieldSignature) {
143
+ const reg = SignatureCanonicalizerRegistry_1.SignatureCanonicalizerRegistry.getInstance();
144
+ if (fieldSignature.isUnclear()) {
145
+ this.fieldSigID = -1;
146
+ this.tempFieldSigID = reg.tempFieldSigCanonicalizer.register(fieldSignature);
147
+ return;
148
+ }
149
+ const existingId = reg.fieldSigCanonicalizer.getExistingId(fieldSignature);
150
+ if (existingId !== -1) {
151
+ const canonical = reg.fieldSigCanonicalizer.get(existingId);
152
+ // formal 路由 + 单向精度栅栏。
153
+ const canonicalType = canonical.getType();
154
+ const incomingType = fieldSignature.getType();
155
+ if (TypeInference_1.TypeInference.isUnclearType(canonicalType) && !TypeInference_1.TypeInference.isUnclearType(incomingType)) {
156
+ canonical.setType(incomingType);
157
+ }
158
+ this.fieldSigID = existingId;
159
+ this.tempFieldSigID = undefined;
160
+ }
161
+ else {
162
+ logger.error(`AbstractFieldRef: clear FieldSignature not interned (route) — routing to temp defensively: ${fieldSignature.toString()}`);
163
+ this.fieldSigID = -1;
164
+ this.tempFieldSigID = reg.tempFieldSigCanonicalizer.register(fieldSignature);
165
+ }
137
166
  }
138
167
  /**
139
168
  * Returns the the field name as a **string**.
140
169
  * @returns The the field name.
141
170
  */
142
171
  getFieldName() {
143
- return this.fieldSignature.getFieldName();
172
+ return this.getFieldSignature().getFieldName();
173
+ }
174
+ /** Returns the field signature. */
175
+ getFieldSignature() {
176
+ const reg = SignatureCanonicalizerRegistry_1.SignatureCanonicalizerRegistry.getInstance();
177
+ if (this.fieldSigID >= 0) {
178
+ const sig = reg.fieldSigCanonicalizer.get(this.fieldSigID);
179
+ if (sig !== undefined) {
180
+ return sig;
181
+ }
182
+ }
183
+ else if (this.tempFieldSigID !== undefined) {
184
+ const sig = reg.tempFieldSigCanonicalizer.get(this.tempFieldSigID);
185
+ if (sig !== undefined) {
186
+ return sig;
187
+ }
188
+ const formalId = reg.tempFieldSigCanonicalizer.getReplacement(this.tempFieldSigID);
189
+ if (formalId !== -1) {
190
+ const formalSig = reg.fieldSigCanonicalizer.get(formalId);
191
+ if (formalSig !== undefined) {
192
+ this.fieldSigID = formalId;
193
+ return formalSig;
194
+ }
195
+ }
196
+ }
197
+ throw new Error('AbstractFieldRef has no signature');
198
+ }
199
+ /** @internal */
200
+ updateFieldSignature(fieldName, declaringOrID, type, staticFlag, namespaceDeclared = false) {
201
+ const reg = SignatureCanonicalizerRegistry_1.SignatureCanonicalizerRegistry.getInstance();
202
+ // a. 未毕业分支。
203
+ if (this.fieldSigID === -1 && this.tempFieldSigID !== undefined) {
204
+ const tempId = this.tempFieldSigID;
205
+ const tempFieldSig = reg.tempFieldSigCanonicalizer.get(tempId);
206
+ if (tempFieldSig === undefined) {
207
+ const formalId = reg.tempFieldSigCanonicalizer.getReplacement(tempId);
208
+ if (formalId !== -1) {
209
+ this.fieldSigID = formalId;
210
+ this.tempFieldSigID = undefined;
211
+ return;
212
+ }
213
+ // stale 兜底:构造真实例走首路径(登记一次)。低频路径(Registry 重建等)。
214
+ this.route(AbstractFieldRef.buildFallbackSignature(fieldName, declaringOrID, type, staticFlag, namespaceDeclared));
215
+ return;
216
+ }
217
+ const oldDeclTempId = tempFieldSig.getDeclaringClassTempSigID();
218
+ tempFieldSig.applyFields(fieldName, declaringOrID, type, staticFlag, namespaceDeclared);
219
+ const existingId = reg.fieldSigCanonicalizer.getExistingId(tempFieldSig);
220
+ if (existingId === -1) {
221
+ return;
222
+ }
223
+ const canonical = reg.fieldSigCanonicalizer.get(existingId);
224
+ if (canonical.getType().isUnclear() && !type.isUnclear()) {
225
+ canonical.setType(type);
226
+ }
227
+ this.fieldSigID = existingId;
228
+ this.tempFieldSigID = undefined;
229
+ reg.tempFieldSigCanonicalizer.retireWithReplacement(tempId, existingId);
230
+ // declaring 联动:新值 declaring 为 formal class 时同步收敛 temp class 行。
231
+ const declSig = tempFieldSig.getDeclaringSignature();
232
+ if (oldDeclTempId !== undefined && declSig instanceof ArkSignature_1.ClassSignature && !declSig.isUnclear()) {
233
+ const declFormalId = tempFieldSig.getDeclaringClassSigID();
234
+ if (declFormalId !== undefined && declFormalId > 0) {
235
+ reg.tempClassSigCanonicalizer.retireWithReplacement(oldDeclTempId, declFormalId);
236
+ }
237
+ }
238
+ return;
239
+ }
240
+ // b. 已毕业分支:只查不降级(低频路径——多轮推导的精化;probe 为值查载体,短命实例可接受)。
241
+ if (this.fieldSigID >= 0) {
242
+ const probe = AbstractFieldRef.buildFallbackSignature(fieldName, declaringOrID, type, staticFlag, namespaceDeclared);
243
+ const existingId = reg.fieldSigCanonicalizer.getExistingId(probe);
244
+ if (existingId !== -1) {
245
+ const canonical = reg.fieldSigCanonicalizer.get(existingId);
246
+ if (canonical.getType().isUnclear() && !type.isUnclear()) {
247
+ canonical.setType(type);
248
+ }
249
+ this.fieldSigID = existingId;
250
+ }
251
+ return;
252
+ }
253
+ // 防御兜底(理论不可达)。
254
+ this.route(AbstractFieldRef.buildFallbackSignature(fieldName, declaringOrID, type, staticFlag, namespaceDeclared));
255
+ }
256
+ /** @internal 兜底/probe 构造(联合类型按重载收窄分发;低频路径)。 */
257
+ static buildFallbackSignature(fieldName, declaringOrID, type, staticFlag, namespaceDeclared) {
258
+ if (typeof declaringOrID === 'number') {
259
+ return namespaceDeclared
260
+ ? new ArkSignature_1.FieldSignature(fieldName, declaringOrID, type, staticFlag, true)
261
+ : new ArkSignature_1.FieldSignature(fieldName, declaringOrID, type, staticFlag);
262
+ }
263
+ return new ArkSignature_1.FieldSignature(fieldName, declaringOrID, type, staticFlag);
264
+ }
265
+ /** @internal 毕业到正式签名 */
266
+ graduateToFormal(formalId) {
267
+ if (formalId <= 0) {
268
+ return;
269
+ }
270
+ const reg = SignatureCanonicalizerRegistry_1.SignatureCanonicalizerRegistry.getInstance();
271
+ const canonical = reg.fieldSigCanonicalizer.get(formalId);
272
+ if (canonical === undefined) {
273
+ return; // stale ID(Registry 重建等)——防御性不动作
274
+ }
275
+ if (this.fieldSigID === -1 && this.tempFieldSigID !== undefined) {
276
+ const tempId = this.tempFieldSigID;
277
+ const S = reg.tempFieldSigCanonicalizer.get(tempId);
278
+ if (S !== undefined) {
279
+ // declaring 联动(毕业的组成部分):旧 declaring temp 行同步收敛,
280
+ // 共享该 declaring stub 的持有者经替换记录自动跟随。
281
+ const oldDeclTempId = S.getDeclaringClassTempSigID();
282
+ const declFormalId = canonical.getDeclaringClassSigID();
283
+ if (oldDeclTempId !== undefined && declFormalId !== undefined && declFormalId > 0) {
284
+ reg.tempClassSigCanonicalizer.retireWithReplacement(oldDeclTempId, declFormalId);
285
+ }
286
+ reg.tempFieldSigCanonicalizer.retireWithReplacement(tempId, formalId);
287
+ }
288
+ // 行已划(共享链已被首毕业者收敛):仅换编号(替换记录已登记)。
289
+ this.fieldSigID = formalId;
290
+ this.tempFieldSigID = undefined;
291
+ return;
292
+ }
293
+ // 已毕业:直接换编号(重复回写 = 无操作;stale 已在开头拦截)。
294
+ this.fieldSigID = formalId;
295
+ }
296
+ /** @internal */
297
+ retireTemp() {
298
+ if (this.fieldSigID === -1 && this.tempFieldSigID !== undefined) {
299
+ SignatureCanonicalizerRegistry_1.SignatureCanonicalizerRegistry.getInstance().tempFieldSigCanonicalizer.retire(this.tempFieldSigID);
300
+ }
144
301
  }
145
302
  /**
146
- * Returns a field signature, which consists of a class signature,
147
- * a **string** field name, and a **boolean** label indicating whether it is static or not.
148
- * @returns The field signature.
149
- * @example
150
- * 1. Compare two Fields
151
-
152
- ```typescript
153
- const fieldSignature = new FieldSignature();
154
- fieldSignature.setFieldName(...);
155
- const fieldRef = new ArkInstanceFieldRef(baseValue as Local, fieldSignature);
156
- ...
157
- if (fieldRef.getFieldSignature().getFieldName() ===
158
- targetField.getFieldSignature().getFieldName()) {
159
- ...
160
- }
161
- ```
303
+ * @internal 替换埋葬(带归宿版):同 {@link retireTemp},但替换产物为
304
+ * formal canonical(static 转换等 formalId 已知场景)——retire 同时记录
305
+ * 替换(temp → formal),供诊断追溯。
162
306
  */
163
- getFieldSignature() {
164
- return this.fieldSignature;
307
+ retireTempTo(formalId) {
308
+ if (this.fieldSigID === -1 && this.tempFieldSigID !== undefined && formalId > 0) {
309
+ SignatureCanonicalizerRegistry_1.SignatureCanonicalizerRegistry.getInstance().tempFieldSigCanonicalizer.retireWithReplacement(this.tempFieldSigID, formalId);
310
+ }
311
+ }
312
+ /** @internal Get the formal FieldSigID(身份视图;泛型双视图下为定义点字段 ID)。-1 = 纯 temp-held。 */
313
+ getFieldSigID() {
314
+ return this.fieldSigID;
315
+ }
316
+ /** @internal Get the temp FieldSigID for the unresolved-signature registration(值视图在 temp 时非空)。 */
317
+ getTempSigID() {
318
+ return this.tempFieldSigID;
165
319
  }
166
- setFieldSignature(newFieldSignature) {
167
- this.fieldSignature = newFieldSignature;
320
+ /** @internal Get the generic instantiation real types of the field (Expr.realGenericTypes 同构)。 */
321
+ getRealFieldTypes() {
322
+ return this.realFieldTypes;
323
+ }
324
+ /** @internal Set the generic instantiation real types. */
325
+ setRealFieldTypes(realTypes) {
326
+ this.realFieldTypes = realTypes;
168
327
  }
169
328
  getType() {
170
- return this.fieldSignature.getType();
329
+ const type = this.getFieldSignature().getType();
330
+ if (TypeInference_1.TypeInference.checkType(type, IS_GENERIC_OR_ANY) && this.realFieldTypes) {
331
+ return TypeInference_1.TypeInference.replaceTypeWithReal(type, this.realFieldTypes);
332
+ }
333
+ return type;
171
334
  }
172
335
  }
173
336
  exports.AbstractFieldRef = AbstractFieldRef;
@@ -208,11 +371,10 @@ class ArkInstanceFieldRef extends AbstractFieldRef {
208
371
  setBase(newBase) {
209
372
  this.base = newBase;
210
373
  }
211
- getUses() {
212
- let uses = [];
213
- uses.push(this.base);
214
- uses.push(...this.base.getUses());
215
- return uses;
374
+ getUses(acc = []) {
375
+ acc.push(this.base);
376
+ this.base.getUses(acc);
377
+ return acc;
216
378
  }
217
379
  toString() {
218
380
  return this.base.toString() + '.<' + this.getFieldSignature() + '>';
@@ -226,8 +388,8 @@ class ArkStaticFieldRef extends AbstractFieldRef {
226
388
  constructor(fieldSignature) {
227
389
  super(fieldSignature);
228
390
  }
229
- getUses() {
230
- return [];
391
+ getUses(acc) {
392
+ return acc !== null && acc !== void 0 ? acc : Value_1.EMPTY_USES;
231
393
  }
232
394
  toString() {
233
395
  return this.getFieldSignature().toString();
@@ -255,8 +417,8 @@ class ArkParameterRef extends AbstractRef {
255
417
  inferType(arkMethod) {
256
418
  return IRInference_1.IRInference.inferParameterRef(this, arkMethod);
257
419
  }
258
- getUses() {
259
- return [];
420
+ getUses(acc) {
421
+ return acc !== null && acc !== void 0 ? acc : Value_1.EMPTY_USES;
260
422
  }
261
423
  toString() {
262
424
  return 'parameter' + this.index + ': ' + this.paramType;
@@ -271,8 +433,8 @@ class ArkThisRef extends AbstractRef {
271
433
  getType() {
272
434
  return this.type;
273
435
  }
274
- getUses() {
275
- return [];
436
+ getUses(acc) {
437
+ return acc !== null && acc !== void 0 ? acc : Value_1.EMPTY_USES;
276
438
  }
277
439
  toString() {
278
440
  return 'this: ' + this.type;
@@ -290,8 +452,8 @@ class ArkCaughtExceptionRef extends AbstractRef {
290
452
  setType(newType) {
291
453
  this.type = newType;
292
454
  }
293
- getUses() {
294
- return [];
455
+ getUses(acc) {
456
+ return acc !== null && acc !== void 0 ? acc : Value_1.EMPTY_USES;
295
457
  }
296
458
  toString() {
297
459
  return 'caughtexception: ' + this.type;
@@ -303,14 +465,14 @@ class GlobalRef extends AbstractRef {
303
465
  super();
304
466
  this.name = name;
305
467
  this.ref = ref !== null && ref !== void 0 ? ref : null;
306
- this.usedStmts = [];
307
468
  }
308
469
  getName() {
309
470
  return this.name;
310
471
  }
311
- getUses() {
472
+ getUses(acc = []) {
312
473
  var _a;
313
- return ((_a = this.ref) === null || _a === void 0 ? void 0 : _a.getUses()) || [];
474
+ (_a = this.ref) === null || _a === void 0 ? void 0 : _a.getUses(acc);
475
+ return acc;
314
476
  }
315
477
  getType() {
316
478
  var _a;
@@ -322,15 +484,27 @@ class GlobalRef extends AbstractRef {
322
484
  setRef(value) {
323
485
  this.ref = value;
324
486
  }
487
+ /**
488
+ * The statements using this global, exposed as a property so that consumers reading the field
489
+ * directly keep seeing an array; same value and same lazy backing list as {@link getUsedStmts}.
490
+ */
491
+ get usedStmts() {
492
+ var _a;
493
+ return (_a = this._usedStmts) !== null && _a !== void 0 ? _a : Value_1.EMPTY_USED_STMTS;
494
+ }
325
495
  getUsedStmts() {
326
- return this.usedStmts;
496
+ var _a;
497
+ return (_a = this._usedStmts) !== null && _a !== void 0 ? _a : Value_1.EMPTY_USED_STMTS;
327
498
  }
328
499
  addUsedStmts(usedStmts) {
500
+ var _a, _b;
329
501
  if (usedStmts instanceof Stmt_1.Stmt) {
330
- this.usedStmts.push(usedStmts);
502
+ ((_a = this._usedStmts) !== null && _a !== void 0 ? _a : (this._usedStmts = [])).push(usedStmts);
331
503
  }
332
504
  else {
333
- usedStmts.forEach(stmt => this.usedStmts.push(stmt));
505
+ for (const stmt of usedStmts) {
506
+ ((_b = this._usedStmts) !== null && _b !== void 0 ? _b : (this._usedStmts = [])).push(stmt);
507
+ }
334
508
  }
335
509
  }
336
510
  toString() {
@@ -345,8 +519,8 @@ class ClosureFieldRef extends AbstractRef {
345
519
  this.fieldName = fieldName;
346
520
  this.type = type;
347
521
  }
348
- getUses() {
349
- return [];
522
+ getUses(acc) {
523
+ return acc !== null && acc !== void 0 ? acc : Value_1.EMPTY_USES;
350
524
  }
351
525
  getBase() {
352
526
  return this.base;
@@ -17,12 +17,12 @@ export declare abstract class Stmt {
17
17
  * Undefined when this statement is automatically generated during IR construction. */
18
18
  protected originFullPosition?: FullPosition;
19
19
  protected cfg: Cfg;
20
- protected operandOriginalPositions?: FullPosition[];
20
+ protected operandPositionsPacked?: number[];
21
21
  metadata?: ArkMetadata;
22
22
  getMetadata(kind: ArkMetadataKind): ArkMetadataType | undefined;
23
23
  setMetadata(kind: ArkMetadataKind, value: ArkMetadataType): void;
24
24
  /** Return a list of values which are uesd in this statement */
25
- getUses(): Value[];
25
+ getUses(acc?: Value[]): Value[];
26
26
  replaceUse(oldUse: Value, newUse: Value): void;
27
27
  /**
28
28
  * Return the definition which is uesd in this statement. Generally, the definition is the left value of `=` in
@@ -42,7 +42,7 @@ export declare abstract class Stmt {
42
42
  */
43
43
  getDef(): Value | null;
44
44
  replaceDef(oldDef: Value, newDef: Value): void;
45
- getDefAndUses(): Value[];
45
+ getDefAndUses(acc?: Value[]): Value[];
46
46
  /**
47
47
  * Get the CFG (i.e., control flow graph) of an {@link ArkBody} in which the statement is.
48
48
  * A CFG contains a set of basic blocks and statements corresponding to each basic block.
@@ -153,12 +153,22 @@ export declare abstract class Stmt {
153
153
  * during IR construction or if the extraction fails.
154
154
  */
155
155
  getOriginalText(): string | undefined;
156
+ /**
157
+ * Returns the absolute full position of this statement's invoke.
158
+ * Start is the callee identifier; end is the CallExpression span end (right of `)`),
159
+ * same half-open convention as {@link getOriginFullPosition}.
160
+ * The span is captured from the AST at IR construction.
161
+ * @returns Absolute `FullPosition` of `methodName(...)`, or `FullPosition.DEFAULT` if not found.
162
+ */
163
+ getInvokeFullPosition(): FullPosition;
156
164
  /**
157
165
  * Clears the cached source text, forcing re-extraction on next getOriginalText call.
158
166
  */
159
167
  clearSourceCode(): void;
160
168
  setOperandOriginalPositions(operandOriginalPositions: FullPosition[]): void;
161
169
  getOperandOriginalPositions(): FullPosition[] | undefined;
170
+ /** @internal Compact interleaved [first, last] storage; splice in pairs. */
171
+ getOperandPositionsPacked(): number[] | undefined;
162
172
  getOperandOriginalPosition(indexOrOperand: number | Value): FullPosition | null;
163
173
  }
164
174
  export declare class ArkAssignStmt extends Stmt {
@@ -189,7 +199,7 @@ export declare class ArkAssignStmt extends Stmt {
189
199
  setRightOp(rightOp: Value): void;
190
200
  toString(): string;
191
201
  getDef(): Value | null;
192
- getUses(): Value[];
202
+ getUses(acc?: Value[]): Value[];
193
203
  }
194
204
  export declare class ArkInvokeStmt extends Stmt {
195
205
  private invokeExpr;
@@ -197,7 +207,7 @@ export declare class ArkInvokeStmt extends Stmt {
197
207
  replaceInvokeExpr(newExpr: AbstractInvokeExpr): void;
198
208
  getInvokeExpr(): AbstractInvokeExpr;
199
209
  toString(): string;
200
- getUses(): Value[];
210
+ getUses(acc?: Value[]): Value[];
201
211
  }
202
212
  export declare class ArkIfStmt extends Stmt {
203
213
  private conditionExpr;
@@ -220,7 +230,7 @@ export declare class ArkIfStmt extends Stmt {
220
230
  isBranch(): boolean;
221
231
  getExpectedSuccessorCount(): number;
222
232
  toString(): string;
223
- getUses(): Value[];
233
+ getUses(acc?: Value[]): Value[];
224
234
  }
225
235
  export declare class ArkReturnStmt extends Stmt {
226
236
  private op;
@@ -229,7 +239,7 @@ export declare class ArkReturnStmt extends Stmt {
229
239
  getOp(): Value;
230
240
  setReturnValue(returnValue: Value): void;
231
241
  toString(): string;
232
- getUses(): Value[];
242
+ getUses(acc?: Value[]): Value[];
233
243
  }
234
244
  export declare class ArkReturnVoidStmt extends Stmt {
235
245
  constructor();
@@ -242,7 +252,7 @@ export declare class ArkThrowStmt extends Stmt {
242
252
  getOp(): Value;
243
253
  setOp(newOp: Value): void;
244
254
  toString(): string;
245
- getUses(): Value[];
255
+ getUses(acc?: Value[]): Value[];
246
256
  }
247
257
  /**
248
258
  * Statement of type alias definition combines with the left hand as {@link AliasType} and right hand as {@link AliasTypeExpr}.
@@ -265,7 +275,7 @@ export declare class ArkAliasTypeDefineStmt extends Stmt {
265
275
  getAliasTypeExpr(): AliasTypeExpr;
266
276
  getAliasName(): string;
267
277
  toString(): string;
268
- getUses(): Value[];
278
+ getUses(acc?: Value[]): Value[];
269
279
  getTypeExprs(): AbstractTypeExpr[];
270
280
  }
271
281
  //# sourceMappingURL=Stmt.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Stmt.d.ts","sourceRoot":"","sources":["../../../src/core/base/Stmt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Stmt.d.ts","sourceRoot":"","sources":["../../../src/core/base/Stmt.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAC3F,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAc,KAAK,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGrF,OAAO,EAAE,SAAS,EAA2D,MAAM,QAAQ,CAAC;AAE5F,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAK9C;;GAEG;AACH,8BAAsB,IAAI;IACtB,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAChC,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC9B;2FACuF;IACvF,SAAS,CAAC,kBAAkB,CAAC,EAAE,YAAY,CAAC;IAC5C,SAAS,CAAC,GAAG,EAAG,GAAG,CAAC;IACpB,SAAS,CAAC,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE5C,QAAQ,CAAC,EAAE,WAAW,CAAC;IAEhB,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,eAAe,GAAG,SAAS;IAI/D,WAAW,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,eAAe,GAAG,IAAI;IAOvE,+DAA+D;IACxD,OAAO,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE;IAI/B,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,GAAG,IAAI;IAKrD;;;;;;;;;;;;;;;OAeG;IACI,MAAM,IAAI,KAAK,GAAG,IAAI;IAItB,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,GAAG,IAAI;IAK9C,aAAa,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE;IAU5C;;;;;;;;;;;;;;;;;;OAkBG;IACI,MAAM,IAAI,GAAG;IAIb,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI;IAI7B;;;OAGG;IACI,QAAQ,IAAI,OAAO;IAI1B,qEAAqE;IAC9D,yBAAyB,IAAI,MAAM;IAInC,kBAAkB,IAAI,OAAO;IAcpC;;;;;;;;;;OAUG;IACI,aAAa,IAAI,kBAAkB,GAAG,SAAS;IActD;;;;;;;;;;;OAWG;IACI,QAAQ,IAAI,YAAY,EAAE;IAY1B,YAAY,IAAI,gBAAgB,EAAE;IAWlC,gBAAgB,IAAI,OAAO;IAiB3B,WAAW,IAAI,WAAW,GAAG,SAAS;IAmBtC,gBAAgB,IAAI,OAAO;IAkB3B,WAAW,IAAI,gBAAgB,GAAG,SAAS;IAiBlD;;;OAGG;IACI,qBAAqB,CAAC,kBAAkB,EAAE,eAAe,GAAG,IAAI;IASvE;;;;;;;;;;;;;;;;;;;OAmBG;IACI,qBAAqB,IAAI,eAAe;IAO/C;;;OAGG;IACI,qBAAqB,CAAC,kBAAkB,EAAE,YAAY,GAAG,IAAI;IAIpE;;;;OAIG;IACI,qBAAqB,IAAI,YAAY,GAAG,SAAS;IAIxD,QAAQ,CAAC,QAAQ,IAAI,MAAM;IAEpB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIlC;;;OAGG;IACI,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAClD;;;;;OAKG;IACI,eAAe,IAAI,MAAM,GAAG,SAAS;IAe5C;;;;;;OAMG;IACI,qBAAqB,IAAI,YAAY;IAe5C;;OAEG;IACI,eAAe,IAAI,IAAI;IAIvB,2BAA2B,CAAC,wBAAwB,EAAE,YAAY,EAAE,GAAG,IAAI;IAe3E,2BAA2B,IAAI,YAAY,EAAE,GAAG,SAAS;IAahE,4EAA4E;IACrE,yBAAyB,IAAI,MAAM,EAAE,GAAG,SAAS;IAIjD,0BAA0B,CAAC,cAAc,EAAE,MAAM,GAAG,KAAK,GAAG,YAAY,GAAG,IAAI;CAkBzF;AAED,qBAAa,aAAc,SAAQ,IAAI;IACnC,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,OAAO,CAAQ;gBAEX,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK;IAMzC;;;;;;OAMG;IACI,SAAS,IAAI,KAAK;IAIlB,SAAS,CAAC,SAAS,EAAE,KAAK,GAAG,IAAI;IAIxC;;;;;;;;;;OAUG;IACI,UAAU,IAAI,KAAK;IAInB,UAAU,CAAC,OAAO,EAAE,KAAK,GAAG,IAAI;IAIhC,QAAQ,IAAI,MAAM;IAKlB,MAAM,IAAI,KAAK,GAAG,IAAI;IAItB,OAAO,CAAC,GAAG,GAAE,KAAK,EAAO,GAAG,KAAK,EAAE;CAM7C;AAED,qBAAa,aAAc,SAAQ,IAAI;IACnC,OAAO,CAAC,UAAU,CAAqB;gBAE3B,UAAU,EAAE,kBAAkB;IAKnC,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI;IAIpD,aAAa,IAAI,kBAAkB;IAInC,QAAQ,IAAI,MAAM;IAKlB,OAAO,CAAC,GAAG,GAAE,KAAK,EAAO,GAAG,KAAK,EAAE;CAK7C;AAED,qBAAa,SAAU,SAAQ,IAAI;IAC/B,OAAO,CAAC,aAAa,CAAmB;gBAE5B,aAAa,EAAE,gBAAgB;IAK3C;;;;;;;;;;;;OAYG;IACI,gBAAgB,IAAI,gBAAgB;IAIpC,gBAAgB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,IAAI;IAI1D,QAAQ,IAAI,OAAO;IAInB,yBAAyB,IAAI,MAAM;IAInC,QAAQ,IAAI,MAAM;IAKlB,OAAO,CAAC,GAAG,GAAE,KAAK,EAAO,GAAG,KAAK,EAAE;CAK7C;AAED,qBAAa,aAAc,SAAQ,IAAI;IACnC,OAAO,CAAC,EAAE,CAAQ;gBAEN,EAAE,EAAE,KAAK;IAKd,yBAAyB,IAAI,MAAM;IAInC,KAAK,IAAI,KAAK;IAId,cAAc,CAAC,WAAW,EAAE,KAAK,GAAG,IAAI;IAIxC,QAAQ,IAAI,MAAM;IAKlB,OAAO,CAAC,GAAG,GAAE,KAAK,EAAO,GAAG,KAAK,EAAE;CAK7C;AAED,qBAAa,iBAAkB,SAAQ,IAAI;;IAKhC,yBAAyB,IAAI,MAAM;IAInC,QAAQ,IAAI,MAAM;CAI5B;AAED,qBAAa,YAAa,SAAQ,IAAI;IAClC,OAAO,CAAC,EAAE,CAAQ;gBAEN,EAAE,EAAE,KAAK;IAKd,KAAK,IAAI,KAAK;IAId,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAIzB,QAAQ,IAAI,MAAM;IAKlB,OAAO,CAAC,GAAG,GAAE,KAAK,EAAO,GAAG,KAAK,EAAE;CAK7C;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,sBAAuB,SAAQ,IAAI;IAC5C,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,aAAa,CAAgB;gBAEzB,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa;IAMvD,YAAY,IAAI,SAAS;IAIzB,gBAAgB,IAAI,aAAa;IAIjC,YAAY,IAAI,MAAM;IAItB,QAAQ,IAAI,MAAM;IAWlB,OAAO,CAAC,GAAG,GAAE,KAAK,EAAO,GAAG,KAAK,EAAE;IAQnC,YAAY,IAAI,gBAAgB,EAAE;CAqB5C"}