greybel-interpreter 0.3.1 → 0.3.5

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.
@@ -20,6 +20,8 @@ export default class Interpreter extends EventEmitter {
20
20
  globalContext: OperationContext;
21
21
  cps: CPS;
22
22
  constructor(options: InterpreterOptions);
23
+ setTarget(target: string): Interpreter;
24
+ setDebugger(dbgr: Debugger): Interpreter;
23
25
  inject(code: string): Promise<Interpreter>;
24
26
  digest(customCode?: string): Promise<Interpreter>;
25
27
  exit(): Promise<OperationContext>;
@@ -70,7 +70,12 @@ var Interpreter = /** @class */ (function (_super) {
70
70
  me.debugger = options.debugger || new context_1.Debugger();
71
71
  me.api = options.api || new Map();
72
72
  me.params = options.params || [];
73
- me.target = options.target || 'unknown';
73
+ me.setTarget(options.target || 'unknown');
74
+ return _this;
75
+ }
76
+ Interpreter.prototype.setTarget = function (target) {
77
+ var me = this;
78
+ me.target = target;
74
79
  me.cps = new cps_1.default({
75
80
  target: me.target,
76
81
  resourceHandler: me.resourceHandler
@@ -85,11 +90,18 @@ var Interpreter = /** @class */ (function (_super) {
85
90
  type: context_1.ContextType.GLOBAL,
86
91
  state: context_1.ContextState.DEFAULT
87
92
  });
88
- return _this;
89
- }
93
+ return me;
94
+ };
95
+ Interpreter.prototype.setDebugger = function (dbgr) {
96
+ var me = this;
97
+ me.debugger = dbgr;
98
+ me.apiContext.debugger = dbgr;
99
+ me.globalContext.debugger = dbgr;
100
+ return me;
101
+ };
90
102
  Interpreter.prototype.inject = function (code) {
91
103
  return __awaiter(this, void 0, void 0, function () {
92
- var me, parser, chunk, body, err_1;
104
+ var me, parser, chunk, body, context, err_1;
93
105
  return __generator(this, function (_a) {
94
106
  switch (_a.label) {
95
107
  case 0:
@@ -102,7 +114,11 @@ var Interpreter = /** @class */ (function (_super) {
102
114
  _a.label = 2;
103
115
  case 2:
104
116
  _a.trys.push([2, 4, , 5]);
105
- return [4 /*yield*/, body.run(me.globalContext)];
117
+ context = me.globalContext.fork({
118
+ type: context_1.ContextType.INJECTION,
119
+ state: context_1.ContextState.TEMPORARY
120
+ });
121
+ return [4 /*yield*/, body.run(context)];
106
122
  case 3:
107
123
  _a.sent();
108
124
  return [3 /*break*/, 5];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "greybel-interpreter",
3
- "version": "0.3.1",
3
+ "version": "0.3.5",
4
4
  "description": "Interpreter",
5
5
  "main": "dist/index",
6
6
  "typings": "dist/index",
@@ -35,6 +35,7 @@
35
35
  },
36
36
  "dependencies": {
37
37
  "greybel-core": "^0.1.9",
38
+ "greybel-interpreter": "^0.3.1",
38
39
  "greyscript-core": "^0.1.7",
39
40
  "uuid": "^8.3.2"
40
41
  },