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.
- package/lib/Config.d.ts +7 -0
- package/lib/Config.d.ts.map +1 -1
- package/lib/Scene.d.ts +134 -170
- package/lib/Scene.d.ts.map +1 -1
- package/lib/Scene.js +412 -976
- package/lib/callgraph/algorithm/AbstractAnalysis.js +3 -2
- package/lib/callgraph/algorithm/RapidTypeAnalysis.d.ts.map +1 -1
- package/lib/callgraph/algorithm/RapidTypeAnalysis.js +2 -3
- package/lib/callgraph/model/CallGraph.js +1 -1
- package/lib/callgraph/pointerAnalysis/PTAUtils.d.ts +1 -3
- package/lib/callgraph/pointerAnalysis/PTAUtils.d.ts.map +1 -1
- package/lib/callgraph/pointerAnalysis/PTAUtils.js +17 -7
- package/lib/callgraph/pointerAnalysis/Pag.d.ts.map +1 -1
- package/lib/callgraph/pointerAnalysis/Pag.js +4 -14
- package/lib/callgraph/pointerAnalysis/PagBuilder.d.ts.map +1 -1
- package/lib/callgraph/pointerAnalysis/PagBuilder.js +2 -1
- package/lib/callgraph/pointerAnalysis/PointerAnalysis.d.ts.map +1 -1
- package/lib/callgraph/pointerAnalysis/PointerAnalysis.js +1 -2
- package/lib/callgraph/pointerAnalysis/plugins/WorkerPlugin.d.ts.map +1 -1
- package/lib/callgraph/pointerAnalysis/plugins/WorkerPlugin.js +0 -1
- package/lib/cli/commands/cg.d.ts +1 -0
- package/lib/cli/commands/cg.d.ts.map +1 -1
- package/lib/cli/commands/cg.js +22 -18
- package/lib/cli/commands/ir.d.ts +1 -0
- package/lib/cli/commands/ir.d.ts.map +1 -1
- package/lib/cli/commands/ir.js +5 -2
- package/lib/core/base/Constant.d.ts +5 -5
- package/lib/core/base/Constant.d.ts.map +1 -1
- package/lib/core/base/Constant.js +12 -9
- package/lib/core/base/Expr.d.ts +36 -20
- package/lib/core/base/Expr.d.ts.map +1 -1
- package/lib/core/base/Expr.js +206 -94
- package/lib/core/base/Local.d.ts +10 -20
- package/lib/core/base/Local.d.ts.map +1 -1
- package/lib/core/base/Local.js +25 -28
- package/lib/core/base/Position.d.ts +6 -0
- package/lib/core/base/Position.d.ts.map +1 -1
- package/lib/core/base/Position.js +37 -11
- package/lib/core/base/Ref.d.ts +45 -33
- package/lib/core/base/Ref.d.ts.map +1 -1
- package/lib/core/base/Ref.js +225 -51
- package/lib/core/base/Stmt.d.ts +19 -9
- package/lib/core/base/Stmt.d.ts.map +1 -1
- package/lib/core/base/Stmt.js +135 -52
- package/lib/core/base/Type.d.ts +67 -4
- package/lib/core/base/Type.d.ts.map +1 -1
- package/lib/core/base/Type.js +391 -20
- package/lib/core/base/TypeExpr.d.ts +6 -4
- package/lib/core/base/TypeExpr.d.ts.map +1 -1
- package/lib/core/base/TypeExpr.js +34 -10
- package/lib/core/base/Value.d.ts +20 -2
- package/lib/core/base/Value.d.ts.map +1 -1
- package/lib/core/base/Value.js +12 -0
- package/lib/core/common/ArkIRTransformer.d.ts +18 -0
- package/lib/core/common/ArkIRTransformer.d.ts.map +1 -1
- package/lib/core/common/ArkIRTransformer.js +94 -75
- package/lib/core/common/ArkValueTransformer.d.ts +21 -3
- package/lib/core/common/ArkValueTransformer.d.ts.map +1 -1
- package/lib/core/common/ArkValueTransformer.js +458 -266
- package/lib/core/common/Builtin.d.ts +48 -24
- package/lib/core/common/Builtin.d.ts.map +1 -1
- package/lib/core/common/Builtin.js +90 -52
- package/lib/core/common/CanonicalizerValidator.d.ts +308 -0
- package/lib/core/common/CanonicalizerValidator.d.ts.map +1 -0
- package/lib/core/common/CanonicalizerValidator.js +888 -0
- package/lib/core/common/Const.d.ts +3 -3
- package/lib/core/common/Const.d.ts.map +1 -1
- package/lib/core/common/Const.js +3 -3
- package/lib/core/common/DummyMainCreater.d.ts +2 -21
- package/lib/core/common/DummyMainCreater.d.ts.map +1 -1
- package/lib/core/common/DummyMainCreater.js +8 -105
- package/lib/core/common/IRInference.d.ts +55 -3
- package/lib/core/common/IRInference.d.ts.map +1 -1
- package/lib/core/common/IRInference.js +407 -126
- package/lib/core/common/IRUtils.d.ts +1 -0
- package/lib/core/common/IRUtils.d.ts.map +1 -1
- package/lib/core/common/IRUtils.js +44 -13
- package/lib/core/common/ModelUtils.d.ts +44 -20
- package/lib/core/common/ModelUtils.d.ts.map +1 -1
- package/lib/core/common/ModelUtils.js +378 -208
- package/lib/core/common/SdkUtils.d.ts +35 -5
- package/lib/core/common/SdkUtils.d.ts.map +1 -1
- package/lib/core/common/SdkUtils.js +203 -59
- package/lib/core/common/SignatureCanonicalizer.d.ts +95 -0
- package/lib/core/common/SignatureCanonicalizer.d.ts.map +1 -0
- package/lib/core/common/SignatureCanonicalizer.js +116 -0
- package/lib/core/common/SignatureCanonicalizerRegistry.d.ts +176 -0
- package/lib/core/common/SignatureCanonicalizerRegistry.d.ts.map +1 -0
- package/lib/core/common/SignatureCanonicalizerRegistry.js +343 -0
- package/lib/core/common/SignatureModelCanonicalizer.d.ts +69 -0
- package/lib/core/common/SignatureModelCanonicalizer.d.ts.map +1 -0
- package/lib/core/common/SignatureModelCanonicalizer.js +109 -0
- package/lib/core/common/StmtUseReplacer.d.ts +1 -0
- package/lib/core/common/StmtUseReplacer.d.ts.map +1 -1
- package/lib/core/common/StmtUseReplacer.js +9 -0
- package/lib/core/common/StringUtils.d.ts +12 -1
- package/lib/core/common/StringUtils.d.ts.map +1 -1
- package/lib/core/common/StringUtils.js +36 -17
- package/lib/core/common/TempSignatureCanonicalizer.d.ts +82 -0
- package/lib/core/common/TempSignatureCanonicalizer.d.ts.map +1 -0
- package/lib/core/common/TempSignatureCanonicalizer.js +177 -0
- package/lib/core/common/TypeInference.d.ts +24 -6
- package/lib/core/common/TypeInference.d.ts.map +1 -1
- package/lib/core/common/TypeInference.js +243 -117
- package/lib/core/common/ValueUtil.d.ts +2 -1
- package/lib/core/common/ValueUtil.d.ts.map +1 -1
- package/lib/core/common/ValueUtil.js +4 -1
- package/lib/core/graph/Cfg.d.ts.map +1 -1
- package/lib/core/graph/Cfg.js +21 -6
- package/lib/core/graph/builder/CfgBuilder.d.ts.map +1 -1
- package/lib/core/graph/builder/CfgBuilder.js +46 -33
- package/lib/core/graph/builder/IfBuilder.d.ts.map +1 -1
- package/lib/core/graph/builder/IfBuilder.js +6 -2
- package/lib/core/graph/builder/ViewTreeBuilder.d.ts.map +1 -1
- package/lib/core/graph/builder/ViewTreeBuilder.js +6 -2
- package/lib/core/inference/ModelInference.d.ts +24 -4
- package/lib/core/inference/ModelInference.d.ts.map +1 -1
- package/lib/core/inference/ModelInference.js +273 -79
- package/lib/core/inference/ValueInference.d.ts +3 -2
- package/lib/core/inference/ValueInference.d.ts.map +1 -1
- package/lib/core/inference/ValueInference.js +90 -40
- package/lib/core/inference/abc/AbcInference.d.ts.map +1 -1
- package/lib/core/inference/abc/AbcInference.js +28 -15
- package/lib/core/inference/arkts/ArkTsInference.d.ts +9 -3
- package/lib/core/inference/arkts/ArkTsInference.d.ts.map +1 -1
- package/lib/core/inference/arkts/ArkTsInference.js +54 -16
- package/lib/core/model/ArkClass.d.ts +192 -18
- package/lib/core/model/ArkClass.d.ts.map +1 -1
- package/lib/core/model/ArkClass.js +852 -122
- package/lib/core/model/ArkExport.d.ts.map +1 -1
- package/lib/core/model/ArkExport.js +1 -2
- package/lib/core/model/ArkField.d.ts +34 -2
- package/lib/core/model/ArkField.d.ts.map +1 -1
- package/lib/core/model/ArkField.js +89 -14
- package/lib/core/model/ArkFile.d.ts +72 -12
- package/lib/core/model/ArkFile.d.ts.map +1 -1
- package/lib/core/model/ArkFile.js +275 -65
- package/lib/core/model/ArkImport.d.ts.map +1 -1
- package/lib/core/model/ArkImport.js +1 -2
- package/lib/core/model/ArkMethod.d.ts +101 -15
- package/lib/core/model/ArkMethod.d.ts.map +1 -1
- package/lib/core/model/ArkMethod.js +252 -39
- package/lib/core/model/ArkModule.d.ts +1 -1
- package/lib/core/model/ArkModule.js +1 -1
- package/lib/core/model/ArkNamespace.d.ts +80 -10
- package/lib/core/model/ArkNamespace.d.ts.map +1 -1
- package/lib/core/model/ArkNamespace.js +309 -76
- package/lib/core/model/ArkSignature.d.ts +242 -18
- package/lib/core/model/ArkSignature.d.ts.map +1 -1
- package/lib/core/model/ArkSignature.js +725 -95
- package/lib/core/model/builder/ArkClassBuilder.d.ts +6 -3
- package/lib/core/model/builder/ArkClassBuilder.d.ts.map +1 -1
- package/lib/core/model/builder/ArkClassBuilder.js +119 -73
- package/lib/core/model/builder/ArkExportBuilder.d.ts +1 -1
- package/lib/core/model/builder/ArkExportBuilder.d.ts.map +1 -1
- package/lib/core/model/builder/ArkExportBuilder.js +1 -1
- package/lib/core/model/builder/ArkFieldBuilder.d.ts +0 -2
- package/lib/core/model/builder/ArkFieldBuilder.d.ts.map +1 -1
- package/lib/core/model/builder/ArkFieldBuilder.js +9 -43
- package/lib/core/model/builder/ArkFileBuilder.d.ts.map +1 -1
- package/lib/core/model/builder/ArkFileBuilder.js +32 -33
- package/lib/core/model/builder/ArkMethodBuilder.d.ts +10 -3
- package/lib/core/model/builder/ArkMethodBuilder.d.ts.map +1 -1
- package/lib/core/model/builder/ArkMethodBuilder.js +40 -26
- package/lib/core/model/builder/ArkNamespaceBuilder.d.ts +3 -2
- package/lib/core/model/builder/ArkNamespaceBuilder.d.ts.map +1 -1
- package/lib/core/model/builder/ArkNamespaceBuilder.js +45 -77
- package/lib/core/model/builder/ArkSignatureBuilder.d.ts +9 -0
- package/lib/core/model/builder/ArkSignatureBuilder.d.ts.map +1 -1
- package/lib/core/model/builder/ArkSignatureBuilder.js +26 -3
- package/lib/core/model/builder/BodyBuilder.d.ts +1 -0
- package/lib/core/model/builder/BodyBuilder.d.ts.map +1 -1
- package/lib/core/model/builder/BodyBuilder.js +37 -11
- package/lib/core/model/builder/builderUtils.d.ts +11 -1
- package/lib/core/model/builder/builderUtils.d.ts.map +1 -1
- package/lib/core/model/builder/builderUtils.js +124 -90
- package/lib/frontend/FrontendBuilder.d.ts +10 -6
- package/lib/frontend/FrontendBuilder.d.ts.map +1 -1
- package/lib/frontend/FrontendBuilder.js +19 -45
- package/lib/frontend/ModuleScene.d.ts +43 -0
- package/lib/frontend/ModuleScene.d.ts.map +1 -0
- package/lib/frontend/ModuleScene.js +143 -0
- package/lib/frontend/SceneBuildStage.d.ts +15 -0
- package/lib/frontend/SceneBuildStage.d.ts.map +1 -0
- package/lib/frontend/SceneBuildStage.js +32 -0
- package/lib/frontend/SceneBuilder.d.ts +153 -0
- package/lib/frontend/SceneBuilder.d.ts.map +1 -0
- package/lib/frontend/SceneBuilder.js +859 -0
- package/lib/frontend/arktsFrontend/ArktsFrontend.d.ts +0 -2
- package/lib/frontend/arktsFrontend/ArktsFrontend.d.ts.map +1 -1
- package/lib/frontend/arktsFrontend/ArktsFrontend.js +0 -18
- package/lib/frontend/arktsFrontend/FileBodyRemount.d.ts +17 -0
- package/lib/frontend/arktsFrontend/FileBodyRemount.d.ts.map +1 -0
- package/lib/frontend/arktsFrontend/FileBodyRemount.js +187 -0
- package/lib/frontend/common/ModuleBuilder.d.ts +4 -2
- package/lib/frontend/common/ModuleBuilder.d.ts.map +1 -1
- package/lib/frontend/common/ModuleBuilder.js +19 -9
- package/lib/frontend/cppFrontend/CppFrontend.d.ts +0 -6
- package/lib/frontend/cppFrontend/CppFrontend.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/CppFrontend.js +0 -56
- package/lib/frontend/cppFrontend/base/Type.d.ts +7 -0
- package/lib/frontend/cppFrontend/base/Type.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/base/Type.js +29 -0
- package/lib/frontend/cppFrontend/common/ArkIRTransformer.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/common/ArkIRTransformer.js +56 -56
- package/lib/frontend/cppFrontend/common/ArkValueTransformer.d.ts +1 -1
- package/lib/frontend/cppFrontend/common/ArkValueTransformer.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/common/ArkValueTransformer.js +124 -113
- package/lib/frontend/cppFrontend/common/Builtin.d.ts +29 -19
- package/lib/frontend/cppFrontend/common/Builtin.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/common/Builtin.js +56 -35
- package/lib/frontend/cppFrontend/common/IRInference.d.ts +7 -2
- package/lib/frontend/cppFrontend/common/IRInference.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/common/IRInference.js +61 -28
- package/lib/frontend/cppFrontend/common/IRUtils.d.ts +1 -0
- package/lib/frontend/cppFrontend/common/IRUtils.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/common/IRUtils.js +22 -10
- package/lib/frontend/cppFrontend/common/ModelUtils.d.ts +19 -0
- package/lib/frontend/cppFrontend/common/ModelUtils.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/common/ModelUtils.js +84 -3
- package/lib/frontend/cppFrontend/common/TypeInference.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/common/TypeInference.js +44 -54
- package/lib/frontend/cppFrontend/graph/builder/CfgBuilder.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/graph/builder/CfgBuilder.js +2 -1
- package/lib/frontend/cppFrontend/inference/CxxModelInference.d.ts +1 -1
- package/lib/frontend/cppFrontend/inference/CxxModelInference.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/inference/CxxValueInference.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/inference/CxxValueInference.js +41 -5
- package/lib/frontend/cppFrontend/model/builder/ArkClassBuilder.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/model/builder/ArkClassBuilder.js +18 -28
- package/lib/frontend/cppFrontend/model/builder/ArkFieldBuilder.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/model/builder/ArkFieldBuilder.js +2 -3
- package/lib/frontend/cppFrontend/model/builder/ArkFileBuilder.d.ts +2 -2
- package/lib/frontend/cppFrontend/model/builder/ArkFileBuilder.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/model/builder/ArkFileBuilder.js +31 -24
- package/lib/frontend/cppFrontend/model/builder/ArkMethodBuilder.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/model/builder/ArkMethodBuilder.js +10 -16
- package/lib/frontend/cppFrontend/model/builder/ArkNamespaceBuilder.d.ts +0 -2
- package/lib/frontend/cppFrontend/model/builder/ArkNamespaceBuilder.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/model/builder/ArkNamespaceBuilder.js +19 -37
- package/lib/frontend/cppFrontend/model/builder/BodyBuilder.d.ts +1 -0
- package/lib/frontend/cppFrontend/model/builder/BodyBuilder.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/model/builder/BodyBuilder.js +30 -3
- package/lib/frontend/cppFrontend/model/builder/builderUtils.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/model/builder/builderUtils.js +8 -4
- package/lib/index.d.ts +3 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +10 -2
- package/lib/save/json/JsonSerialization.js +2 -2
- package/lib/save/source/SourceStmt.js +1 -1
- package/lib/save/source/SourceTransformer.d.ts.map +1 -1
- package/lib/save/source/SourceTransformer.js +0 -9
- package/lib/statistics/StageStatistics.d.ts +195 -0
- package/lib/statistics/StageStatistics.d.ts.map +1 -0
- package/lib/statistics/StageStatistics.js +346 -0
- package/lib/statistics/StageStatisticsReporter.d.ts +58 -0
- package/lib/statistics/StageStatisticsReporter.d.ts.map +1 -0
- package/lib/statistics/StageStatisticsReporter.js +255 -0
- package/lib/utils/Canonicalizer.d.ts +9 -2
- package/lib/utils/Canonicalizer.d.ts.map +1 -1
- package/lib/utils/Canonicalizer.js +19 -2
- package/lib/utils/CxxSceneUtils.d.ts +7 -0
- package/lib/utils/CxxSceneUtils.d.ts.map +1 -1
- package/lib/utils/CxxSceneUtils.js +10 -1
- package/lib/utils/FileUtils.d.ts +0 -1
- package/lib/utils/FileUtils.d.ts.map +1 -1
- package/lib/utils/FileUtils.js +1 -9
- package/lib/utils/HashUtils.d.ts +9 -0
- package/lib/utils/HashUtils.d.ts.map +1 -0
- package/lib/utils/HashUtils.js +65 -0
- package/lib/utils/ModuleUtils.d.ts.map +1 -1
- package/lib/utils/ModuleUtils.js +24 -5
- package/lib/utils/VisitedSegment.d.ts +23 -0
- package/lib/utils/VisitedSegment.d.ts.map +1 -0
- package/lib/utils/VisitedSegment.js +64 -0
- package/lib/utils/callGraphUtils.d.ts.map +1 -1
- package/lib/utils/callGraphUtils.js +7 -7
- package/lib/utils/getAllFiles.d.ts.map +1 -1
- package/lib/utils/getAllFiles.js +11 -8
- package/lib/utils/logger.d.ts +4 -0
- package/lib/utils/logger.d.ts.map +1 -1
- package/lib/utils/logger.js +16 -0
- package/lib/utils/parseArkSourceFile.d.ts +33 -0
- package/lib/utils/parseArkSourceFile.d.ts.map +1 -0
- package/lib/utils/parseArkSourceFile.js +131 -0
- package/package.json +1 -1
- package/lib/node_modules/ohos-typescript/README.OpenSource +0 -11
- package/lib/node_modules/ohos-typescript/README.md +0 -81
- package/lib/node_modules/ohos-typescript/SECURITY.md +0 -41
- package/lib/node_modules/ohos-typescript/ThirdPartyNoticeText.txt +0 -193
- package/lib/node_modules/ohos-typescript/bin/tsc +0 -2
- package/lib/node_modules/ohos-typescript/bin/tsserver +0 -2
- package/lib/node_modules/ohos-typescript/lib/README.md +0 -5
- package/lib/node_modules/ohos-typescript/lib/cancellationToken.js +0 -86
- package/lib/node_modules/ohos-typescript/lib/cs/diagnosticMessages.generated.json +0 -1880
- package/lib/node_modules/ohos-typescript/lib/de/diagnosticMessages.generated.json +0 -1880
- package/lib/node_modules/ohos-typescript/lib/es/diagnosticMessages.generated.json +0 -1880
- package/lib/node_modules/ohos-typescript/lib/fr/diagnosticMessages.generated.json +0 -1880
- package/lib/node_modules/ohos-typescript/lib/it/diagnosticMessages.generated.json +0 -1880
- package/lib/node_modules/ohos-typescript/lib/ja/diagnosticMessages.generated.json +0 -1880
- package/lib/node_modules/ohos-typescript/lib/ko/diagnosticMessages.generated.json +0 -1880
- package/lib/node_modules/ohos-typescript/lib/lib.dom.d.ts +0 -18505
- package/lib/node_modules/ohos-typescript/lib/lib.dom.iterable.d.ts +0 -341
- package/lib/node_modules/ohos-typescript/lib/lib.scripthost.d.ts +0 -327
- package/lib/node_modules/ohos-typescript/lib/lib.webworker.d.ts +0 -6192
- package/lib/node_modules/ohos-typescript/lib/lib.webworker.importscripts.d.ts +0 -26
- package/lib/node_modules/ohos-typescript/lib/lib.webworker.iterable.d.ts +0 -175
- package/lib/node_modules/ohos-typescript/lib/pl/diagnosticMessages.generated.json +0 -1880
- package/lib/node_modules/ohos-typescript/lib/pt-br/diagnosticMessages.generated.json +0 -1880
- package/lib/node_modules/ohos-typescript/lib/ru/diagnosticMessages.generated.json +0 -1880
- package/lib/node_modules/ohos-typescript/lib/tr/diagnosticMessages.generated.json +0 -1880
- package/lib/node_modules/ohos-typescript/lib/tsc.js +0 -114551
- package/lib/node_modules/ohos-typescript/lib/tsserver.js +0 -179691
- package/lib/node_modules/ohos-typescript/lib/tsserverlibrary.d.ts +0 -13648
- package/lib/node_modules/ohos-typescript/lib/tsserverlibrary.js +0 -178688
- package/lib/node_modules/ohos-typescript/lib/typesMap.json +0 -497
- package/lib/node_modules/ohos-typescript/lib/typingsInstaller.js +0 -39871
- package/lib/node_modules/ohos-typescript/lib/watchGuard.js +0 -49
- package/lib/node_modules/ohos-typescript/lib/zh-cn/diagnosticMessages.generated.json +0 -1880
- package/lib/node_modules/ohos-typescript/lib/zh-tw/diagnosticMessages.generated.json +0 -1880
- package/lib/utils/DependenciesSort.d.ts +0 -3
- package/lib/utils/DependenciesSort.d.ts.map +0 -1
- package/lib/utils/DependenciesSort.js +0 -72
- package/lib/utils/crypto_utils.d.ts +0 -6
- package/lib/utils/crypto_utils.d.ts.map +0 -1
- package/lib/utils/crypto_utils.js +0 -57
package/lib/Config.d.ts
CHANGED
|
@@ -70,6 +70,13 @@ export interface SceneOptions {
|
|
|
70
70
|
/** Max process memory (RSS) in MB; 0 or undefined disables memory monitoring.
|
|
71
71
|
* Internally converted to a heapUsed limit via RSS_TO_HEAPUSED_RATIO in MemoryMonitor. */
|
|
72
72
|
memoryLimitMB?: number;
|
|
73
|
+
/** Internal dev-only validation of signature canonicalizer invariants (see CanonicalizerValidator).
|
|
74
|
+
* Off by default; when on, all rule violations are collected and reported in full after type inference. */
|
|
75
|
+
validateCanonicalizers?: boolean;
|
|
76
|
+
/** Enable stage statistics (time + memory) collection during scene building and type inference. */
|
|
77
|
+
enableStatistics?: boolean;
|
|
78
|
+
/** Optional path for the auto-generated statistics report file. Defaults to out/<projectName>_statistics.txt. */
|
|
79
|
+
statisticsOutputPath?: string;
|
|
73
80
|
[option: string]: SceneOptionsValue;
|
|
74
81
|
}
|
|
75
82
|
export declare class SceneConfig {
|
package/lib/Config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../src/Config.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAKhD,MAAM,WAAW,GAAG;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,QAAQ;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE;YACJ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;SAC3B,CAAC;KACL,CAAC;CACL;AAoBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,WAAW,CAKtH;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IACvD,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,kGAAkG;IAClG,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,iHAAiH;IACjH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,sFAAsF;IACtF,UAAU,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,qBAAqB;IAClC,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,GAAG,CAAC,EAAE,kBAAkB,CAAC;IACzB,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAAC;CACjD;AAED,MAAM,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../src/Config.ts"],"names":[],"mappings":"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"}
|
package/lib/Scene.d.ts
CHANGED
|
@@ -12,23 +12,19 @@ import { ModuleCache } from './frontend/common/ModuleCache';
|
|
|
12
12
|
import { Local } from './core/base/Local';
|
|
13
13
|
import { ArkExport } from './core/model/ArkExport';
|
|
14
14
|
import { CallGraph } from './callgraph/model/CallGraph';
|
|
15
|
+
import { SceneBuilder } from './frontend/SceneBuilder';
|
|
15
16
|
import { ModuleDepGraph } from './core/graph/ModuleDepGraph';
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
CLASS_COLLECTED = 4,
|
|
22
|
-
METHOD_COLLECTED = 5,
|
|
23
|
-
TYPE_INFERRED = 6
|
|
24
|
-
}
|
|
17
|
+
import { StageStatistics, StageStatisticsData } from './statistics/StageStatistics';
|
|
18
|
+
export { SceneBuildStage } from './frontend/SceneBuildStage';
|
|
19
|
+
export { ModuleScene } from './frontend/ModuleScene';
|
|
20
|
+
import { SceneBuildStage } from './frontend/SceneBuildStage';
|
|
21
|
+
import { ModuleScene } from './frontend/ModuleScene';
|
|
25
22
|
/**
|
|
26
23
|
* The Scene class includes everything in the analyzed project.
|
|
27
24
|
* We should be able to re-generate the project's code based on this class.
|
|
28
25
|
*/
|
|
29
26
|
export declare class Scene {
|
|
30
27
|
private projectName;
|
|
31
|
-
private projectFiles;
|
|
32
28
|
private realProjectDir;
|
|
33
29
|
private includeDirs;
|
|
34
30
|
private ccjsonPath;
|
|
@@ -38,26 +34,19 @@ export declare class Scene {
|
|
|
38
34
|
private moduleSdkMap;
|
|
39
35
|
private projectSdkMap;
|
|
40
36
|
private visibleValue;
|
|
41
|
-
private filesMap;
|
|
42
|
-
private namespacesMap;
|
|
43
|
-
private classesMap;
|
|
44
|
-
private methodsMap;
|
|
45
|
-
/** Custom @Component name → ClassSignature; written at ArkClass build, kept after module unload for ViewTree stubs. */
|
|
46
|
-
private customComponentMap;
|
|
47
|
-
private sdkArkFilesMap;
|
|
48
|
-
private sdkGlobalMap;
|
|
49
|
-
private ohPkgContentMap;
|
|
50
|
-
private ohPkgFilePath;
|
|
51
|
-
private ohPkgContent;
|
|
52
37
|
private overRides;
|
|
53
38
|
private overRideDependencyMap;
|
|
54
|
-
private globalModule2PathMapping?;
|
|
55
|
-
private baseUrl?;
|
|
56
39
|
private buildStage;
|
|
57
40
|
private fileLanguages;
|
|
58
41
|
private options;
|
|
59
42
|
/** The SceneConfig used to build this scene, retained for later queries (e.g. SDK list). */
|
|
60
43
|
private sceneConfig?;
|
|
44
|
+
/**
|
|
45
|
+
* 构建期一次性上下文:完整构建路径的全部构建机械与工作态都在 {@link SceneBuilder} 上。
|
|
46
|
+
* 构建入口创建/复用,构建结束由入口方法释放(置undefined,随 GC 回收)——构建工作态不再驻留 Scene。
|
|
47
|
+
* 模块化增量路径(analyseByModule/loadModule)不经此上下文。
|
|
48
|
+
*/
|
|
49
|
+
private activeBuilder?;
|
|
61
50
|
/** Maps ArkModule objects to dense integer ModuleIDs via the objectIdentity strategy. */
|
|
62
51
|
private moduleCanonicalizer;
|
|
63
52
|
/** Module dependency graph, used for SCCDetection. Built during dependency analysis. */
|
|
@@ -68,14 +57,48 @@ export declare class Scene {
|
|
|
68
57
|
private moduleCache?;
|
|
69
58
|
/** Persistent memory monitor for cache eviction. */
|
|
70
59
|
private memoryMonitor?;
|
|
60
|
+
/** Stage statistics collector (time + memory); undefined when disabled. */
|
|
61
|
+
private stageStatistics?;
|
|
62
|
+
/** Exit hook handler for auto-output of statistics report. */
|
|
63
|
+
private statsExitHandler?;
|
|
64
|
+
/** Prevents duplicate report output (set by manual API or exit hook). */
|
|
65
|
+
private statsReportWritten;
|
|
71
66
|
private unhandledFilePaths;
|
|
72
67
|
private unhandledSdkFilePaths;
|
|
68
|
+
/**
|
|
69
|
+
* project 文件的构建完成序(setFile 时记录的 FileSigID 序列)。
|
|
70
|
+
*
|
|
71
|
+
* 构建走 {@link getDependencyFilesDeeply}(DFS):每个文件在自己的全部 import/export 依赖构建完成之后才 setFile(后序)——因此本序列是严格的拓扑序(被依赖者在前)。
|
|
72
|
+
* 这是推断期零排序遍历的事实源(见 {@link inferTypes})。注意 FileSigID 本身的前序 intern 序不具拓扑性质(多入口/菱形场景依赖方可能晚于被依赖方 intern),不可用于排序。
|
|
73
|
+
*/
|
|
74
|
+
private builtFileOrder;
|
|
75
|
+
/** @internal Get the Registry singleton. */
|
|
76
|
+
private get registry();
|
|
77
|
+
/** @internal 惰性创建/复用构建期上下文(幂等:同一构建流程内共享工作态)。 */
|
|
78
|
+
private getOrCreateSceneBuilder;
|
|
79
|
+
/** @internal 释放构建期上下文:在构建机械全部完成后调用,工作态随上下文被 GC 回收。*/
|
|
80
|
+
private releaseSceneBuilder;
|
|
81
|
+
/** @internal 当前活跃构建上下文(无则 undefined)。ModuleScene 等构建通道使用。 */
|
|
82
|
+
getActiveSceneBuilder(): SceneBuilder | undefined;
|
|
83
|
+
/** @internal 模块路径 → 模块名映射(构建产物;SceneBuilder.parseBuildProfile 写入)。 */
|
|
84
|
+
getModulePath2NameMap(): Map<string, string>;
|
|
73
85
|
constructor();
|
|
74
86
|
dispose(): void;
|
|
87
|
+
/** @internal Get the formal FileSignature canonicalizer. */
|
|
88
|
+
getFileSigCanonicalizer(): import("./core/common/SignatureModelCanonicalizer").SignatureModelCanonicalizer<FileSignature, ArkFile>;
|
|
89
|
+
/** @internal Get the formal ClassSignature canonicalizer. */
|
|
90
|
+
getClassSigCanonicalizer(): import("./core/common/SignatureModelCanonicalizer").SignatureModelCanonicalizer<ClassSignature, ArkClass>;
|
|
91
|
+
/** @internal Get the formal MethodSignature canonicalizer. */
|
|
92
|
+
getMethodSigCanonicalizer(): import("./core/common/SignatureModelCanonicalizer").SignatureModelCanonicalizer<MethodSignature, ArkMethod>;
|
|
93
|
+
/** @internal Get the formal NamespaceSignature canonicalizer. */
|
|
94
|
+
getNamespaceSigCanonicalizer(): import("./core/common/SignatureModelCanonicalizer").SignatureModelCanonicalizer<NamespaceSignature, ArkNamespace>;
|
|
95
|
+
/** @internal Get the formal FieldSignature canonicalizer. */
|
|
96
|
+
getFieldSigCanonicalizer(): import("./core/common/SignatureModelCanonicalizer").SignatureModelCanonicalizer<import("./core/model/ArkSignature").FieldSignature, import(".").ArkField>;
|
|
75
97
|
getOptions(): SceneOptions;
|
|
76
98
|
getBuildStage(): SceneBuildStage;
|
|
77
99
|
getOverRides(): Map<string, string>;
|
|
78
100
|
getOverRideDependencyMap(): Map<string, unknown>;
|
|
101
|
+
/** @deprecated Use {@link dispose} instead. */
|
|
79
102
|
clear(): void;
|
|
80
103
|
getStage(): SceneBuildStage;
|
|
81
104
|
/**
|
|
@@ -112,58 +135,17 @@ export declare class Scene {
|
|
|
112
135
|
* @param sceneConfig - the config used to set the basic information of scene.
|
|
113
136
|
*/
|
|
114
137
|
buildBasicInfo(sceneConfig: SceneConfig): void;
|
|
115
|
-
private parseBuildProfile;
|
|
116
|
-
private parseOhPackage;
|
|
117
|
-
private findTsConfigInfoDeeply;
|
|
118
|
-
private addTsConfigInfo;
|
|
119
|
-
/**
|
|
120
|
-
* Update or add default constructors for all classes in the scene.
|
|
121
|
-
*
|
|
122
|
-
* This function iterates through all files and classes in the scene,
|
|
123
|
-
* builds default constructors for each class, and processes existing constructors
|
|
124
|
-
* by replacing super constructor calls and adding initialization logic.
|
|
125
|
-
*
|
|
126
|
-
* @returns {void}
|
|
127
|
-
*/
|
|
128
|
-
private updateOrAddDefaultConstructors;
|
|
129
|
-
private collectAllMethods;
|
|
130
|
-
private static freeMethodBodyBuilder;
|
|
131
|
-
private buildAllMethodBody;
|
|
132
|
-
private freeAllBodyBuilders;
|
|
133
138
|
private genArkFiles;
|
|
134
|
-
private getFilesOrderByDependency;
|
|
135
|
-
getDependencyFilesDeeply(projectFile: string): void;
|
|
136
|
-
private isRepeatBuildFile;
|
|
137
|
-
private addArkFile2ModuleScene;
|
|
138
|
-
private findDependencyFiles;
|
|
139
|
-
private parseFrom;
|
|
140
|
-
private findDependenciesByTsConfig;
|
|
141
|
-
private parseTsConfigParms;
|
|
142
|
-
private processFuzzyMapping;
|
|
143
|
-
private findDependenciesByRule;
|
|
144
|
-
private findFilesByPathArray;
|
|
145
|
-
private findFilesByExtNameArray;
|
|
146
|
-
private findRelativeDependenciesByOhPkg;
|
|
147
|
-
private findDependenciesByOhPkg;
|
|
148
|
-
private getDependenciesMapping;
|
|
149
|
-
private getOriginPath;
|
|
150
|
-
private addFileNode2DependencyGrap;
|
|
151
|
-
/**
|
|
152
|
-
* Loads SDK sources into the scene. C++ SDK files are intentionally skipped: they are not parsed or registered
|
|
153
|
-
* here (only non-C++ SDK sources are processed).
|
|
154
|
-
*/
|
|
155
|
-
private buildSdk;
|
|
156
|
-
private collectSdkFiles;
|
|
157
|
-
private parseAndRegisterSdkFile;
|
|
158
139
|
/**
|
|
159
140
|
* Build the scene for harmony project. It resolves the file path of the project first, and then fetches
|
|
160
141
|
* dependencies from this file. Next, build a `ModuleScene` for this project to generate {@link ArkFile}. Finally,
|
|
161
142
|
* it build bodies of all methods, generate extended classes, and add DefaultConstructors.
|
|
162
143
|
*/
|
|
163
144
|
buildScene4HarmonyProject(): void;
|
|
164
|
-
|
|
145
|
+
/**
|
|
146
|
+
* 单模块构建(增量式入口,可连续调用构建多个模块):ohpkg 依赖递归 + 模块 DFS + body 构建,全部经构建期上下文。此处不释放上下文(连续构建共享工作态)。
|
|
147
|
+
*/
|
|
165
148
|
buildModuleScene(moduleName: string, modulePath: string, supportFileExts: string[]): void;
|
|
166
|
-
private processModuleOhPkgContent;
|
|
167
149
|
/**
|
|
168
150
|
* Get the absolute path of current project.
|
|
169
151
|
* @returns The real project's directiory.
|
|
@@ -186,6 +168,8 @@ export declare class Scene {
|
|
|
186
168
|
* This is the lightweight entry point for {@link analyseByModule}.
|
|
187
169
|
*/
|
|
188
170
|
config(sceneConfig: SceneConfig): void;
|
|
171
|
+
/** @internal 供构建期上下文(SceneBuilder)打点使用:返回统计收集器,未启用统计时为 undefined(各打点调用自动 no-op)。 */
|
|
172
|
+
getStageStatisticsCollector(): StageStatistics | undefined;
|
|
189
173
|
/**
|
|
190
174
|
* Returns all registered {@link ArkModule} objects.
|
|
191
175
|
*/
|
|
@@ -212,9 +196,9 @@ export declare class Scene {
|
|
|
212
196
|
* Perform module-level analysis by iterating modules in topological order and invoking
|
|
213
197
|
* the callback for each module.
|
|
214
198
|
*
|
|
215
|
-
* Flow: prepareModules → analyzeModuleDependencies → buildSdkModules (SDK
|
|
216
|
-
* inferred first) → resolveTargetModuleIds → computeModuleClosureByIds →
|
|
217
|
-
* → loadModule → callback.
|
|
199
|
+
* Flow: prepareModules → analyzeModuleDependencies → buildSdkModules (SDK loaded
|
|
200
|
+
* inferred first) → resolveTargetModuleIds → computeModuleClosureByIds →
|
|
201
|
+
* getFilteredTopoOrder → loadModule → callback.
|
|
218
202
|
* Each step is idempotent; repeated calls do not repeat preprocessing.
|
|
219
203
|
*
|
|
220
204
|
* - SDK modules are registered and built in one fused step by {@link ModuleBuilder.buildSdkModules}
|
|
@@ -235,9 +219,10 @@ export declare class Scene {
|
|
|
235
219
|
* @returns The name of the project.
|
|
236
220
|
*/
|
|
237
221
|
getProjectName(): string;
|
|
238
|
-
|
|
222
|
+
/** @deprecated Compatibility delegate only — no longer used internally. Use {@link SdkUtils.getSdkGlobal} instead. */
|
|
239
223
|
getSdkGlobal(globalName: string): ArkExport | null;
|
|
240
|
-
|
|
224
|
+
/** @deprecated Compatibility delegate only — no longer used internally. Use `SignatureCanonicalizerRegistry.getInstance().sdkGlobalMap` instead. */
|
|
225
|
+
getSdkGlobalMap(): Map<string, ArkExport[]>;
|
|
241
226
|
/**
|
|
242
227
|
* Returns the file based on its signature.
|
|
243
228
|
* If no file can be found according to the input signature, **null** will be returned.
|
|
@@ -258,76 +243,59 @@ export declare class Scene {
|
|
|
258
243
|
```
|
|
259
244
|
*/
|
|
260
245
|
getFile(fileSignature: FileSignature): ArkFile | null;
|
|
246
|
+
getFile(fileSigId: number): ArkFile | null;
|
|
261
247
|
getUnhandledFilePaths(): string[];
|
|
262
|
-
|
|
248
|
+
/** @internal 原始引用(Set):构建期上下文作防环工作集复用(成功 delete、失败残留)。 */
|
|
249
|
+
getUnhandledFileSet(): Set<string>;
|
|
263
250
|
getUnhandledSdkFilePaths(): string[];
|
|
251
|
+
/** @internal 非用户 API。*/
|
|
264
252
|
setFile(file: ArkFile): void;
|
|
265
|
-
/**
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
*/
|
|
253
|
+
/** @internal project 文件的构建完成序(拓扑序:被依赖者在前)。推断期遍历事实源。 */
|
|
254
|
+
getBuiltFileOrder(): readonly number[];
|
|
255
|
+
/** @internal 非用户 API。*/
|
|
269
256
|
addSdkArkFile(arkFile: ArkFile): void;
|
|
270
257
|
hasSdkFile(fileSignature: FileSignature): boolean;
|
|
258
|
+
hasSdkFile(fileSigId: number): boolean;
|
|
271
259
|
/**
|
|
272
|
-
*
|
|
273
|
-
* class. We need to generate {@link ArkFile} objects from these ets/ts files.
|
|
274
|
-
* @returns The array of {@link ArkFile} from `scene.filesMap.values()`.
|
|
275
|
-
* @example
|
|
276
|
-
* 1. In inferSimpleTypes() to check arkClass and arkMethod.
|
|
277
|
-
* ```typescript
|
|
278
|
-
* public inferSimpleTypes(): void {
|
|
279
|
-
* for (let arkFile of this.getFiles()) {
|
|
280
|
-
* for (let arkClass of arkFile.getClasses()) {
|
|
281
|
-
* for (let arkMethod of arkClass.getMethods()) {
|
|
282
|
-
* // ... ...;
|
|
283
|
-
* }
|
|
284
|
-
* }
|
|
285
|
-
* }
|
|
286
|
-
* }
|
|
287
|
-
* ```
|
|
288
|
-
* 2. To iterate each method
|
|
289
|
-
* ```typescript
|
|
290
|
-
* for (const file of this.getFiles()) {
|
|
291
|
-
* for (const cls of file.getClasses()) {
|
|
292
|
-
* for (const method of cls.getMethods()) {
|
|
293
|
-
* // ... ...
|
|
294
|
-
* }
|
|
295
|
-
* }
|
|
296
|
-
* }
|
|
297
|
-
*```
|
|
260
|
+
* 获取全部 project 文件(不含 SDK 文件)。
|
|
298
261
|
*/
|
|
299
262
|
getFiles(): ArkFile[];
|
|
300
263
|
getFileLanguages(): Map<string, Language>;
|
|
264
|
+
/** @internal 构建期上下文在 SDK 阶段末尾回填语言表(保持与迁移前一致的赋值时序)。 */
|
|
265
|
+
setFileLanguages(fileLanguages: Map<string, Language>): void;
|
|
266
|
+
/** 获取全部 SDK 文件。 */
|
|
301
267
|
getSdkArkFiles(): ArkFile[];
|
|
302
268
|
getModuleSdkMap(): Map<string, Sdk[]>;
|
|
303
269
|
getProjectSdkMap(): Map<string, Sdk>;
|
|
270
|
+
/**
|
|
271
|
+
* Returns the namespace according to the input namespace signature.
|
|
272
|
+
* @param namespaceSignature - signature of the namespace to be obtained.
|
|
273
|
+
* @returns A namespace, or null when the signature was never interned.
|
|
274
|
+
*/
|
|
304
275
|
getNamespace(namespaceSignature: NamespaceSignature): ArkNamespace | null;
|
|
305
|
-
|
|
306
|
-
private getNamespacesMap;
|
|
276
|
+
/** 获取全部 project 文件的 ArkNamespace(不含 SDK,含嵌套层级摊平)。*/
|
|
307
277
|
getNamespaces(): ArkNamespace[];
|
|
308
278
|
/**
|
|
309
279
|
* Returns the class according to the input class signature.
|
|
310
280
|
* @param classSignature - signature of the class to be obtained.
|
|
311
|
-
* @returns A class.
|
|
281
|
+
* @returns A class, or null when the signature was never interned.
|
|
312
282
|
*/
|
|
313
283
|
getClass(classSignature: ClassSignature): ArkClass | null;
|
|
284
|
+
getCustomComponent(name: string): ClassSignature | undefined;
|
|
285
|
+
getCustomComponentMap(): Map<string, ClassSignature>;
|
|
286
|
+
/** 获取全部 project 文件的 ArkClass(不含 SDK 类)。*/
|
|
287
|
+
getClasses(): ArkClass[];
|
|
314
288
|
/**
|
|
315
|
-
*
|
|
316
|
-
*
|
|
317
|
-
*
|
|
289
|
+
* Returns the method associated with the method signature (implementation or declaration).
|
|
290
|
+
* @param methodSignature - the signature of method.
|
|
291
|
+
* @returns The method associated with the method signature, or null if not found.
|
|
318
292
|
*/
|
|
319
|
-
|
|
293
|
+
getMethod(methodSignature: MethodSignature): ArkMethod | null;
|
|
320
294
|
/**
|
|
321
|
-
*
|
|
322
|
-
*
|
|
295
|
+
* @deprecated The `refresh` parameter has no effect and will be removed in a future release.
|
|
296
|
+
* Use the single-argument form instead.
|
|
323
297
|
*/
|
|
324
|
-
unregisterCustomComponent(cls: ArkClass): void;
|
|
325
|
-
getCustomComponent(name: string): ClassSignature | undefined;
|
|
326
|
-
getCustomComponentMap(): Map<string, ClassSignature>;
|
|
327
|
-
private getClassesMap;
|
|
328
|
-
getClasses(): ArkClass[];
|
|
329
298
|
getMethod(methodSignature: MethodSignature, refresh?: boolean): ArkMethod | null;
|
|
330
|
-
private getMethodsMap;
|
|
331
299
|
/**
|
|
332
300
|
* Returns the method associated with the method signature.
|
|
333
301
|
* If no method is associated with this signature, **null** will be returned.
|
|
@@ -340,7 +308,6 @@ export declare class Scene {
|
|
|
340
308
|
* - View tree: the view tree of the method.
|
|
341
309
|
* - ...
|
|
342
310
|
*
|
|
343
|
-
* @param methodSignature - the signature of method.
|
|
344
311
|
* @returns The method associated with the method signature.
|
|
345
312
|
* @example
|
|
346
313
|
* 1. get method from getMethod.
|
|
@@ -354,16 +321,11 @@ export declare class Scene {
|
|
|
354
321
|
```
|
|
355
322
|
*/
|
|
356
323
|
getMethods(): ArkMethod[];
|
|
357
|
-
addToMethodsMap(method: ArkMethod): void;
|
|
358
|
-
removeMethod(method: ArkMethod): boolean;
|
|
359
|
-
removeClass(arkClass: ArkClass): boolean;
|
|
360
|
-
removeNamespace(namespace: ArkNamespace): boolean;
|
|
361
|
-
removeFile(file: ArkFile): boolean;
|
|
362
324
|
/**
|
|
363
325
|
* Dispose a module's data from all global indices.
|
|
364
326
|
*
|
|
365
327
|
* Removes the module's ArkFiles, ArkClasses, ArkMethods, and ArkNamespaces from the Scene's
|
|
366
|
-
* global
|
|
328
|
+
* global canonicalizers and clears
|
|
367
329
|
* the oh-package.json5 content cache. After this call, the module's heavy data is no longer
|
|
368
330
|
* reachable via Scene's global indices and can be garbage-collected.
|
|
369
331
|
*
|
|
@@ -377,13 +339,6 @@ export declare class Scene {
|
|
|
377
339
|
getEntryPoints(): MethodSignature[];
|
|
378
340
|
/** get values that is visible in curr scope */
|
|
379
341
|
getVisibleValue(): VisibleValue;
|
|
380
|
-
getOhPkgContent(): {
|
|
381
|
-
[p: string]: unknown;
|
|
382
|
-
};
|
|
383
|
-
getOhPkgContentMap(): Map<string, {
|
|
384
|
-
[p: string]: unknown;
|
|
385
|
-
}>;
|
|
386
|
-
getOhPkgFilePath(): string;
|
|
387
342
|
makeCallGraphCHA(entryPoints: MethodSignature[]): CallGraph;
|
|
388
343
|
makeCallGraphRTA(entryPoints: MethodSignature[]): CallGraph;
|
|
389
344
|
/** Obtain the header file directories of the input C++ project dependencies. */
|
|
@@ -404,6 +359,7 @@ export declare class Scene {
|
|
|
404
359
|
```
|
|
405
360
|
*/
|
|
406
361
|
inferTypes(times?: number): void;
|
|
362
|
+
private checkTempSignatureCompleteness;
|
|
407
363
|
/**
|
|
408
364
|
* @deprecated This method is deprecated and will be removed in the next major release.
|
|
409
365
|
* Please use the new type inference system instead.
|
|
@@ -411,66 +367,74 @@ export declare class Scene {
|
|
|
411
367
|
* Scheduled for removal: one month from deprecation date.
|
|
412
368
|
*/
|
|
413
369
|
inferTypesOld(): void;
|
|
414
|
-
/**
|
|
415
|
-
* Iterate all assignment statements in methods,
|
|
416
|
-
* and set the type of left operand based on the type of right operand
|
|
417
|
-
* if the left operand is a local variable as well as an unknown.
|
|
418
|
-
* @Deprecated
|
|
419
|
-
* @example
|
|
420
|
-
* 1. Infer simple type when scene building.
|
|
421
|
-
|
|
422
|
-
```typescript
|
|
423
|
-
let scene = new Scene();
|
|
424
|
-
scene.buildSceneFromProjectDir(config);
|
|
425
|
-
scene.inferSimpleTypes();
|
|
426
|
-
```
|
|
427
|
-
*/
|
|
370
|
+
/** @deprecated 请改用 {@link inferTypes}(完整类型推断含 simple type 推断能力)。 */
|
|
428
371
|
inferSimpleTypes(): void;
|
|
429
372
|
private addNSClasses;
|
|
430
373
|
private addNSExportedClasses;
|
|
431
374
|
private addFileImportedClasses;
|
|
375
|
+
/** @deprecated 如需全部 project 类请使用 {@link getClasses}。*/
|
|
432
376
|
getClassMap(): Map<FileSignature | NamespaceSignature, ArkClass[]>;
|
|
433
377
|
private addNSLocals;
|
|
434
378
|
private addNSExportedLocals;
|
|
435
379
|
private addFileImportLocals;
|
|
436
380
|
private handleNestedNSLocals;
|
|
381
|
+
/** @deprecated 依赖 file→ns→class 结构骨架遍历,与 registry 事实源化的方向不一致。*/
|
|
437
382
|
getGlobalVariableMap(): Map<FileSignature | NamespaceSignature, Local[]>;
|
|
438
383
|
getStaticInitMethods(): ArkMethod[];
|
|
439
384
|
buildClassDone(): boolean;
|
|
440
385
|
getModuleScene(moduleName: string): ModuleScene | undefined;
|
|
441
386
|
getModuleSceneMap(): Map<string, ModuleScene>;
|
|
387
|
+
/** tsconfig paths/baseUrl 配置产物快照(SceneBuilder.parseProjectConfigs 结束回填)。 */
|
|
388
|
+
private tsConfigPathsSnapshot?;
|
|
389
|
+
private baseUrlSnapshot?;
|
|
390
|
+
/** @internal 构建期上下文回填配置产物快照(构建后 getGlobalModule2PathMapping/getbaseUrl 可查)。 */
|
|
391
|
+
setTsConfigSnapshot(paths?: {
|
|
392
|
+
[k: string]: string[];
|
|
393
|
+
}, baseUrl?: string): void;
|
|
442
394
|
getGlobalModule2PathMapping(): {
|
|
443
395
|
[k: string]: string[];
|
|
444
396
|
} | undefined;
|
|
445
397
|
getbaseUrl(): string | undefined;
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
private moduleOhPkgFilePath;
|
|
453
|
-
private ohPkgContent;
|
|
454
|
-
constructor(projectScene: Scene);
|
|
455
|
-
getProjectScene(): Scene;
|
|
456
|
-
ModuleSceneBuilder(moduleName: string, modulePath: string, supportFileExts: string[], recursively?: boolean): void;
|
|
457
|
-
ModuleScenePartiallyBuilder(moduleName: string, modulePath: string): void;
|
|
398
|
+
/** 根 oh-package.json5 内容快照(SceneBuilder.parseOhPackage 结束回填)。 */
|
|
399
|
+
private ohPkgContentSnapshot;
|
|
400
|
+
/** @internal 构建期上下文回填根 oh-package 内容快照(构建后 getOhPkgContent 可查)。 */
|
|
401
|
+
setOhPkgContentSnapshot(content: {
|
|
402
|
+
[k: string]: unknown;
|
|
403
|
+
}): void;
|
|
458
404
|
/**
|
|
459
|
-
*
|
|
405
|
+
* Get the parsed content of the project's root `oh-package.json5`.
|
|
406
|
+
* Returns an empty object when the project has no oh-package.json5 or before the
|
|
407
|
+
* scene is built.
|
|
408
|
+
* @returns The oh-package.json5 content.
|
|
460
409
|
*/
|
|
461
|
-
private getModuleOhPkgFilePath;
|
|
462
|
-
/**
|
|
463
|
-
* get nodule name
|
|
464
|
-
* @returns return module name
|
|
465
|
-
*/
|
|
466
|
-
getModuleName(): string;
|
|
467
|
-
getModulePath(): string;
|
|
468
|
-
getOhPkgFilePath(): string;
|
|
469
410
|
getOhPkgContent(): {
|
|
470
411
|
[p: string]: unknown;
|
|
471
412
|
};
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
413
|
+
/**
|
|
414
|
+
* Get the collected stage statistics data, or undefined if statistics is disabled.
|
|
415
|
+
* Auto-finalizes the collector if still running.
|
|
416
|
+
*/
|
|
417
|
+
getStageStatistics(): StageStatisticsData | undefined;
|
|
418
|
+
/**
|
|
419
|
+
* Print stage statistics to the logger.
|
|
420
|
+
*/
|
|
421
|
+
printStageStatistics(): void;
|
|
422
|
+
/**
|
|
423
|
+
* Export stage statistics as a text report to the given file path.
|
|
424
|
+
* @returns true if the report was written, false if statistics is disabled.
|
|
425
|
+
*/
|
|
426
|
+
exportStageStatisticsReport(filePath: string): boolean;
|
|
427
|
+
/**
|
|
428
|
+
* Register a process 'exit' hook that auto-writes the statistics report
|
|
429
|
+
* when the process terminates, so users only need `enableStatistics: true`
|
|
430
|
+
* without calling any output API manually.
|
|
431
|
+
*/
|
|
432
|
+
private registerStatsExitHook;
|
|
433
|
+
/**
|
|
434
|
+
* Resolve the default statistics report file path.
|
|
435
|
+
* Uses `SceneOptions.statisticsOutputPath` if provided, otherwise
|
|
436
|
+
* defaults to `out/<projectName>_statistics.txt` under the current working directory.
|
|
437
|
+
*/
|
|
438
|
+
private getStatisticsReportPath;
|
|
475
439
|
}
|
|
476
440
|
//# sourceMappingURL=Scene.d.ts.map
|
package/lib/Scene.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Scene.d.ts","sourceRoot":"","sources":["../src/Scene.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,
|
|
1
|
+
{"version":3,"file":"Scene.d.ts","sourceRoot":"","sources":["../src/Scene.ts"],"names":[],"mappings":"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"}
|