arkanalyzer 1.0.16 → 1.0.18
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/callgraph/pointerAnalysis/Pag.d.ts +1 -1
- package/lib/callgraph/pointerAnalysis/Pag.d.ts.map +1 -1
- package/lib/callgraph/pointerAnalysis/Pag.js +9 -0
- package/lib/callgraph/pointerAnalysis/PagBuilder.d.ts.map +1 -1
- package/lib/callgraph/pointerAnalysis/PagBuilder.js +6 -2
- package/lib/core/base/Decorator.d.ts +1 -0
- package/lib/core/base/Decorator.d.ts.map +1 -1
- package/lib/core/base/Decorator.js +4 -1
- package/lib/core/base/Type.d.ts +45 -3
- package/lib/core/base/Type.d.ts.map +1 -1
- package/lib/core/base/Type.js +84 -4
- package/lib/core/common/ArkIRTransformer.d.ts +1 -0
- package/lib/core/common/ArkIRTransformer.d.ts.map +1 -1
- package/lib/core/common/ArkIRTransformer.js +42 -23
- package/lib/core/common/ArkValueTransformer.d.ts +1 -0
- package/lib/core/common/ArkValueTransformer.d.ts.map +1 -1
- package/lib/core/common/ArkValueTransformer.js +45 -10
- package/lib/core/common/IRInference.d.ts.map +1 -1
- package/lib/core/common/IRInference.js +6 -0
- package/lib/core/common/ModelUtils.d.ts.map +1 -1
- package/lib/core/common/ModelUtils.js +5 -1
- package/lib/core/common/TypeInference.d.ts +1 -0
- package/lib/core/common/TypeInference.d.ts.map +1 -1
- package/lib/core/common/TypeInference.js +27 -8
- package/lib/core/{common → graph/builder}/CfgBuilder.d.ts +34 -46
- package/lib/core/graph/builder/CfgBuilder.d.ts.map +1 -0
- package/lib/core/graph/builder/CfgBuilder.js +1139 -0
- package/lib/core/graph/builder/ConditionBuilder.d.ts +16 -0
- package/lib/core/graph/builder/ConditionBuilder.d.ts.map +1 -0
- package/lib/core/graph/builder/ConditionBuilder.js +252 -0
- package/lib/core/graph/builder/LoopBuilder.d.ts +21 -0
- package/lib/core/graph/builder/LoopBuilder.d.ts.map +1 -0
- package/lib/core/graph/builder/LoopBuilder.js +251 -0
- package/lib/core/graph/builder/SwitchBuilder.d.ts +12 -0
- package/lib/core/graph/builder/SwitchBuilder.d.ts.map +1 -0
- package/lib/core/graph/builder/SwitchBuilder.js +152 -0
- package/lib/core/graph/builder/TrapBuilder.d.ts +17 -0
- package/lib/core/graph/builder/TrapBuilder.d.ts.map +1 -0
- package/lib/core/graph/builder/TrapBuilder.js +272 -0
- package/lib/core/model/ArkMethod.d.ts +1 -1
- package/lib/core/model/ArkMethod.js +1 -1
- package/lib/core/model/ArkSignature.d.ts +9 -1
- package/lib/core/model/ArkSignature.d.ts.map +1 -1
- package/lib/core/model/ArkSignature.js +17 -1
- package/lib/core/model/builder/ArkClassBuilder.d.ts.map +1 -1
- package/lib/core/model/builder/ArkClassBuilder.js +2 -1
- package/lib/core/model/builder/ArkMethodBuilder.js +1 -1
- package/lib/core/{common → model/builder}/BodyBuilder.d.ts +5 -5
- package/lib/core/model/builder/BodyBuilder.d.ts.map +1 -0
- package/lib/core/{common → model/builder}/BodyBuilder.js +12 -12
- package/lib/core/model/builder/builderUtils.d.ts.map +1 -1
- package/lib/core/model/builder/builderUtils.js +31 -5
- package/lib/save/JsonPrinter.d.ts +1 -1
- package/lib/save/JsonPrinter.d.ts.map +1 -1
- package/lib/save/JsonPrinter.js +2 -2
- package/lib/save/PrinterBuilder.d.ts +22 -0
- package/lib/save/PrinterBuilder.d.ts.map +1 -1
- package/lib/save/PrinterBuilder.js +54 -1
- package/lib/save/arkir/ArkIRClassPrinter.d.ts +14 -0
- package/lib/save/arkir/ArkIRClassPrinter.d.ts.map +1 -0
- package/lib/save/arkir/ArkIRClassPrinter.js +92 -0
- package/lib/save/arkir/ArkIRFieldPrinter.d.ts +12 -0
- package/lib/save/arkir/ArkIRFieldPrinter.d.ts.map +1 -0
- package/lib/save/arkir/ArkIRFieldPrinter.js +64 -0
- package/lib/save/arkir/ArkIRFilePrinter.d.ts +13 -0
- package/lib/save/arkir/ArkIRFilePrinter.d.ts.map +1 -0
- package/lib/save/arkir/ArkIRFilePrinter.js +54 -0
- package/lib/save/arkir/ArkIRMethodPrinter.d.ts +17 -0
- package/lib/save/arkir/ArkIRMethodPrinter.d.ts.map +1 -0
- package/lib/save/arkir/ArkIRMethodPrinter.js +159 -0
- package/lib/save/arkir/ArkIRNamespacePrinter.d.ts +12 -0
- package/lib/save/arkir/ArkIRNamespacePrinter.d.ts.map +1 -0
- package/lib/save/arkir/ArkIRNamespacePrinter.js +66 -0
- package/lib/save/base/BasePrinter.d.ts +24 -0
- package/lib/save/base/BasePrinter.d.ts.map +1 -0
- package/lib/save/base/BasePrinter.js +70 -0
- package/lib/save/base/ExportPrinter.d.ts +9 -0
- package/lib/save/base/ExportPrinter.d.ts.map +1 -0
- package/lib/save/base/ExportPrinter.js +67 -0
- package/lib/save/base/ImportPrinter.d.ts +10 -0
- package/lib/save/base/ImportPrinter.d.ts.map +1 -0
- package/lib/save/base/ImportPrinter.js +92 -0
- package/lib/save/{source/SourceUtils.d.ts → base/PrinterUtils.d.ts} +2 -2
- package/lib/save/{source/SourceUtils.d.ts.map → base/PrinterUtils.d.ts.map} +1 -1
- package/lib/save/{source/SourceUtils.js → base/PrinterUtils.js} +10 -10
- package/lib/save/source/SourceBase.d.ts +2 -11
- package/lib/save/source/SourceBase.d.ts.map +1 -1
- package/lib/save/source/SourceBase.js +3 -25
- package/lib/save/source/SourceBody.js +3 -3
- package/lib/save/source/SourceClass.d.ts +2 -1
- package/lib/save/source/SourceClass.d.ts.map +1 -1
- package/lib/save/source/SourceClass.js +18 -17
- package/lib/save/source/SourceFilePrinter.d.ts +1 -1
- package/lib/save/source/SourceFilePrinter.d.ts.map +1 -1
- package/lib/save/source/SourceFilePrinter.js +9 -10
- package/lib/save/source/SourceMethod.d.ts +1 -1
- package/lib/save/source/SourceMethod.d.ts.map +1 -1
- package/lib/save/source/SourceMethod.js +37 -22
- package/lib/save/source/SourceNamespace.d.ts.map +1 -1
- package/lib/save/source/SourceNamespace.js +6 -6
- package/lib/save/source/SourceStmt.d.ts +1 -1
- package/lib/save/source/SourceStmt.d.ts.map +1 -1
- package/lib/save/source/SourceStmt.js +29 -42
- package/lib/save/source/SourceTransformer.d.ts +3 -1
- package/lib/save/source/SourceTransformer.d.ts.map +1 -1
- package/lib/save/source/SourceTransformer.js +65 -29
- package/package.json +1 -1
- package/lib/core/common/BodyBuilder.d.ts.map +0 -1
- package/lib/core/common/CfgBuilder.d.ts.map +0 -1
- package/lib/core/common/CfgBuilder.js +0 -1886
- package/lib/save/source/SourceModule.d.ts +0 -16
- package/lib/save/source/SourceModule.d.ts.map +0 -1
- package/lib/save/source/SourceModule.js +0 -125
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/*
|
|
3
|
-
* Copyright (c) 2024 Huawei Device Co., Ltd.
|
|
3
|
+
* Copyright (c) 2024-2025 Huawei Device Co., Ltd.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
5
|
* you may not use this file except in compliance with the License.
|
|
6
6
|
* You may obtain a copy of the License at
|
|
@@ -47,7 +47,7 @@ const Type_1 = require("../../core/base/Type");
|
|
|
47
47
|
const logger_1 = __importStar(require("../../utils/logger"));
|
|
48
48
|
const SourceBody_1 = require("./SourceBody");
|
|
49
49
|
const SourceTransformer_1 = require("./SourceTransformer");
|
|
50
|
-
const
|
|
50
|
+
const PrinterUtils_1 = require("../base/PrinterUtils");
|
|
51
51
|
const ValueUtil_1 = require("../../core/common/ValueUtil");
|
|
52
52
|
const ArkClass_1 = require("../../core/model/ArkClass");
|
|
53
53
|
const ArkBaseModel_1 = require("../../core/model/ArkBaseModel");
|
|
@@ -108,7 +108,7 @@ class SourceStmt {
|
|
|
108
108
|
if (!(value instanceof Local_1.Local)) {
|
|
109
109
|
return false;
|
|
110
110
|
}
|
|
111
|
-
return
|
|
111
|
+
return PrinterUtils_1.PrinterUtils.isTemp(value.getName());
|
|
112
112
|
}
|
|
113
113
|
}
|
|
114
114
|
exports.SourceStmt = SourceStmt;
|
|
@@ -144,11 +144,11 @@ class SourceAssignStmt extends SourceStmt {
|
|
|
144
144
|
else if (this.leftOp instanceof Local_1.Local && this.rightOp instanceof Expr_1.ArkNewArrayExpr) {
|
|
145
145
|
this.transferRightNewArrayExpr();
|
|
146
146
|
}
|
|
147
|
-
else if (this.rightOp instanceof Expr_1.ArkStaticInvokeExpr &&
|
|
147
|
+
else if (this.rightOp instanceof Expr_1.ArkStaticInvokeExpr && PrinterUtils_1.PrinterUtils.isComponentCreate(this.rightOp)) {
|
|
148
148
|
this.transferRightComponentCreate();
|
|
149
149
|
}
|
|
150
150
|
else if (this.rightOp instanceof Expr_1.ArkInstanceInvokeExpr &&
|
|
151
|
-
|
|
151
|
+
PrinterUtils_1.PrinterUtils.isComponentAttributeInvoke(this.rightOp)) {
|
|
152
152
|
this.transferRightComponentAttribute();
|
|
153
153
|
}
|
|
154
154
|
else {
|
|
@@ -168,7 +168,7 @@ class SourceAssignStmt extends SourceStmt {
|
|
|
168
168
|
let leftOpType = this.leftOp.getType();
|
|
169
169
|
if (leftOpType instanceof Type_1.ClassType) {
|
|
170
170
|
let name = leftOpType.getClassSignature().getClassName();
|
|
171
|
-
if (
|
|
171
|
+
if (PrinterUtils_1.PrinterUtils.isAnonymousClass(name)) {
|
|
172
172
|
this.leftTypeCode = 'any';
|
|
173
173
|
}
|
|
174
174
|
else {
|
|
@@ -189,7 +189,7 @@ class SourceAssignStmt extends SourceStmt {
|
|
|
189
189
|
if (this.context.hasTempVisit(this.leftCode)) {
|
|
190
190
|
this.setText('');
|
|
191
191
|
}
|
|
192
|
-
else if (
|
|
192
|
+
else if (PrinterUtils_1.PrinterUtils.isTemp(this.leftCode)) {
|
|
193
193
|
this.setText(`${this.rightCode};`);
|
|
194
194
|
}
|
|
195
195
|
else {
|
|
@@ -234,7 +234,7 @@ class SourceAssignStmt extends SourceStmt {
|
|
|
234
234
|
if (!cls) {
|
|
235
235
|
return undefined;
|
|
236
236
|
}
|
|
237
|
-
return
|
|
237
|
+
return PrinterUtils_1.PrinterUtils.getOriginType(cls);
|
|
238
238
|
}
|
|
239
239
|
/**
|
|
240
240
|
* temp1 = new Person
|
|
@@ -253,7 +253,7 @@ class SourceAssignStmt extends SourceStmt {
|
|
|
253
253
|
instanceInvokeExpr.getArgs().forEach((v) => {
|
|
254
254
|
args.push(this.transformer.valueToString(v));
|
|
255
255
|
});
|
|
256
|
-
if (originType ===
|
|
256
|
+
if (originType === PrinterUtils_1.CLASS_CATEGORY_COMPONENT) {
|
|
257
257
|
this.rightCode = `${this.transformer.typeToString(this.rightOp.getType())}(${args.join(', ')})`;
|
|
258
258
|
}
|
|
259
259
|
else if (originType === ArkClass_1.ClassCategory.TYPE_LITERAL || originType === ArkClass_1.ClassCategory.OBJECT) {
|
|
@@ -269,7 +269,7 @@ class SourceAssignStmt extends SourceStmt {
|
|
|
269
269
|
this.context.getStmtReader().rollback();
|
|
270
270
|
}
|
|
271
271
|
}
|
|
272
|
-
if (originType ===
|
|
272
|
+
if (originType === PrinterUtils_1.CLASS_CATEGORY_COMPONENT) {
|
|
273
273
|
this.rightCode = `${this.transformer.typeToString(this.rightOp.getType())}()`;
|
|
274
274
|
}
|
|
275
275
|
else if (originType === ArkClass_1.ClassCategory.TYPE_LITERAL || originType === ArkClass_1.ClassCategory.OBJECT) {
|
|
@@ -313,7 +313,7 @@ class SourceAssignStmt extends SourceStmt {
|
|
|
313
313
|
let stmt = this.context.getStmtReader().next();
|
|
314
314
|
if (stmt instanceof Stmt_1.ArkInvokeStmt) {
|
|
315
315
|
let expr = stmt.getInvokeExpr();
|
|
316
|
-
if (expr instanceof Expr_1.ArkStaticInvokeExpr &&
|
|
316
|
+
if (expr instanceof Expr_1.ArkStaticInvokeExpr && PrinterUtils_1.PrinterUtils.isComponentPop(expr)) {
|
|
317
317
|
this.setText(`${this.rightCode}`);
|
|
318
318
|
this.dumpType = AssignStmtDumpType.NORMAL;
|
|
319
319
|
return;
|
|
@@ -340,18 +340,18 @@ class SourceInvokeStmt extends SourceStmt {
|
|
|
340
340
|
let code = '';
|
|
341
341
|
let isAttr = false;
|
|
342
342
|
if (invokeExpr instanceof Expr_1.ArkStaticInvokeExpr) {
|
|
343
|
-
if (
|
|
343
|
+
if (PrinterUtils_1.PrinterUtils.isComponentPop(invokeExpr)) {
|
|
344
344
|
code = '}';
|
|
345
345
|
isAttr = true;
|
|
346
346
|
}
|
|
347
347
|
else {
|
|
348
348
|
code = this.transformer.staticInvokeExprToString(invokeExpr);
|
|
349
|
-
isAttr =
|
|
349
|
+
isAttr = PrinterUtils_1.PrinterUtils.isComponentIfElseInvoke(invokeExpr);
|
|
350
350
|
}
|
|
351
351
|
}
|
|
352
352
|
else if (invokeExpr instanceof Expr_1.ArkInstanceInvokeExpr) {
|
|
353
353
|
code = this.transformer.instanceInvokeExprToString(invokeExpr);
|
|
354
|
-
isAttr =
|
|
354
|
+
isAttr = PrinterUtils_1.PrinterUtils.isComponentAttributeInvoke(invokeExpr);
|
|
355
355
|
}
|
|
356
356
|
if (code.length > 0 && !isAttr) {
|
|
357
357
|
this.setText(`${code};`);
|
|
@@ -362,15 +362,15 @@ class SourceInvokeStmt extends SourceStmt {
|
|
|
362
362
|
}
|
|
363
363
|
beforeDump() {
|
|
364
364
|
let invokeExpr = this.original.getInvokeExpr();
|
|
365
|
-
if ((invokeExpr instanceof Expr_1.ArkStaticInvokeExpr &&
|
|
366
|
-
(invokeExpr instanceof Expr_1.ArkStaticInvokeExpr &&
|
|
365
|
+
if ((invokeExpr instanceof Expr_1.ArkStaticInvokeExpr && PrinterUtils_1.PrinterUtils.isComponentPop(invokeExpr)) ||
|
|
366
|
+
(invokeExpr instanceof Expr_1.ArkStaticInvokeExpr && PrinterUtils_1.PrinterUtils.isComponentIfElseInvoke(invokeExpr))) {
|
|
367
367
|
this.printer.decIndent();
|
|
368
368
|
return;
|
|
369
369
|
}
|
|
370
370
|
}
|
|
371
371
|
afterDump() {
|
|
372
372
|
let invokeExpr = this.original.getInvokeExpr();
|
|
373
|
-
if (invokeExpr instanceof Expr_1.ArkStaticInvokeExpr &&
|
|
373
|
+
if (invokeExpr instanceof Expr_1.ArkStaticInvokeExpr && PrinterUtils_1.PrinterUtils.isComponentIfElseInvoke(invokeExpr)) {
|
|
374
374
|
this.printer.incIndent();
|
|
375
375
|
return;
|
|
376
376
|
}
|
|
@@ -531,12 +531,12 @@ class SourceWhileStmt extends SourceStmt {
|
|
|
531
531
|
if (!(stmt instanceof Stmt_1.ArkAssignStmt)) {
|
|
532
532
|
continue;
|
|
533
533
|
}
|
|
534
|
-
if (
|
|
534
|
+
if (PrinterUtils_1.PrinterUtils.isDeIncrementStmt(stmt, Expr_1.NormalBinaryOperator.Addition) &&
|
|
535
535
|
stmt.getLeftOp().getName() === value.getName()) {
|
|
536
536
|
this.context.setSkipStmt(stmt);
|
|
537
537
|
return `${value.getName()}++`;
|
|
538
538
|
}
|
|
539
|
-
if (
|
|
539
|
+
if (PrinterUtils_1.PrinterUtils.isDeIncrementStmt(stmt, Expr_1.NormalBinaryOperator.Subtraction) &&
|
|
540
540
|
stmt.getLeftOp().getName() === value.getName()) {
|
|
541
541
|
this.context.setSkipStmt(stmt);
|
|
542
542
|
return `${value.getName()}--`;
|
|
@@ -694,33 +694,20 @@ class SourceTypeAliasStmt extends SourceStmt {
|
|
|
694
694
|
this.aliasType = aliasType;
|
|
695
695
|
}
|
|
696
696
|
transfer2ts() {
|
|
697
|
-
let modifier = '';
|
|
698
697
|
let modifiersArray = (0, ArkBaseModel_1.modifiers2stringArray)(this.aliasType.getModifiers());
|
|
699
|
-
|
|
700
|
-
modifier = `${modifiersArray.join(' ')} `;
|
|
701
|
-
}
|
|
698
|
+
let modifier = modifiersArray.length > 0 ? `${modifiersArray.join(' ')} ` : '';
|
|
702
699
|
const expr = this.original.getAliasTypeExpr();
|
|
703
|
-
let typeOf = '';
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
}
|
|
707
|
-
let realGenericTypes = '';
|
|
708
|
-
if (expr.getRealGenericTypes()) {
|
|
709
|
-
let types = expr.getRealGenericTypes().join(', ');
|
|
710
|
-
if (types) {
|
|
711
|
-
realGenericTypes = `<${types}>`;
|
|
712
|
-
}
|
|
713
|
-
}
|
|
714
|
-
let genericTypes = '';
|
|
715
|
-
if (this.aliasType.getGenericTypes()) {
|
|
716
|
-
let types = this.aliasType.getGenericTypes().join(', ');
|
|
717
|
-
if (types) {
|
|
718
|
-
genericTypes = `<${types}>`;
|
|
719
|
-
}
|
|
720
|
-
}
|
|
700
|
+
let typeOf = expr.getTransferWithTypeOf() ? 'typeof ' : '';
|
|
701
|
+
let realGenericTypes = expr.getRealGenericTypes() ? `<${expr.getRealGenericTypes().join(', ')}>` : '';
|
|
702
|
+
let genericTypes = this.aliasType.getGenericTypes() ? `<${this.transformer.typeArrayToString(this.aliasType.getGenericTypes())}>` : '';
|
|
721
703
|
let typeObject = expr.getOriginalObject();
|
|
722
704
|
if (typeObject instanceof Type_1.Type) {
|
|
723
|
-
|
|
705
|
+
if (typeObject instanceof Type_1.AliasType) {
|
|
706
|
+
this.setText(`${modifier}type ${this.aliasType.getName()}${genericTypes} = ${typeOf}${typeObject.getName()}${realGenericTypes};`);
|
|
707
|
+
}
|
|
708
|
+
else {
|
|
709
|
+
this.setText(`${modifier}type ${this.aliasType.getName()}${genericTypes} = ${typeOf}${this.transformer.typeToString(typeObject)}${realGenericTypes};`);
|
|
710
|
+
}
|
|
724
711
|
return;
|
|
725
712
|
}
|
|
726
713
|
if (typeObject instanceof ArkImport_1.ImportInfo) {
|
|
@@ -35,8 +35,10 @@ export declare class SourceTransformer {
|
|
|
35
35
|
literalObjectToString(type: ClassType): string;
|
|
36
36
|
typeToString(type: Type): string;
|
|
37
37
|
private literalType2string;
|
|
38
|
-
private
|
|
38
|
+
private multipleType2string;
|
|
39
39
|
private arrayType2string;
|
|
40
|
+
private tupleType2string;
|
|
41
|
+
private aliasType2string;
|
|
40
42
|
private unclearReferenceType2string;
|
|
41
43
|
private classType2string;
|
|
42
44
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SourceTransformer.d.ts","sourceRoot":"","sources":["../../../src/save/source/SourceTransformer.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAMH,qBAAqB,EAKrB,mBAAmB,EAKtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAiB,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAI7C,OAAO,EAGH,SAAS,
|
|
1
|
+
{"version":3,"file":"SourceTransformer.d.ts","sourceRoot":"","sources":["../../../src/save/source/SourceTransformer.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAMH,qBAAqB,EAKrB,mBAAmB,EAKtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAiB,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAI7C,OAAO,EAGH,SAAS,EAQT,IAAI,EAKP,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAmE,MAAM,qBAAqB,CAAC;AACnH,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AASnD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAI7D,MAAM,WAAW,kBAAkB;IAC/B,UAAU,IAAI,OAAO,CAAC;IAEtB,wBAAwB,IAAI,YAAY,GAAG,SAAS,CAAC;IAErD,SAAS,CAAC,SAAS,EAAE,eAAe,GAAG,SAAS,GAAG,IAAI,CAAC;IAExD,QAAQ,CAAC,SAAS,EAAE,cAAc,GAAG,QAAQ,GAAG,IAAI,CAAC;IAErD,UAAU,IAAI,aAAa,CAAC;IAE5B,cAAc,CAAC,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IAEpC,iBAAiB,IAAI,OAAO,CAAC;CAChC;AAED,qBAAa,iBAAiB;IAC1B,SAAS,CAAC,OAAO,EAAE,kBAAkB,CAAC;gBAE1B,OAAO,EAAE,kBAAkB;IAIvC,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,sBAAsB;IAKvB,0BAA0B,CAAC,UAAU,EAAE,qBAAqB,GAAG,MAAM;IAkBrE,wBAAwB,CAAC,UAAU,EAAE,mBAAmB,GAAG,MAAM;IA0DxE,OAAO,CAAC,oBAAoB;IAYrB,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,KAAK,GAAE,MAAa,GAAG,MAAM;WASvD,aAAa,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM;IAQpD,OAAO,CAAC,YAAY;IA2Db,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM;IA8BvC,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM;IAiDtD,qBAAqB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM;IAW9C,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IA2DvC,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,mBAAmB;IAgB3B,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,2BAA2B;IAQnC,OAAO,CAAC,gBAAgB;CAkB3B"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/*
|
|
3
|
-
* Copyright (c) 2024 Huawei Device Co., Ltd.
|
|
3
|
+
* Copyright (c) 2024-2025 Huawei Device Co., Ltd.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
5
|
* you may not use this file except in compliance with the License.
|
|
6
6
|
* You may obtain a copy of the License at
|
|
@@ -43,7 +43,7 @@ const Expr_1 = require("../../core/base/Expr");
|
|
|
43
43
|
const Local_1 = require("../../core/base/Local");
|
|
44
44
|
const ArkClass_1 = require("../../core/model/ArkClass");
|
|
45
45
|
const logger_1 = __importStar(require("../../utils/logger"));
|
|
46
|
-
const
|
|
46
|
+
const PrinterUtils_1 = require("../base/PrinterUtils");
|
|
47
47
|
const SourceMethod_1 = require("./SourceMethod");
|
|
48
48
|
const Type_1 = require("../../core/base/Type");
|
|
49
49
|
const SourceClass_1 = require("./SourceClass");
|
|
@@ -75,7 +75,7 @@ class SourceTransformer {
|
|
|
75
75
|
args.push(this.valueToString(v));
|
|
76
76
|
});
|
|
77
77
|
let genericCode = this.genericTypesToString(invokeExpr.getRealGenericTypes());
|
|
78
|
-
if (
|
|
78
|
+
if (PrinterUtils_1.PrinterUtils.isComponentAttributeInvoke(invokeExpr) && this.context.isInBuilderMethod()) {
|
|
79
79
|
return `.${methodName}${genericCode}(${args.join(', ')})`;
|
|
80
80
|
}
|
|
81
81
|
return `${this.valueToString(invokeExpr.getBase())}.${methodName}${genericCode}(${args.join(', ')})`;
|
|
@@ -83,11 +83,11 @@ class SourceTransformer {
|
|
|
83
83
|
staticInvokeExprToString(invokeExpr) {
|
|
84
84
|
let methodSignature = invokeExpr.getMethodSignature();
|
|
85
85
|
let method = this.context.getMethod(methodSignature);
|
|
86
|
-
if (method &&
|
|
86
|
+
if (method && PrinterUtils_1.PrinterUtils.isAnonymousMethod(method.getName())) {
|
|
87
87
|
return this.anonymousMethodToString(method, this.context.getPrinter().getIndent());
|
|
88
88
|
}
|
|
89
89
|
let classSignature = methodSignature.getDeclaringClassSignature();
|
|
90
|
-
let className =
|
|
90
|
+
let className = PrinterUtils_1.PrinterUtils.getStaticInvokeClassFullName(classSignature, this.context.getDeclaringArkNamespace());
|
|
91
91
|
let methodName = methodSignature.getMethodSubSignature().getMethodName();
|
|
92
92
|
let args = [];
|
|
93
93
|
invokeExpr.getArgs().forEach((v) => {
|
|
@@ -107,13 +107,13 @@ class SourceTransformer {
|
|
|
107
107
|
return '';
|
|
108
108
|
}
|
|
109
109
|
}
|
|
110
|
-
if (
|
|
110
|
+
if (PrinterUtils_1.PrinterUtils.isComponentCreate(invokeExpr)) {
|
|
111
111
|
if (className === EtsConst_1.COMPONENT_IF) {
|
|
112
112
|
return `if (${args.join(', ')})`;
|
|
113
113
|
}
|
|
114
114
|
return `${className}${genericCode}(${args.join(', ')})`;
|
|
115
115
|
}
|
|
116
|
-
if (
|
|
116
|
+
if (PrinterUtils_1.PrinterUtils.isComponentIfBranchInvoke(invokeExpr)) {
|
|
117
117
|
let arg0 = invokeExpr.getArg(0);
|
|
118
118
|
if (arg0.getValue() === '0') {
|
|
119
119
|
return ``;
|
|
@@ -122,7 +122,7 @@ class SourceTransformer {
|
|
|
122
122
|
return '} else {';
|
|
123
123
|
}
|
|
124
124
|
}
|
|
125
|
-
if (
|
|
125
|
+
if (PrinterUtils_1.PrinterUtils.isComponentPop(invokeExpr)) {
|
|
126
126
|
return '}';
|
|
127
127
|
}
|
|
128
128
|
}
|
|
@@ -150,7 +150,7 @@ class SourceTransformer {
|
|
|
150
150
|
}
|
|
151
151
|
static constToString(value) {
|
|
152
152
|
if (value.getType().toString() === 'string') {
|
|
153
|
-
return `'${
|
|
153
|
+
return `'${PrinterUtils_1.PrinterUtils.escape(value.getValue())}'`;
|
|
154
154
|
}
|
|
155
155
|
else {
|
|
156
156
|
return value.getValue();
|
|
@@ -212,7 +212,7 @@ class SourceTransformer {
|
|
|
212
212
|
let index = value.getIndex();
|
|
213
213
|
if (index instanceof Constant_1.Constant &&
|
|
214
214
|
index.getType() instanceof Type_1.StringType &&
|
|
215
|
-
|
|
215
|
+
PrinterUtils_1.PrinterUtils.isTemp(index.getValue())) {
|
|
216
216
|
return `${this.valueToString(value.getBase())}[${this.valueToString(new Local_1.Local(index.getValue()))}]`;
|
|
217
217
|
}
|
|
218
218
|
return `${this.valueToString(value.getBase())}[${this.valueToString(value.getIndex())}]`;
|
|
@@ -235,14 +235,14 @@ class SourceTransformer {
|
|
|
235
235
|
return SourceTransformer.constToString(value);
|
|
236
236
|
}
|
|
237
237
|
if (value instanceof Local_1.Local) {
|
|
238
|
-
if (
|
|
238
|
+
if (PrinterUtils_1.PrinterUtils.isAnonymousMethod(value.getName())) {
|
|
239
239
|
let methodSignature = value.getType().getMethodSignature();
|
|
240
240
|
let anonymousMethod = this.context.getMethod(methodSignature);
|
|
241
241
|
if (anonymousMethod) {
|
|
242
242
|
return this.anonymousMethodToString(anonymousMethod, this.context.getPrinter().getIndent());
|
|
243
243
|
}
|
|
244
244
|
}
|
|
245
|
-
if (
|
|
245
|
+
if (PrinterUtils_1.PrinterUtils.isAnonymousClass(value.getName())) {
|
|
246
246
|
let clsSignature = value.getType().getClassSignature();
|
|
247
247
|
let cls = this.context.getClass(clsSignature);
|
|
248
248
|
if (cls) {
|
|
@@ -252,7 +252,7 @@ class SourceTransformer {
|
|
|
252
252
|
if (operator === Expr_1.NormalBinaryOperator.Division ||
|
|
253
253
|
operator === Expr_1.NormalBinaryOperator.Multiplication ||
|
|
254
254
|
operator === Expr_1.NormalBinaryOperator.Remainder) {
|
|
255
|
-
if (
|
|
255
|
+
if (PrinterUtils_1.PrinterUtils.isTemp(value.getName())) {
|
|
256
256
|
let stmt = value.getDeclaringStmt();
|
|
257
257
|
if (stmt instanceof Stmt_1.ArkAssignStmt && stmt.getRightOp() instanceof Expr_1.ArkNormalBinopExpr) {
|
|
258
258
|
return `(${this.context.transTemp2Code(value)})`;
|
|
@@ -266,7 +266,7 @@ class SourceTransformer {
|
|
|
266
266
|
}
|
|
267
267
|
literalObjectToString(type) {
|
|
268
268
|
let name = type.getClassSignature().getClassName();
|
|
269
|
-
if (
|
|
269
|
+
if (PrinterUtils_1.PrinterUtils.isAnonymousClass(name)) {
|
|
270
270
|
let cls = this.context.getClass(type.getClassSignature());
|
|
271
271
|
if (cls) {
|
|
272
272
|
return this.anonymousClassToString(cls, this.context.getPrinter().getIndent());
|
|
@@ -281,8 +281,8 @@ class SourceTransformer {
|
|
|
281
281
|
if (type instanceof Type_1.PrimitiveType) {
|
|
282
282
|
return type.getName();
|
|
283
283
|
}
|
|
284
|
-
if (type instanceof Type_1.UnionType) {
|
|
285
|
-
return this.
|
|
284
|
+
if (type instanceof Type_1.UnionType || type instanceof Type_1.IntersectionType) {
|
|
285
|
+
return this.multipleType2string(type);
|
|
286
286
|
}
|
|
287
287
|
if (type instanceof Type_1.UnknownType) {
|
|
288
288
|
return 'any';
|
|
@@ -296,10 +296,13 @@ class SourceTransformer {
|
|
|
296
296
|
if (type instanceof Type_1.ArrayType) {
|
|
297
297
|
return this.arrayType2string(type);
|
|
298
298
|
}
|
|
299
|
+
if (type instanceof Type_1.TupleType) {
|
|
300
|
+
return this.tupleType2string(type);
|
|
301
|
+
}
|
|
299
302
|
if (type instanceof Type_1.FunctionType) {
|
|
300
303
|
let methodSignature = type.getMethodSignature();
|
|
301
304
|
let method = this.context.getMethod(methodSignature);
|
|
302
|
-
if (method &&
|
|
305
|
+
if (method && PrinterUtils_1.PrinterUtils.isAnonymousMethod(method.getName())) {
|
|
303
306
|
return new SourceMethod_1.SourceMethod(method).toArrowFunctionTypeString();
|
|
304
307
|
}
|
|
305
308
|
}
|
|
@@ -310,7 +313,7 @@ class SourceTransformer {
|
|
|
310
313
|
return type.getName();
|
|
311
314
|
}
|
|
312
315
|
if (type instanceof Type_1.AliasType) {
|
|
313
|
-
return
|
|
316
|
+
return this.aliasType2string(type);
|
|
314
317
|
}
|
|
315
318
|
if (!type) {
|
|
316
319
|
return 'any';
|
|
@@ -325,37 +328,70 @@ class SourceTransformer {
|
|
|
325
328
|
}
|
|
326
329
|
return `${literalName}`;
|
|
327
330
|
}
|
|
328
|
-
|
|
331
|
+
multipleType2string(type) {
|
|
329
332
|
let typesStr = [];
|
|
330
333
|
for (const member of type.getTypes()) {
|
|
331
|
-
|
|
334
|
+
if (member instanceof Type_1.UnionType || member instanceof Type_1.IntersectionType) {
|
|
335
|
+
typesStr.push(`(${this.typeToString(member)})`);
|
|
336
|
+
}
|
|
337
|
+
else {
|
|
338
|
+
typesStr.push(this.typeToString(member));
|
|
339
|
+
}
|
|
340
|
+
}
|
|
341
|
+
if (type instanceof Type_1.UnionType) {
|
|
342
|
+
return typesStr.join(' | ');
|
|
343
|
+
}
|
|
344
|
+
else {
|
|
345
|
+
return typesStr.join(' & ');
|
|
332
346
|
}
|
|
333
|
-
return typesStr.join(' | ');
|
|
334
347
|
}
|
|
335
348
|
arrayType2string(type) {
|
|
349
|
+
const readonly = type.getReadonlyFlag() ? 'readonly ' : '';
|
|
336
350
|
const dimensions = [];
|
|
337
351
|
for (let i = 0; i < type.getDimension(); i++) {
|
|
338
352
|
dimensions.push('[]');
|
|
339
353
|
}
|
|
340
354
|
let baseType = type.getBaseType();
|
|
341
|
-
if (baseType instanceof Type_1.UnionType) {
|
|
342
|
-
return
|
|
355
|
+
if (baseType instanceof Type_1.UnionType || baseType instanceof Type_1.IntersectionType) {
|
|
356
|
+
return `${readonly}(${this.typeToString(baseType)})${dimensions.join('')}`;
|
|
343
357
|
}
|
|
344
|
-
return `${this.typeToString(baseType)}${dimensions.join('')}`;
|
|
358
|
+
return `${readonly}${this.typeToString(baseType)}${dimensions.join('')}`;
|
|
359
|
+
}
|
|
360
|
+
tupleType2string(type) {
|
|
361
|
+
const readonly = type.getReadonlyFlag() ? 'readonly ' : '';
|
|
362
|
+
let typesStr = [];
|
|
363
|
+
for (const member of type.getTypes()) {
|
|
364
|
+
typesStr.push(this.typeToString(member));
|
|
365
|
+
}
|
|
366
|
+
return `${readonly}[${typesStr.join(', ')}]`;
|
|
367
|
+
}
|
|
368
|
+
aliasType2string(type) {
|
|
369
|
+
var _a;
|
|
370
|
+
let typesStr = [];
|
|
371
|
+
let genericTypes = (_a = type.getRealGenericTypes()) !== null && _a !== void 0 ? _a : type.getGenericTypes();
|
|
372
|
+
if (genericTypes) {
|
|
373
|
+
for (const gType of genericTypes) {
|
|
374
|
+
typesStr.push(this.typeToString(gType));
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
if (typesStr.length > 0) {
|
|
378
|
+
return `${type.getName()}<${typesStr.join(', ')}>`;
|
|
379
|
+
}
|
|
380
|
+
return type.getName();
|
|
345
381
|
}
|
|
346
382
|
unclearReferenceType2string(type) {
|
|
347
383
|
let genericTypes = type.getGenericTypes();
|
|
348
384
|
if (genericTypes.length > 0) {
|
|
349
|
-
return `${type.getName()}<${genericTypes.join(', ')}>`;
|
|
385
|
+
return `${type.getName()}<${genericTypes.map((value) => this.typeToString(value)).join(', ')}>`;
|
|
350
386
|
}
|
|
351
387
|
return type.getName();
|
|
352
388
|
}
|
|
353
389
|
classType2string(type) {
|
|
354
|
-
const name =
|
|
355
|
-
if (
|
|
390
|
+
const name = PrinterUtils_1.PrinterUtils.getStaticInvokeClassFullName(type.getClassSignature());
|
|
391
|
+
if (PrinterUtils_1.PrinterUtils.isDefaultClass(name)) {
|
|
356
392
|
return 'any';
|
|
357
393
|
}
|
|
358
|
-
if (
|
|
394
|
+
if (PrinterUtils_1.PrinterUtils.isAnonymousClass(name)) {
|
|
359
395
|
let cls = this.context.getClass(type.getClassSignature());
|
|
360
396
|
if (cls && cls.getCategory() === ArkClass_1.ClassCategory.TYPE_LITERAL) {
|
|
361
397
|
return this.anonymousClassToString(cls, this.context.getPrinter().getIndent());
|
|
@@ -364,7 +400,7 @@ class SourceTransformer {
|
|
|
364
400
|
}
|
|
365
401
|
let genericTypes = type.getRealGenericTypes();
|
|
366
402
|
if (genericTypes && genericTypes.length > 0) {
|
|
367
|
-
return `${name}
|
|
403
|
+
return `${name}${this.genericTypesToString(genericTypes)}`;
|
|
368
404
|
}
|
|
369
405
|
return name;
|
|
370
406
|
}
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BodyBuilder.d.ts","sourceRoot":"","sources":["../../../src/core/common/BodyBuilder.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAkB,eAAe,EAAsB,MAAM,uBAAuB,CAAC;AAC5F,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAItC,OAAO,EAAuD,SAAS,EAAE,MAAM,aAAa,CAAC;AAc7F,qBAAa,WAAW;IACpB,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,OAAO,CAAC,CAAyB;gBAE7B,eAAe,EAAE,eAAe,EAAE,aAAa,EAAE,EAAE,CAAC,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU;IAIpH,KAAK,IAAI,OAAO,GAAG,IAAI;IAcvB,aAAa,IAAI,UAAU;IAI3B,UAAU,IAAI,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,SAAS;IAIhD,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAI;IAIjD,sBAAsB,IAAI,IAAI;IAsDrC,OAAO,CAAC,6BAA6B;IASrC,OAAO,CAAC,sCAAsC;IA4B9C,OAAO,CAAC,gBAAgB;IAmBxB,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,sBAAsB;IAU9B,OAAO,CAAC,8BAA8B;IAkBtC,OAAO,CAAC,6BAA6B;IA2BrC,OAAO,CAAC,2BAA2B;IAUnC,OAAO,CAAC,4BAA4B;IAoBpC,OAAO,CAAC,2BAA2B;IAwBnC,OAAO,CAAC,oCAAoC;IA2B5C,OAAO,CAAC,8BAA8B;IAgBtC,OAAO,CAAC,qCAAqC;IA8B7C,OAAO,CAAC,2BAA2B;CAyCtC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CfgBuilder.d.ts","sourceRoot":"","sources":["../../../src/core/common/CfgBuilder.ts"],"names":[],"mappings":"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"}
|