greybel-interpreter 3.0.1 → 3.0.2
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/cps.d.ts +3 -1
- package/dist/cps.js +8 -7
- package/dist/index.d.ts +1 -1
- package/dist/index.js +3 -2
- package/package.json +1 -1
package/dist/cps.d.ts
CHANGED
|
@@ -6,9 +6,11 @@ export declare class CPSContext {
|
|
|
6
6
|
readonly handler: HandlerContainer;
|
|
7
7
|
constructor(target: string, handler: HandlerContainer);
|
|
8
8
|
}
|
|
9
|
+
export type CPSVisitCallback = (context: CPSContext, stack: string[], item: ASTBase) => Promise<Operation>;
|
|
10
|
+
export declare const defaultCPSVisit: CPSVisitCallback;
|
|
9
11
|
export declare class CPS {
|
|
10
12
|
private readonly context;
|
|
11
13
|
private __visit;
|
|
12
|
-
constructor(context: CPSContext);
|
|
14
|
+
constructor(context: CPSContext, cpsVisit?: CPSVisitCallback);
|
|
13
15
|
visit(item: ASTBase): Promise<Operation>;
|
|
14
16
|
}
|
package/dist/cps.js
CHANGED
|
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.CPS = exports.CPSContext = void 0;
|
|
12
|
+
exports.CPS = exports.defaultCPSVisit = exports.CPSContext = void 0;
|
|
13
13
|
const greybel_core_1 = require("greybel-core");
|
|
14
14
|
const miniscript_core_1 = require("miniscript-core");
|
|
15
15
|
const assign_1 = require("./operations/assign");
|
|
@@ -44,9 +44,9 @@ class CPSContext {
|
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
46
|
exports.CPSContext = CPSContext;
|
|
47
|
-
const
|
|
47
|
+
const defaultCPSVisit = (context, stack, item) => __awaiter(void 0, void 0, void 0, function* () {
|
|
48
48
|
const currentTarget = stack[stack.length - 1];
|
|
49
|
-
const defaultVisit =
|
|
49
|
+
const defaultVisit = exports.defaultCPSVisit.bind(null, context, stack);
|
|
50
50
|
switch (item.type) {
|
|
51
51
|
case miniscript_core_1.ASTType.MapConstructorExpression:
|
|
52
52
|
return new map_1.MapOperation(item, currentTarget).build(defaultVisit);
|
|
@@ -96,7 +96,7 @@ const visit = (context, stack, item) => __awaiter(void 0, void 0, void 0, functi
|
|
|
96
96
|
});
|
|
97
97
|
}
|
|
98
98
|
try {
|
|
99
|
-
const subVisit =
|
|
99
|
+
const subVisit = exports.defaultCPSVisit.bind(null, context, [...stack, target]);
|
|
100
100
|
const importStatement = yield new import_1.Import(importExpr, currentTarget, target, code).build(subVisit);
|
|
101
101
|
return importStatement;
|
|
102
102
|
}
|
|
@@ -126,7 +126,7 @@ const visit = (context, stack, item) => __awaiter(void 0, void 0, void 0, functi
|
|
|
126
126
|
});
|
|
127
127
|
}
|
|
128
128
|
try {
|
|
129
|
-
const subVisit =
|
|
129
|
+
const subVisit = exports.defaultCPSVisit.bind(null, context, [...stack, target]);
|
|
130
130
|
const importStatement = yield new include_1.Include(includeExpr, currentTarget, target, code).build(subVisit);
|
|
131
131
|
return importStatement;
|
|
132
132
|
}
|
|
@@ -188,10 +188,11 @@ const visit = (context, stack, item) => __awaiter(void 0, void 0, void 0, functi
|
|
|
188
188
|
}
|
|
189
189
|
}
|
|
190
190
|
});
|
|
191
|
+
exports.defaultCPSVisit = defaultCPSVisit;
|
|
191
192
|
class CPS {
|
|
192
|
-
constructor(context) {
|
|
193
|
+
constructor(context, cpsVisit = exports.defaultCPSVisit) {
|
|
193
194
|
this.context = context;
|
|
194
|
-
this.__visit =
|
|
195
|
+
this.__visit = cpsVisit.bind(null, context, [context.target]);
|
|
195
196
|
}
|
|
196
197
|
visit(item) {
|
|
197
198
|
return this.__visit(item);
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { ContextForkOptions, ContextOptions, ContextState, ContextType, Debugger, FunctionState, LoopState, OperationContext, ProcessState, Scope } from './context';
|
|
2
|
-
export { CPS, CPSContext } from './cps';
|
|
2
|
+
export { CPS, CPSContext, CPSVisitCallback, defaultCPSVisit } from './cps';
|
|
3
3
|
export { DefaultErrorHandler, ErrorHandler } from './handler/error';
|
|
4
4
|
export { DefaultOutputHandler, KeyEvent, OutputHandler, PrintOptions } from './handler/output';
|
|
5
5
|
export { DefaultResourceHandler, ResourceHandler } from './handler/resource';
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
exports.Path = exports.ObjectValue = exports.RuntimeError = exports.PrepareError = exports.deepEqual = exports.CustomValueWithIntrinsics = exports.CustomObject = exports.CustomStringIterator = exports.CustomString = exports.CustomNumber = exports.CustomNil = exports.CustomMapIterator = exports.CustomMap = exports.CustomListIterator = exports.CustomList = exports.CustomFunction = exports.Argument = exports.DefaultType = exports.CustomBoolean = exports.CustomValue = exports.While = exports.Return = exports.ResolveResult = exports.Resolve = exports.OperationSegment = exports.IndexSegment = exports.IdentifierSegment = exports.Reference = void 0;
|
|
3
|
+
exports.Not = exports.Noop = exports.NewInstance = exports.NegatedBinary = exports.MapOperation = exports.Literal = exports.List = exports.Include = exports.Import = exports.IfStatement = exports.Clause = exports.FunctionOperation = exports.For = exports.StringProcessorHandler = exports.NumberProcessorHandler = exports.MapProcessorHandler = exports.ListProcessorHandler = exports.handleString = exports.handleNumber = exports.handleMap = exports.handleList = exports.handle = exports.GenericProcessorHandler = exports.Evaluate = exports.DebuggerStatement = exports.Continue = exports.Chunk = exports.Call = exports.Break = exports.Block = exports.Assign = exports.Interpreter = exports.HandlerContainer = exports.ResourceHandler = exports.DefaultResourceHandler = exports.OutputHandler = exports.DefaultOutputHandler = exports.ErrorHandler = exports.DefaultErrorHandler = exports.defaultCPSVisit = exports.CPSContext = exports.CPS = exports.Scope = exports.ProcessState = exports.OperationContext = exports.LoopState = exports.FunctionState = exports.Debugger = exports.ContextType = exports.ContextState = void 0;
|
|
4
|
+
exports.Path = exports.ObjectValue = exports.RuntimeError = exports.PrepareError = exports.deepEqual = exports.CustomValueWithIntrinsics = exports.CustomObject = exports.CustomStringIterator = exports.CustomString = exports.CustomNumber = exports.CustomNil = exports.CustomMapIterator = exports.CustomMap = exports.CustomListIterator = exports.CustomList = exports.CustomFunction = exports.Argument = exports.DefaultType = exports.CustomBoolean = exports.CustomValue = exports.While = exports.Return = exports.ResolveResult = exports.Resolve = exports.OperationSegment = exports.IndexSegment = exports.IdentifierSegment = exports.Reference = exports.Operation = void 0;
|
|
5
5
|
var context_1 = require("./context");
|
|
6
6
|
Object.defineProperty(exports, "ContextState", { enumerable: true, get: function () { return context_1.ContextState; } });
|
|
7
7
|
Object.defineProperty(exports, "ContextType", { enumerable: true, get: function () { return context_1.ContextType; } });
|
|
@@ -14,6 +14,7 @@ Object.defineProperty(exports, "Scope", { enumerable: true, get: function () { r
|
|
|
14
14
|
var cps_1 = require("./cps");
|
|
15
15
|
Object.defineProperty(exports, "CPS", { enumerable: true, get: function () { return cps_1.CPS; } });
|
|
16
16
|
Object.defineProperty(exports, "CPSContext", { enumerable: true, get: function () { return cps_1.CPSContext; } });
|
|
17
|
+
Object.defineProperty(exports, "defaultCPSVisit", { enumerable: true, get: function () { return cps_1.defaultCPSVisit; } });
|
|
17
18
|
var error_1 = require("./handler/error");
|
|
18
19
|
Object.defineProperty(exports, "DefaultErrorHandler", { enumerable: true, get: function () { return error_1.DefaultErrorHandler; } });
|
|
19
20
|
Object.defineProperty(exports, "ErrorHandler", { enumerable: true, get: function () { return error_1.ErrorHandler; } });
|