arkanalyzer 1.0.88 → 1.0.89
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/config/arkanalyzer.json +11 -0
- package/lib/Config.d.ts +23 -1
- package/lib/Config.d.ts.map +1 -1
- package/lib/Config.js +48 -0
- package/lib/Scene.d.ts +5 -2
- package/lib/Scene.d.ts.map +1 -1
- package/lib/Scene.js +30 -62
- package/lib/callgraph/pointerAnalysis/context/Context.d.ts.map +1 -1
- package/lib/callgraph/pointerAnalysis/context/Context.js +10 -12
- package/lib/callgraph/pointerAnalysis/plugins/WorkerPlugin.js +1 -1
- package/lib/core/base/Type.d.ts.map +1 -1
- package/lib/core/base/Type.js +1 -2
- package/lib/core/common/ModelUtils.d.ts +6 -0
- package/lib/core/common/ModelUtils.d.ts.map +1 -1
- package/lib/core/common/ModelUtils.js +30 -0
- package/lib/core/common/SdkUtils.js +1 -1
- package/lib/core/common/TypeInference.d.ts +13 -0
- package/lib/core/common/TypeInference.d.ts.map +1 -1
- package/lib/core/common/TypeInference.js +44 -0
- package/lib/core/common/ValueUtil.d.ts +1 -1
- package/lib/core/common/ValueUtil.d.ts.map +1 -1
- package/lib/core/common/ValueUtil.js +28 -12
- package/lib/core/graph/Cfg.d.ts.map +1 -1
- package/lib/core/graph/Cfg.js +0 -2
- package/lib/core/graph/DominanceFinder.d.ts +3 -0
- package/lib/core/graph/DominanceFinder.d.ts.map +1 -1
- package/lib/core/graph/DominanceFinder.js +42 -36
- package/lib/core/graph/DominanceTree.d.ts.map +1 -1
- package/lib/core/graph/DominanceTree.js +0 -4
- package/lib/core/inference/ValueInference.d.ts.map +1 -1
- package/lib/core/inference/ValueInference.js +3 -2
- package/lib/core/inference/abc/AbcInference.d.ts.map +1 -1
- package/lib/core/inference/abc/AbcInference.js +2 -1
- package/lib/core/inference/arkts/ArkTsInference.d.ts.map +1 -1
- package/lib/core/inference/arkts/ArkTsInference.js +3 -2
- package/lib/core/model/ArkClass.d.ts.map +1 -1
- package/lib/core/model/ArkClass.js +19 -4
- package/lib/core/model/ArkFile.d.ts.map +1 -1
- package/lib/core/model/ArkFile.js +0 -1
- package/lib/core/model/ArkMetadata.d.ts.map +1 -1
- package/lib/core/model/ArkMetadata.js +0 -1
- package/lib/core/model/builder/ArkMetadataBuilder.js +1 -1
- package/lib/core/model/builder/ArkMethodBuilder.d.ts.map +1 -1
- package/lib/core/model/builder/ArkMethodBuilder.js +0 -2
- package/lib/frontend/FrontendBuilder.d.ts +26 -0
- package/lib/frontend/FrontendBuilder.d.ts.map +1 -0
- package/lib/frontend/FrontendBuilder.js +108 -0
- package/lib/frontend/arktsFrontend/ArktsFrontend.d.ts +16 -0
- package/lib/frontend/arktsFrontend/ArktsFrontend.d.ts.map +1 -0
- package/lib/frontend/arktsFrontend/ArktsFrontend.js +52 -0
- package/lib/frontend/cppFrontend/CppFrontend.d.ts +13 -0
- package/lib/frontend/cppFrontend/CppFrontend.d.ts.map +1 -0
- package/lib/frontend/cppFrontend/CppFrontend.js +85 -0
- package/lib/frontend/cppFrontend/ast/index.d.ts +4 -4
- package/lib/frontend/cppFrontend/ast/index.d.ts.map +1 -1
- package/lib/frontend/cppFrontend/ast/index.js +4 -4
- package/lib/frontend/cppFrontend/ast/ts/ArkCxxAstNode.d.ts.map +1 -0
- package/lib/frontend/cppFrontend/ast/ts/astParser.d.ts.map +1 -0
- package/lib/frontend/cppFrontend/ast/{astParser.js → ts/astParser.js} +2 -2
- package/lib/frontend/cppFrontend/ast/ts/astUtils.d.ts.map +1 -0
- package/lib/frontend/cppFrontend/ast/ts/const.d.ts.map +1 -0
- package/lib/frontend/cppFrontend/ast/ts/napi/napiApi.d.ts.map +1 -0
- package/lib/frontend/cppFrontend/ast/{astJsonNapi → ts/napi}/napiApi.js +1 -1
- package/lib/frontend/cppFrontend/ast/ts/napi/napiRunner.d.ts.map +1 -0
- package/lib/frontend/cppFrontend/ast/{astJsonNapi → ts/napi}/napiRunner.js +2 -5
- package/lib/index.d.ts +4 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +8 -1
- package/lib/pass/Dispatcher.d.ts.map +1 -1
- package/lib/pass/Dispatcher.js +0 -4
- package/package.json +7 -5
- package/lib/frontend/cppFrontend/ast/ArkCxxAstNode.d.ts.map +0 -1
- package/lib/frontend/cppFrontend/ast/astJsonNapi/napiApi.d.ts.map +0 -1
- package/lib/frontend/cppFrontend/ast/astJsonNapi/napiRunner.d.ts.map +0 -1
- package/lib/frontend/cppFrontend/ast/astParser.d.ts.map +0 -1
- package/lib/frontend/cppFrontend/ast/astUtils.d.ts.map +0 -1
- package/lib/frontend/cppFrontend/ast/const.d.ts.map +0 -1
- /package/lib/frontend/cppFrontend/ast/{ArkCxxAstNode.d.ts → ts/ArkCxxAstNode.d.ts} +0 -0
- /package/lib/frontend/cppFrontend/ast/{ArkCxxAstNode.js → ts/ArkCxxAstNode.js} +0 -0
- /package/lib/frontend/cppFrontend/ast/{astParser.d.ts → ts/astParser.d.ts} +0 -0
- /package/lib/frontend/cppFrontend/ast/{astUtils.d.ts → ts/astUtils.d.ts} +0 -0
- /package/lib/frontend/cppFrontend/ast/{astUtils.js → ts/astUtils.js} +0 -0
- /package/lib/frontend/cppFrontend/ast/{const.d.ts → ts/const.d.ts} +0 -0
- /package/lib/frontend/cppFrontend/ast/{const.js → ts/const.js} +0 -0
- /package/lib/frontend/cppFrontend/ast/{astJsonNapi → ts/napi}/napiApi.d.ts +0 -0
- /package/lib/frontend/cppFrontend/ast/{astJsonNapi → ts/napi}/napiRunner.d.ts +0 -0
package/config/arkanalyzer.json
CHANGED
|
@@ -6,6 +6,17 @@
|
|
|
6
6
|
".d.ets",
|
|
7
7
|
".d.ts"
|
|
8
8
|
],
|
|
9
|
+
"languages": {
|
|
10
|
+
"arkts": {
|
|
11
|
+
"enabled": true,
|
|
12
|
+
"extensions": [".ets", ".ts", ".js", ".d.ets", ".d.ts"]
|
|
13
|
+
},
|
|
14
|
+
"cpp": {
|
|
15
|
+
"enabled": false,
|
|
16
|
+
"sourceExtensions": [".cc", ".cpp", ".cxx", ".c", ".c++"],
|
|
17
|
+
"headerExtensions": [".hpp", ".h", ".hxx", ".hh"]
|
|
18
|
+
}
|
|
19
|
+
},
|
|
9
20
|
"enableLeadingComments": false,
|
|
10
21
|
"enableBuiltIn": true,
|
|
11
22
|
"enableOhModulesBody": false,
|
package/lib/Config.d.ts
CHANGED
|
@@ -27,7 +27,24 @@ export interface TsConfig {
|
|
|
27
27
|
* @returns SceneConfig initialized with project files and discovered SDKs.
|
|
28
28
|
*/
|
|
29
29
|
export declare function buildSceneConfigFromProject(project: string, ohosSdkHome?: string, options?: SceneOptions): SceneConfig;
|
|
30
|
-
|
|
30
|
+
/**
|
|
31
|
+
* Per-language switch and optional file extension list (for tooling and front-end selection; extension lists are
|
|
32
|
+
* normalized for discovery and future use).
|
|
33
|
+
*/
|
|
34
|
+
export interface LanguageOptions {
|
|
35
|
+
enabled?: boolean;
|
|
36
|
+
extensions?: string[];
|
|
37
|
+
}
|
|
38
|
+
export interface CppLanguageOptions extends LanguageOptions {
|
|
39
|
+
sourceExtensions?: string[];
|
|
40
|
+
headerExtensions?: string[];
|
|
41
|
+
}
|
|
42
|
+
export interface SceneLanguagesOptions {
|
|
43
|
+
arkts?: LanguageOptions;
|
|
44
|
+
cpp?: CppLanguageOptions;
|
|
45
|
+
[option: string]: LanguageOptions | undefined;
|
|
46
|
+
}
|
|
47
|
+
export type SceneOptionsValue = string | number | boolean | (string | number)[] | string[] | SceneLanguagesOptions | null | undefined;
|
|
31
48
|
export interface SceneOptions {
|
|
32
49
|
supportFileExts?: string[];
|
|
33
50
|
ignoreFileNames?: string[];
|
|
@@ -38,6 +55,8 @@ export interface SceneOptions {
|
|
|
38
55
|
tsconfig?: string;
|
|
39
56
|
isScanAbc?: boolean;
|
|
40
57
|
sdkGlobalFolders?: string[];
|
|
58
|
+
/** Optional multi-language front-end section; defaults are merged in {@link SceneConfig} construction. */
|
|
59
|
+
languages?: SceneLanguagesOptions;
|
|
41
60
|
[option: string]: SceneOptionsValue;
|
|
42
61
|
}
|
|
43
62
|
export declare class SceneConfig {
|
|
@@ -108,5 +127,8 @@ export declare class SceneConfig {
|
|
|
108
127
|
private getDefaultConfigPath;
|
|
109
128
|
private loadDefaultConfig;
|
|
110
129
|
private appendCppExtsToDefaultOptionsIfAstJsonDumperAvailable;
|
|
130
|
+
private normalizeLanguageOptions;
|
|
131
|
+
private mergeEnabledLanguageExtensionsIntoSupportFileExts;
|
|
132
|
+
private uniqueFileExtensions;
|
|
111
133
|
}
|
|
112
134
|
//# sourceMappingURL=Config.d.ts.map
|
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;AAMhD,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,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../src/Config.ts"],"names":[],"mappings":"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"}
|
package/lib/Config.js
CHANGED
|
@@ -105,6 +105,8 @@ class SceneConfig {
|
|
|
105
105
|
this.options = { supportFileExts: ['.ets', '.ts'] };
|
|
106
106
|
this.loadDefaultConfig(options);
|
|
107
107
|
this.appendCppExtsToDefaultOptionsIfAstJsonDumperAvailable();
|
|
108
|
+
this.normalizeLanguageOptions();
|
|
109
|
+
this.mergeEnabledLanguageExtensionsIntoSupportFileExts();
|
|
108
110
|
}
|
|
109
111
|
getOptions() {
|
|
110
112
|
return this.options;
|
|
@@ -230,6 +232,8 @@ class SceneConfig {
|
|
|
230
232
|
if (configurations.options) {
|
|
231
233
|
this.options = Object.assign(Object.assign({}, this.options), configurations.options);
|
|
232
234
|
}
|
|
235
|
+
this.normalizeLanguageOptions();
|
|
236
|
+
this.mergeEnabledLanguageExtensionsIntoSupportFileExts();
|
|
233
237
|
this.buildConfig(targetProjectName, targetProjectDirectory, sdks);
|
|
234
238
|
}
|
|
235
239
|
else {
|
|
@@ -327,5 +331,49 @@ class SceneConfig {
|
|
|
327
331
|
}
|
|
328
332
|
this.options.supportFileExts = [...configuredExts, ...missingCppExts];
|
|
329
333
|
}
|
|
334
|
+
normalizeLanguageOptions() {
|
|
335
|
+
var _a, _b, _c, _d;
|
|
336
|
+
const from = this.options.languages;
|
|
337
|
+
if (!from) {
|
|
338
|
+
return;
|
|
339
|
+
}
|
|
340
|
+
const normalized = {};
|
|
341
|
+
if (from.arkts) {
|
|
342
|
+
normalized.arkts = Object.assign(Object.assign({}, from.arkts), { extensions: this.uniqueFileExtensions((_a = from.arkts.extensions) !== null && _a !== void 0 ? _a : []) });
|
|
343
|
+
}
|
|
344
|
+
if (from.cpp) {
|
|
345
|
+
normalized.cpp = Object.assign(Object.assign({}, from.cpp), { extensions: this.uniqueFileExtensions((_b = from.cpp.extensions) !== null && _b !== void 0 ? _b : []), sourceExtensions: this.uniqueFileExtensions((_c = from.cpp.sourceExtensions) !== null && _c !== void 0 ? _c : []), headerExtensions: this.uniqueFileExtensions((_d = from.cpp.headerExtensions) !== null && _d !== void 0 ? _d : []) });
|
|
346
|
+
}
|
|
347
|
+
this.options.languages = normalized;
|
|
348
|
+
}
|
|
349
|
+
mergeEnabledLanguageExtensionsIntoSupportFileExts() {
|
|
350
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
351
|
+
const languages = this.options.languages;
|
|
352
|
+
if (!languages) {
|
|
353
|
+
return;
|
|
354
|
+
}
|
|
355
|
+
const merged = [...((_a = this.options.supportFileExts) !== null && _a !== void 0 ? _a : [])];
|
|
356
|
+
if (((_b = languages.arkts) === null || _b === void 0 ? void 0 : _b.enabled) === true) {
|
|
357
|
+
merged.push(...((_c = languages.arkts.extensions) !== null && _c !== void 0 ? _c : []));
|
|
358
|
+
}
|
|
359
|
+
if (((_d = languages.cpp) === null || _d === void 0 ? void 0 : _d.enabled) === true) {
|
|
360
|
+
merged.push(...((_e = languages.cpp.extensions) !== null && _e !== void 0 ? _e : []));
|
|
361
|
+
merged.push(...((_f = languages.cpp.sourceExtensions) !== null && _f !== void 0 ? _f : []));
|
|
362
|
+
merged.push(...((_g = languages.cpp.headerExtensions) !== null && _g !== void 0 ? _g : []));
|
|
363
|
+
}
|
|
364
|
+
this.options.supportFileExts = this.uniqueFileExtensions(merged);
|
|
365
|
+
}
|
|
366
|
+
uniqueFileExtensions(extensions) {
|
|
367
|
+
const seen = new Set();
|
|
368
|
+
const out = [];
|
|
369
|
+
for (const ext of extensions) {
|
|
370
|
+
const normalized = ext.toLowerCase();
|
|
371
|
+
if (!seen.has(normalized)) {
|
|
372
|
+
seen.add(normalized);
|
|
373
|
+
out.push(normalized);
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
return out;
|
|
377
|
+
}
|
|
330
378
|
}
|
|
331
379
|
exports.SceneConfig = SceneConfig;
|
package/lib/Scene.d.ts
CHANGED
|
@@ -101,10 +101,9 @@ export declare class Scene {
|
|
|
101
101
|
*/
|
|
102
102
|
private updateOrAddDefaultConstructors;
|
|
103
103
|
private buildAllMethodBody;
|
|
104
|
-
private findCCJsonPath;
|
|
105
104
|
private genArkFiles;
|
|
106
105
|
private getFilesOrderByDependency;
|
|
107
|
-
|
|
106
|
+
getDependencyFilesDeeply(projectFile: string): void;
|
|
108
107
|
private isRepeatBuildFile;
|
|
109
108
|
private addArkFile2ModuleScene;
|
|
110
109
|
private findDependencyFiles;
|
|
@@ -153,6 +152,7 @@ export declare class Scene {
|
|
|
153
152
|
getProjectName(): string;
|
|
154
153
|
getProjectFiles(): string[];
|
|
155
154
|
getSdkGlobal(globalName: string): ArkExport | null;
|
|
155
|
+
getSdkGlobalMap(): Map<string, ArkExport>;
|
|
156
156
|
/**
|
|
157
157
|
* Returns the file based on its signature.
|
|
158
158
|
* If no file can be found according to the input signature, **null** will be returned.
|
|
@@ -174,6 +174,7 @@ export declare class Scene {
|
|
|
174
174
|
*/
|
|
175
175
|
getFile(fileSignature: FileSignature): ArkFile | null;
|
|
176
176
|
getUnhandledFilePaths(): string[];
|
|
177
|
+
addUnhandledFilePath(filePath: string): void;
|
|
177
178
|
getUnhandledSdkFilePaths(): string[];
|
|
178
179
|
setFile(file: ArkFile): void;
|
|
179
180
|
hasSdkFile(fileSignature: FileSignature): boolean;
|
|
@@ -271,6 +272,7 @@ export declare class Scene {
|
|
|
271
272
|
/** Obtain the header file directories of the input C++ project dependencies. */
|
|
272
273
|
getIncludeDirs(): string[];
|
|
273
274
|
getCcjsonPath(): string;
|
|
275
|
+
setCcjsonPath(ccjsonPath: string): void;
|
|
274
276
|
getCppAstPath(): string;
|
|
275
277
|
/**
|
|
276
278
|
* Infer type for each non-default method. It infers the type of each field/local/reference.
|
|
@@ -333,6 +335,7 @@ export declare class ModuleScene {
|
|
|
333
335
|
private moduleOhPkgFilePath;
|
|
334
336
|
private ohPkgContent;
|
|
335
337
|
constructor(projectScene: Scene);
|
|
338
|
+
getProjectScene(): Scene;
|
|
336
339
|
ModuleSceneBuilder(moduleName: string, modulePath: string, supportFileExts: string[], recursively?: boolean): void;
|
|
337
340
|
ModuleScenePartiallyBuilder(moduleName: string, modulePath: string): void;
|
|
338
341
|
/**
|
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,EAAY,MAAM,UAAU,CAAC;AAGpE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/G,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"Scene.d.ts","sourceRoot":"","sources":["../src/Scene.ts"],"names":[],"mappings":"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"}
|
package/lib/Scene.js
CHANGED
|
@@ -50,19 +50,18 @@ const ArkFile_1 = require("./core/model/ArkFile");
|
|
|
50
50
|
const ArkNamespace_1 = require("./core/model/ArkNamespace");
|
|
51
51
|
const ArkSignature_1 = require("./core/model/ArkSignature");
|
|
52
52
|
const logger_1 = __importStar(require("./utils/logger"));
|
|
53
|
-
const ArkFileBuilder_1 = require("./core/model/builder/ArkFileBuilder");
|
|
54
53
|
const json5parser_1 = require("./utils/json5parser");
|
|
55
54
|
const getAllFiles_1 = require("./utils/getAllFiles");
|
|
56
55
|
const FileUtils_1 = require("./utils/FileUtils");
|
|
57
56
|
const ArkExport_1 = require("./core/model/ArkExport");
|
|
58
57
|
const ArkMethodBuilder_1 = require("./core/model/builder/ArkMethodBuilder");
|
|
59
58
|
const ArkMethodBuilder_2 = require("./frontend/cppFrontend/model/builder/ArkMethodBuilder");
|
|
60
|
-
const ast_1 = require("./frontend/cppFrontend/ast");
|
|
61
59
|
const Const_1 = require("./core/common/Const");
|
|
62
60
|
const CallGraph_1 = require("./callgraph/model/CallGraph");
|
|
63
61
|
const CallGraphBuilder_1 = require("./callgraph/model/builder/CallGraphBuilder");
|
|
64
|
-
const ArkFileBuilder_2 = require("./frontend/cppFrontend/model/builder/ArkFileBuilder");
|
|
65
62
|
const IRInference_1 = require("./frontend/cppFrontend/common/IRInference");
|
|
63
|
+
const ArktsFrontend_1 = require("./frontend/arktsFrontend/ArktsFrontend");
|
|
64
|
+
const FrontendBuilder_1 = require("./frontend/FrontendBuilder");
|
|
66
65
|
const TSConst_1 = require("./core/common/TSConst");
|
|
67
66
|
const EtsConst_1 = require("./core/common/EtsConst");
|
|
68
67
|
const SdkUtils_1 = require("./core/common/SdkUtils");
|
|
@@ -72,7 +71,6 @@ const Inference_1 = require("./core/inference/Inference");
|
|
|
72
71
|
const IRInference_2 = require("./core/common/IRInference");
|
|
73
72
|
const ModuleUtils_1 = require("./utils/ModuleUtils");
|
|
74
73
|
const logger = logger_1.default.getLogger(logger_1.LOG_MODULE_TYPE.ARKANALYZER, 'Scene');
|
|
75
|
-
const CXX_HEADER_EXTENSION_SET = (0, ast_1.getCxxHeaderFileExtensionSet)();
|
|
76
74
|
var SceneBuildStage;
|
|
77
75
|
(function (SceneBuildStage) {
|
|
78
76
|
SceneBuildStage[SceneBuildStage["BUILD_INIT"] = 0] = "BUILD_INIT";
|
|
@@ -405,37 +403,8 @@ class Scene {
|
|
|
405
403
|
ModelUtils_1.ModelUtils.dispose();
|
|
406
404
|
this.buildStage = SceneBuildStage.METHOD_DONE;
|
|
407
405
|
}
|
|
408
|
-
findCCJsonPath(file, ccjsonPath) {
|
|
409
|
-
const ext = path_1.default.extname(file).toLowerCase();
|
|
410
|
-
const isHeader = CXX_HEADER_EXTENSION_SET.has(ext);
|
|
411
|
-
let currentCcjsonPath = '';
|
|
412
|
-
if (!isHeader) {
|
|
413
|
-
currentCcjsonPath = (0, ast_1.findCompileCommands)(file);
|
|
414
|
-
}
|
|
415
|
-
return currentCcjsonPath === '' ? ccjsonPath : currentCcjsonPath;
|
|
416
|
-
}
|
|
417
406
|
genArkFiles() {
|
|
418
|
-
|
|
419
|
-
logger.trace('=== parse file:', file);
|
|
420
|
-
try {
|
|
421
|
-
const arkFile = new ArkFile_1.ArkFile(FileUtils_1.FileUtils.getFileLanguage(file, this.fileLanguages));
|
|
422
|
-
arkFile.setScene(this);
|
|
423
|
-
// CXXTodo: Distinguish between C++ and TS/ArkTS. Call different builder functions based on file language.
|
|
424
|
-
if (arkFile.getLanguage() === ArkFile_1.Language.CXX) {
|
|
425
|
-
this.ccjsonPath = this.findCCJsonPath(file, this.ccjsonPath);
|
|
426
|
-
(0, ArkFileBuilder_2.buildArkFileFromFile)(file, this.realProjectDir, arkFile, this.projectName, this.includeDirs);
|
|
427
|
-
}
|
|
428
|
-
else {
|
|
429
|
-
(0, ArkFileBuilder_1.buildArkFileFromFile)(file, this.realProjectDir, arkFile, this.projectName);
|
|
430
|
-
}
|
|
431
|
-
this.setFile(arkFile);
|
|
432
|
-
}
|
|
433
|
-
catch (error) {
|
|
434
|
-
logger.error('Error parsing file:', file, error);
|
|
435
|
-
this.unhandledFilePaths.add(file);
|
|
436
|
-
return;
|
|
437
|
-
}
|
|
438
|
-
});
|
|
407
|
+
FrontendBuilder_1.FrontendBuilder.buildFilesIntoArkFiles(this, this.projectFiles);
|
|
439
408
|
this.buildAllMethodBody();
|
|
440
409
|
this.updateOrAddDefaultConstructors();
|
|
441
410
|
}
|
|
@@ -459,13 +428,7 @@ class Scene {
|
|
|
459
428
|
try {
|
|
460
429
|
const arkFile = new ArkFile_1.ArkFile(FileUtils_1.FileUtils.getFileLanguage(projectFile, this.fileLanguages));
|
|
461
430
|
arkFile.setScene(this);
|
|
462
|
-
|
|
463
|
-
if (arkFile.getLanguage() === ArkFile_1.Language.CXX) {
|
|
464
|
-
(0, ArkFileBuilder_2.buildArkFileFromFile)(projectFile, this.getRealProjectDir(), arkFile, this.getProjectName(), this.includeDirs);
|
|
465
|
-
}
|
|
466
|
-
else {
|
|
467
|
-
(0, ArkFileBuilder_1.buildArkFileFromFile)(projectFile, this.getRealProjectDir(), arkFile, this.getProjectName());
|
|
468
|
-
}
|
|
431
|
+
FrontendBuilder_1.FrontendBuilder.buildProjectFileIntoArkFile(this, projectFile, arkFile);
|
|
469
432
|
for (const [modulePath, moduleName] of this.modulePath2NameMap) {
|
|
470
433
|
if (arkFile.getFilePath().startsWith(modulePath)) {
|
|
471
434
|
this.addArkFile2ModuleScene(modulePath, moduleName, arkFile);
|
|
@@ -695,12 +658,22 @@ class Scene {
|
|
|
695
658
|
try {
|
|
696
659
|
const arkFile = new ArkFile_1.ArkFile(FileUtils_1.FileUtils.getFileLanguage(file, this.fileLanguages));
|
|
697
660
|
arkFile.setScene(this);
|
|
698
|
-
|
|
661
|
+
ArktsFrontend_1.ArktsFrontend.buildArkFileFromSdkPath(file, sdkPath, arkFile, sdkName);
|
|
699
662
|
ModelUtils_1.ModelUtils.getAllClassesInFile(arkFile).forEach(cls => {
|
|
700
663
|
var _a, _b;
|
|
701
664
|
(_a = cls.getDefaultArkMethod()) === null || _a === void 0 ? void 0 : _a.buildBody();
|
|
702
665
|
(_b = cls.getDefaultArkMethod()) === null || _b === void 0 ? void 0 : _b.freeBodyBuilder();
|
|
703
666
|
});
|
|
667
|
+
// Release all method builders in SDK file to avoid retaining AST/build context in memory.
|
|
668
|
+
ModelUtils_1.ModelUtils.getAllMethodsInFile(arkFile).forEach(method => {
|
|
669
|
+
var _a;
|
|
670
|
+
if (((_a = method.getDeclaringArkFile()) === null || _a === void 0 ? void 0 : _a.getLanguage()) === ArkFile_1.Language.CXX) {
|
|
671
|
+
method.freeCxxBodyBuilder();
|
|
672
|
+
}
|
|
673
|
+
else {
|
|
674
|
+
method.freeBodyBuilder();
|
|
675
|
+
}
|
|
676
|
+
});
|
|
704
677
|
const fileSig = arkFile.getFileSignature().toMapKey();
|
|
705
678
|
this.sdkArkFilesMap.set(fileSig, arkFile);
|
|
706
679
|
SdkUtils_1.SdkUtils.buildSdkImportMap(arkFile);
|
|
@@ -804,6 +777,9 @@ class Scene {
|
|
|
804
777
|
getSdkGlobal(globalName) {
|
|
805
778
|
return this.sdkGlobalMap.get(globalName) || null;
|
|
806
779
|
}
|
|
780
|
+
getSdkGlobalMap() {
|
|
781
|
+
return this.sdkGlobalMap;
|
|
782
|
+
}
|
|
807
783
|
/**
|
|
808
784
|
* Returns the file based on its signature.
|
|
809
785
|
* If no file can be found according to the input signature, **null** will be returned.
|
|
@@ -837,6 +813,9 @@ class Scene {
|
|
|
837
813
|
getUnhandledFilePaths() {
|
|
838
814
|
return Array.from(this.unhandledFilePaths);
|
|
839
815
|
}
|
|
816
|
+
addUnhandledFilePath(filePath) {
|
|
817
|
+
this.unhandledFilePaths.add(filePath);
|
|
818
|
+
}
|
|
840
819
|
/*
|
|
841
820
|
* Returns the absolute sdk file paths that cannot be handled currently.
|
|
842
821
|
*/
|
|
@@ -1093,6 +1072,9 @@ class Scene {
|
|
|
1093
1072
|
getCcjsonPath() {
|
|
1094
1073
|
return this.ccjsonPath;
|
|
1095
1074
|
}
|
|
1075
|
+
setCcjsonPath(ccjsonPath) {
|
|
1076
|
+
this.ccjsonPath = ccjsonPath;
|
|
1077
|
+
}
|
|
1096
1078
|
getCppAstPath() {
|
|
1097
1079
|
return this.cppAstPath;
|
|
1098
1080
|
}
|
|
@@ -1118,6 +1100,7 @@ class Scene {
|
|
|
1118
1100
|
}
|
|
1119
1101
|
SdkUtils_1.SdkUtils.dispose();
|
|
1120
1102
|
ModuleUtils_1.ModuleUtils.dispose();
|
|
1103
|
+
ValueUtil_1.ValueUtil.dispose();
|
|
1121
1104
|
}
|
|
1122
1105
|
/**
|
|
1123
1106
|
* @deprecated This method is deprecated and will be removed in the next major release.
|
|
@@ -1457,6 +1440,9 @@ class ModuleScene {
|
|
|
1457
1440
|
this.ohPkgContent = {};
|
|
1458
1441
|
this.projectScene = projectScene;
|
|
1459
1442
|
}
|
|
1443
|
+
getProjectScene() {
|
|
1444
|
+
return this.projectScene;
|
|
1445
|
+
}
|
|
1460
1446
|
ModuleSceneBuilder(moduleName, modulePath, supportFileExts, recursively = false) {
|
|
1461
1447
|
this.moduleName = moduleName;
|
|
1462
1448
|
this.modulePath = modulePath;
|
|
@@ -1511,26 +1497,8 @@ class ModuleScene {
|
|
|
1511
1497
|
this.moduleFileMap.set(arkFile.getFileSignature().toMapKey(), arkFile);
|
|
1512
1498
|
}
|
|
1513
1499
|
genArkFiles(supportFileExts) {
|
|
1514
|
-
(0, getAllFiles_1.getAllFiles)(this.modulePath, supportFileExts, this.projectScene.getOptions().ignoreFileNames)
|
|
1515
|
-
|
|
1516
|
-
try {
|
|
1517
|
-
const arkFile = new ArkFile_1.ArkFile(FileUtils_1.FileUtils.getFileLanguage(file, this.projectScene.getFileLanguages()));
|
|
1518
|
-
arkFile.setScene(this.projectScene);
|
|
1519
|
-
arkFile.setModuleScene(this);
|
|
1520
|
-
if (arkFile.getLanguage() === ArkFile_1.Language.CXX) {
|
|
1521
|
-
(0, ArkFileBuilder_2.buildArkFileFromFile)(file, this.projectScene.getRealProjectDir(), arkFile, this.projectScene.getProjectName(), this.projectScene.getIncludeDirs());
|
|
1522
|
-
}
|
|
1523
|
-
else {
|
|
1524
|
-
(0, ArkFileBuilder_1.buildArkFileFromFile)(file, this.projectScene.getRealProjectDir(), arkFile, this.projectScene.getProjectName());
|
|
1525
|
-
}
|
|
1526
|
-
this.projectScene.setFile(arkFile);
|
|
1527
|
-
}
|
|
1528
|
-
catch (error) {
|
|
1529
|
-
logger.error('Error parsing file:', file, error);
|
|
1530
|
-
this.projectScene.getUnhandledFilePaths().push(file);
|
|
1531
|
-
return;
|
|
1532
|
-
}
|
|
1533
|
-
});
|
|
1500
|
+
const filePaths = (0, getAllFiles_1.getAllFiles)(this.modulePath, supportFileExts, this.projectScene.getOptions().ignoreFileNames);
|
|
1501
|
+
FrontendBuilder_1.FrontendBuilder.buildModuleFilesIntoArkFiles(this, filePaths);
|
|
1534
1502
|
}
|
|
1535
1503
|
}
|
|
1536
1504
|
exports.ModuleScene = ModuleScene;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../../../src/callgraph/pointerAnalysis/context/Context.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAuB,kBAAkB,EAAmB,MAAM,eAAe,CAAC;AAEzF,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAC/B,eAAO,MAAM,SAAS,IAAI,CAAC;AAI3B,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC;;;GAGG;AACH,8BAAsB,OAAO;IACzB,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;gBAErB,YAAY,GAAE,MAAM,EAAO;IAQvC;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC;IAIxD;;;;;OAKG;IACH,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,OAAO,EAAE,IAAI,EAAE,KAAK,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,CAAC;IAI1F;;;;;;OAMG;IACH,MAAM,CAAC,kBAAkB,CAAC,CAAC,SAAS,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC;IAgBnF;;;;;OAKG;IACH,MAAM,CAAC,eAAe,CAAC,CAAC,SAAS,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC;IAcxD,MAAM,IAAI,MAAM;IAIhB,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAO1B,QAAQ,IAAI,MAAM;aAKT,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,kBAAkB,GAAG,OAAO;aACxF,IAAI,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE,SAAS,GAAG,MAAM;CACrE;AAED,qBAAa,eAAgB,SAAQ,OAAO;IACjC,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,kBAAkB,GAAG,eAAe;IAKjG,IAAI,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE,SAAS,GAAG,MAAM;CAS5D;AAED,qBAAa,UAAW,SAAQ,OAAO;IAC5B,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,kBAAkB,GAAG,UAAU;IAKvF,IAAI,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE,SAAS,GAAG,MAAM;CAI5D;AAED,qBAAa,WAAY,SAAQ,OAAO;IAC7B,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,kBAAkB,GAAG,WAAW;IAKzF,IAAI,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE,SAAS,GAAG,MAAM;CAS5D;AAED,qBAAa,YAAY;IACrB,OAAO,CAAC,WAAW,
|
|
1
|
+
{"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../../../src/callgraph/pointerAnalysis/context/Context.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAuB,kBAAkB,EAAmB,MAAM,eAAe,CAAC;AAEzF,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAC/B,eAAO,MAAM,SAAS,IAAI,CAAC;AAI3B,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC;;;GAGG;AACH,8BAAsB,OAAO;IACzB,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;gBAErB,YAAY,GAAE,MAAM,EAAO;IAQvC;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC;IAIxD;;;;;OAKG;IACH,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,OAAO,EAAE,IAAI,EAAE,KAAK,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,CAAC;IAI1F;;;;;;OAMG;IACH,MAAM,CAAC,kBAAkB,CAAC,CAAC,SAAS,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC;IAgBnF;;;;;OAKG;IACH,MAAM,CAAC,eAAe,CAAC,CAAC,SAAS,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC;IAcxD,MAAM,IAAI,MAAM;IAIhB,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAO1B,QAAQ,IAAI,MAAM;aAKT,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,kBAAkB,GAAG,OAAO;aACxF,IAAI,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE,SAAS,GAAG,MAAM;CACrE;AAED,qBAAa,eAAgB,SAAQ,OAAO;IACjC,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,kBAAkB,GAAG,eAAe;IAKjG,IAAI,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE,SAAS,GAAG,MAAM;CAS5D;AAED,qBAAa,UAAW,SAAQ,OAAO;IAC5B,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,kBAAkB,GAAG,UAAU;IAKvF,IAAI,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE,SAAS,GAAG,MAAM;CAI5D;AAED,qBAAa,WAAY,SAAQ,OAAO;IAC7B,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,kBAAkB,GAAG,WAAW;IAKzF,IAAI,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE,SAAS,GAAG,MAAM;CAS5D;AAED,qBAAa,YAAY;IACrB,OAAO,CAAC,WAAW,CAAY;IAC/B,OAAO,CAAC,cAAc,CAAsB;;IAOrC,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS;IAa9C,aAAa,CAAC,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,GAAG,OAAO;IAY/E,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS;IASrD,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAO3C,cAAc,IAAI,OAAO,EAAE;IAI3B,IAAI,CAAC,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE,SAAS,GAAG,MAAM;CAQ5D"}
|
|
@@ -110,13 +110,13 @@ class CallSiteContext extends Context {
|
|
|
110
110
|
return Context.newKLimitedContext(this, contextItem.id, k);
|
|
111
111
|
}
|
|
112
112
|
dump(m, cg) {
|
|
113
|
-
|
|
113
|
+
const contentParts = [];
|
|
114
114
|
for (let i = 0; i < this.length(); i++) {
|
|
115
115
|
const item = m.getItem(this.get(i));
|
|
116
116
|
const callSiteInfo = cg.getCallSiteInfo(item.callSiteId);
|
|
117
|
-
|
|
117
|
+
contentParts.push(`\t[${callSiteInfo}]\n`);
|
|
118
118
|
}
|
|
119
|
-
return
|
|
119
|
+
return contentParts.join('');
|
|
120
120
|
}
|
|
121
121
|
}
|
|
122
122
|
exports.CallSiteContext = CallSiteContext;
|
|
@@ -137,13 +137,13 @@ class FuncContext extends Context {
|
|
|
137
137
|
return Context.newKLimitedContext(this, contextItem.id, k);
|
|
138
138
|
}
|
|
139
139
|
dump(m, cg) {
|
|
140
|
-
|
|
140
|
+
const contentParts = [];
|
|
141
141
|
for (let i = 0; i < this.length(); i++) {
|
|
142
142
|
const item = m.getItem(this.get(i));
|
|
143
143
|
const methodSig = cg.getMethodByFuncID(item.funcID).toString();
|
|
144
|
-
|
|
144
|
+
contentParts.push(`\t[${methodSig}]\n`);
|
|
145
145
|
}
|
|
146
|
-
return
|
|
146
|
+
return contentParts.join('');
|
|
147
147
|
}
|
|
148
148
|
}
|
|
149
149
|
exports.FuncContext = FuncContext;
|
|
@@ -151,8 +151,6 @@ class ContextCache {
|
|
|
151
151
|
constructor() {
|
|
152
152
|
this.contextList = [];
|
|
153
153
|
this.contextToIDMap = new Map();
|
|
154
|
-
this.contextList = [];
|
|
155
|
-
this.contextToIDMap = new Map();
|
|
156
154
|
}
|
|
157
155
|
getOrNewContextID(context) {
|
|
158
156
|
let cStr = context.toString();
|
|
@@ -195,12 +193,12 @@ class ContextCache {
|
|
|
195
193
|
return this.contextList;
|
|
196
194
|
}
|
|
197
195
|
dump(m, cg) {
|
|
198
|
-
|
|
196
|
+
const contentParts = [];
|
|
199
197
|
this.contextList.forEach((c, i) => {
|
|
200
|
-
|
|
201
|
-
|
|
198
|
+
contentParts.push(`Context ${i}:\n`);
|
|
199
|
+
contentParts.push(`${c.dump(m, cg)}\n`);
|
|
202
200
|
});
|
|
203
|
-
return
|
|
201
|
+
return contentParts.join('');
|
|
204
202
|
}
|
|
205
203
|
}
|
|
206
204
|
exports.ContextCache = ContextCache;
|
|
@@ -159,7 +159,7 @@ class WorkerPlugin {
|
|
|
159
159
|
getFileByPath(callstmt, filePath) {
|
|
160
160
|
let declaringarkfile = callstmt.getCfg().getDeclaringMethod().getDeclaringArkClass().getDeclaringArkFile();
|
|
161
161
|
const scene = declaringarkfile.getScene();
|
|
162
|
-
let filepath = filePath.toString().replace(
|
|
162
|
+
let filepath = filePath.toString().replace(/^(?:\.\.\/|\.\/)|'/g, '');
|
|
163
163
|
filepath = filepath.substring(filepath.indexOf('ets'));
|
|
164
164
|
if (/\.e?ts$/.test(filepath)) {
|
|
165
165
|
const fileSignature = new __1.FileSignature(declaringarkfile.getFileSignature().getProjectName(), filepath);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Type.d.ts","sourceRoot":"","sources":["../../../src/core/base/Type.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Type.d.ts","sourceRoot":"","sources":["../../../src/core/base/Type.ts"],"names":[],"mappings":"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"}
|
package/lib/core/base/Type.js
CHANGED
|
@@ -729,9 +729,8 @@ exports.AnnotationTypeQueryType = AnnotationTypeQueryType;
|
|
|
729
729
|
class LexicalEnvType extends Type {
|
|
730
730
|
constructor(nestedMethod, closures) {
|
|
731
731
|
super();
|
|
732
|
-
this.closures = [];
|
|
733
732
|
this.nestedMethodSignature = nestedMethod;
|
|
734
|
-
this.closures = closures !== null && closures !== void 0 ? closures :
|
|
733
|
+
this.closures = closures !== null && closures !== void 0 ? closures : [];
|
|
735
734
|
}
|
|
736
735
|
getNestedMethod() {
|
|
737
736
|
return this.nestedMethodSignature;
|
|
@@ -54,6 +54,12 @@ export declare class ModelUtils {
|
|
|
54
54
|
static findGlobalRef(refName: string, method: ArkMethod): ArkExport | null;
|
|
55
55
|
static findArkModelByRefName(refName: string, arkClass: ArkClass): ArkExport | ArkField | null;
|
|
56
56
|
static findArkModelBySignature(signature: Signature, scene: Scene): ArkExport | ArkField | null;
|
|
57
|
+
/**
|
|
58
|
+
* Finds the initial value that a given value was assigned from by tracing through assignments.
|
|
59
|
+
* The method recursively traces the value to handle chained assignments.
|
|
60
|
+
* Has a maximum recursion depth of 10 to prevent infinite loops.
|
|
61
|
+
*/
|
|
62
|
+
static findRefInitValue(value: Value, scene: Scene, times?: number): Value;
|
|
57
63
|
static parseArkBaseModel2Type(arkBaseModel: ArkBaseModel): Type | null;
|
|
58
64
|
static isMatched(parameters: MethodParameter[], args: Value[], scene: Scene, isArrowFunc?: boolean): boolean;
|
|
59
65
|
private static matchParam;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelUtils.d.ts","sourceRoot":"","sources":["../../../src/core/common/ModelUtils.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ModelUtils.d.ts","sourceRoot":"","sources":["../../../src/core/common/ModelUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -513,6 +513,36 @@ class ModelUtils {
|
|
|
513
513
|
}
|
|
514
514
|
return null;
|
|
515
515
|
}
|
|
516
|
+
/**
|
|
517
|
+
* Finds the initial value that a given value was assigned from by tracing through assignments.
|
|
518
|
+
* The method recursively traces the value to handle chained assignments.
|
|
519
|
+
* Has a maximum recursion depth of 10 to prevent infinite loops.
|
|
520
|
+
*/
|
|
521
|
+
static findRefInitValue(value, scene, times = 0) {
|
|
522
|
+
if (times > 10) {
|
|
523
|
+
return value;
|
|
524
|
+
}
|
|
525
|
+
let initValue;
|
|
526
|
+
if (value instanceof Local_1.Local) {
|
|
527
|
+
// Try to trace the value assignment
|
|
528
|
+
const declaringStmt = value.getDeclaringStmt();
|
|
529
|
+
if (declaringStmt instanceof Stmt_1.ArkAssignStmt) {
|
|
530
|
+
initValue = this.findRefInitValue(declaringStmt.getRightOp(), scene, times + 1);
|
|
531
|
+
}
|
|
532
|
+
}
|
|
533
|
+
else if (value instanceof Ref_1.ArkInstanceFieldRef) {
|
|
534
|
+
// Try to trace the field ref
|
|
535
|
+
const field = ModelUtils.findArkModelBySignature(value.getFieldSignature(), scene);
|
|
536
|
+
if (field instanceof ArkField_1.ArkField) {
|
|
537
|
+
const stmts = field.getInitializer();
|
|
538
|
+
const lastStmt = stmts[stmts.length - 1];
|
|
539
|
+
if (lastStmt instanceof Stmt_1.ArkAssignStmt) {
|
|
540
|
+
initValue = this.findRefInitValue(lastStmt.getRightOp(), scene, times + 1);
|
|
541
|
+
}
|
|
542
|
+
}
|
|
543
|
+
}
|
|
544
|
+
return initValue !== null && initValue !== void 0 ? initValue : value;
|
|
545
|
+
}
|
|
516
546
|
static parseArkBaseModel2Type(arkBaseModel) {
|
|
517
547
|
if (arkBaseModel instanceof ArkClass_1.ArkClass) {
|
|
518
548
|
return new Type_1.ClassType(arkBaseModel.getSignature(), arkBaseModel.getGenericsTypes());
|
|
@@ -117,7 +117,7 @@ class SdkUtils {
|
|
|
117
117
|
this.sdkImportMap.set(fileName.replace(/\.d\.e?ts$/, ''), file);
|
|
118
118
|
}
|
|
119
119
|
else if (file.getName().startsWith('api')) {
|
|
120
|
-
this.sdkImportMap.set(file.getName().replace(
|
|
120
|
+
this.sdkImportMap.set(file.getName().replace(/^api[/\\]|\.d\.e?ts$/g, ''), file);
|
|
121
121
|
}
|
|
122
122
|
}
|
|
123
123
|
static getImportSdkFile(from) {
|