arkanalyzer 1.0.85 → 1.0.87

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 (400) hide show
  1. package/README.en.md +69 -65
  2. package/README.md +56 -70
  3. package/config/arkanalyzer.json +7 -2
  4. package/docs/cppFrontend/ArkAnalyzer-cpp_usage_guide.md +245 -0
  5. package/docs/cppFrontend/cpp_frontend_build_guide.md +126 -0
  6. package/docs/cppFrontend/cpp_frontend_user_guide.md +175 -0
  7. package/docs/cppFrontend/img.png +0 -0
  8. package/docs/cppFrontend/img_1.png +0 -0
  9. package/docs/cppFrontend/img_10.png +0 -0
  10. package/docs/cppFrontend/img_11.png +0 -0
  11. package/docs/cppFrontend/img_12.png +0 -0
  12. package/docs/cppFrontend/img_13.png +0 -0
  13. package/docs/cppFrontend/img_14.png +0 -0
  14. package/docs/cppFrontend/img_15.png +0 -0
  15. package/docs/cppFrontend/img_16.png +0 -0
  16. package/docs/cppFrontend/img_17.png +0 -0
  17. package/docs/cppFrontend/img_18.png +0 -0
  18. package/docs/cppFrontend/img_19.png +0 -0
  19. package/docs/cppFrontend/img_2.png +0 -0
  20. package/docs/cppFrontend/img_20.png +0 -0
  21. package/docs/cppFrontend/img_21.png +0 -0
  22. package/docs/cppFrontend/img_22.png +0 -0
  23. package/docs/cppFrontend/img_23.png +0 -0
  24. package/docs/cppFrontend/img_3.png +0 -0
  25. package/docs/cppFrontend/img_4.png +0 -0
  26. package/docs/cppFrontend/img_5.png +0 -0
  27. package/docs/cppFrontend/img_6.png +0 -0
  28. package/docs/cppFrontend/img_7.png +0 -0
  29. package/docs/cppFrontend/img_8.png +0 -0
  30. package/docs/cppFrontend/img_9.png +0 -0
  31. package/docs/sig_programanalysis.en.md +66 -0
  32. package/docs/sig_programanalysis.md +73 -0
  33. package/lib/Config.d.ts +32 -1
  34. package/lib/Config.d.ts.map +1 -1
  35. package/lib/Config.js +76 -2
  36. package/lib/Scene.d.ts +25 -2
  37. package/lib/Scene.d.ts.map +1 -1
  38. package/lib/Scene.js +148 -40
  39. package/lib/callgraph/algorithm/AbstractAnalysis.d.ts +4 -3
  40. package/lib/callgraph/algorithm/AbstractAnalysis.d.ts.map +1 -1
  41. package/lib/callgraph/algorithm/AbstractAnalysis.js +17 -17
  42. package/lib/callgraph/algorithm/RapidTypeAnalysis.d.ts +6 -1
  43. package/lib/callgraph/algorithm/RapidTypeAnalysis.d.ts.map +1 -1
  44. package/lib/callgraph/algorithm/RapidTypeAnalysis.js +117 -14
  45. package/lib/callgraph/common/Statistics.d.ts +4 -2
  46. package/lib/callgraph/common/Statistics.d.ts.map +1 -1
  47. package/lib/callgraph/common/Statistics.js +14 -2
  48. package/lib/callgraph/model/CallGraph.d.ts +12 -8
  49. package/lib/callgraph/model/CallGraph.d.ts.map +1 -1
  50. package/lib/callgraph/model/CallGraph.js +53 -29
  51. package/lib/callgraph/model/builder/CallGraphBuilder.d.ts +1 -0
  52. package/lib/callgraph/model/builder/CallGraphBuilder.d.ts.map +1 -1
  53. package/lib/callgraph/model/builder/CallGraphBuilder.js +5 -1
  54. package/lib/callgraph/pointerAnalysis/Pag.d.ts.map +1 -1
  55. package/lib/callgraph/pointerAnalysis/Pag.js +3 -0
  56. package/lib/callgraph/pointerAnalysis/PointerAnalysis.js +4 -2
  57. package/lib/cli/cli.d.ts +3 -0
  58. package/lib/cli/cli.d.ts.map +1 -0
  59. package/lib/cli/cli.js +82 -0
  60. package/lib/cli/commands/cg.d.ts +32 -0
  61. package/lib/cli/commands/cg.d.ts.map +1 -0
  62. package/lib/cli/commands/cg.js +401 -0
  63. package/lib/cli/commands/index.d.ts +6 -0
  64. package/lib/cli/commands/index.d.ts.map +1 -0
  65. package/lib/cli/commands/index.js +64 -0
  66. package/lib/cli/commands/ir.d.ts +26 -0
  67. package/lib/cli/commands/ir.d.ts.map +1 -0
  68. package/lib/cli/commands/ir.js +94 -0
  69. package/lib/core/base/Constant.d.ts +1 -1
  70. package/lib/core/base/Constant.d.ts.map +1 -1
  71. package/lib/core/base/Constant.js +1 -1
  72. package/lib/core/base/Expr.d.ts +29 -5
  73. package/lib/core/base/Expr.d.ts.map +1 -1
  74. package/lib/core/base/Expr.js +144 -22
  75. package/lib/core/base/Position.d.ts +14 -0
  76. package/lib/core/base/Position.d.ts.map +1 -1
  77. package/lib/core/base/Position.js +27 -0
  78. package/lib/core/base/Ref.d.ts +1 -0
  79. package/lib/core/base/Ref.d.ts.map +1 -1
  80. package/lib/core/base/Ref.js +4 -1
  81. package/lib/core/base/Type.d.ts +64 -24
  82. package/lib/core/base/Type.d.ts.map +1 -1
  83. package/lib/core/base/Type.js +144 -49
  84. package/lib/core/common/ArkError.d.ts +26 -2
  85. package/lib/core/common/ArkError.d.ts.map +1 -1
  86. package/lib/core/common/ArkError.js +56 -2
  87. package/lib/core/common/ArkIRTransformer.d.ts +11 -10
  88. package/lib/core/common/ArkIRTransformer.d.ts.map +1 -1
  89. package/lib/core/common/ArkIRTransformer.js +1 -1
  90. package/lib/core/common/ArkValueTransformer.d.ts +14 -12
  91. package/lib/core/common/ArkValueTransformer.d.ts.map +1 -1
  92. package/lib/core/common/ArkValueTransformer.js +1 -5
  93. package/lib/core/common/Const.d.ts +3 -0
  94. package/lib/core/common/Const.d.ts.map +1 -1
  95. package/lib/core/common/Const.js +4 -1
  96. package/lib/core/common/DummyMainCreater.d.ts +23 -13
  97. package/lib/core/common/DummyMainCreater.d.ts.map +1 -1
  98. package/lib/core/common/DummyMainCreater.js +66 -43
  99. package/lib/core/common/EtsConst.d.ts +11 -0
  100. package/lib/core/common/EtsConst.d.ts.map +1 -1
  101. package/lib/core/common/EtsConst.js +12 -1
  102. package/lib/core/common/IRInference.d.ts.map +1 -1
  103. package/lib/core/common/IRInference.js +5 -1
  104. package/lib/core/common/ModelUtils.d.ts +4 -7
  105. package/lib/core/common/ModelUtils.d.ts.map +1 -1
  106. package/lib/core/common/ModelUtils.js +77 -110
  107. package/lib/core/common/SdkUtils.d.ts +1 -1
  108. package/lib/core/common/SdkUtils.d.ts.map +1 -1
  109. package/lib/core/common/SdkUtils.js +14 -5
  110. package/lib/core/common/TypeInference.d.ts.map +1 -1
  111. package/lib/core/common/TypeInference.js +9 -3
  112. package/lib/core/graph/BaseExplicitGraph.d.ts +4 -4
  113. package/lib/core/graph/BaseExplicitGraph.d.ts.map +1 -1
  114. package/lib/core/graph/BaseExplicitGraph.js +15 -8
  115. package/lib/core/graph/BasicBlock.d.ts.map +1 -1
  116. package/lib/core/graph/Scc.d.ts.map +1 -1
  117. package/lib/core/graph/Scc.js +7 -2
  118. package/lib/core/graph/builder/CfgBuilder.d.ts +10 -7
  119. package/lib/core/graph/builder/CfgBuilder.d.ts.map +1 -1
  120. package/lib/core/graph/builder/CfgBuilder.js +12 -5
  121. package/lib/core/inference/Inference.d.ts.map +1 -1
  122. package/lib/core/inference/Inference.js +7 -0
  123. package/lib/core/inference/ModelInference.d.ts +1 -1
  124. package/lib/core/inference/ModelInference.d.ts.map +1 -1
  125. package/lib/core/inference/ValueInference.d.ts +3 -2
  126. package/lib/core/inference/ValueInference.d.ts.map +1 -1
  127. package/lib/core/inference/ValueInference.js +64 -12
  128. package/lib/core/inference/abc/AbcInference.d.ts +28 -2
  129. package/lib/core/inference/abc/AbcInference.d.ts.map +1 -1
  130. package/lib/core/inference/abc/AbcInference.js +105 -4
  131. package/lib/core/model/ArkBaseModel.d.ts +14 -1
  132. package/lib/core/model/ArkBaseModel.d.ts.map +1 -1
  133. package/lib/core/model/ArkBaseModel.js +61 -2
  134. package/lib/core/model/ArkBody.d.ts.map +1 -1
  135. package/lib/core/model/ArkBody.js +1 -3
  136. package/lib/core/model/ArkClass.d.ts +22 -2
  137. package/lib/core/model/ArkClass.d.ts.map +1 -1
  138. package/lib/core/model/ArkClass.js +59 -28
  139. package/lib/core/model/ArkField.d.ts.map +1 -1
  140. package/lib/core/model/ArkField.js +3 -1
  141. package/lib/core/model/ArkFile.d.ts +4 -1
  142. package/lib/core/model/ArkFile.d.ts.map +1 -1
  143. package/lib/core/model/ArkFile.js +44 -3
  144. package/lib/core/model/ArkImport.d.ts.map +1 -1
  145. package/lib/core/model/ArkImport.js +9 -1
  146. package/lib/core/model/ArkMethod.d.ts +5 -0
  147. package/lib/core/model/ArkMethod.d.ts.map +1 -1
  148. package/lib/core/model/ArkMethod.js +33 -1
  149. package/lib/core/model/ArkNamespace.d.ts +2 -0
  150. package/lib/core/model/ArkNamespace.d.ts.map +1 -1
  151. package/lib/core/model/ArkNamespace.js +11 -0
  152. package/lib/core/model/ArkSignature.d.ts +3 -3
  153. package/lib/core/model/ArkSignature.d.ts.map +1 -1
  154. package/lib/core/model/ArkSignature.js +14 -9
  155. package/lib/core/model/builder/ArkClassBuilder.d.ts +2 -0
  156. package/lib/core/model/builder/ArkClassBuilder.d.ts.map +1 -1
  157. package/lib/core/model/builder/ArkClassBuilder.js +3 -3
  158. package/lib/core/model/builder/ArkMethodBuilder.d.ts +4 -1
  159. package/lib/core/model/builder/ArkMethodBuilder.d.ts.map +1 -1
  160. package/lib/core/model/builder/ArkMethodBuilder.js +19 -6
  161. package/lib/core/model/builder/ArkNamespaceBuilder.d.ts +1 -0
  162. package/lib/core/model/builder/ArkNamespaceBuilder.d.ts.map +1 -1
  163. package/lib/core/model/builder/ArkNamespaceBuilder.js +2 -1
  164. package/lib/core/model/builder/BodyBuilder.d.ts +4 -0
  165. package/lib/core/model/builder/BodyBuilder.d.ts.map +1 -1
  166. package/lib/core/model/builder/builderUtils.d.ts +1 -0
  167. package/lib/core/model/builder/builderUtils.d.ts.map +1 -1
  168. package/lib/core/model/builder/builderUtils.js +7 -3
  169. package/lib/frontend/cppFrontend/ast/ArkCxxAstNode.d.ts +296 -0
  170. package/lib/frontend/cppFrontend/ast/ArkCxxAstNode.d.ts.map +1 -0
  171. package/lib/frontend/cppFrontend/ast/ArkCxxAstNode.js +145 -0
  172. package/lib/frontend/cppFrontend/ast/astUtils.d.ts +51 -0
  173. package/lib/frontend/cppFrontend/ast/astUtils.d.ts.map +1 -0
  174. package/lib/frontend/cppFrontend/ast/astUtils.js +470 -0
  175. package/lib/frontend/cppFrontend/ast/const.d.ts +30 -0
  176. package/lib/frontend/cppFrontend/ast/const.d.ts.map +1 -0
  177. package/lib/frontend/cppFrontend/ast/const.js +134 -0
  178. package/lib/frontend/cppFrontend/base/Constant.d.ts +9 -0
  179. package/lib/frontend/cppFrontend/base/Constant.d.ts.map +1 -0
  180. package/lib/frontend/cppFrontend/base/Constant.js +33 -0
  181. package/lib/frontend/cppFrontend/base/Expr.d.ts +174 -0
  182. package/lib/frontend/cppFrontend/base/Expr.d.ts.map +1 -0
  183. package/lib/frontend/cppFrontend/base/Expr.js +530 -0
  184. package/lib/frontend/cppFrontend/base/Ref.d.ts +25 -0
  185. package/lib/frontend/cppFrontend/base/Ref.d.ts.map +1 -0
  186. package/lib/frontend/cppFrontend/base/Ref.js +53 -0
  187. package/lib/frontend/cppFrontend/base/Trap.d.ts +8 -0
  188. package/lib/frontend/cppFrontend/base/Trap.d.ts.map +1 -0
  189. package/lib/frontend/cppFrontend/base/Trap.js +28 -0
  190. package/lib/frontend/cppFrontend/base/Type.d.ts +264 -0
  191. package/lib/frontend/cppFrontend/base/Type.d.ts.map +1 -0
  192. package/lib/frontend/cppFrontend/base/Type.js +600 -0
  193. package/lib/frontend/cppFrontend/common/ArkIRTransformer.d.ts +109 -0
  194. package/lib/frontend/cppFrontend/common/ArkIRTransformer.d.ts.map +1 -0
  195. package/lib/frontend/cppFrontend/common/ArkIRTransformer.js +925 -0
  196. package/lib/frontend/cppFrontend/common/ArkValueTransformer.d.ts +477 -0
  197. package/lib/frontend/cppFrontend/common/ArkValueTransformer.d.ts.map +1 -0
  198. package/lib/frontend/cppFrontend/common/ArkValueTransformer.js +2746 -0
  199. package/lib/frontend/cppFrontend/common/Builtin.d.ts +57 -0
  200. package/lib/frontend/cppFrontend/common/Builtin.d.ts.map +1 -0
  201. package/lib/frontend/cppFrontend/common/Builtin.js +106 -0
  202. package/lib/frontend/cppFrontend/common/IRInference.d.ts +94 -0
  203. package/lib/frontend/cppFrontend/common/IRInference.d.ts.map +1 -0
  204. package/lib/frontend/cppFrontend/common/IRInference.js +1087 -0
  205. package/lib/frontend/cppFrontend/common/IRUtils.d.ts +23 -0
  206. package/lib/frontend/cppFrontend/common/IRUtils.d.ts.map +1 -0
  207. package/lib/frontend/cppFrontend/common/IRUtils.js +168 -0
  208. package/lib/frontend/cppFrontend/common/ModelUtils.d.ts +44 -0
  209. package/lib/frontend/cppFrontend/common/ModelUtils.d.ts.map +1 -0
  210. package/lib/frontend/cppFrontend/common/ModelUtils.js +567 -0
  211. package/lib/frontend/cppFrontend/common/TypeInference.d.ts +278 -0
  212. package/lib/frontend/cppFrontend/common/TypeInference.d.ts.map +1 -0
  213. package/lib/frontend/cppFrontend/common/TypeInference.js +1354 -0
  214. package/lib/frontend/cppFrontend/common/ValueUtil.d.ts +16 -0
  215. package/lib/frontend/cppFrontend/common/ValueUtil.d.ts.map +1 -0
  216. package/lib/frontend/cppFrontend/common/ValueUtil.js +61 -0
  217. package/lib/frontend/cppFrontend/graph/builder/CfgBuilder.d.ts +182 -0
  218. package/lib/frontend/cppFrontend/graph/builder/CfgBuilder.d.ts.map +1 -0
  219. package/lib/frontend/cppFrontend/graph/builder/CfgBuilder.js +1435 -0
  220. package/lib/frontend/cppFrontend/graph/builder/ConditionBuilder.d.ts +21 -0
  221. package/lib/frontend/cppFrontend/graph/builder/ConditionBuilder.d.ts.map +1 -0
  222. package/lib/frontend/cppFrontend/graph/builder/ConditionBuilder.js +303 -0
  223. package/lib/frontend/cppFrontend/graph/builder/IfBuilder.d.ts +15 -0
  224. package/lib/frontend/cppFrontend/graph/builder/IfBuilder.d.ts.map +1 -0
  225. package/lib/frontend/cppFrontend/graph/builder/IfBuilder.js +161 -0
  226. package/lib/frontend/cppFrontend/graph/builder/LoopBuilder.d.ts +21 -0
  227. package/lib/frontend/cppFrontend/graph/builder/LoopBuilder.d.ts.map +1 -0
  228. package/lib/frontend/cppFrontend/graph/builder/LoopBuilder.js +261 -0
  229. package/lib/frontend/cppFrontend/graph/builder/SwitchBuilder.d.ts +12 -0
  230. package/lib/frontend/cppFrontend/graph/builder/SwitchBuilder.d.ts.map +1 -0
  231. package/lib/frontend/cppFrontend/graph/builder/SwitchBuilder.js +155 -0
  232. package/lib/frontend/cppFrontend/graph/builder/TrapBuilder.d.ts +29 -0
  233. package/lib/frontend/cppFrontend/graph/builder/TrapBuilder.d.ts.map +1 -0
  234. package/lib/frontend/cppFrontend/graph/builder/TrapBuilder.js +302 -0
  235. package/lib/frontend/cppFrontend/inference/CxxInference.d.ts +10 -0
  236. package/lib/frontend/cppFrontend/inference/CxxInference.d.ts.map +1 -0
  237. package/lib/frontend/cppFrontend/inference/CxxInference.js +41 -0
  238. package/lib/frontend/cppFrontend/inference/CxxModelInference.d.ts +28 -0
  239. package/lib/frontend/cppFrontend/inference/CxxModelInference.d.ts.map +1 -0
  240. package/lib/frontend/cppFrontend/inference/CxxModelInference.js +98 -0
  241. package/lib/frontend/cppFrontend/inference/CxxValueInference.d.ts +20 -0
  242. package/lib/frontend/cppFrontend/inference/CxxValueInference.d.ts.map +1 -0
  243. package/lib/frontend/cppFrontend/inference/CxxValueInference.js +128 -0
  244. package/lib/frontend/cppFrontend/model/builder/ArkClassBuilder.d.ts +11 -0
  245. package/lib/frontend/cppFrontend/model/builder/ArkClassBuilder.d.ts.map +1 -0
  246. package/lib/frontend/cppFrontend/model/builder/ArkClassBuilder.js +413 -0
  247. package/lib/frontend/cppFrontend/model/builder/ArkFieldBuilder.d.ts +5 -0
  248. package/lib/frontend/cppFrontend/model/builder/ArkFieldBuilder.d.ts.map +1 -0
  249. package/lib/frontend/cppFrontend/model/builder/ArkFieldBuilder.js +61 -0
  250. package/lib/frontend/cppFrontend/model/builder/ArkFileBuilder.d.ts +17 -0
  251. package/lib/frontend/cppFrontend/model/builder/ArkFileBuilder.d.ts.map +1 -0
  252. package/lib/frontend/cppFrontend/model/builder/ArkFileBuilder.js +285 -0
  253. package/lib/frontend/cppFrontend/model/builder/ArkImportBuilder.d.ts +6 -0
  254. package/lib/frontend/cppFrontend/model/builder/ArkImportBuilder.d.ts.map +1 -0
  255. package/lib/frontend/cppFrontend/model/builder/ArkImportBuilder.js +57 -0
  256. package/lib/frontend/cppFrontend/model/builder/ArkMethodBuilder.d.ts +14 -0
  257. package/lib/frontend/cppFrontend/model/builder/ArkMethodBuilder.d.ts.map +1 -0
  258. package/lib/frontend/cppFrontend/model/builder/ArkMethodBuilder.js +422 -0
  259. package/lib/frontend/cppFrontend/model/builder/ArkNamespaceBuilder.d.ts +8 -0
  260. package/lib/frontend/cppFrontend/model/builder/ArkNamespaceBuilder.d.ts.map +1 -0
  261. package/lib/frontend/cppFrontend/model/builder/ArkNamespaceBuilder.js +194 -0
  262. package/lib/frontend/cppFrontend/model/builder/BodyBuilder.d.ts +59 -0
  263. package/lib/frontend/cppFrontend/model/builder/BodyBuilder.d.ts.map +1 -0
  264. package/lib/frontend/cppFrontend/model/builder/BodyBuilder.js +605 -0
  265. package/lib/frontend/cppFrontend/model/builder/builderUtils.d.ts +46 -0
  266. package/lib/frontend/cppFrontend/model/builder/builderUtils.d.ts.map +1 -0
  267. package/lib/frontend/cppFrontend/model/builder/builderUtils.js +499 -0
  268. package/lib/frontend/cppFrontend/utils/cmakeUtils.d.ts +44 -0
  269. package/lib/frontend/cppFrontend/utils/cmakeUtils.d.ts.map +1 -0
  270. package/lib/frontend/cppFrontend/utils/cmakeUtils.js +240 -0
  271. package/lib/index.d.ts +1 -0
  272. package/lib/index.d.ts.map +1 -1
  273. package/lib/index.js +7 -1
  274. package/lib/node_modules/ohos-typescript/.ohos-typescript-version +1 -0
  275. package/{node_modules → lib/node_modules}/ohos-typescript/package.json +2 -1
  276. package/lib/save/CGJsonPrinter.d.ts +8 -0
  277. package/lib/save/CGJsonPrinter.d.ts.map +1 -0
  278. package/lib/save/CGJsonPrinter.js +41 -0
  279. package/lib/save/GraphPrinter.js +2 -2
  280. package/lib/save/json/JsonDto.d.ts +86 -2
  281. package/lib/save/json/JsonDto.d.ts.map +1 -1
  282. package/lib/save/json/JsonSerialization.d.ts +1 -1
  283. package/lib/save/json/JsonSerialization.d.ts.map +1 -1
  284. package/lib/save/json/JsonSerialization.js +235 -145
  285. package/lib/save/source/SourceTransformer.d.ts.map +1 -1
  286. package/lib/save/source/SourceTransformer.js +0 -3
  287. package/lib/utils/CxxSceneUtils.d.ts +11 -0
  288. package/lib/utils/CxxSceneUtils.d.ts.map +1 -0
  289. package/lib/utils/CxxSceneUtils.js +178 -0
  290. package/lib/utils/FileUtils.d.ts +7 -8
  291. package/lib/utils/FileUtils.d.ts.map +1 -1
  292. package/lib/utils/FileUtils.js +27 -45
  293. package/lib/utils/LRUCacheDecorator.d.ts +20 -0
  294. package/lib/utils/LRUCacheDecorator.d.ts.map +1 -0
  295. package/lib/utils/LRUCacheDecorator.js +89 -0
  296. package/lib/utils/ModuleUtils.d.ts +39 -0
  297. package/lib/utils/ModuleUtils.d.ts.map +1 -0
  298. package/lib/utils/ModuleUtils.js +261 -0
  299. package/package.json +15 -12
  300. /package/{node_modules → lib/node_modules}/ohos-typescript/LICENSE +0 -0
  301. /package/{node_modules → lib/node_modules}/ohos-typescript/README.OpenSource +0 -0
  302. /package/{node_modules → lib/node_modules}/ohos-typescript/README.md +0 -0
  303. /package/{node_modules → lib/node_modules}/ohos-typescript/SECURITY.md +0 -0
  304. /package/{node_modules → lib/node_modules}/ohos-typescript/ThirdPartyNoticeText.txt +0 -0
  305. /package/{node_modules → lib/node_modules}/ohos-typescript/bin/tsc +0 -0
  306. /package/{node_modules → lib/node_modules}/ohos-typescript/bin/tsserver +0 -0
  307. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/README.md +0 -0
  308. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/cancellationToken.js +0 -0
  309. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/cs/diagnosticMessages.generated.json +0 -0
  310. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/de/diagnosticMessages.generated.json +0 -0
  311. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/es/diagnosticMessages.generated.json +0 -0
  312. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/fr/diagnosticMessages.generated.json +0 -0
  313. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/it/diagnosticMessages.generated.json +0 -0
  314. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/ja/diagnosticMessages.generated.json +0 -0
  315. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/ko/diagnosticMessages.generated.json +0 -0
  316. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.d.ts +0 -0
  317. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.dom.d.ts +0 -0
  318. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.dom.iterable.d.ts +0 -0
  319. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2015.collection.d.ts +0 -0
  320. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2015.core.d.ts +0 -0
  321. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2015.d.ts +0 -0
  322. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2015.generator.d.ts +0 -0
  323. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2015.iterable.d.ts +0 -0
  324. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2015.promise.d.ts +0 -0
  325. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2015.proxy.d.ts +0 -0
  326. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2015.reflect.d.ts +0 -0
  327. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2015.symbol.d.ts +0 -0
  328. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2015.symbol.wellknown.d.ts +0 -0
  329. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2016.array.include.d.ts +0 -0
  330. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2016.d.ts +0 -0
  331. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2016.full.d.ts +0 -0
  332. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2017.d.ts +0 -0
  333. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2017.full.d.ts +0 -0
  334. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2017.intl.d.ts +0 -0
  335. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2017.object.d.ts +0 -0
  336. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2017.sharedmemory.d.ts +0 -0
  337. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2017.string.d.ts +0 -0
  338. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2017.typedarrays.d.ts +0 -0
  339. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2018.asyncgenerator.d.ts +0 -0
  340. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2018.asynciterable.d.ts +0 -0
  341. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2018.d.ts +0 -0
  342. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2018.full.d.ts +0 -0
  343. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2018.intl.d.ts +0 -0
  344. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2018.promise.d.ts +0 -0
  345. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2018.regexp.d.ts +0 -0
  346. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2019.array.d.ts +0 -0
  347. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2019.d.ts +0 -0
  348. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2019.full.d.ts +0 -0
  349. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2019.intl.d.ts +0 -0
  350. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2019.object.d.ts +0 -0
  351. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2019.string.d.ts +0 -0
  352. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2019.symbol.d.ts +0 -0
  353. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2020.bigint.d.ts +0 -0
  354. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2020.d.ts +0 -0
  355. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2020.date.d.ts +0 -0
  356. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2020.full.d.ts +0 -0
  357. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2020.intl.d.ts +0 -0
  358. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2020.number.d.ts +0 -0
  359. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2020.promise.d.ts +0 -0
  360. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2020.sharedmemory.d.ts +0 -0
  361. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2020.string.d.ts +0 -0
  362. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2020.symbol.wellknown.d.ts +0 -0
  363. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2021.d.ts +0 -0
  364. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2021.full.d.ts +0 -0
  365. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2021.intl.d.ts +0 -0
  366. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2021.promise.d.ts +0 -0
  367. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2021.string.d.ts +0 -0
  368. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2021.weakref.d.ts +0 -0
  369. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2022.array.d.ts +0 -0
  370. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2022.d.ts +0 -0
  371. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2022.error.d.ts +0 -0
  372. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2022.full.d.ts +0 -0
  373. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2022.intl.d.ts +0 -0
  374. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2022.object.d.ts +0 -0
  375. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2022.sharedmemory.d.ts +0 -0
  376. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es2022.string.d.ts +0 -0
  377. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es5.d.ts +0 -0
  378. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.es6.d.ts +0 -0
  379. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.esnext.d.ts +0 -0
  380. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.esnext.full.d.ts +0 -0
  381. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.esnext.intl.d.ts +0 -0
  382. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.scripthost.d.ts +0 -0
  383. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.webworker.d.ts +0 -0
  384. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.webworker.importscripts.d.ts +0 -0
  385. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/lib.webworker.iterable.d.ts +0 -0
  386. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/pl/diagnosticMessages.generated.json +0 -0
  387. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/pt-br/diagnosticMessages.generated.json +0 -0
  388. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/ru/diagnosticMessages.generated.json +0 -0
  389. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/tr/diagnosticMessages.generated.json +0 -0
  390. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/tsc.js +0 -0
  391. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/tsserver.js +0 -0
  392. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/tsserverlibrary.d.ts +0 -0
  393. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/tsserverlibrary.js +0 -0
  394. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/typesMap.json +0 -0
  395. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/typescript.d.ts +0 -0
  396. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/typescript.js +0 -0
  397. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/typingsInstaller.js +0 -0
  398. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/watchGuard.js +0 -0
  399. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/zh-cn/diagnosticMessages.generated.json +0 -0
  400. /package/{node_modules → lib/node_modules}/ohos-typescript/lib/zh-tw/diagnosticMessages.generated.json +0 -0
@@ -0,0 +1,264 @@
1
+ import { Type, NumberType, GenericType } from '../../../core/base/Type';
2
+ import { Value } from '../../../core/base/Value';
3
+ /** Enum representing the bitWidth of Cxx types. */
4
+ export declare enum CxxTypeBitWidth {
5
+ EIGHT_BITS = 8,
6
+ SIXTEEN_BITS = 16,
7
+ THIRTY_TWO_BITS = 32,
8
+ SIXTY_FOUR_BITS = 64,
9
+ UNKNOWN = -1
10
+ }
11
+ /** Enum representing the signedness attribute of Cxx types. */
12
+ export declare enum CxxTypeSigned {
13
+ UNSIGNED = 0,
14
+ SIGNED = 1,
15
+ UNKNOWN = -1
16
+ }
17
+ /** Enumerate the standard library types of Cxx */
18
+ export declare enum CxxStdTypeName {
19
+ CHAR = 1,
20
+ SIGNED_CHAR = 2,
21
+ UNSIGNED_CHAR = 3,
22
+ WCHAR_T = 4,
23
+ CHAR16_T = 5,
24
+ CHAR32_T = 6,
25
+ SHORT = 7,
26
+ UNSIGNED_SHORT = 8,
27
+ INT = 9,
28
+ UNSIGNED_INT = 10,
29
+ LONG = 11,
30
+ UNSIGNED_LONG = 12,
31
+ LONG_LONG = 13,
32
+ UNSIGNED_LONG_LONG = 14,
33
+ UINT8_T = 15,
34
+ UINT16_T = 16,
35
+ UINT32_T = 17,
36
+ UINT64_T = 18,
37
+ INT8_T = 19,
38
+ INT16_T = 20,
39
+ INT32_T = 21,
40
+ INT64_T = 22,
41
+ SIZE_T = 23,
42
+ INTPTR_T = 24,
43
+ UINTPTR_T = 25
44
+ }
45
+ /**
46
+ * integral type in cxx, for example int, short, long and so on.
47
+ * @category core/base/type
48
+ */
49
+ export declare class CxxIntegralType extends NumberType {
50
+ protected readonly signType: CxxTypeSigned;
51
+ protected readonly bitWidth: CxxTypeBitWidth;
52
+ protected readonly oriTypeName?: CxxStdTypeName;
53
+ protected constructor(signType: CxxTypeSigned, bitWidth: CxxTypeBitWidth, oriTypeName?: CxxStdTypeName);
54
+ static getInstance(signType?: CxxTypeSigned, size?: CxxTypeBitWidth, oriTypeName?: CxxStdTypeName): CxxIntegralType;
55
+ getSignType(): CxxTypeSigned;
56
+ getBitWidth(): CxxTypeBitWidth;
57
+ getOriTypeName(): CxxStdTypeName | undefined;
58
+ }
59
+ /**
60
+ * int type in cxx
61
+ * @category core/base/type
62
+ */
63
+ export declare class CxxIntType extends CxxIntegralType {
64
+ static getInstance(signType: CxxTypeSigned, bitWidth: CxxTypeBitWidth, oriTypeName?: CxxStdTypeName): CxxIntType;
65
+ getTypeString(): string;
66
+ }
67
+ /**
68
+ * short type in cxx
69
+ * @category core/base/type
70
+ */
71
+ export declare class CxxShortType extends CxxIntegralType {
72
+ static getInstance(signType: CxxTypeSigned, bitWidth: CxxTypeBitWidth, oriTypeName?: CxxStdTypeName): CxxShortType;
73
+ getTypeString(): string;
74
+ }
75
+ /**
76
+ * long type in cxx
77
+ * @category core/base/type
78
+ */
79
+ export declare class CxxLongType extends CxxIntegralType {
80
+ static getInstance(signType: CxxTypeSigned, bitWidth: CxxTypeBitWidth, oriTypeName?: CxxStdTypeName): CxxLongType;
81
+ getTypeString(): string;
82
+ }
83
+ /**
84
+ * long long type in cxx
85
+ * @category core/base/type
86
+ */
87
+ export declare class CxxLongLongType extends CxxIntegralType {
88
+ static getInstance(signType: CxxTypeSigned, bitWidth: CxxTypeBitWidth, oriTypeName?: CxxStdTypeName): CxxLongLongType;
89
+ getTypeString(): string;
90
+ }
91
+ /**
92
+ * size_t type in cxx
93
+ * @category core/base/type
94
+ */
95
+ export declare class CxxSizeTType extends CxxIntegralType {
96
+ static getInstance(signType: CxxTypeSigned, bitWidth: CxxTypeBitWidth, oriTypeName?: CxxStdTypeName): CxxSizeTType;
97
+ getTypeString(): string;
98
+ }
99
+ /**
100
+ * floating-point types in cxx, for example float, double and so on.
101
+ * @category core/base/type
102
+ */
103
+ export declare class CxxFloatingPointType extends NumberType {
104
+ static getInstance(): CxxFloatingPointType;
105
+ getBitWith(): CxxTypeBitWidth;
106
+ }
107
+ /**
108
+ * float type in cxx
109
+ * @category core/base/type
110
+ */
111
+ export declare class CxxFloatType extends CxxFloatingPointType {
112
+ static getInstance(): CxxFloatType;
113
+ getTypeString(): string;
114
+ getBitWidth(): CxxTypeBitWidth;
115
+ }
116
+ /**
117
+ * double type in cxx
118
+ * @category core/base/type
119
+ */
120
+ export declare class CxxDoubleType extends CxxFloatingPointType {
121
+ static getInstance(): CxxDoubleType;
122
+ getTypeString(): string;
123
+ getBitWidth(): CxxTypeBitWidth;
124
+ }
125
+ /**
126
+ * long double type in cxx
127
+ * @category core/base/type
128
+ */
129
+ export declare class CxxLongDoubleType extends CxxFloatingPointType {
130
+ static getInstance(): CxxLongDoubleType;
131
+ getTypeString(): string;
132
+ getBitWidth(): CxxTypeBitWidth;
133
+ }
134
+ /**
135
+ * char type in cxx
136
+ * @category core/base/type
137
+ */
138
+ export declare class CxxCharType extends Type {
139
+ private readonly signType;
140
+ private readonly bitWidth;
141
+ private readonly oriTypeName?;
142
+ private constructor();
143
+ static getInstance(signType?: CxxTypeSigned, size?: CxxTypeBitWidth, oriTypeName?: CxxStdTypeName): CxxCharType;
144
+ getSignType(): CxxTypeSigned;
145
+ getBitWidth(): CxxTypeBitWidth;
146
+ getOriTypeName(): CxxStdTypeName | undefined;
147
+ getTypeString(): string;
148
+ }
149
+ /**
150
+ * wchar_t type in cxx
151
+ * @category core/base/type
152
+ */
153
+ export declare class CxxWcharType extends CxxIntegralType {
154
+ static getInstance(signType?: CxxTypeSigned, size?: CxxTypeBitWidth, oriTypeName?: CxxStdTypeName): CxxWcharType;
155
+ getTypeString(): string;
156
+ }
157
+ /**
158
+ *PointerType class represents pointer type, inherited from Type base class
159
+ *Pointer types used to represent C language style, such as int *, char * *, etc
160
+ */
161
+ export declare class PointerType extends Type {
162
+ private baseType;
163
+ private level;
164
+ private isConstPointer;
165
+ private isPointerToConst;
166
+ private isVolatilePointer;
167
+ private isPointerToVolatileType;
168
+ constructor(baseType: Type, level: number);
169
+ getBaseType(): Type;
170
+ setBaseType(newBaseType: Type): void;
171
+ getLevel(): number;
172
+ getTypeString(): string;
173
+ getIsConstPointer(): boolean;
174
+ setIsConstPointer(isConstPointer: boolean): void;
175
+ getIsPointerToConst(): boolean;
176
+ setIsPointerToConst(isPointerToConst: boolean): void;
177
+ getIsVolatilePointer(): boolean;
178
+ setIsVolatilePointer(isVolatilePointer: boolean): void;
179
+ getIsPointerToVolatileType(): boolean;
180
+ setIsPointerToVolatileType(isPointerToVolatileType: boolean): void;
181
+ }
182
+ export declare enum SmartPointerCategory {
183
+ UNKNOWN = -1,
184
+ UNIQUE_PTR = 0,
185
+ SHARED_PTR = 1,
186
+ WEAK_PTR = 2
187
+ }
188
+ export declare class SmartPointerType extends PointerType {
189
+ private category;
190
+ constructor(baseType: Type, level: number, source: string);
191
+ getCategory(): SmartPointerCategory;
192
+ setCategory(category: SmartPointerCategory): void;
193
+ getTypeString(): string;
194
+ }
195
+ /**
196
+ *Reference category enumeration, used to distinguish different types of references
197
+ *LVALUE_REF: Left value reference, the reference type of address can be obtained
198
+ *RVALUE_REF: Right value reference, used to bind the reference type of temporary object
199
+ *UNIVERSAL_REF: universal reference, which can bind reference types of left or right values
200
+ */
201
+ export declare enum ReferCategory {
202
+ LVALUE_REF = 0,
203
+ RVALUE_REF = 1,
204
+ UNIVERSAL_REF = 2
205
+ }
206
+ /**
207
+ *The ReferenceType class represents the reference type, inherited from the Type base class
208
+ *Used to represent the type of left value reference (&) and right value reference (&&) in C++
209
+ */
210
+ export declare class ReferenceType extends Type {
211
+ private baseType;
212
+ private category;
213
+ private sourceValue?;
214
+ constructor(bassType: Type, category: ReferCategory, sourceValue?: Value);
215
+ getBaseType(): Type;
216
+ setBaseType(newBaseType: Type): void;
217
+ getCategory(): ReferCategory;
218
+ setSourceValue(sourceValue: Value): void;
219
+ getSourceValue(): Value | undefined;
220
+ getTypeString(): string;
221
+ }
222
+ /**
223
+ *The Thread class inherits from the Type class and represents a thread type
224
+ *This class provides the basic implementation of thread types
225
+ */
226
+ export declare class Thread extends Type {
227
+ constructor();
228
+ getTypeString(): string;
229
+ }
230
+ export declare class TypeInfo extends Type {
231
+ private name;
232
+ private type;
233
+ constructor(name: string, type: Type);
234
+ getName(): string;
235
+ getType(): Type;
236
+ getTypeString(): string;
237
+ }
238
+ export declare class CxxNonType extends GenericType {
239
+ constructor(name: string, defaultType?: Type, isAutoType?: boolean);
240
+ }
241
+ export declare class CxxArrayType extends Type {
242
+ private baseType;
243
+ private dimension;
244
+ private dimensionSizes;
245
+ constructor(baseType: Type, dimension: number, dimensionSizes?: number[]);
246
+ /**
247
+ * Returns the base type of this array, such as `Any`, `Unknown`, `TypeParameter`, etc.
248
+ * @returns The base type of array.
249
+ */
250
+ getBaseType(): Type;
251
+ setBaseType(newType: Type): void;
252
+ getDimension(): number;
253
+ getDimensionSizes(): number[];
254
+ setDimensionSizes(sizes: number[]): void;
255
+ getDimensionSize(index: number): number;
256
+ getTypeString(): string;
257
+ }
258
+ export declare class AutoType extends Type {
259
+ private static readonly INSTANCE;
260
+ static getInstance(): AutoType;
261
+ private constructor();
262
+ getTypeString(): string;
263
+ }
264
+ //# sourceMappingURL=Type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Type.d.ts","sourceRoot":"","sources":["../../../../src/frontend/cppFrontend/base/Type.ts"],"names":[],"mappings":"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"}