@cloudpss/expression 0.6.11 → 0.6.12
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/dist/migrator/assignment.d.ts +6 -0
- package/dist/migrator/assignment.d.ts.map +1 -0
- package/dist/migrator/assignment.js +42 -0
- package/dist/migrator/assignment.js.map +1 -0
- package/dist/migrator/call.js +1 -1
- package/dist/migrator/call.js.map +1 -1
- package/dist/migrator/node.d.ts.map +1 -1
- package/dist/migrator/node.js +5 -1
- package/dist/migrator/node.js.map +1 -1
- package/dist/migrator/state.d.ts.map +1 -1
- package/dist/migrator/state.js +10 -31
- package/dist/migrator/state.js.map +1 -1
- package/package.json +3 -3
- package/src/migrator/assignment.ts +45 -0
- package/src/migrator/call.ts +1 -1
- package/src/migrator/node.ts +5 -0
- package/src/migrator/state.ts +10 -37
- package/tests/migrate.ts +22 -1
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { AssignmentNode } from 'mathjs';
|
|
2
|
+
import type { Result } from './interface.js';
|
|
3
|
+
import type { State } from './state.js';
|
|
4
|
+
/** 转换赋值语句 */
|
|
5
|
+
export declare function migrateAssignment(state: State, node: AssignmentNode, isTopLevel: boolean): Result;
|
|
6
|
+
//# sourceMappingURL=assignment.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assignment.d.ts","sourceRoot":"","sources":["../../src/migrator/assignment.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAI7C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC,aAAa;AACb,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,OAAO,GAAG,MAAM,CAoCjG"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { migrateAtomic } from './node.js';
|
|
2
|
+
import { migrateSymbolName, symbolName, unsupportedNode } from './utils.js';
|
|
3
|
+
import { migrateAccess } from './access.js';
|
|
4
|
+
/** 转换赋值语句 */
|
|
5
|
+
export function migrateAssignment(state, node, isTopLevel) {
|
|
6
|
+
const { object, index, value } = node;
|
|
7
|
+
const name = symbolName(object);
|
|
8
|
+
if (name && index == null) {
|
|
9
|
+
// Create local variable
|
|
10
|
+
const localName = migrateSymbolName(name, true);
|
|
11
|
+
if (state.locals.has(name)) {
|
|
12
|
+
state.err(`不支持局部变量重新赋值: '${name}'`);
|
|
13
|
+
return {
|
|
14
|
+
code: `${localName} = ${migrateAtomic(state, value).code}`,
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
const expr = migrateAtomic(state, value);
|
|
18
|
+
state.locals.set(name, expr);
|
|
19
|
+
if (name !== localName) {
|
|
20
|
+
state.warn(`变量名 '${name}' 是 MiraScript 关键字,已转换为 '${localName}'`);
|
|
21
|
+
}
|
|
22
|
+
return {
|
|
23
|
+
code: `let ${localName} = ${expr.code};`,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
if (index != null) {
|
|
27
|
+
// Assignment to array/object element
|
|
28
|
+
state.loose();
|
|
29
|
+
const access = migrateAccess(state, node);
|
|
30
|
+
const expr = migrateAtomic(state, value);
|
|
31
|
+
if (isTopLevel) {
|
|
32
|
+
return { code: `${access.code} = ${expr.code};` };
|
|
33
|
+
}
|
|
34
|
+
return {
|
|
35
|
+
// Return the assigned value
|
|
36
|
+
code: `{ let ret = ${expr.code}; ${access.code} = ret; ret }`,
|
|
37
|
+
type: expr.type,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
return unsupportedNode(state, node);
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=assignment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assignment.js","sourceRoot":"","sources":["../../src/migrator/assignment.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C,aAAa;AACb,MAAM,UAAU,iBAAiB,CAAC,KAAY,EAAE,IAAoB,EAAE,UAAmB;IACrF,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACtC,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QACxB,wBAAwB;QACxB,MAAM,SAAS,GAAG,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAChD,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,KAAK,CAAC,GAAG,CAAC,iBAAiB,IAAI,GAAG,CAAC,CAAC;YACpC,OAAO;gBACH,IAAI,EAAE,GAAG,SAAS,MAAM,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE;aAC7D,CAAC;QACN,CAAC;QACD,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACzC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC,QAAQ,IAAI,4BAA4B,SAAS,GAAG,CAAC,CAAC;QACrE,CAAC;QACD,OAAO;YACH,IAAI,EAAE,OAAO,SAAS,MAAM,IAAI,CAAC,IAAI,GAAG;SAC3C,CAAC;IACN,CAAC;IACD,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QAChB,qCAAqC;QACrC,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACzC,IAAI,UAAU,EAAE,CAAC;YACb,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;QACtD,CAAC;QACD,OAAO;YACH,4BAA4B;YAC5B,IAAI,EAAE,eAAe,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,eAAe;YAC7D,IAAI,EAAE,IAAI,CAAC,IAAI;SAClB,CAAC;IACN,CAAC;IACD,OAAO,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AACxC,CAAC"}
|
package/dist/migrator/call.js
CHANGED
|
@@ -225,7 +225,7 @@ function migrateFunctionCall(state, node, fnName, args, options) {
|
|
|
225
225
|
if (arg0.code.endsWith('.value.rt_state')) {
|
|
226
226
|
return {
|
|
227
227
|
type: 'boolean',
|
|
228
|
-
code: `${openE}
|
|
228
|
+
code: `${openE}${arg0.code} != nil${closeE}`,
|
|
229
229
|
};
|
|
230
230
|
}
|
|
231
231
|
state.warn(`'type' 与 'is' 结果可能不同`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"call.js","sourceRoot":"","sources":["../../src/migrator/call.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"call.js","sourceRoot":"","sources":["../../src/migrator/call.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/migrator/node.ts"],"names":[],"mappings":"AACA,OAAO,EACH,KAAK,QAAQ,
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/migrator/node.ts"],"names":[],"mappings":"AACA,OAAO,EACH,KAAK,QAAQ,EAehB,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAatD,aAAa;AACb,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,CAElE;AACD,aAAa;AACb,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,CAEjE;AACD,aAAa;AACb,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,CAEhE;AAED,aAAa;AACb,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CA2IlF"}
|
package/dist/migrator/node.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { serializeRecordKey } from '@mirascript/mirascript/subtle';
|
|
2
|
-
import { isAccessorNode, isConstantNode, isArrayNode, isObjectNode, isConditionalNode, isFunctionNode, isOperatorNode, isParenthesisNode, isRelationalNode, isSymbolNode, isFunctionAssignmentNode, isRangeNode, } from 'mathjs';
|
|
2
|
+
import { isAccessorNode, isConstantNode, isArrayNode, isObjectNode, isConditionalNode, isFunctionNode, isOperatorNode, isParenthesisNode, isRelationalNode, isSymbolNode, isFunctionAssignmentNode, isRangeNode, isAssignmentNode, } from 'mathjs';
|
|
3
3
|
import { constantValue, unsupportedNode } from './utils.js';
|
|
4
4
|
import { migrateAccess } from './access.js';
|
|
5
|
+
import { migrateAssignment } from './assignment.js';
|
|
5
6
|
import { migrateCall } from './call.js';
|
|
6
7
|
import { migrateOperator } from './operator.js';
|
|
7
8
|
import { migrateSymbol } from './symbol.js';
|
|
@@ -161,6 +162,9 @@ export function migrateNode(state, node, options) {
|
|
|
161
162
|
}
|
|
162
163
|
return unsupportedNode(state, node);
|
|
163
164
|
}
|
|
165
|
+
if (isAssignmentNode(node)) {
|
|
166
|
+
return migrateAssignment(state, node, false);
|
|
167
|
+
}
|
|
164
168
|
// if (isIndexNode(node)) {
|
|
165
169
|
return unsupportedNode(state, node);
|
|
166
170
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/migrator/node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAEH,cAAc,EACd,cAAc,EACd,WAAW,EACX,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAEhB,YAAY,EACZ,wBAAwB,EACxB,WAAW,
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/migrator/node.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/migrator/state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/migrator/state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAUxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAkC7C,WAAW;AACX,qBAAa,SAAS;IAEd,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,QAAQ,CAAC,SAAS,EAAE,OAAO;IAC3B,eAAe;IACf,QAAQ,CAAC,OAAO,EAAE,SAAS;gBAHV,IAAI,EAAE,MAAM,EACpB,SAAS,EAAE,OAAO;IAC3B,eAAe;IACN,OAAO,EAAE,SAAS;IAE/B,WAAW;IACX,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,aAAa;IACb,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAG1B,YAAY;IACZ,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,YAAY;IACZ,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,YAAY;IACZ,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,mBAAmB;IACnB,QAAQ,CAAC,MAAM,sBAA6B;IAC5C,eAAe;IACf,KAAK,IAAI,IAAI;IAGb,eAAe;IACf,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAG3B,eAAe;IACf,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAG1B,cAAc;IACd,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAG3B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;IACpC,aAAa;IACb,OAAO,CAAC,WAAW;IAQnB,SAAS;IACT,OAAO,IAAI,IAAI,EAmCb,WAAW;IACb,MAAM,IAAI,MAAM;CA4DnB;AACD,WAAW;AACX,MAAM,MAAM,KAAK,GAAG,IAAI,CAAC;KAAG,CAAC,IAAI,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC;CAAE,EAAE,SAAS,GAAG,QAAQ,CAAC,CAAC;AACzF,WAAW;AACX,qBAAa,aAAc,YAAW,KAAK;IAEnC,QAAQ,CAAC,SAAS,EAAE,KAAK;gBAAhB,SAAS,EAAE,KAAK,EACzB,MAAM,EAAE,SAAS,MAAM,EAAE;IAO7B,kBAAkB;IAClB,QAAQ,CAAC,SAAS,SAAS;IAC3B,kBAAkB;IAClB,IAAI,OAAO,IAAI,SAAS,CAEvB;IACD,kBAAkB;IAClB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAG1B,kBAAkB;IAClB,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,kBAAkB;IAClB,KAAK,IAAI,IAAI;IAGb,kBAAkB;IAClB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAG3B,kBAAkB;IAClB,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAG1B,kBAAkB;IAClB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;CAG9B"}
|
package/dist/migrator/state.js
CHANGED
|
@@ -2,10 +2,10 @@ import { parse } from './parser.js';
|
|
|
2
2
|
import { isAssignmentNode, isBlockNode, isConstantNode, isFunctionAssignmentNode, isSymbolNode, } from 'mathjs';
|
|
3
3
|
import { migrateAtomic } from './node.js';
|
|
4
4
|
import { toBoolean } from './to-type.js';
|
|
5
|
-
import { constantValue
|
|
6
|
-
import { migrateAccess } from './access.js';
|
|
5
|
+
import { constantValue } from './utils.js';
|
|
7
6
|
import { specialMigrate } from './special.js';
|
|
8
7
|
import { migrateFunctionAssignment } from './function.js';
|
|
8
|
+
import { migrateAssignment } from './assignment.js';
|
|
9
9
|
/** 转换 AST */
|
|
10
10
|
function migrateLast(state, node) {
|
|
11
11
|
if (isAssignmentNode(node)) {
|
|
@@ -14,7 +14,7 @@ function migrateLast(state, node) {
|
|
|
14
14
|
node = node.value;
|
|
15
15
|
}
|
|
16
16
|
else {
|
|
17
|
-
return migrateAssignment(state, node);
|
|
17
|
+
return migrateAssignment(state, node, true);
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
20
|
if (state.condition) {
|
|
@@ -26,35 +26,14 @@ function migrateLast(state, node) {
|
|
|
26
26
|
return migrateAtomic(state, node);
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
|
-
/**
|
|
30
|
-
function
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
if (name && index == null) {
|
|
34
|
-
const localName = migrateSymbolName(name, true);
|
|
35
|
-
if (state.locals.has(name)) {
|
|
36
|
-
state.err(`不支持局部变量重新赋值: '${name}'`);
|
|
37
|
-
return {
|
|
38
|
-
code: `${localName} = ${migrateAtomic(state, value).code}`,
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
const expr = migrateAtomic(state, value);
|
|
42
|
-
state.locals.set(name, expr);
|
|
43
|
-
if (name !== localName) {
|
|
44
|
-
state.warn(`变量名 '${name}' 是 MiraScript 关键字,已转换为 '${localName}'`);
|
|
45
|
-
}
|
|
46
|
-
return {
|
|
47
|
-
code: `let ${localName} = ${expr.code};`,
|
|
48
|
-
};
|
|
29
|
+
/** 转换 AST */
|
|
30
|
+
function migrateNormal(state, node) {
|
|
31
|
+
if (isAssignmentNode(node)) {
|
|
32
|
+
return migrateAssignment(state, node, true);
|
|
49
33
|
}
|
|
50
|
-
|
|
51
|
-
state
|
|
52
|
-
const access = migrateAccess(state, node);
|
|
53
|
-
return {
|
|
54
|
-
code: `${access.code} = ${migrateAtomic(state, value).code};`,
|
|
55
|
-
};
|
|
34
|
+
else {
|
|
35
|
+
return migrateAtomic(state, node);
|
|
56
36
|
}
|
|
57
|
-
return unsupportedNode(state, node);
|
|
58
37
|
}
|
|
59
38
|
/** 转换状态 */
|
|
60
39
|
export class BaseState {
|
|
@@ -128,7 +107,7 @@ export class BaseState {
|
|
|
128
107
|
const { blocks } = ast;
|
|
129
108
|
for (const [index, block] of blocks.entries()) {
|
|
130
109
|
if (index !== blocks.length - 1 || !block.visible) {
|
|
131
|
-
this.migrateStmt(
|
|
110
|
+
this.migrateStmt(migrateNormal, true, block.node);
|
|
132
111
|
}
|
|
133
112
|
else {
|
|
134
113
|
this.migrateStmt(migrateLast, false, block.node);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/migrator/state.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/migrator/state.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudpss/expression",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.12",
|
|
4
4
|
"author": "CloudPSS",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -12,11 +12,11 @@
|
|
|
12
12
|
"./*": "./dist/*.js"
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@mirascript/mirascript": "^0.1.
|
|
15
|
+
"@mirascript/mirascript": "^0.1.39",
|
|
16
16
|
"klona": "^2.0.6",
|
|
17
17
|
"lru-cache": "^11.2.4",
|
|
18
18
|
"mathjs": "^15.1.0",
|
|
19
|
-
"type-fest": "^5.4.
|
|
19
|
+
"type-fest": "^5.4.1"
|
|
20
20
|
},
|
|
21
21
|
"devDependencies": {
|
|
22
22
|
"dedent": "^1.7.1"
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { AssignmentNode } from 'mathjs';
|
|
2
|
+
import type { Result } from './interface.js';
|
|
3
|
+
import { migrateAtomic } from './node.js';
|
|
4
|
+
import { migrateSymbolName, symbolName, unsupportedNode } from './utils.js';
|
|
5
|
+
import { migrateAccess } from './access.js';
|
|
6
|
+
import type { State } from './state.js';
|
|
7
|
+
|
|
8
|
+
/** 转换赋值语句 */
|
|
9
|
+
export function migrateAssignment(state: State, node: AssignmentNode, isTopLevel: boolean): Result {
|
|
10
|
+
const { object, index, value } = node;
|
|
11
|
+
const name = symbolName(object);
|
|
12
|
+
if (name && index == null) {
|
|
13
|
+
// Create local variable
|
|
14
|
+
const localName = migrateSymbolName(name, true);
|
|
15
|
+
if (state.locals.has(name)) {
|
|
16
|
+
state.err(`不支持局部变量重新赋值: '${name}'`);
|
|
17
|
+
return {
|
|
18
|
+
code: `${localName} = ${migrateAtomic(state, value).code}`,
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
const expr = migrateAtomic(state, value);
|
|
22
|
+
state.locals.set(name, expr);
|
|
23
|
+
if (name !== localName) {
|
|
24
|
+
state.warn(`变量名 '${name}' 是 MiraScript 关键字,已转换为 '${localName}'`);
|
|
25
|
+
}
|
|
26
|
+
return {
|
|
27
|
+
code: `let ${localName} = ${expr.code};`,
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
if (index != null) {
|
|
31
|
+
// Assignment to array/object element
|
|
32
|
+
state.loose();
|
|
33
|
+
const access = migrateAccess(state, node);
|
|
34
|
+
const expr = migrateAtomic(state, value);
|
|
35
|
+
if (isTopLevel) {
|
|
36
|
+
return { code: `${access.code} = ${expr.code};` };
|
|
37
|
+
}
|
|
38
|
+
return {
|
|
39
|
+
// Return the assigned value
|
|
40
|
+
code: `{ let ret = ${expr.code}; ${access.code} = ret; ret }`,
|
|
41
|
+
type: expr.type,
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
return unsupportedNode(state, node);
|
|
45
|
+
}
|
package/src/migrator/call.ts
CHANGED
|
@@ -227,7 +227,7 @@ function migrateFunctionCall(
|
|
|
227
227
|
if (arg0.code.endsWith('.value.rt_state')) {
|
|
228
228
|
return {
|
|
229
229
|
type: 'boolean',
|
|
230
|
-
code: `${openE}
|
|
230
|
+
code: `${openE}${arg0.code} != nil${closeE}`,
|
|
231
231
|
};
|
|
232
232
|
}
|
|
233
233
|
state.warn(`'type' 与 'is' 结果可能不同`);
|
package/src/migrator/node.ts
CHANGED
|
@@ -14,12 +14,14 @@ import {
|
|
|
14
14
|
isSymbolNode,
|
|
15
15
|
isFunctionAssignmentNode,
|
|
16
16
|
isRangeNode,
|
|
17
|
+
isAssignmentNode,
|
|
17
18
|
} from 'mathjs';
|
|
18
19
|
import type { State } from './state.js';
|
|
19
20
|
import type { Options, Result } from './interface.js';
|
|
20
21
|
import type { VmConst } from '@mirascript/mirascript';
|
|
21
22
|
import { constantValue, unsupportedNode } from './utils.js';
|
|
22
23
|
import { migrateAccess } from './access.js';
|
|
24
|
+
import { migrateAssignment } from './assignment.js';
|
|
23
25
|
import { migrateCall } from './call.js';
|
|
24
26
|
import { migrateOperator } from './operator.js';
|
|
25
27
|
import { migrateSymbol } from './symbol.js';
|
|
@@ -176,6 +178,9 @@ export function migrateNode(state: State, node: MathNode, options: Options): Res
|
|
|
176
178
|
}
|
|
177
179
|
return unsupportedNode(state, node);
|
|
178
180
|
}
|
|
181
|
+
if (isAssignmentNode(node)) {
|
|
182
|
+
return migrateAssignment(state, node, false);
|
|
183
|
+
}
|
|
179
184
|
// if (isIndexNode(node)) {
|
|
180
185
|
return unsupportedNode(state, node);
|
|
181
186
|
}
|
package/src/migrator/state.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import type { VmContext } from '@mirascript/mirascript';
|
|
2
2
|
import { parse } from './parser.js';
|
|
3
3
|
import {
|
|
4
|
-
type AssignmentNode,
|
|
5
4
|
isAssignmentNode,
|
|
6
5
|
isBlockNode,
|
|
7
6
|
isConstantNode,
|
|
@@ -12,10 +11,10 @@ import {
|
|
|
12
11
|
import type { Result } from './interface.js';
|
|
13
12
|
import { migrateAtomic } from './node.js';
|
|
14
13
|
import { toBoolean } from './to-type.js';
|
|
15
|
-
import { constantValue
|
|
16
|
-
import { migrateAccess } from './access.js';
|
|
14
|
+
import { constantValue } from './utils.js';
|
|
17
15
|
import { specialMigrate } from './special.js';
|
|
18
16
|
import { migrateFunctionAssignment } from './function.js';
|
|
17
|
+
import { migrateAssignment } from './assignment.js';
|
|
19
18
|
|
|
20
19
|
/** 转换 AST */
|
|
21
20
|
function migrateLast(state: State, node: MathNode): Result {
|
|
@@ -24,7 +23,7 @@ function migrateLast(state: State, node: MathNode): Result {
|
|
|
24
23
|
state.loose();
|
|
25
24
|
node = node.value;
|
|
26
25
|
} else {
|
|
27
|
-
return migrateAssignment(state, node);
|
|
26
|
+
return migrateAssignment(state, node, true);
|
|
28
27
|
}
|
|
29
28
|
}
|
|
30
29
|
if (state.condition) {
|
|
@@ -34,35 +33,13 @@ function migrateLast(state: State, node: MathNode): Result {
|
|
|
34
33
|
return migrateAtomic(state, node);
|
|
35
34
|
}
|
|
36
35
|
}
|
|
37
|
-
/**
|
|
38
|
-
function
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
if (state.locals.has(name)) {
|
|
44
|
-
state.err(`不支持局部变量重新赋值: '${name}'`);
|
|
45
|
-
return {
|
|
46
|
-
code: `${localName} = ${migrateAtomic(state, value).code}`,
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
|
-
const expr = migrateAtomic(state, value);
|
|
50
|
-
state.locals.set(name, expr);
|
|
51
|
-
if (name !== localName) {
|
|
52
|
-
state.warn(`变量名 '${name}' 是 MiraScript 关键字,已转换为 '${localName}'`);
|
|
53
|
-
}
|
|
54
|
-
return {
|
|
55
|
-
code: `let ${localName} = ${expr.code};`,
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
if (index != null) {
|
|
59
|
-
state.loose();
|
|
60
|
-
const access = migrateAccess(state, node);
|
|
61
|
-
return {
|
|
62
|
-
code: `${access.code} = ${migrateAtomic(state, value).code};`,
|
|
63
|
-
};
|
|
36
|
+
/** 转换 AST */
|
|
37
|
+
function migrateNormal(state: State, node: MathNode): Result {
|
|
38
|
+
if (isAssignmentNode(node)) {
|
|
39
|
+
return migrateAssignment(state, node, true);
|
|
40
|
+
} else {
|
|
41
|
+
return migrateAtomic(state, node);
|
|
64
42
|
}
|
|
65
|
-
return unsupportedNode(state, node);
|
|
66
43
|
}
|
|
67
44
|
|
|
68
45
|
/** 转换状态 */
|
|
@@ -133,11 +110,7 @@ export class BaseState {
|
|
|
133
110
|
const { blocks } = ast;
|
|
134
111
|
for (const [index, block] of blocks.entries()) {
|
|
135
112
|
if (index !== blocks.length - 1 || !block.visible) {
|
|
136
|
-
this.migrateStmt(
|
|
137
|
-
isAssignmentNode(block.node) ? (migrateAssignment as typeof migrateAtomic) : migrateAtomic,
|
|
138
|
-
true,
|
|
139
|
-
block.node,
|
|
140
|
-
);
|
|
113
|
+
this.migrateStmt(migrateNormal, true, block.node);
|
|
141
114
|
} else {
|
|
142
115
|
this.migrateStmt(migrateLast, false, block.node);
|
|
143
116
|
}
|
package/tests/migrate.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { migrateMathJs } from '@cloudpss/expression/migrate';
|
|
2
2
|
import type { ExpressionSource } from '../dist/expression.js';
|
|
3
3
|
import { Scope } from '../dist/scope.js';
|
|
4
|
-
import { Evaluator, Expression, VmError } from '../dist/index.js';
|
|
4
|
+
import { Evaluator, Expression, VmError, VmExtern } from '../dist/index.js';
|
|
5
5
|
import dedent from 'dedent';
|
|
6
6
|
|
|
7
7
|
const s = new Scope({
|
|
@@ -19,6 +19,7 @@ const s = new Scope({
|
|
|
19
19
|
y: 2,
|
|
20
20
|
},
|
|
21
21
|
type: 'keyword',
|
|
22
|
+
ext: new VmExtern({}),
|
|
22
23
|
});
|
|
23
24
|
const e = new Evaluator();
|
|
24
25
|
|
|
@@ -376,6 +377,26 @@ describe('migrate', () => {
|
|
|
376
377
|
[`a.join('\`')`, `a::join(\`\\\`\`)`, '1`2`3'],
|
|
377
378
|
[`[a, s, f, 'x'].join()`, '`$(a),$(s),$(f),x`', '1, 2, 3,abc,1,x'],
|
|
378
379
|
[`0xffffi16`, `-1`, -1],
|
|
380
|
+
[
|
|
381
|
+
`is(ext.value.rt_state, 'Object') ? (ext.value.rt_state.monitoring ? '暂停输出' : '恢复输出') : '暂停输出'`,
|
|
382
|
+
dedent`
|
|
383
|
+
return if ext.value.rt_state != nil { if @@to_boolean(ext.value.rt_state.monitoring) ?? false { '暂停输出' } else { '恢复输出' } } else { '暂停输出' };
|
|
384
|
+
// # 帮助函数
|
|
385
|
+
fn @@to_boolean { if it is nil { nil } else { it != '' && it != '0' && it != 0 && it is not nan && it != false } }
|
|
386
|
+
// # 原始 math.js 表达式
|
|
387
|
+
// is(ext.value.rt_state, 'Object') ? (ext.value.rt_state.monitoring ? '暂停输出' : '恢复输出') : '暂停输出'`,
|
|
388
|
+
'暂停输出',
|
|
389
|
+
],
|
|
390
|
+
[
|
|
391
|
+
`(b ? (ext.args['charge_time'] = 5) : (ext.args['charge_time'] = 999))`,
|
|
392
|
+
dedent`
|
|
393
|
+
if b { let ret = 5; ext.args.charge_time = ret; ret } else { let ret = 999; ext.args.charge_time = ret; ret }
|
|
394
|
+
// # 转换日志
|
|
395
|
+
// - W: 使用了非精确转换的语法或函数,结果可能不准确
|
|
396
|
+
// # 原始 math.js 表达式
|
|
397
|
+
// (b ? (ext.args['charge_time'] = 5) : (ext.args['charge_time'] = 999))`,
|
|
398
|
+
999,
|
|
399
|
+
],
|
|
379
400
|
])('should migrate expression: %s', (f, t, r) => {
|
|
380
401
|
const migrated = migrateMathJs(f as ExpressionSource, false, s);
|
|
381
402
|
expect(migrated).toBe(t);
|