@lewin671/python-vm 0.1.5 → 0.1.7

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.
@@ -0,0 +1,138 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.executeBlockGenerator = executeBlockGenerator;
4
+ exports.executeStatementGenerator = executeStatementGenerator;
5
+ const types_1 = require("../types");
6
+ const runtime_types_1 = require("./runtime-types");
7
+ const execution_helpers_1 = require("./execution-helpers");
8
+ function* executeBlockGenerator(body, scope) {
9
+ for (const stmt of body) {
10
+ yield* this.executeStatementGenerator(stmt, scope);
11
+ }
12
+ return null;
13
+ }
14
+ function* executeStatementGenerator(node, scope) {
15
+ switch (node.type) {
16
+ case types_1.ASTNodeType.EXPRESSION_STATEMENT: {
17
+ yield* this.evaluateExpressionGenerator(node.expression, scope);
18
+ return null;
19
+ }
20
+ case types_1.ASTNodeType.ASSIGNMENT: {
21
+ const value = yield* this.evaluateExpressionGenerator(node.value, scope);
22
+ for (const target of node.targets) {
23
+ this.assignTarget(target, value, scope);
24
+ }
25
+ return null;
26
+ }
27
+ case types_1.ASTNodeType.AUG_ASSIGNMENT: {
28
+ const current = this.evaluateExpression(node.target, scope);
29
+ const value = yield* this.evaluateExpressionGenerator(node.value, scope);
30
+ const result = this.applyInPlaceBinary(node.operator, current, value);
31
+ this.assignTarget(node.target, result, scope);
32
+ return null;
33
+ }
34
+ case types_1.ASTNodeType.RETURN_STATEMENT: {
35
+ const val = node.value ? yield* this.evaluateExpressionGenerator(node.value, scope) : null;
36
+ throw new runtime_types_1.ReturnSignal(val);
37
+ }
38
+ case types_1.ASTNodeType.BREAK_STATEMENT:
39
+ throw new runtime_types_1.BreakSignal();
40
+ case types_1.ASTNodeType.CONTINUE_STATEMENT:
41
+ throw new runtime_types_1.ContinueSignal();
42
+ case types_1.ASTNodeType.IF_STATEMENT: {
43
+ const test = yield* this.evaluateExpressionGenerator(node.test, scope);
44
+ if (this.isTruthy(test, scope)) {
45
+ yield* this.executeBlockGenerator(node.body, scope);
46
+ }
47
+ else if (node.orelse) {
48
+ yield* this.executeBlockGenerator(node.orelse, scope);
49
+ }
50
+ return null;
51
+ }
52
+ case types_1.ASTNodeType.WHILE_STATEMENT: {
53
+ while (this.isTruthy(yield* this.evaluateExpressionGenerator(node.test, scope), scope)) {
54
+ try {
55
+ yield* this.executeBlockGenerator(node.body, scope);
56
+ }
57
+ catch (err) {
58
+ if (err instanceof runtime_types_1.BreakSignal)
59
+ break;
60
+ if (err instanceof runtime_types_1.ContinueSignal)
61
+ continue;
62
+ throw err;
63
+ }
64
+ }
65
+ return null;
66
+ }
67
+ case types_1.ASTNodeType.FOR_STATEMENT: {
68
+ const iterable = yield* this.evaluateExpressionGenerator(node.iter, scope);
69
+ const items = this.iterableToArray(iterable);
70
+ for (const val of items) {
71
+ this.assignTarget(node.target, val, scope);
72
+ try {
73
+ yield* this.executeBlockGenerator(node.body, scope);
74
+ }
75
+ catch (err) {
76
+ if (err instanceof runtime_types_1.BreakSignal)
77
+ break;
78
+ if (err instanceof runtime_types_1.ContinueSignal)
79
+ continue;
80
+ throw err;
81
+ }
82
+ }
83
+ return null;
84
+ }
85
+ case types_1.ASTNodeType.TRY_STATEMENT: {
86
+ let raised = false;
87
+ try {
88
+ yield* this.executeBlockGenerator(node.body, scope);
89
+ }
90
+ catch (err) {
91
+ raised = true;
92
+ let handled = false;
93
+ for (const handler of node.handlers) {
94
+ if (!handler.exceptionType) {
95
+ handled = true;
96
+ }
97
+ else {
98
+ // Check exception match
99
+ const pyEx = (0, execution_helpers_1.normalizeThrown)(err, scope);
100
+ const pyExType = (pyEx instanceof runtime_types_1.PyInstance) ? pyEx.klass.name : pyEx.pyType;
101
+ const expected = this.evaluateExpression(handler.exceptionType, scope);
102
+ // Simplified match: just check name if it's a PyClass
103
+ if (expected instanceof runtime_types_1.PyClass && pyExType === expected.name) {
104
+ handled = true;
105
+ }
106
+ }
107
+ if (handled) {
108
+ if (handler.name) {
109
+ scope.set(handler.name, err);
110
+ }
111
+ yield* this.executeBlockGenerator(handler.body, scope);
112
+ break;
113
+ }
114
+ }
115
+ if (!handled)
116
+ throw err;
117
+ }
118
+ finally {
119
+ if (node.finalbody && node.finalbody.length > 0) {
120
+ yield* this.executeBlockGenerator(node.finalbody, scope);
121
+ }
122
+ }
123
+ if (!raised && node.orelse && node.orelse.length > 0) {
124
+ yield* this.executeBlockGenerator(node.orelse, scope);
125
+ }
126
+ return null;
127
+ }
128
+ case types_1.ASTNodeType.PASS_STATEMENT:
129
+ return null;
130
+ case types_1.ASTNodeType.GLOBAL_STATEMENT:
131
+ case types_1.ASTNodeType.NONLOCAL_STATEMENT:
132
+ case types_1.ASTNodeType.DELETE_STATEMENT:
133
+ return this.executeStatement(node, scope);
134
+ default:
135
+ return this.executeStatement(node, scope);
136
+ }
137
+ }
138
+ //# sourceMappingURL=statement-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"statement-generator.js","sourceRoot":"","sources":["../../src/vm/statement-generator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"truthy.d.ts","sourceRoot":"","sources":["../../src/vm/truthy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAC3C,OAAO,EAAE,OAAO,EAA0C,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAGzF,wBAAgB,QAAQ,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CA+BpF"}
1
+ {"version":3,"file":"truthy.d.ts","sourceRoot":"","sources":["../../src/vm/truthy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAmD,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAGlG,wBAAgB,QAAQ,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAgCpF"}
package/dist/vm/truthy.js CHANGED
@@ -18,6 +18,8 @@ function isTruthy(value, scope) {
18
18
  return value.length > 0;
19
19
  if (Array.isArray(value))
20
20
  return value.length > 0;
21
+ if (value instanceof runtime_types_1.PyRange)
22
+ return value.length > 0;
21
23
  if (value instanceof runtime_types_1.PyDict)
22
24
  return value.size > 0;
23
25
  if (value instanceof runtime_types_1.PySet)
@@ -1 +1 @@
1
- {"version":3,"file":"truthy.js","sourceRoot":"","sources":["../../src/vm/truthy.ts"],"names":[],"mappings":";;AAIA,4BA+BC;AAlCD,mDAAyF;AACzF,+CAAwD;AAExD,SAAgB,QAAQ,CAAuB,KAAc,EAAE,KAAY;IACzE,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACxD,IAAI,KAAK,YAAY,MAAM;QAAE,OAAO,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC1D,IAAI,OAAO,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAC7C,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,KAAK,CAAC,CAAC;IAClD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,KAAK,EAAE,CAAC;IACnD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IACvD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAClD,IAAI,KAAK,YAAY,sBAAM;QAAE,OAAO,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;IACnD,IAAI,KAAK,YAAY,qBAAK;QAAE,OAAO,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;IAClD,IAAI,KAAK,YAAY,0BAAU,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAClE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;YAC1D,MAAM,MAAM,GAAG,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;YAC7D,IAAI,OAAO,MAAM,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,IAAI,2BAAW,CAAC,WAAW,EAAE,6BAA6B,CAAC,CAAC;YACpE,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAChE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;YAC7D,IAAI,CAAC,IAAA,2BAAa,EAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,2BAAW,CAAC,WAAW,EAAE,2BAA2B,CAAC,CAAC;YAClE,CAAC;YACD,OAAO,IAAA,sBAAQ,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"truthy.js","sourceRoot":"","sources":["../../src/vm/truthy.ts"],"names":[],"mappings":";;AAIA,4BAgCC;AAnCD,mDAAkG;AAClG,+CAAwD;AAExD,SAAgB,QAAQ,CAAuB,KAAc,EAAE,KAAY;IACzE,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACxD,IAAI,KAAK,YAAY,MAAM;QAAE,OAAO,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC1D,IAAI,OAAO,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAC7C,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,KAAK,CAAC,CAAC;IAClD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,KAAK,EAAE,CAAC;IACnD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IACvD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAClD,IAAI,KAAK,YAAY,uBAAO;QAAE,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IACtD,IAAI,KAAK,YAAY,sBAAM;QAAE,OAAO,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;IACnD,IAAI,KAAK,YAAY,qBAAK;QAAE,OAAO,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;IAClD,IAAI,KAAK,YAAY,0BAAU,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAClE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;YAC1D,MAAM,MAAM,GAAG,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;YAC7D,IAAI,OAAO,MAAM,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,IAAI,2BAAW,CAAC,WAAW,EAAE,6BAA6B,CAAC,CAAC;YACpE,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAChE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;YAC7D,IAAI,CAAC,IAAA,2BAAa,EAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,2BAAW,CAAC,WAAW,EAAE,2BAA2B,CAAC,CAAC;YAClE,CAAC;YACD,OAAO,IAAA,sBAAQ,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lewin671/python-vm",
3
- "version": "0.1.5",
3
+ "version": "0.1.7",
4
4
  "description": "A powerful, high-performance Python 3 Virtual Machine and Compiler engineered in pure TypeScript.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",