occam-furtle 3.0.461 → 3.0.462
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/element/assignment/list.js +2 -2
- package/lib/element/assignment/object.js +6 -5
- package/lib/element/binding.js +5 -4
- package/lib/element/bindings/named.js +15 -8
- package/lib/element/bindings.js +15 -9
- package/lib/element/contains.js +4 -4
- package/lib/element/endsWith.js +4 -4
- package/lib/element/lengthOf.js +4 -4
- package/lib/element/nodeQuery.js +7 -7
- package/lib/element/nodesQuery.js +6 -6
- package/lib/element/primitive.js +3 -3
- package/lib/element/returnStatement.js +3 -3
- package/lib/element/startsWith.js +4 -4
- package/lib/element/term/bracketed.js +3 -3
- package/lib/element/term/comparison.js +4 -4
- package/lib/element/term/logical.js +5 -5
- package/lib/element/term/negated.js +4 -4
- package/lib/element/term.js +8 -10
- package/lib/element/terms.js +3 -3
- package/lib/element/toInteger.js +5 -5
- package/lib/element/tryInteger.js +4 -4
- package/lib/element/value.js +4 -6
- package/lib/element/values.js +3 -3
- package/lib/element/variable.js +4 -4
- package/package.json +2 -2
- package/src/element/assignment/list.js +1 -1
- package/src/element/assignment/object.js +6 -6
- package/src/element/binding.js +5 -3
- package/src/element/bindings/named.js +22 -10
- package/src/element/bindings.js +20 -10
- package/src/element/contains.js +3 -3
- package/src/element/endsWith.js +3 -3
- package/src/element/lengthOf.js +3 -3
- package/src/element/nodeQuery.js +6 -6
- package/src/element/nodesQuery.js +5 -5
- package/src/element/primitive.js +2 -2
- package/src/element/returnStatement.js +2 -2
- package/src/element/startsWith.js +3 -3
- package/src/element/term/bracketed.js +2 -2
- package/src/element/term/comparison.js +3 -3
- package/src/element/term/logical.js +4 -4
- package/src/element/term/negated.js +3 -3
- package/src/element/term.js +7 -11
- package/src/element/terms.js +2 -2
- package/src/element/toInteger.js +4 -4
- package/src/element/tryInteger.js +3 -3
- package/src/element/value.js +3 -7
- package/src/element/values.js +2 -2
- package/src/element/variable.js +3 -3
|
@@ -30,34 +30,34 @@ const _default = (0, _elements.define)(class NodesQuery extends _occamlanguages.
|
|
|
30
30
|
getQuery() {
|
|
31
31
|
return this.query;
|
|
32
32
|
}
|
|
33
|
-
evaluate(context) {
|
|
33
|
+
evaluate(context, back, forward) {
|
|
34
34
|
let value;
|
|
35
35
|
const nodesQueryString = this.getString(); ///
|
|
36
36
|
context.trace(`Evaluating the '${nodesQueryString}' function...`);
|
|
37
37
|
if (this.query === null) {
|
|
38
38
|
const message = `Cannot evaluate the '${nodesQueryString}' function because its expression is malformed.`, exception = _exception.default.fromMessage(message);
|
|
39
|
-
|
|
39
|
+
return back(exception);
|
|
40
40
|
}
|
|
41
41
|
value = this.variable.evaluate(context);
|
|
42
42
|
const valueType = value.getType(), valueTypeNominalValueType = valueType.isNominalValueType();
|
|
43
43
|
if (!valueTypeNominalValueType) {
|
|
44
44
|
const valueString = value.getString(), message = `The '${valueString}' value's '${valueType}' type should be '${_typeNames.NOMINAL_VALUE_TYPE_NAME}'.`, exception = _exception.default.fromMessage(message);
|
|
45
|
-
|
|
45
|
+
return back(exception);
|
|
46
46
|
}
|
|
47
47
|
let node;
|
|
48
48
|
const primitiveValue = value.getPrimitiveValue(), nominalValue = primitiveValue; ///
|
|
49
49
|
node = nominalValue.getNode();
|
|
50
50
|
if (node === null) {
|
|
51
51
|
const valueString = value.getString(), message = `The '${valueString}' value's node is null.`, exception = _exception.default.fromMessage(message);
|
|
52
|
-
|
|
52
|
+
return back(exception);
|
|
53
53
|
}
|
|
54
54
|
const nodes = this.query.execute(node);
|
|
55
55
|
value = (0, _value.valueFromNodesAndNominalValue)(nodes, nominalValue);
|
|
56
56
|
const valueString = value.getString();
|
|
57
57
|
context.debug(`...evaluated the '${nodesQueryString}' function as '${valueString}'.`);
|
|
58
|
-
return value;
|
|
58
|
+
return forward(value);
|
|
59
59
|
}
|
|
60
60
|
static name = "NodesQuery";
|
|
61
61
|
});
|
|
62
62
|
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L25vZGVzUXVlcnkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IE5PTUlOQUxfVkFMVUVfVFlQRV9OQU1FIH0gZnJvbSBcIi4uL3R5cGVOYW1lc1wiO1xuaW1wb3J0IHsgdmFsdWVGcm9tTm9kZXNBbmROb21pbmFsVmFsdWUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3ZhbHVlXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBOb2Rlc1F1ZXJ5IGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdmFyaWFibGUsIHF1ZXJ5KSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMudmFyaWFibGUgPSB2YXJpYWJsZTtcbiAgICB0aGlzLnF1ZXJ5ID0gcXVlcnk7XG4gIH1cblxuICBnZXRWYXJpYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YXJpYWJsZTtcbiAgfVxuXG4gIGdldFF1ZXJ5KCkge1xuICAgIHJldHVybiB0aGlzLnF1ZXJ5O1xuICB9XG5cbiAgZXZhbHVhdGUoY29udGV4dCwgYmFjaywgZm9yd2FyZCkge1xuICAgIGxldCB2YWx1ZTtcblxuICAgIGNvbnN0IG5vZGVzUXVlcnlTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpOyAgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBFdmFsdWF0aW5nIHRoZSAnJHtub2Rlc1F1ZXJ5U3RyaW5nfScgZnVuY3Rpb24uLi5gKTtcblxuICAgIGlmICh0aGlzLnF1ZXJ5ID09PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYENhbm5vdCBldmFsdWF0ZSB0aGUgJyR7bm9kZXNRdWVyeVN0cmluZ30nIGZ1bmN0aW9uIGJlY2F1c2UgaXRzIGV4cHJlc3Npb24gaXMgbWFsZm9ybWVkLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHJldHVybiBiYWNrKGV4Y2VwdGlvbik7XG4gICAgfVxuXG4gICAgdmFsdWUgPSB0aGlzLnZhcmlhYmxlLmV2YWx1YXRlKGNvbnRleHQpO1xuXG4gICAgY29uc3QgdmFsdWVUeXBlID0gdmFsdWUuZ2V0VHlwZSgpLFxuICAgICAgICAgIHZhbHVlVHlwZU5vbWluYWxWYWx1ZVR5cGUgPSB2YWx1ZVR5cGUuaXNOb21pbmFsVmFsdWVUeXBlKCk7XG5cbiAgICBpZiAoIXZhbHVlVHlwZU5vbWluYWxWYWx1ZVR5cGUpIHtcbiAgICAgIGNvbnN0IHZhbHVlU3RyaW5nID0gdmFsdWUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICBtZXNzYWdlID0gYFRoZSAnJHt2YWx1ZVN0cmluZ30nIHZhbHVlJ3MgJyR7dmFsdWVUeXBlfScgdHlwZSBzaG91bGQgYmUgJyR7Tk9NSU5BTF9WQUxVRV9UWVBFX05BTUV9Jy5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICByZXR1cm4gYmFjayhleGNlcHRpb24pO1xuICAgIH1cblxuICAgIGxldCBub2RlO1xuXG4gICAgY29uc3QgcHJpbWl0aXZlVmFsdWUgPSB2YWx1ZS5nZXRQcmltaXRpdmVWYWx1ZSgpLFxuICAgICAgICAgIG5vbWluYWxWYWx1ZSA9IHByaW1pdGl2ZVZhbHVlOyAgLy8vXG5cbiAgICBub2RlID0gbm9taW5hbFZhbHVlLmdldE5vZGUoKTtcblxuICAgIGlmIChub2RlID09PSBudWxsKSB7XG4gICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7dmFsdWVTdHJpbmd9JyB2YWx1ZSdzIG5vZGUgaXMgbnVsbC5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICByZXR1cm4gYmFjayhleGNlcHRpb24pO1xuICAgIH1cblxuICAgIGNvbnN0IG5vZGVzID0gdGhpcy5xdWVyeS5leGVjdXRlKG5vZGUpO1xuXG4gICAgdmFsdWUgPSB2YWx1ZUZyb21Ob2Rlc0FuZE5vbWluYWxWYWx1ZShub2Rlcywgbm9taW5hbFZhbHVlKTtcblxuICAgIGNvbnN0IHZhbHVlU3RyaW5nID0gdmFsdWUuZ2V0U3RyaW5nKCk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5ldmFsdWF0ZWQgdGhlICcke25vZGVzUXVlcnlTdHJpbmd9JyBmdW5jdGlvbiBhcyAnJHt2YWx1ZVN0cmluZ30nLmApO1xuXG4gICAgcmV0dXJuIGZvcndhcmQodmFsdWUpO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIk5vZGVzUXVlcnlcIjtcbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIk5vZGVzUXVlcnkiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwidmFyaWFibGUiLCJxdWVyeSIsImdldFZhcmlhYmxlIiwiZ2V0UXVlcnkiLCJldmFsdWF0ZSIsImJhY2siLCJmb3J3YXJkIiwidmFsdWUiLCJub2Rlc1F1ZXJ5U3RyaW5nIiwiZ2V0U3RyaW5nIiwidHJhY2UiLCJtZXNzYWdlIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJ2YWx1ZVR5cGUiLCJnZXRUeXBlIiwidmFsdWVUeXBlTm9taW5hbFZhbHVlVHlwZSIsImlzTm9taW5hbFZhbHVlVHlwZSIsInZhbHVlU3RyaW5nIiwiTk9NSU5BTF9WQUxVRV9UWVBFX05BTUUiLCJwcmltaXRpdmVWYWx1ZSIsImdldFByaW1pdGl2ZVZhbHVlIiwibm9taW5hbFZhbHVlIiwiZ2V0Tm9kZSIsIm5vZGVzIiwiZXhlY3V0ZSIsInZhbHVlRnJvbU5vZGVzQW5kTm9taW5hbFZhbHVlIiwiZGVidWciLCJuYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFVQTs7O2VBQUE7OztnQ0FSd0I7a0VBRUY7MEJBRUM7MkJBQ2lCO3VCQUNNOzs7Ozs7TUFFOUMsV0FBZUEsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyxtQkFBbUJDLHVCQUFPO0lBQ3BELFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsUUFBUSxFQUFFQyxLQUFLLENBQUU7UUFDOUQsS0FBSyxDQUFDTCxTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLFFBQVEsR0FBR0E7UUFDaEIsSUFBSSxDQUFDQyxLQUFLLEdBQUdBO0lBQ2Y7SUFFQUMsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDRixRQUFRO0lBQ3RCO0lBRUFHLFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQ0YsS0FBSztJQUNuQjtJQUVBRyxTQUFTUixPQUFPLEVBQUVTLElBQUksRUFBRUMsT0FBTyxFQUFFO1FBQy9CLElBQUlDO1FBRUosTUFBTUMsbUJBQW1CLElBQUksQ0FBQ0MsU0FBUyxJQUFLLEdBQUc7UUFFL0NiLFFBQVFjLEtBQUssQ0FBQyxDQUFDLGdCQUFnQixFQUFFRixpQkFBaUIsYUFBYSxDQUFDO1FBRWhFLElBQUksSUFBSSxDQUFDUCxLQUFLLEtBQUssTUFBTTtZQUN2QixNQUFNVSxVQUFVLENBQUMscUJBQXFCLEVBQUVILGlCQUFpQiwrQ0FBK0MsQ0FBQyxFQUNuR0ksWUFBWUMsa0JBQVMsQ0FBQ0MsV0FBVyxDQUFDSDtZQUV4QyxPQUFPTixLQUFLTztRQUNkO1FBRUFMLFFBQVEsSUFBSSxDQUFDUCxRQUFRLENBQUNJLFFBQVEsQ0FBQ1I7UUFFL0IsTUFBTW1CLFlBQVlSLE1BQU1TLE9BQU8sSUFDekJDLDRCQUE0QkYsVUFBVUcsa0JBQWtCO1FBRTlELElBQUksQ0FBQ0QsMkJBQTJCO1lBQzlCLE1BQU1FLGNBQWNaLE1BQU1FLFNBQVMsSUFDN0JFLFVBQVUsQ0FBQyxLQUFLLEVBQUVRLFlBQVksV0FBVyxFQUFFSixVQUFVLGtCQUFrQixFQUFFSyxrQ0FBdUIsQ0FBQyxFQUFFLENBQUMsRUFDcEdSLFlBQVlDLGtCQUFTLENBQUNDLFdBQVcsQ0FBQ0g7WUFFeEMsT0FBT04sS0FBS087UUFDZDtRQUVBLElBQUlkO1FBRUosTUFBTXVCLGlCQUFpQmQsTUFBTWUsaUJBQWlCLElBQ3hDQyxlQUFlRixnQkFBaUIsR0FBRztRQUV6Q3ZCLE9BQU95QixhQUFhQyxPQUFPO1FBRTNCLElBQUkxQixTQUFTLE1BQU07WUFDakIsTUFBTXFCLGNBQWNaLE1BQU1FLFNBQVMsSUFDN0JFLFVBQVUsQ0FBQyxLQUFLLEVBQUVRLFlBQVksdUJBQXVCLENBQUMsRUFDdERQLFlBQVlDLGtCQUFTLENBQUNDLFdBQVcsQ0FBQ0g7WUFFeEMsT0FBT04sS0FBS087UUFDZDtRQUVBLE1BQU1hLFFBQVEsSUFBSSxDQUFDeEIsS0FBSyxDQUFDeUIsT0FBTyxDQUFDNUI7UUFFakNTLFFBQVFvQixJQUFBQSxvQ0FBNkIsRUFBQ0YsT0FBT0Y7UUFFN0MsTUFBTUosY0FBY1osTUFBTUUsU0FBUztRQUVuQ2IsUUFBUWdDLEtBQUssQ0FBQyxDQUFDLGtCQUFrQixFQUFFcEIsaUJBQWlCLGVBQWUsRUFBRVcsWUFBWSxFQUFFLENBQUM7UUFFcEYsT0FBT2IsUUFBUUM7SUFDakI7SUFFQSxPQUFPc0IsT0FBTyxhQUFhO0FBQzdCIn0=
|
package/lib/element/primitive.js
CHANGED
|
@@ -66,9 +66,9 @@ const _default = (0, _elements.define)(class Primitive extends _occamlanguages.E
|
|
|
66
66
|
getValue() {
|
|
67
67
|
return this.value;
|
|
68
68
|
}
|
|
69
|
-
evaluate(context) {
|
|
69
|
+
evaluate(context, back, forward) {
|
|
70
70
|
const { Term } = _elements.default, primitive = this, term = Term.fromPrimitive(primitive, context);
|
|
71
|
-
return term;
|
|
71
|
+
return forward(term);
|
|
72
72
|
}
|
|
73
73
|
isEqualTo(primitive) {
|
|
74
74
|
let equalTo = false;
|
|
@@ -147,4 +147,4 @@ const _default = (0, _elements.define)(class Primitive extends _occamlanguages.E
|
|
|
147
147
|
}
|
|
148
148
|
});
|
|
149
149
|
|
|
150
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
150
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3ByaW1pdGl2ZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcbmltcG9ydCB7IGFycmF5VXRpbGl0aWVzIH0gZnJvbSBcIm5lY2Vzc2FyeVwiO1xuXG5pbXBvcnQgZWxlbWVudHMgZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgTElTVF9UWVBFX05BTUUsIFNUUklOR19UWVBFX05BTUUsIEJPT0xFQU5fVFlQRV9OQU1FLCBJTlRFR0VSX1RZUEVfTkFNRSwgTk9NSU5BTF9WQUxVRV9UWVBFX05BTUUgfSBmcm9tIFwiLi4vdHlwZU5hbWVzXCI7XG5cbmNvbnN0IHsgbWF0Y2ggfSA9IGFycmF5VXRpbGl0aWVzO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgUHJpbWl0aXZlIGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdHlwZSwgdmFsdWUpIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cblxuICBnZXRUeXBlKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGU7XG4gIH1cblxuICBnZXRWYWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZTtcbiAgfVxuXG4gIGV2YWx1YXRlKGNvbnRleHQsIGJhY2ssIGZvcndhcmQpIHtcbiAgICBjb25zdCB7IFRlcm0gfSA9IGVsZW1lbnRzLFxuICAgICAgICAgIHByaW1pdGl2ZSA9IHRoaXMsXG4gICAgICAgICAgdGVybSA9IFRlcm0uZnJvbVByaW1pdGl2ZShwcmltaXRpdmUsIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIGZvcndhcmQodGVybSk7XG4gIH1cblxuICBpc0VxdWFsVG8ocHJpbWl0aXZlKSB7XG4gICAgbGV0IGVxdWFsVG8gPSBmYWxzZTtcblxuICAgIGNvbnN0IHByaW1pdGl2ZVR5cGUgPSBwcmltaXRpdmUuZ2V0VHlwZSgpLFxuICAgICAgICAgIHR5cGVFcXVhbFRvUHJpbWl0aXZlVHlwZSA9IHRoaXMudHlwZS5pc0VxdWFsVG8ocHJpbWl0aXZlVHlwZSk7XG5cbiAgICBpZiAodHlwZUVxdWFsVG9QcmltaXRpdmVUeXBlKSB7XG4gICAgICBjb25zdCB2YWx1ZSA9IHByaW1pdGl2ZS5nZXRWYWx1ZSgpLFxuICAgICAgICAgICAgdHlwZU5hbWUgPSB0aGlzLnR5cGUuZ2V0TmFtZSgpO1xuXG4gICAgICBzd2l0Y2ggKHR5cGVOYW1lKSB7XG4gICAgICAgIGNhc2UgTElTVF9UWVBFX05BTUU6IHtcbiAgICAgICAgICBjb25zdCBsaXN0QSA9IHRoaXMudmFsdWUsIC8vL1xuICAgICAgICAgICAgICAgIGxpc3RCID0gdmFsdWUsICAvLy9cbiAgICAgICAgICAgICAgICBtYXRjaGVzID0gbWF0Y2gobGlzdEEsIGxpc3RCLCAodmFsdWVBLCB2YWx1ZUIpID0+IHtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IG1hdGNoZXMgPSB2YWx1ZUEuaXNFcXVhbFRvKHZhbHVlQik7XG5cbiAgICAgICAgICAgICAgICAgIGlmIChtYXRjaGVzKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgaWYgKG1hdGNoZXMpIHtcbiAgICAgICAgICAgIGVxdWFsVG8gPSB0cnVlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgY2FzZSBTVFJJTkdfVFlQRV9OQU1FOiB7XG4gICAgICAgICAgY29uc3Qgc3RyaW5nTGl0ZXJhbEEgPSB0aGlzLnZhbHVlLCAvLy9cbiAgICAgICAgICAgICAgICBzdHJpbmdMaXRlcmFsQiA9IHZhbHVlOyAgLy8vXG5cbiAgICAgICAgICBpZiAoc3RyaW5nTGl0ZXJhbEEgPT09IHN0cmluZ0xpdGVyYWxCKSB7XG4gICAgICAgICAgICBlcXVhbFRvID0gdHJ1ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIGNhc2UgQk9PTEVBTl9UWVBFX05BTUU6IHtcbiAgICAgICAgICBjb25zdCBib29sZWFuQSA9IHRoaXMudmFsdWUsIC8vL1xuICAgICAgICAgICAgICAgIGJvb2xlYW5CID0gdmFsdWU7ICAvLy9cblxuICAgICAgICAgIGlmIChib29sZWFuQSA9PT0gYm9vbGVhbkIpIHtcbiAgICAgICAgICAgIGVxdWFsVG8gPSB0cnVlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgY2FzZSBJTlRFR0VSX1RZUEVfTkFNRToge1xuICAgICAgICAgIGNvbnN0IGludGVnZXJBID0gdGhpcy52YWx1ZSwgLy8vXG4gICAgICAgICAgICAgICAgaW50ZWdlckIgPSB2YWx1ZTsgIC8vL1xuXG4gICAgICAgICAgaWYgKGludGVnZXJBID09PSBpbnRlZ2VyQikge1xuICAgICAgICAgICAgZXF1YWxUbyA9IHRydWU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cblxuICAgICAgICBjYXNlIE5PTUlOQUxfVkFMVUVfVFlQRV9OQU1FOiB7XG4gICAgICAgICAgY29uc3Qgbm9taW5hbFZhbHVlQSA9IHRoaXMudmFsdWUsIC8vL1xuICAgICAgICAgICAgICAgIG5vbWltYWxWYWx1ZUIgPSB2YWx1ZSwgIC8vL1xuICAgICAgICAgICAgICAgIG1hdGNoZXMgPSBub21pbmFsVmFsdWVBLm1hdGNoKG5vbWltYWxWYWx1ZUIpO1xuXG4gICAgICAgICAgaWYgKG1hdGNoZXMpIHtcbiAgICAgICAgICAgIGVxdWFsVG8gPSB0cnVlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGVxdWFsVG87XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiUHJpbWl0aXZlXCI7XG5cbiAgc3RhdGljIGZyb21QcmltaXRpdmVWYWx1ZUFuZFR5cGUocHJpbWl0aXZlVmFsdWUsIHR5cGUsIGNvbnRleHQpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHByaW1pdGl2ZVZhbHVlLCAvLy9cbiAgICAgICAgICB0eXBlTmFtZSA9IHR5cGUuZ2V0TmFtZSgpO1xuXG4gICAgbGV0IHN0cmluZztcblxuICAgIHN3aXRjaCAodHlwZU5hbWUpIHtcbiAgICAgIGNhc2UgTk9NSU5BTF9WQUxVRV9UWVBFX05BTUU6IHtcbiAgICAgICAgY29uc3Qgbm9taW5hbFZhbHVlID0gdmFsdWU7ICAvLy9cblxuICAgICAgICBzdHJpbmcgPSBub21pbmFsVmFsdWUuZ2V0U3RyaW5nKCk7XG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgc3RyaW5nID0gYCR7dmFsdWV9YDtcblxuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBub2RlID0gbnVsbCxcbiAgICAgICAgICBicmVha1BvaW50ID0gbnVsbCxcbiAgICAgICAgICBwcmltaXRpdmUgPSBuZXcgUHJpbWl0aXZlKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdHlwZSwgdmFsdWUpO1xuXG4gICAgcmV0dXJuIHByaW1pdGl2ZTtcbiAgfVxufSk7XG4iXSwibmFtZXMiOlsibWF0Y2giLCJhcnJheVV0aWxpdGllcyIsImRlZmluZSIsIlByaW1pdGl2ZSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ0eXBlIiwidmFsdWUiLCJnZXRUeXBlIiwiZ2V0VmFsdWUiLCJldmFsdWF0ZSIsImJhY2siLCJmb3J3YXJkIiwiVGVybSIsImVsZW1lbnRzIiwicHJpbWl0aXZlIiwidGVybSIsImZyb21QcmltaXRpdmUiLCJpc0VxdWFsVG8iLCJlcXVhbFRvIiwicHJpbWl0aXZlVHlwZSIsInR5cGVFcXVhbFRvUHJpbWl0aXZlVHlwZSIsInR5cGVOYW1lIiwiZ2V0TmFtZSIsIkxJU1RfVFlQRV9OQU1FIiwibGlzdEEiLCJsaXN0QiIsIm1hdGNoZXMiLCJ2YWx1ZUEiLCJ2YWx1ZUIiLCJTVFJJTkdfVFlQRV9OQU1FIiwic3RyaW5nTGl0ZXJhbEEiLCJzdHJpbmdMaXRlcmFsQiIsIkJPT0xFQU5fVFlQRV9OQU1FIiwiYm9vbGVhbkEiLCJib29sZWFuQiIsIklOVEVHRVJfVFlQRV9OQU1FIiwiaW50ZWdlckEiLCJpbnRlZ2VyQiIsIk5PTUlOQUxfVkFMVUVfVFlQRV9OQU1FIiwibm9taW5hbFZhbHVlQSIsIm5vbWltYWxWYWx1ZUIiLCJuYW1lIiwiZnJvbVByaW1pdGl2ZVZhbHVlQW5kVHlwZSIsInByaW1pdGl2ZVZhbHVlIiwibm9taW5hbFZhbHVlIiwiZ2V0U3RyaW5nIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFZQTs7O2VBQUE7OztnQ0FWd0I7MkJBQ087a0VBRVY7MkJBRzJGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFaEgsTUFBTSxFQUFFQSxLQUFLLEVBQUUsR0FBR0MseUJBQWM7TUFFaEMsV0FBZUMsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyxrQkFBa0JDLHVCQUFPO0lBQ25ELFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsSUFBSSxFQUFFQyxLQUFLLENBQUU7UUFDMUQsS0FBSyxDQUFDTCxTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLEtBQUssR0FBR0E7SUFDZjtJQUVBQyxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUNGLElB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
|
|
@@ -18,16 +18,16 @@ const _default = (0, _elements.define)(class ReturnStatement extends _occamlangu
|
|
|
18
18
|
getExpression() {
|
|
19
19
|
return this.value;
|
|
20
20
|
}
|
|
21
|
-
evaluate(context) {
|
|
21
|
+
evaluate(context, back, forward) {
|
|
22
22
|
let value;
|
|
23
23
|
const returnStatementString = this.getString(); ///
|
|
24
24
|
context.trace(`Evaluating the '${returnStatementString}' return statement...`);
|
|
25
25
|
value = this.value.evaluate(context);
|
|
26
26
|
const valueString = value.getString();
|
|
27
27
|
context.debug(`...evaluated the '${returnStatementString}' return statement as '${valueString}'.`);
|
|
28
|
-
return value;
|
|
28
|
+
return forward(value);
|
|
29
29
|
}
|
|
30
30
|
static name = "ReturnStatement";
|
|
31
31
|
});
|
|
32
32
|
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3JldHVyblN0YXRlbWVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcblxuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBSZXR1cm5TdGF0ZW1lbnQgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB2YWx1ZSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cblxuICBnZXRFeHByZXNzaW9uKCkge1xuICAgIHJldHVybiB0aGlzLnZhbHVlO1xuICB9XG5cbiAgZXZhbHVhdGUoY29udGV4dCwgYmFjaywgZm9yd2FyZCkge1xuICAgIGxldCB2YWx1ZTtcblxuICAgIGNvbnN0IHJldHVyblN0YXRlbWVudFN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7ICAvLy9cblxuICAgIGNvbnRleHQudHJhY2UoYEV2YWx1YXRpbmcgdGhlICcke3JldHVyblN0YXRlbWVudFN0cmluZ30nIHJldHVybiBzdGF0ZW1lbnQuLi5gKTtcblxuICAgIHZhbHVlID0gdGhpcy52YWx1ZS5ldmFsdWF0ZShjb250ZXh0KTtcblxuICAgIGNvbnN0IHZhbHVlU3RyaW5nID0gdmFsdWUuZ2V0U3RyaW5nKCk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5ldmFsdWF0ZWQgdGhlICcke3JldHVyblN0YXRlbWVudFN0cmluZ30nIHJldHVybiBzdGF0ZW1lbnQgYXMgJyR7dmFsdWVTdHJpbmd9Jy5gKTtcblxuICAgIHJldHVybiBmb3J3YXJkKHZhbHVlKTtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJSZXR1cm5TdGF0ZW1lbnRcIjtcbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIlJldHVyblN0YXRlbWVudCIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ2YWx1ZSIsImdldEV4cHJlc3Npb24iLCJldmFsdWF0ZSIsImJhY2siLCJmb3J3YXJkIiwicmV0dXJuU3RhdGVtZW50U3RyaW5nIiwiZ2V0U3RyaW5nIiwidHJhY2UiLCJ2YWx1ZVN0cmluZyIsImRlYnVnIiwibmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBTUE7OztlQUFBOzs7Z0NBSndCOzBCQUVEO01BRXZCLFdBQWVBLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsd0JBQXdCQyx1QkFBTztJQUN6RCxZQUFZQyxPQUFPLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxVQUFVLEVBQUVDLEtBQUssQ0FBRTtRQUNwRCxLQUFLLENBQUNKLFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0MsS0FBSyxHQUFHQTtJQUNmO0lBRUFDLGdCQUFnQjtRQUNkLE9BQU8sSUFBSSxDQUFDRCxLQUFLO0lBQ25CO0lBRUFFLFNBQVNOLE9BQU8sRUFBRU8sSUFBSSxFQUFFQyxPQUFPLEVBQUU7UUFDL0IsSUFBSUo7UUFFSixNQUFNSyx3QkFBd0IsSUFBSSxDQUFDQyxTQUFTLElBQUssR0FBRztRQUVwRFYsUUFBUVcsS0FBSyxDQUFDLENBQUMsZ0JBQWdCLEVBQUVGLHNCQUFzQixxQkFBcUIsQ0FBQztRQUU3RUwsUUFBUSxJQUFJLENBQUNBLEtBQUssQ0FBQ0UsUUFBUSxDQUFDTjtRQUU1QixNQUFNWSxjQUFjUixNQUFNTSxTQUFTO1FBRW5DVixRQUFRYSxLQUFLLENBQUMsQ0FBQyxrQkFBa0IsRUFBRUosc0JBQXNCLHVCQUF1QixFQUFFRyxZQUFZLEVBQUUsQ0FBQztRQUVqRyxPQUFPSixRQUFRSjtJQUNqQjtJQUVBLE9BQU9VLE9BQU8sa0JBQWtCO0FBQ2xDIn0=
|
|
@@ -30,7 +30,7 @@ const _default = (0, _elements.define)(class StartsWith extends _occamlanguages.
|
|
|
30
30
|
getSubstring() {
|
|
31
31
|
return this.substring;
|
|
32
32
|
}
|
|
33
|
-
evaluate(context) {
|
|
33
|
+
evaluate(context, back, forward) {
|
|
34
34
|
let value;
|
|
35
35
|
const startsWithString = this.getString(); ///
|
|
36
36
|
context.trace(`Evaluating the '${startsWithString}' function...`);
|
|
@@ -38,15 +38,15 @@ const _default = (0, _elements.define)(class StartsWith extends _occamlanguages.
|
|
|
38
38
|
const valueType = value.getType(), valueTypeStringType = valueType.isStringType();
|
|
39
39
|
if (!valueTypeStringType) {
|
|
40
40
|
const valueString = value.getString(), message = `The '${valueString}' value's '${valueType}' type should be '${_typeNames.STRING_TYPE_NAME}'.`, exception = _exception.default.fromMessage(message);
|
|
41
|
-
|
|
41
|
+
return back(exception);
|
|
42
42
|
}
|
|
43
43
|
const string = value.getString(), boolean = string.startsWith(this.substring);
|
|
44
44
|
value = (0, _value.valueFromBoolean)(boolean);
|
|
45
45
|
const valueString = value.getString();
|
|
46
46
|
context.debug(`...evaluated the '${startsWithString}' function as '${valueString}'.`);
|
|
47
|
-
return value;
|
|
47
|
+
return forward(value);
|
|
48
48
|
}
|
|
49
49
|
static name = "StartsWith";
|
|
50
50
|
});
|
|
51
51
|
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3N0YXJ0c1dpdGguanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IFNUUklOR19UWVBFX05BTUUgfSBmcm9tIFwiLi4vdHlwZU5hbWVzXCI7XG5pbXBvcnQgeyB2YWx1ZUZyb21Cb29sZWFuIH0gZnJvbSBcIi4uL3V0aWxpdGllcy92YWx1ZVwiO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgU3RhcnRzV2l0aCBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIHZhcmlhYmxlLCBzdWJzdHJpbmcpIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy52YXJpYWJsZSA9IHZhcmlhYmxlO1xuICAgIHRoaXMuc3Vic3RyaW5nID0gc3Vic3RyaW5nO1xuICB9XG5cbiAgZ2V0VmFyaWFibGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFyaWFibGU7XG4gIH1cblxuICBnZXRTdWJzdHJpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3Vic3RyaW5nO1xuICB9XG5cbiAgZXZhbHVhdGUoY29udGV4dCwgYmFjaywgZm9yd2FyZCkge1xuICAgIGxldCB2YWx1ZTtcblxuICAgIGNvbnN0IHN0YXJ0c1dpdGhTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpOyAgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBFdmFsdWF0aW5nIHRoZSAnJHtzdGFydHNXaXRoU3RyaW5nfScgZnVuY3Rpb24uLi5gKTtcblxuICAgIHZhbHVlID0gdGhpcy52YXJpYWJsZS5ldmFsdWF0ZShjb250ZXh0KTtcblxuICAgIGNvbnN0IHZhbHVlVHlwZSA9IHZhbHVlLmdldFR5cGUoKSxcbiAgICAgICAgICB2YWx1ZVR5cGVTdHJpbmdUeXBlID0gdmFsdWVUeXBlLmlzU3RyaW5nVHlwZSgpO1xuXG4gICAgaWYgKCF2YWx1ZVR5cGVTdHJpbmdUeXBlKSB7XG4gICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7dmFsdWVTdHJpbmd9JyB2YWx1ZSdzICcke3ZhbHVlVHlwZX0nIHR5cGUgc2hvdWxkIGJlICcke1NUUklOR19UWVBFX05BTUV9Jy5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICByZXR1cm4gYmFjayhleGNlcHRpb24pO1xuICAgIH1cblxuICAgIGNvbnN0IHN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICAgIGJvb2xlYW4gPSBzdHJpbmcuc3RhcnRzV2l0aCh0aGlzLnN1YnN0cmluZyk7XG5cbiAgICB2YWx1ZSA9IHZhbHVlRnJvbUJvb2xlYW4oYm9vbGVhbik7XG5cbiAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpO1xuXG4gICAgY29udGV4dC5kZWJ1ZyhgLi4uZXZhbHVhdGVkIHRoZSAnJHtzdGFydHNXaXRoU3RyaW5nfScgZnVuY3Rpb24gYXMgJyR7dmFsdWVTdHJpbmd9Jy5gKTtcblxuICAgIHJldHVybiBmb3J3YXJkKHZhbHVlKTtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJTdGFydHNXaXRoXCI7XG59KTtcbiJdLCJuYW1lcyI6WyJkZWZpbmUiLCJTdGFydHNXaXRoIiwiRWxlbWVudCIsImNvbnRleHQiLCJzdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsInZhcmlhYmxlIiwic3Vic3RyaW5nIiwiZ2V0VmFyaWFibGUiLCJnZXRTdWJzdHJpbmciLCJldmFsdWF0ZSIsImJhY2siLCJmb3J3YXJkIiwidmFsdWUiLCJzdGFydHNXaXRoU3RyaW5nIiwiZ2V0U3RyaW5nIiwidHJhY2UiLCJ2YWx1ZVR5cGUiLCJnZXRUeXBlIiwidmFsdWVUeXBlU3RyaW5nVHlwZSIsImlzU3RyaW5nVHlwZSIsInZhbHVlU3RyaW5nIiwibWVzc2FnZSIsIlNUUklOR19UWVBFX05BTUUiLCJleGNlcHRpb24iLCJFeGNlcHRpb24iLCJmcm9tTWVzc2FnZSIsImJvb2xlYW4iLCJzdGFydHNXaXRoIiwidmFsdWVGcm9tQm9vbGVhbiIsImRlYnVnIiwibmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBVUE7OztlQUFBOzs7Z0NBUndCO2tFQUVGOzBCQUVDOzJCQUNVO3VCQUNBOzs7Ozs7TUFFakMsV0FBZUEsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyxtQkFBbUJDLHVCQUFPO0lBQ3BELFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsUUFBUSxFQUFFQyxTQUFTLENBQUU7UUFDbEUsS0FBSyxDQUFDTCxTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLFFBQVEsR0FBR0E7UUFDaEIsSUFBSSxDQUFDQyxTQUFTLEdBQUdBO0lBQ25CO0lBRUFDLGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQ0YsUUFBUTtJQUN0QjtJQUVBRyxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUNGLFNBQVM7SUFDdkI7SUFFQUcsU0FBU1IsT0FBTyxFQUFFUyxJQUFJLEVBQUVDLE9BQU8sRUFBRTtRQUMvQixJQUFJQztRQUVKLE1BQU1DLG1CQUFtQixJQUFJLENBQUNDLFNBQVMsSUFBSyxHQUFHO1FBRS9DYixRQUFRYyxLQUFLLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRUYsaUJBQWlCLGFBQWEsQ0FBQztRQUVoRUQsUUFBUSxJQUFJLENBQUNQLFFBQVEsQ0FBQ0ksUUFBUSxDQUFDUjtRQUUvQixNQUFNZSxZQUFZSixNQUFNSyxPQUFPLElBQ3pCQyxzQkFBc0JGLFVBQVVHLFlBQVk7UUFFbEQsSUFBSSxDQUFDRCxxQkFBcUI7WUFDeEIsTUFBTUUsY0FBY1IsTUFBTUUsU0FBUyxJQUM3Qk8sVUFBVSxDQUFDLEtBQUssRUFBRUQsWUFBWSxXQUFXLEVBQUVKLFVBQVUsa0JBQWtCLEVBQUVNLDJCQUFnQixDQUFDLEVBQUUsQ0FBQyxFQUM3RkMsWUFBWUMsa0JBQVMsQ0FBQ0MsV0FBVyxDQUFDSjtZQUV4QyxPQUFPWCxLQUFLYTtRQUNkO1FBRUEsTUFBTXJCLFNBQVNVLE1BQU1FLFNBQVMsSUFDeEJZLFVBQVV4QixPQUFPeUIsVUFBVSxDQUFDLElBQUksQ0FBQ3JCLFNBQVM7UUFFaERNLFFBQVFnQixJQUFBQSx1QkFBZ0IsRUFBQ0Y7UUFFekIsTUFBTU4sY0FBY1IsTUFBTUUsU0FBUztRQUVuQ2IsUUFBUTRCLEtBQUssQ0FBQyxDQUFDLGtCQUFrQixFQUFFaEIsaUJBQWlCLGVBQWUsRUFBRU8sWUFBWSxFQUFFLENBQUM7UUFFcEYsT0FBT1QsUUFBUUM7SUFDakI7SUFFQSxPQUFPa0IsT0FBTyxhQUFhO0FBQzdCIn0=
|
|
@@ -21,16 +21,16 @@ const _default = (0, _elements.define)(class BracketedTerm extends _occamlanguag
|
|
|
21
21
|
getType() {
|
|
22
22
|
return this.term.getType();
|
|
23
23
|
}
|
|
24
|
-
evaluate(context) {
|
|
24
|
+
evaluate(context, back, forward) {
|
|
25
25
|
let value;
|
|
26
26
|
const bracketedTermString = this.getString(); ///
|
|
27
27
|
context.trace(`Evaluating the '${bracketedTermString}' bracketed term...`);
|
|
28
28
|
value = this.term.evaluate(context);
|
|
29
29
|
const valueString = value.getString();
|
|
30
30
|
context.debug(`...evaluated the '${bracketedTermString}' bracketed term as '${valueString}'.`);
|
|
31
|
-
return value;
|
|
31
|
+
return forward(value);
|
|
32
32
|
}
|
|
33
33
|
static name = "BracketedTerm";
|
|
34
34
|
});
|
|
35
35
|
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50L3Rlcm0vYnJhY2tldGVkLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vLi4vZWxlbWVudHNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIEJyYWNrZXRlZFRlcm0gZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB0ZXJtKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMudGVybSA9IHRlcm07XG4gIH1cblxuICBnZXRUZXJtKCkge1xuICAgIHJldHVybiB0aGlzLnRlcm07XG4gIH1cblxuICBnZXRUeXBlKCkgeyByZXR1cm4gdGhpcy50ZXJtLmdldFR5cGUoKTsgfVxuXG4gIGV2YWx1YXRlKGNvbnRleHQsIGJhY2ssIGZvcndhcmQpIHtcbiAgICBsZXQgdmFsdWU7XG5cbiAgICBjb25zdCBicmFja2V0ZWRUZXJtU3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTsgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBFdmFsdWF0aW5nIHRoZSAnJHticmFja2V0ZWRUZXJtU3RyaW5nfScgYnJhY2tldGVkIHRlcm0uLi5gKTtcblxuICAgIHZhbHVlID0gdGhpcy50ZXJtLmV2YWx1YXRlKGNvbnRleHQpO1xuXG4gICAgY29uc3QgdmFsdWVTdHJpbmcgPSB2YWx1ZS5nZXRTdHJpbmcoKTtcblxuICAgIGNvbnRleHQuZGVidWcoYC4uLmV2YWx1YXRlZCB0aGUgJyR7YnJhY2tldGVkVGVybVN0cmluZ30nIGJyYWNrZXRlZCB0ZXJtIGFzICcke3ZhbHVlU3RyaW5nfScuYCk7XG5cbiAgICByZXR1cm4gZm9yd2FyZCh2YWx1ZSk7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiQnJhY2tldGVkVGVybVwiO1xufSk7XG4iXSwibmFtZXMiOlsiZGVmaW5lIiwiQnJhY2tldGVkVGVybSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ0ZXJtIiwiZ2V0VGVybSIsImdldFR5cGUiLCJldmFsdWF0ZSIsImJhY2siLCJmb3J3YXJkIiwidmFsdWUiLCJicmFja2V0ZWRUZXJtU3RyaW5nIiwiZ2V0U3RyaW5nIiwidHJhY2UiLCJ2YWx1ZVN0cmluZyIsImRlYnVnIiwibmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBTUE7OztlQUFBOzs7Z0NBSndCOzBCQUVEO01BRXZCLFdBQWVBLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsc0JBQXNCQyx1QkFBTztJQUN2RCxZQUFZQyxPQUFPLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxVQUFVLEVBQUVDLElBQUksQ0FBRTtRQUNuRCxLQUFLLENBQUNKLFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtJQUNkO0lBRUFDLFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQ0QsSUFBSTtJQUNsQjtJQUVBRSxVQUFVO1FBQUUsT0FBTyxJQUFJLENBQUNGLElBQUksQ0FBQ0UsT0FBTztJQUFJO0lBRXhDQyxTQUFTUCxPQUFPLEVBQUVRLElBQUksRUFBRUMsT0FBTyxFQUFFO1FBQy9CLElBQUlDO1FBRUosTUFBTUMsc0JBQXNCLElBQUksQ0FBQ0MsU0FBUyxJQUFJLEdBQUc7UUFFakRaLFFBQVFhLEtBQUssQ0FBQyxDQUFDLGdCQUFnQixFQUFFRixvQkFBb0IsbUJBQW1CLENBQUM7UUFFekVELFFBQVEsSUFBSSxDQUFDTixJQUFJLENBQUNHLFFBQVEsQ0FBQ1A7UUFFM0IsTUFBTWMsY0FBY0osTUFBTUUsU0FBUztRQUVuQ1osUUFBUWUsS0FBSyxDQUFDLENBQUMsa0JBQWtCLEVBQUVKLG9CQUFvQixxQkFBcUIsRUFBRUcsWUFBWSxFQUFFLENBQUM7UUFFN0YsT0FBT0wsUUFBUUM7SUFDakI7SUFFQSxPQUFPTSxPQUFPLGdCQUFnQjtBQUNoQyJ9
|
|
@@ -33,14 +33,14 @@ const _default = (0, _elements.define)(class ComparisonTerm extends _occamlangua
|
|
|
33
33
|
getRightTerm() {
|
|
34
34
|
return this.rightTerm;
|
|
35
35
|
}
|
|
36
|
-
evaluate(context) {
|
|
36
|
+
evaluate(context, back, forward) {
|
|
37
37
|
let value;
|
|
38
38
|
const comparisonTermString = this.getString(); ///
|
|
39
39
|
context.trace(`Evaluating the '${comparisonTermString}' comparison term...`);
|
|
40
40
|
const leftValue = this.leftTerm.evaluate(context), rightValue = this.rightTerm.evaluate(context), leftValueType = leftValue.getType(), rightValueType = rightValue.getType(), leftValueTypeEqualToRightValueType = leftValueType.isEqualTo(rightValueType);
|
|
41
41
|
if (!leftValueTypeEqualToRightValueType) {
|
|
42
42
|
const leftValueString = leftValue.getString(), rightValueString = rightValue.getString(), leftValueTypeString = leftValueType.getString(), rightValueTypeString = rightValueType.getString(), message = `The '${leftValueString}' left term's type is '${leftValueTypeString}' whereas the '${rightValueString}' right term's type is '${rightValueTypeString}'.`, exception = _exception.default.fromMessage(message);
|
|
43
|
-
|
|
43
|
+
return back(exception);
|
|
44
44
|
}
|
|
45
45
|
const leftValueEqualToRightValue = leftValue.isEqualTo(rightValue);
|
|
46
46
|
let boolean = leftValueEqualToRightValue; ///
|
|
@@ -50,9 +50,9 @@ const _default = (0, _elements.define)(class ComparisonTerm extends _occamlangua
|
|
|
50
50
|
value = (0, _value.valueFromBoolean)(boolean, context);
|
|
51
51
|
const valueString = value.getString();
|
|
52
52
|
context.debug(`...evaluated the '${comparisonTermString}' comparison value as '${valueString}'.`);
|
|
53
|
-
return value;
|
|
53
|
+
return forward(value);
|
|
54
54
|
}
|
|
55
55
|
static name = "ComparisonTerm";
|
|
56
56
|
});
|
|
57
57
|
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50L3Rlcm0vY29tcGFyaXNvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcblxuaW1wb3J0IEV4Y2VwdGlvbiBmcm9tIFwiLi4vLi4vZXhjZXB0aW9uXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi8uLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgdmFsdWVGcm9tQm9vbGVhbiB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvdmFsdWVcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIENvbXBhcmlzb25UZXJtIGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgbmVnYXRlZCwgbGVmdFRlcm0sIHJpZ2h0VGVybSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLm5lZ2F0ZWQgPSBuZWdhdGVkO1xuICAgIHRoaXMubGVmdFRlcm0gPSBsZWZ0VGVybTtcbiAgICB0aGlzLnJpZ2h0VGVybSA9IHJpZ2h0VGVybTtcbiAgfVxuXG4gIGlzTmVnYXRlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5uZWdhdGVkO1xuICB9XG5cbiAgZ2V0TGVmdFRlcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMubGVmdFRlcm07XG4gIH1cblxuICBnZXRSaWdodFRlcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMucmlnaHRUZXJtO1xuICB9XG5cbiAgZXZhbHVhdGUoY29udGV4dCwgYmFjaywgZm9yd2FyZCkge1xuICAgIGxldCB2YWx1ZTtcblxuICAgIGNvbnN0IGNvbXBhcmlzb25UZXJtU3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTsgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBFdmFsdWF0aW5nIHRoZSAnJHtjb21wYXJpc29uVGVybVN0cmluZ30nIGNvbXBhcmlzb24gdGVybS4uLmApO1xuXG4gICAgY29uc3QgbGVmdFZhbHVlID0gdGhpcy5sZWZ0VGVybS5ldmFsdWF0ZShjb250ZXh0KSxcbiAgICAgICAgICByaWdodFZhbHVlID0gdGhpcy5yaWdodFRlcm0uZXZhbHVhdGUoY29udGV4dCksXG4gICAgICAgICAgbGVmdFZhbHVlVHlwZSA9IGxlZnRWYWx1ZS5nZXRUeXBlKCksXG4gICAgICAgICAgcmlnaHRWYWx1ZVR5cGUgPSByaWdodFZhbHVlLmdldFR5cGUoKSxcbiAgICAgICAgICBsZWZ0VmFsdWVUeXBlRXF1YWxUb1JpZ2h0VmFsdWVUeXBlID0gbGVmdFZhbHVlVHlwZS5pc0VxdWFsVG8ocmlnaHRWYWx1ZVR5cGUpO1xuXG4gICAgaWYgKCFsZWZ0VmFsdWVUeXBlRXF1YWxUb1JpZ2h0VmFsdWVUeXBlKSB7XG4gICAgICBjb25zdCBsZWZ0VmFsdWVTdHJpbmcgPSBsZWZ0VmFsdWUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICByaWdodFZhbHVlU3RyaW5nID0gcmlnaHRWYWx1ZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgIGxlZnRWYWx1ZVR5cGVTdHJpbmcgPSBsZWZ0VmFsdWVUeXBlLmdldFN0cmluZygpLFxuICAgICAgICAgICAgcmlnaHRWYWx1ZVR5cGVTdHJpbmcgPSByaWdodFZhbHVlVHlwZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgIG1lc3NhZ2UgPSBgVGhlICcke2xlZnRWYWx1ZVN0cmluZ30nIGxlZnQgdGVybSdzIHR5cGUgaXMgJyR7bGVmdFZhbHVlVHlwZVN0cmluZ30nIHdoZXJlYXMgdGhlICcke3JpZ2h0VmFsdWVTdHJpbmd9JyByaWdodCB0ZXJtJ3MgdHlwZSBpcyAnJHtyaWdodFZhbHVlVHlwZVN0cmluZ30nLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHJldHVybiBiYWNrKGV4Y2VwdGlvbik7XG4gICAgfVxuXG4gICAgY29uc3QgbGVmdFZhbHVlRXF1YWxUb1JpZ2h0VmFsdWUgPSBsZWZ0VmFsdWUuaXNFcXVhbFRvKHJpZ2h0VmFsdWUpO1xuXG4gICAgbGV0IGJvb2xlYW4gPSBsZWZ0VmFsdWVFcXVhbFRvUmlnaHRWYWx1ZTsgLy8vXG5cbiAgICBpZiAodGhpcy5uZWdhdGVkKSB7XG4gICAgICBib29sZWFuID0gIWJvb2xlYW47IC8vL1xuICAgIH1cblxuICAgIHZhbHVlID0gdmFsdWVGcm9tQm9vbGVhbihib29sZWFuLCBjb250ZXh0KTtcblxuICAgIGNvbnN0IHZhbHVlU3RyaW5nID0gdmFsdWUuZ2V0U3RyaW5nKCk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5ldmFsdWF0ZWQgdGhlICcke2NvbXBhcmlzb25UZXJtU3RyaW5nfScgY29tcGFyaXNvbiB2YWx1ZSBhcyAnJHt2YWx1ZVN0cmluZ30nLmApO1xuXG4gICAgcmV0dXJuIGZvcndhcmQodmFsdWUpO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIkNvbXBhcmlzb25UZXJtXCI7XG59KTtcbiJdLCJuYW1lcyI6WyJkZWZpbmUiLCJDb21wYXJpc29uVGVybSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJuZWdhdGVkIiwibGVmdFRlcm0iLCJyaWdodFRlcm0iLCJpc05lZ2F0ZWQiLCJnZXRMZWZ0VGVybSIsImdldFJpZ2h0VGVybSIsImV2YWx1YXRlIiwiYmFjayIsImZvcndhcmQiLCJ2YWx1ZSIsImNvbXBhcmlzb25UZXJtU3RyaW5nIiwiZ2V0U3RyaW5nIiwidHJhY2UiLCJsZWZ0VmFsdWUiLCJyaWdodFZhbHVlIiwibGVmdFZhbHVlVHlwZSIsImdldFR5cGUiLCJyaWdodFZhbHVlVHlwZSIsImxlZnRWYWx1ZVR5cGVFcXVhbFRvUmlnaHRWYWx1ZVR5cGUiLCJpc0VxdWFsVG8iLCJsZWZ0VmFsdWVTdHJpbmciLCJyaWdodFZhbHVlU3RyaW5nIiwibGVmdFZhbHVlVHlwZVN0cmluZyIsInJpZ2h0VmFsdWVUeXBlU3RyaW5nIiwibWVzc2FnZSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwibGVmdFZhbHVlRXF1YWxUb1JpZ2h0VmFsdWUiLCJib29sZWFuIiwidmFsdWVGcm9tQm9vbGVhbiIsInZhbHVlU3RyaW5nIiwiZGVidWciLCJuYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFTQTs7O2VBQUE7OztnQ0FQd0I7a0VBRUY7MEJBRUM7dUJBQ1U7Ozs7OztNQUVqQyxXQUFlQSxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLHVCQUF1QkMsdUJBQU87SUFDeEQsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxPQUFPLEVBQUVDLFFBQVEsRUFBRUMsU0FBUyxDQUFFO1FBQzNFLEtBQUssQ0FBQ04sU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxPQUFPLEdBQUdBO1FBQ2YsSUFBSSxDQUFDQyxRQUFRLEdBQUdBO1FBQ2hCLElBQUksQ0FBQ0MsU0FBUyxHQUFHQTtJQUNuQjtJQUVBQyxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUNILE9BQU87SUFDckI7SUFFQUksY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDSCxRQUFRO0lBQ3RCO0lBRUFJLGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQ0gsU0FBUztJQUN2QjtJQUVBSSxTQUFTVixPQUFPLEVBQUVXLElBQUksRUFBRUMsT0FBTyxFQUFFO1FBQy9CLElBQUlDO1FBRUosTUFBTUMsdUJBQXVCLElBQUksQ0FBQ0MsU0FBUyxJQUFJLEdBQUc7UUFFbERmLFFBQVFnQixLQUFLLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRUYscUJBQXFCLG9CQUFvQixDQUFDO1FBRTNFLE1BQU1HLFlBQVksSUFBSSxDQUFDWixRQUFRLENBQUNLLFFBQVEsQ0FBQ1YsVUFDbkNrQixhQUFhLElBQUksQ0FBQ1osU0FBUyxDQUFDSSxRQUFRLENBQUNWLFVBQ3JDbUIsZ0JBQWdCRixVQUFVRyxPQUFPLElBQ2pDQyxpQkFBaUJILFdBQVdFLE9BQU8sSUFDbkNFLHFDQUFxQ0gsY0FBY0ksU0FBUyxDQUFDRjtRQUVuRSxJQUFJLENBQUNDLG9DQUFvQztZQUN2QyxNQUFNRSxrQkFBa0JQLFVBQVVGLFNBQVMsSUFDckNVLG1CQUFtQlAsV0FBV0gsU0FBUyxJQUN2Q1csc0JBQXNCUCxjQUFjSixTQUFTLElBQzdDWSx1QkFBdUJOLGVBQWVOLFNBQVMsSUFDL0NhLFVBQVUsQ0FBQyxLQUFLLEVBQUVKLGdCQUFnQix1QkFBdUIsRUFBRUUsb0JBQW9CLGVBQWUsRUFBRUQsaUJBQWlCLHdCQUF3QixFQUFFRSxxQkFBcUIsRUFBRSxDQUFDLEVBQ25LRSxZQUFZQyxrQkFBUyxDQUFDQyxXQUFXLENBQUNIO1lBRXhDLE9BQU9qQixLQUFLa0I7UUFDZDtRQUVBLE1BQU1HLDZCQUE2QmYsVUFBVU0sU0FBUyxDQUFDTDtRQUV2RCxJQUFJZSxVQUFVRCw0QkFBNEIsR0FBRztRQUU3QyxJQUFJLElBQUksQ0FBQzVCLE9BQU8sRUFBRTtZQUNoQjZCLFVBQVUsQ0FBQ0EsU0FBUyxHQUFHO1FBQ3pCO1FBRUFwQixRQUFRcUIsSUFBQUEsdUJBQWdCLEVBQUNELFNBQVNqQztRQUVsQyxNQUFNbUMsY0FBY3RCLE1BQU1FLFNBQVM7UUFFbkNmLFFBQVFvQyxLQUFLLENBQUMsQ0FBQyxrQkFBa0IsRUFBRXRCLHFCQUFxQix1QkFBdUIsRUFBRXFCLFlBQVksRUFBRSxDQUFDO1FBRWhHLE9BQU92QixRQUFRQztJQUNqQjtJQUVBLE9BQU93QixPQUFPLGlCQUFpQjtBQUNqQyJ9
|
|
@@ -38,26 +38,26 @@ const _default = (0, _elements.define)(class LogicalTerm extends _occamlanguages
|
|
|
38
38
|
getRightTerm() {
|
|
39
39
|
return this.rightTerm;
|
|
40
40
|
}
|
|
41
|
-
evaluate(context) {
|
|
41
|
+
evaluate(context, back, forward) {
|
|
42
42
|
let value;
|
|
43
43
|
const logicalTermString = this.getString(); ///
|
|
44
44
|
context.trace(`Evaluating the '${logicalTermString}' logical term...`);
|
|
45
45
|
const leftValue = this.leftTerm.evaluate(context), rightValue = this.rightTerm.evaluate(context), leftValueType = leftValue.getType(), rightValueType = rightValue.getType(), leftValueTypeBooleanType = leftValueType.isBooleanType(), rightValueTypeBooleanType = rightValueType.isBooleanType();
|
|
46
46
|
if (!leftValueTypeBooleanType) {
|
|
47
47
|
const leftValueString = leftValue.getString(), message = `The '${leftValueString}' left term's type is '${leftValueType}' when it should be of type '${_typeNames.BOOLEAN_TYPE_NAME}'.`, exception = _exception.default.fromMessage(message);
|
|
48
|
-
|
|
48
|
+
return back(exception);
|
|
49
49
|
}
|
|
50
50
|
if (!rightValueTypeBooleanType) {
|
|
51
51
|
const rightValueString = rightValue.getString(), message = `The '${rightValueString}' right term's type is '${rightValueType}' when it should be of type '${_typeNames.BOOLEAN_TYPE_NAME}'.`, exception = _exception.default.fromMessage(message);
|
|
52
|
-
|
|
52
|
+
return back(exception);
|
|
53
53
|
}
|
|
54
54
|
const leftValuePrimitiveValue = leftValue.getPrimitiveValue(), rightValuePrimitiveValue = rightValue.getPrimitiveValue(), leftBoolean = leftValuePrimitiveValue, rightBoolean = rightValuePrimitiveValue, boolean = this.disjunction ? leftBoolean || rightBoolean : leftBoolean && rightBoolean;
|
|
55
55
|
value = (0, _value.valueFromBoolean)(boolean, context);
|
|
56
56
|
const valueString = value.getString();
|
|
57
57
|
context.debug(`...evaluated the '${logicalTermString}' logical value as '${valueString}'.`);
|
|
58
|
-
return value;
|
|
58
|
+
return forward(value);
|
|
59
59
|
}
|
|
60
60
|
static name = "LogicalTerm";
|
|
61
61
|
});
|
|
62
62
|
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50L3Rlcm0vbG9naWNhbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcblxuaW1wb3J0IEV4Y2VwdGlvbiBmcm9tIFwiLi4vLi4vZXhjZXB0aW9uXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi8uLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgQk9PTEVBTl9UWVBFX05BTUUgfSBmcm9tIFwiLi4vLi4vdHlwZU5hbWVzXCI7XG5pbXBvcnQgeyB2YWx1ZUZyb21Cb29sZWFuIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy92YWx1ZVwiO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgTG9naWNhbFRlcm0gZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB0eXBlLCBkaXNqdW5jdGlvbiwgbGVmdFRlcm0sIHJpZ2h0VGVybSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMuZGlzanVuY3Rpb24gPSBkaXNqdW5jdGlvbjtcbiAgICB0aGlzLmxlZnRUZXJtID0gbGVmdFRlcm07XG4gICAgdGhpcy5yaWdodFRlcm0gPSByaWdodFRlcm07XG4gIH1cblxuICBnZXRUeXBlKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGU7XG4gIH1cblxuICBpc0Rpc2p1bmN0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLmRpc2p1bmN0aW9uO1xuICB9XG5cbiAgZ2V0TGVmdFRlcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMubGVmdFRlcm07XG4gIH1cblxuICBnZXRSaWdodFRlcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMucmlnaHRUZXJtO1xuICB9XG5cbiAgZXZhbHVhdGUoY29udGV4dCwgYmFjaywgZm9yd2FyZCkge1xuICAgIGxldCB2YWx1ZTtcblxuICAgIGNvbnN0IGxvZ2ljYWxUZXJtU3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTsgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBFdmFsdWF0aW5nIHRoZSAnJHtsb2dpY2FsVGVybVN0cmluZ30nIGxvZ2ljYWwgdGVybS4uLmApO1xuXG4gICAgY29uc3QgbGVmdFZhbHVlID0gdGhpcy5sZWZ0VGVybS5ldmFsdWF0ZShjb250ZXh0KSxcbiAgICAgICAgICByaWdodFZhbHVlID0gdGhpcy5yaWdodFRlcm0uZXZhbHVhdGUoY29udGV4dCksXG4gICAgICAgICAgbGVmdFZhbHVlVHlwZSA9IGxlZnRWYWx1ZS5nZXRUeXBlKCksXG4gICAgICAgICAgcmlnaHRWYWx1ZVR5cGUgPSByaWdodFZhbHVlLmdldFR5cGUoKSxcbiAgICAgICAgICBsZWZ0VmFsdWVUeXBlQm9vbGVhblR5cGUgPSBsZWZ0VmFsdWVUeXBlLmlzQm9vbGVhblR5cGUoKSxcbiAgICAgICAgICByaWdodFZhbHVlVHlwZUJvb2xlYW5UeXBlID0gcmlnaHRWYWx1ZVR5cGUuaXNCb29sZWFuVHlwZSgpO1xuXG4gICAgaWYgKCFsZWZ0VmFsdWVUeXBlQm9vbGVhblR5cGUpIHtcbiAgICAgIGNvbnN0IGxlZnRWYWx1ZVN0cmluZyA9IGxlZnRWYWx1ZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgIG1lc3NhZ2UgPSBgVGhlICcke2xlZnRWYWx1ZVN0cmluZ30nIGxlZnQgdGVybSdzIHR5cGUgaXMgJyR7bGVmdFZhbHVlVHlwZX0nIHdoZW4gaXQgc2hvdWxkIGJlIG9mIHR5cGUgJyR7Qk9PTEVBTl9UWVBFX05BTUV9Jy5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICByZXR1cm4gYmFjayhleGNlcHRpb24pO1xuICAgIH1cblxuICAgIGlmICghcmlnaHRWYWx1ZVR5cGVCb29sZWFuVHlwZSkge1xuICAgICAgY29uc3QgcmlnaHRWYWx1ZVN0cmluZyA9IHJpZ2h0VmFsdWUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICBtZXNzYWdlID0gYFRoZSAnJHtyaWdodFZhbHVlU3RyaW5nfScgcmlnaHQgdGVybSdzIHR5cGUgaXMgJyR7cmlnaHRWYWx1ZVR5cGV9JyB3aGVuIGl0IHNob3VsZCBiZSBvZiB0eXBlICcke0JPT0xFQU5fVFlQRV9OQU1FfScuYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgcmV0dXJuIGJhY2soZXhjZXB0aW9uKTtcbiAgICB9XG5cbiAgICBjb25zdCBsZWZ0VmFsdWVQcmltaXRpdmVWYWx1ZSA9IGxlZnRWYWx1ZS5nZXRQcmltaXRpdmVWYWx1ZSgpLFxuICAgICAgICAgIHJpZ2h0VmFsdWVQcmltaXRpdmVWYWx1ZSA9IHJpZ2h0VmFsdWUuZ2V0UHJpbWl0aXZlVmFsdWUoKSxcbiAgICAgICAgICBsZWZ0Qm9vbGVhbiA9bGVmdFZhbHVlUHJpbWl0aXZlVmFsdWUsIC8vL1xuICAgICAgICAgIHJpZ2h0Qm9vbGVhbiA9IHJpZ2h0VmFsdWVQcmltaXRpdmVWYWx1ZSwgLy8vXG4gICAgICAgICAgYm9vbGVhbiA9IHRoaXMuZGlzanVuY3Rpb24gP1xuICAgICAgICAgICAgICAgICAgICAgIChsZWZ0Qm9vbGVhbiB8fCByaWdodEJvb2xlYW4pIDpcbiAgICAgICAgICAgICAgICAgICAgICAgIChsZWZ0Qm9vbGVhbiAmJiByaWdodEJvb2xlYW4pO1xuXG4gICAgdmFsdWUgPSB2YWx1ZUZyb21Cb29sZWFuKGJvb2xlYW4sIGNvbnRleHQpO1xuXG4gICAgY29uc3QgdmFsdWVTdHJpbmcgPSB2YWx1ZS5nZXRTdHJpbmcoKTtcblxuICAgIGNvbnRleHQuZGVidWcoYC4uLmV2YWx1YXRlZCB0aGUgJyR7bG9naWNhbFRlcm1TdHJpbmd9JyBsb2dpY2FsIHZhbHVlIGFzICcke3ZhbHVlU3RyaW5nfScuYCk7XG5cbiAgICByZXR1cm4gZm9yd2FyZCh2YWx1ZSk7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiTG9naWNhbFRlcm1cIjtcbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIkxvZ2ljYWxUZXJtIiwiRWxlbWVudCIsImNvbnRleHQiLCJzdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsInR5cGUiLCJkaXNqdW5jdGlvbiIsImxlZnRUZXJtIiwicmlnaHRUZXJtIiwiZ2V0VHlwZSIsImlzRGlzanVuY3Rpb24iLCJnZXRMZWZ0VGVybSIsImdldFJpZ2h0VGVybSIsImV2YWx1YXRlIiwiYmFjayIsImZvcndhcmQiLCJ2YWx1ZSIsImxvZ2ljYWxUZXJtU3RyaW5nIiwiZ2V0U3RyaW5nIiwidHJhY2UiLCJsZWZ0VmFsdWUiLCJyaWdodFZhbHVlIiwibGVmdFZhbHVlVHlwZSIsInJpZ2h0VmFsdWVUeXBlIiwibGVmdFZhbHVlVHlwZUJvb2xlYW5UeXBlIiwiaXNCb29sZWFuVHlwZSIsInJpZ2h0VmFsdWVUeXBlQm9vbGVhblR5cGUiLCJsZWZ0VmFsdWVTdHJpbmciLCJtZXNzYWdlIiwiQk9PTEVBTl9UWVBFX05BTUUiLCJleGNlcHRpb24iLCJFeGNlcHRpb24iLCJmcm9tTWVzc2FnZSIsInJpZ2h0VmFsdWVTdHJpbmciLCJsZWZ0VmFsdWVQcmltaXRpdmVWYWx1ZSIsImdldFByaW1pdGl2ZVZhbHVlIiwicmlnaHRWYWx1ZVByaW1pdGl2ZVZhbHVlIiwibGVmdEJvb2xlYW4iLCJyaWdodEJvb2xlYW4iLCJib29sZWFuIiwidmFsdWVGcm9tQm9vbGVhbiIsInZhbHVlU3RyaW5nIiwiZGVidWciLCJuYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFVQTs7O2VBQUE7OztnQ0FSd0I7a0VBRUY7MEJBRUM7MkJBQ1c7dUJBQ0Q7Ozs7OztNQUVqQyxXQUFlQSxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLG9CQUFvQkMsdUJBQU87SUFDckQsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxJQUFJLEVBQUVDLFdBQVcsRUFBRUMsUUFBUSxFQUFFQyxTQUFTLENBQUU7UUFDckYsS0FBSyxDQUFDUCxTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLFdBQVcsR0FBR0E7UUFDbkIsSUFBSSxDQUFDQyxRQUFRLEdBQUdBO1FBQ2hCLElBQUksQ0FBQ0MsU0FBUyxHQUFHQTtJQUNuQjtJQUVBQyxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUNKLElBQUk7SUFDbEI7SUFFQUssZ0JBQWdCO1FBQ2QsT0FBTyxJQUFJLENBQUNKLFdBQVc7SUFDekI7SUFFQUssY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDSixRQUFRO0lBQ3RCO0lBRUFLLGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQ0osU0FBUztJQUN2QjtJQUVBSyxTQUFTWixPQUFPLEVBQUVhLElBQUksRUFBRUMsT0FBTyxFQUFFO1FBQy9CLElBQUlDO1FBRUosTUFBTUMsb0JBQW9CLElBQUksQ0FBQ0MsU0FBUyxJQUFJLEdBQUc7UUFFL0NqQixRQUFRa0IsS0FBSyxDQUFDLENBQUMsZ0JBQWdCLEVBQUVGLGtCQUFrQixpQkFBaUIsQ0FBQztRQUVyRSxNQUFNRyxZQUFZLElBQUksQ0FBQ2IsUUFBUSxDQUFDTSxRQUFRLENBQUNaLFVBQ25Db0IsYUFBYSxJQUFJLENBQUNiLFNBQVMsQ0FBQ0ssUUFBUSxDQUFDWixVQUNyQ3FCLGdCQUFnQkYsVUFBVVgsT0FBTyxJQUNqQ2MsaUJBQWlCRixXQUFXWixPQUFPLElBQ25DZSwyQkFBMkJGLGNBQWNHLGFBQWEsSUFDdERDLDRCQUE0QkgsZUFBZUUsYUFBYTtRQUU5RCxJQUFJLENBQUNELDBCQUEwQjtZQUM3QixNQUFNRyxrQkFBa0JQLFVBQVVGLFNBQVMsSUFDckNVLFVBQVUsQ0FBQyxLQUFLLEVBQUVELGdCQUFnQix1QkFBdUIsRUFBRUwsY0FBYyw2QkFBNkIsRUFBRU8sNEJBQWlCLENBQUMsRUFBRSxDQUFDLEVBQzdIQyxZQUFZQyxrQkFBUyxDQUFDQyxXQUFXLENBQUNKO1lBRXhDLE9BQU9kLEtBQUtnQjtRQUNkO1FBRUEsSUFBSSxDQUFDSiwyQkFBMkI7WUFDOUIsTUFBTU8sbUJBQW1CWixXQUFXSCxTQUFTLElBQ3ZDVSxVQUFVLENBQUMsS0FBSyxFQUFFSyxpQkFBaUIsd0JBQXdCLEVBQUVWLGVBQWUsNkJBQTZCLEVBQUVNLDRCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUNoSUMsWUFBWUMsa0JBQVMsQ0FBQ0MsV0FBVyxDQUFDSjtZQUV4QyxPQUFPZCxLQUFLZ0I7UUFDZDtRQUVBLE1BQU1JLDBCQUEwQmQsVUFBVWUsaUJBQWlCLElBQ3JEQywyQkFBMkJmLFdBQVdjLGlCQUFpQixJQUN2REUsY0FBYUgseUJBQ2JJLGVBQWVGLDBCQUNmRyxVQUFVLElBQUksQ0FBQ2pDLFdBQVcsR0FDYitCLGVBQWVDLGVBQ2JELGVBQWVDO1FBRXBDdEIsUUFBUXdCLElBQUFBLHVCQUFnQixFQUFDRCxTQUFTdEM7UUFFbEMsTUFBTXdDLGNBQWN6QixNQUFNRSxTQUFTO1FBRW5DakIsUUFBUXlDLEtBQUssQ0FBQyxDQUFDLGtCQUFrQixFQUFFekIsa0JBQWtCLG9CQUFvQixFQUFFd0IsWUFBWSxFQUFFLENBQUM7UUFFMUYsT0FBTzFCLFFBQVFDO0lBQ2pCO0lBRUEsT0FBTzJCLE9BQU8sY0FBYztBQUM5QiJ9
|
|
@@ -30,7 +30,7 @@ const _default = (0, _elements.define)(class NegatedTerm extends _occamlanguages
|
|
|
30
30
|
getTerm() {
|
|
31
31
|
return this.term;
|
|
32
32
|
}
|
|
33
|
-
evaluate(context) {
|
|
33
|
+
evaluate(context, back, forward) {
|
|
34
34
|
let value;
|
|
35
35
|
const negatedTermString = this.getString(); ///
|
|
36
36
|
context.trace(`Evaluating the '${negatedTermString}' negated value...`);
|
|
@@ -38,7 +38,7 @@ const _default = (0, _elements.define)(class NegatedTerm extends _occamlanguages
|
|
|
38
38
|
const valueType = value.getType(), valueTypeBooleanType = valueType.isBooleanType();
|
|
39
39
|
if (!valueTypeBooleanType) {
|
|
40
40
|
const valueString = value.getString(), message = `The '${valueString}' left value's type is '${valueType}' when it should be of type '${_typeNames.BOOLEAN_TYPE_NAME}'.`, exception = _exception.default.fromMessage(message);
|
|
41
|
-
|
|
41
|
+
return back(exception);
|
|
42
42
|
}
|
|
43
43
|
let boolean;
|
|
44
44
|
const primitiveValue = value.getPrimitiveValue();
|
|
@@ -47,9 +47,9 @@ const _default = (0, _elements.define)(class NegatedTerm extends _occamlanguages
|
|
|
47
47
|
value = (0, _value.valueFromBoolean)(boolean, context);
|
|
48
48
|
const valueString = value.getString();
|
|
49
49
|
context.debug(`...evaluated the '${negatedTermString}' negated value as '${valueString}'.`);
|
|
50
|
-
return value;
|
|
50
|
+
return forward(value);
|
|
51
51
|
}
|
|
52
52
|
static name = "NegatedTerm";
|
|
53
53
|
});
|
|
54
54
|
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50L3Rlcm0vbmVnYXRlZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcblxuaW1wb3J0IEV4Y2VwdGlvbiBmcm9tIFwiLi4vLi4vZXhjZXB0aW9uXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi8uLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgQk9PTEVBTl9UWVBFX05BTUUgfSBmcm9tIFwiLi4vLi4vdHlwZU5hbWVzXCI7XG5pbXBvcnQgeyB2YWx1ZUZyb21Cb29sZWFuIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy92YWx1ZVwiO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgTmVnYXRlZFRlcm0gZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB0eXBlLCB0ZXJtKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gICAgdGhpcy50ZXJtID0gdGVybTtcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIGdldFRlcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMudGVybTtcbiAgfVxuXG4gIGV2YWx1YXRlKGNvbnRleHQsIGJhY2ssIGZvcndhcmQpIHtcbiAgICBsZXQgdmFsdWU7XG5cbiAgICBjb25zdCBuZWdhdGVkVGVybVN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7IC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgRXZhbHVhdGluZyB0aGUgJyR7bmVnYXRlZFRlcm1TdHJpbmd9JyBuZWdhdGVkIHZhbHVlLi4uYCk7XG5cbiAgICB2YWx1ZSA9IHRoaXMudGVybS5ldmFsdWF0ZShjb250ZXh0KTtcblxuICAgIGNvbnN0IHZhbHVlVHlwZSA9IHZhbHVlLmdldFR5cGUoKSxcbiAgICAgICAgICB2YWx1ZVR5cGVCb29sZWFuVHlwZSA9IHZhbHVlVHlwZS5pc0Jvb2xlYW5UeXBlKCk7XG5cbiAgICBpZiAoIXZhbHVlVHlwZUJvb2xlYW5UeXBlKSB7XG4gICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7dmFsdWVTdHJpbmd9JyBsZWZ0IHZhbHVlJ3MgdHlwZSBpcyAnJHt2YWx1ZVR5cGV9JyB3aGVuIGl0IHNob3VsZCBiZSBvZiB0eXBlICcke0JPT0xFQU5fVFlQRV9OQU1FfScuYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgcmV0dXJuIGJhY2soZXhjZXB0aW9uKTtcbiAgICB9XG5cbiAgICBsZXQgYm9vbGVhbjtcblxuICAgIGNvbnN0IHByaW1pdGl2ZVZhbHVlID0gdmFsdWUuZ2V0UHJpbWl0aXZlVmFsdWUoKTtcblxuICAgIGJvb2xlYW4gPSBwcmltaXRpdmVWYWx1ZTsgLy8vXG5cbiAgICBib29sZWFuID0gIWJvb2xlYW47XG5cbiAgICB2YWx1ZSA9IHZhbHVlRnJvbUJvb2xlYW4oYm9vbGVhbiwgY29udGV4dCk7XG5cbiAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpO1xuXG4gICAgY29udGV4dC5kZWJ1ZyhgLi4uZXZhbHVhdGVkIHRoZSAnJHtuZWdhdGVkVGVybVN0cmluZ30nIG5lZ2F0ZWQgdmFsdWUgYXMgJyR7dmFsdWVTdHJpbmd9Jy5gKTtcblxuICAgIHJldHVybiBmb3J3YXJkKHZhbHVlKTtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJOZWdhdGVkVGVybVwiO1xufSk7XG4iXSwibmFtZXMiOlsiZGVmaW5lIiwiTmVnYXRlZFRlcm0iLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwidHlwZSIsInRlcm0iLCJnZXRUeXBlIiwiZ2V0VGVybSIsImV2YWx1YXRlIiwiYmFjayIsImZvcndhcmQiLCJ2YWx1ZSIsIm5lZ2F0ZWRUZXJtU3RyaW5nIiwiZ2V0U3RyaW5nIiwidHJhY2UiLCJ2YWx1ZVR5cGUiLCJ2YWx1ZVR5cGVCb29sZWFuVHlwZSIsImlzQm9vbGVhblR5cGUiLCJ2YWx1ZVN0cmluZyIsIm1lc3NhZ2UiLCJCT09MRUFOX1RZUEVfTkFNRSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwiYm9vbGVhbiIsInByaW1pdGl2ZVZhbHVlIiwiZ2V0UHJpbWl0aXZlVmFsdWUiLCJ2YWx1ZUZyb21Cb29sZWFuIiwiZGVidWciLCJuYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFVQTs7O2VBQUE7OztnQ0FSd0I7a0VBRUY7MEJBRUM7MkJBQ1c7dUJBQ0Q7Ozs7OztNQUVqQyxXQUFlQSxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLG9CQUFvQkMsdUJBQU87SUFDckQsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxJQUFJLEVBQUVDLElBQUksQ0FBRTtRQUN6RCxLQUFLLENBQUNMLFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtRQUNaLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtJQUNkO0lBRUFDLFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQ0YsSUFBSTtJQUNsQjtJQUVBRyxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUNGLElBQUk7SUFDbEI7SUFFQUcsU0FBU1IsT0FBTyxFQUFFUyxJQUFJLEVBQUVDLE9BQU8sRUFBRTtRQUMvQixJQUFJQztRQUVKLE1BQU1DLG9CQUFvQixJQUFJLENBQUNDLFNBQVMsSUFBSSxHQUFHO1FBRS9DYixRQUFRYyxLQUFLLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRUYsa0JBQWtCLGtCQUFrQixDQUFDO1FBRXRFRCxRQUFRLElBQUksQ0FBQ04sSUFBSSxDQUFDRyxRQUFRLENBQUNSO1FBRTNCLE1BQU1lLFlBQVlKLE1BQU1MLE9BQU8sSUFDekJVLHVCQUF1QkQsVUFBVUUsYUFBYTtRQUVwRCxJQUFJLENBQUNELHNCQUFzQjtZQUN6QixNQUFNRSxjQUFjUCxNQUFNRSxTQUFTLElBQzdCTSxVQUFVLENBQUMsS0FBSyxFQUFFRCxZQUFZLHdCQUF3QixFQUFFSCxVQUFVLDZCQUE2QixFQUFFSyw0QkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFDdEhDLFlBQVlDLGtCQUFTLENBQUNDLFdBQVcsQ0FBQ0o7WUFFeEMsT0FBT1YsS0FBS1k7UUFDZDtRQUVBLElBQUlHO1FBRUosTUFBTUMsaUJBQWlCZCxNQUFNZSxpQkFBaUI7UUFFOUNGLFVBQVVDLGdCQUFnQixHQUFHO1FBRTdCRCxVQUFVLENBQUNBO1FBRVhiLFFBQVFnQixJQUFBQSx1QkFBZ0IsRUFBQ0gsU0FBU3hCO1FBRWxDLE1BQU1rQixjQUFjUCxNQUFNRSxTQUFTO1FBRW5DYixRQUFRNEIsS0FBSyxDQUFDLENBQUMsa0JBQWtCLEVBQUVoQixrQkFBa0Isb0JBQW9CLEVBQUVNLFlBQVksRUFBRSxDQUFDO1FBRTFGLE9BQU9SLFFBQVFDO0lBQ2pCO0lBRUEsT0FBT2tCLE9BQU8sY0FBYztBQUM5QiJ9
|
package/lib/element/term.js
CHANGED
|
@@ -65,24 +65,22 @@ const _default = (0, _elements.define)(class Term extends _occamlanguages.Elemen
|
|
|
65
65
|
const type = this.getType(), booleanType = type.isBooleanType(), boolean = booleanType; ///
|
|
66
66
|
return boolean;
|
|
67
67
|
}
|
|
68
|
-
evaluate(context) {
|
|
69
|
-
let value;
|
|
68
|
+
evaluate(context, back, forward) {
|
|
70
69
|
if (false) {
|
|
71
70
|
///
|
|
72
71
|
} else if (this.variable !== null) {
|
|
73
|
-
|
|
72
|
+
return this.variable.evaluate(context, back, forward);
|
|
74
73
|
} else if (this.primitive !== null) {
|
|
75
|
-
|
|
74
|
+
return this.primitive.evaluate(context, back, forward);
|
|
76
75
|
} else if (this.negatedTerm !== null) {
|
|
77
|
-
|
|
76
|
+
return this.negatedTerm.evaluate(context, back, forward);
|
|
78
77
|
} else if (this.logicalTerm !== null) {
|
|
79
|
-
|
|
78
|
+
return this.logicalTerm.evaluate(context, back, forward);
|
|
80
79
|
} else if (this.bracketedTerm !== null) {
|
|
81
|
-
|
|
80
|
+
return this.bracketedTerm.evaluate(context, back, forward);
|
|
82
81
|
} else if (this.comparisonTerm !== null) {
|
|
83
|
-
|
|
82
|
+
return this.comparisonTerm.evaluate(context, back, forward);
|
|
84
83
|
}
|
|
85
|
-
return value;
|
|
86
84
|
}
|
|
87
85
|
isEqualTo(term) {
|
|
88
86
|
let equalTo = false;
|
|
@@ -110,4 +108,4 @@ const _default = (0, _elements.define)(class Term extends _occamlanguages.Elemen
|
|
|
110
108
|
}
|
|
111
109
|
});
|
|
112
110
|
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
111
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Rlcm0uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgVGVybSBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIHZhcmlhYmxlLCBwcmltaXRpdmUsIG5lZ2F0ZWRUZXJtLCBsb2dpY2FsVGVybSwgYnJhY2tldGVkVGVybSwgY29tcGFyaXNvblRlcm0pIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy52YXJpYWJsZSA9IHZhcmlhYmxlO1xuICAgIHRoaXMucHJpbWl0aXZlID0gcHJpbWl0aXZlO1xuICAgIHRoaXMubmVnYXRlZFRlcm0gPSBuZWdhdGVkVGVybTtcbiAgICB0aGlzLmxvZ2ljYWxUZXJtID0gbG9naWNhbFRlcm07XG4gICAgdGhpcy5icmFja2V0ZWRUZXJtID0gYnJhY2tldGVkVGVybTtcbiAgICB0aGlzLmNvbXBhcmlzb25UZXJtID0gY29tcGFyaXNvblRlcm07XG4gIH1cblxuICBnZXRWYXJpYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YXJpYWJsZTtcbiAgfVxuXG4gIGdldFByaW1pdGl2ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5wcmltaXRpdmU7XG4gIH1cblxuICBnZXROZWdhdGVkVGVybSgpIHtcbiAgICByZXR1cm4gdGhpcy5uZWdhdGVkVGVybTtcbiAgfVxuXG4gIGdldExvZ2ljYWxUZXJtKCkge1xuICAgIHJldHVybiB0aGlzLmxvZ2ljYWxUZXJtO1xuICB9XG5cbiAgZ2V0QnJlZWRpbmdUZXJtKCkge1xuICAgIHJldHVybiB0aGlzLmJyYWNrZXRlZFRlcm07XG4gIH1cblxuICBnZXRDb21wYXJpc29uVGVybSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb21wYXJpc29uVGVybTtcbiAgfVxuXG4gIGdldFByaW1pdGl2ZVZhbHVlKCkge1xuICAgIGNvbnN0IHByaW1pdGl2ZVZhbHVlID0gdGhpcy5wcmltaXRpdmUuZ2V0VmFsdWUoKTtcblxuICAgIHJldHVybiBwcmltaXRpdmVWYWx1ZTtcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgbGV0IHR5cGU7XG5cbiAgICBpZiAoZmFsc2UpIHtcbiAgICAgIC8vL1xuICAgIH0gZWxzZSBpZiAodGhpcy52YXJpYWJsZSAhPT0gbnVsbCkge1xuICAgICAgdHlwZSA9IHRoaXMudmFyaWFibGUuZ2V0VHlwZSgpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5wcmltaXRpdmUgIT09IG51bGwpIHtcbiAgICAgIHR5cGUgPSB0aGlzLnByaW1pdGl2ZS5nZXRUeXBlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLm5lZ2F0ZWRUZXJtICE9PSBudWxsKSB7XG4gICAgICB0eXBlID0gdGhpcy5uZWdhdGVkVGVybS5nZXRUeXBlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmxvZ2ljYWxUZXJtICE9PSBudWxsKSB7XG4gICAgICB0eXBlID0gdGhpcy5sb2dpY2FsVGVybS5nZXRUeXBlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmJyYWNrZXRlZFRlcm0gIT09IG51bGwpIHtcbiAgICAgIHR5cGUgPSB0aGlzLmJyYWNrZXRlZFRlcm0uZ2V0VHlwZSgpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5jb21wYXJpc29uVGVybSAhPT0gbnVsbCkge1xuICAgICAgdHlwZSA9IHRoaXMuY29tcGFyaXNvblRlcm0uZ2V0VHlwZSgpO1xuICAgIH1cblxuICAgIHJldHVybiB0eXBlO1xuICB9XG5cbiAgaXNCb29sZWFuKCkge1xuICAgIGNvbnN0IHR5cGUgPSB0aGlzLmdldFR5cGUoKSxcbiAgICAgICAgICBib29sZWFuVHlwZSA9IHR5cGUuaXNCb29sZWFuVHlwZSgpLFxuICAgICAgICAgIGJvb2xlYW4gPSBib29sZWFuVHlwZTsgIC8vL1xuXG4gICAgcmV0dXJuIGJvb2xlYW47XG4gIH1cblxuICBldmFsdWF0ZShjb250ZXh0LCBiYWNrLCBmb3J3YXJkKSB7XG4gICAgaWYgKGZhbHNlKSB7XG4gICAgICAvLy9cbiAgICB9IGVsc2UgaWYgKHRoaXMudmFyaWFibGUgIT09IG51bGwpIHtcbiAgICAgIHJldHVybiB0aGlzLnZhcmlhYmxlLmV2YWx1YXRlKGNvbnRleHQsIGJhY2ssIGZvcndhcmQpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5wcmltaXRpdmUgIT09IG51bGwpIHtcbiAgICAgIHJldHVybiB0aGlzLnByaW1pdGl2ZS5ldmFsdWF0ZShjb250ZXh0LCBiYWNrLCBmb3J3YXJkKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMubmVnYXRlZFRlcm0gIT09IG51bGwpIHtcbiAgICAgIHJldHVybiB0aGlzLm5lZ2F0ZWRUZXJtLmV2YWx1YXRlKGNvbnRleHQsIGJhY2ssIGZvcndhcmQpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5sb2dpY2FsVGVybSAhPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHRoaXMubG9naWNhbFRlcm0uZXZhbHVhdGUoY29udGV4dCwgYmFjaywgZm9yd2FyZCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmJyYWNrZXRlZFRlcm0gIT09IG51bGwpIHtcbiAgICAgIHJldHVybiB0aGlzLmJyYWNrZXRlZFRlcm0uZXZhbHVhdGUoY29udGV4dCwgYmFjaywgZm9yd2FyZCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmNvbXBhcmlzb25UZXJtICE9PSBudWxsKSB7XG4gICAgICByZXR1cm4gdGhpcy5jb21wYXJpc29uVGVybS5ldmFsdWF0ZShjb250ZXh0LCBiYWNrLCBmb3J3YXJkKTtcbiAgICB9XG4gIH1cblxuICBpc0VxdWFsVG8odGVybSkge1xuICAgIGxldCBlcXVhbFRvID0gZmFsc2U7XG5cbiAgICBpZiAoZmFsc2UpIHtcbiAgICAgIC8vL1xuICAgIH0gZWxzZSBpZiAodGhpcy52YXJpYWJsZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgdmFyaWFibGUgPSB0ZXJtLmdldFZhcmlhYmxlKCk7XG5cbiAgICAgIGlmICh2YXJpYWJsZSAhPT0gbnVsbCkge1xuICAgICAgICBlcXVhbFRvID0gdGhpcy52YXJpYWJsZS5pc0VxdWFsVG8odmFyaWFibGUpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodGhpcy5wcmltaXRpdmUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHByaW1pdGl2ZSA9IHRlcm0uZ2V0UHJpbWl0aXZlKCk7XG5cbiAgICAgIGlmIChwcmltaXRpdmUgIT09IG51bGwpIHtcbiAgICAgICAgZXF1YWxUbyA9IHRoaXMucHJpbWl0aXZlLmlzRXF1YWxUbyhwcmltaXRpdmUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBlcXVhbFRvO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlRlcm1cIjtcblxuICBzdGF0aWMgZnJvbVByaW1pdGl2ZShwcmltaXRpdmUsIGNvbnRleHQpIHtcbiAgICBjb25zdCBwcmltaXRpdmVTdHJpbmcgPSBwcmltaXRpdmUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgc3RyaW5nID0gcHJpbWl0aXZlU3RyaW5nLCAvLy9cbiAgICAgICAgICBub2RlID0gbnVsbCxcbiAgICAgICAgICBicmVha1BvaW50ID0gbnVsbCxcbiAgICAgICAgICB2YXJpYWJsZSA9IG51bGwsXG4gICAgICAgICAgbmVnYXRlZFRlcm0gPSBudWxsLFxuICAgICAgICAgIGxvZ2ljYWxUZXJtID0gbnVsbCxcbiAgICAgICAgICBicmFja2V0ZWRUZXJtID0gbnVsbCxcbiAgICAgICAgICBjb21wYXJpc29uVGVybSA9IG51bGw7XG5cbiAgICBjb250ZXh0ID0gbnVsbDtcblxuICAgIGNvbnN0IHRlcm0gPSBuZXcgVGVybShjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIHZhcmlhYmxlLCBwcmltaXRpdmUsIG5lZ2F0ZWRUZXJtLCBsb2dpY2FsVGVybSwgYnJhY2tldGVkVGVybSwgY29tcGFyaXNvblRlcm0pO1xuXG4gICAgcmV0dXJuIHRlcm07XG4gIH1cbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIlRlcm0iLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwidmFyaWFibGUiLCJwcmltaXRpdmUiLCJuZWdhdGVkVGVybSIsImxvZ2ljYWxUZXJtIiwiYnJhY2tldGVkVGVybSIsImNvbXBhcmlzb25UZXJtIiwiZ2V0VmFyaWFibGUiLCJnZXRQcmltaXRpdmUiLCJnZXROZWdhdGVkVGVybSIsImdldExvZ2ljYWxUZXJtIiwiZ2V0QnJlZWRpbmdUZXJtIiwiZ2V0Q29tcGFyaXNvblRlcm0iLCJnZXRQcmltaXRpdmVWYWx1ZSIsInByaW1pdGl2ZVZhbHVlIiwiZ2V0VmFsdWUiLCJnZXRUeXBlIiwidHlwZSIsImlzQm9vbGVhbiIsImJvb2xlYW5UeXBlIiwiaXNCb29sZWFuVHlwZSIsImJvb2xlYW4iLCJldmFsdWF0ZSIsImJhY2siLCJmb3J3YXJkIiwiaXNFcXVhbFRvIiwidGVybSIsImVxdWFsVG8iLCJuYW1lIiwiZnJvbVByaW1pdGl2ZSIsInByaW1pdGl2ZVN0cmluZyIsImdldFN0cmluZyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBTUE7OztlQUFBOzs7Z0NBSndCOzBCQUVEO01BRXZCLFdBQWVBLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsYUFBYUMsdUJBQU87SUFDOUMsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxRQUFRLEVBQUVDLFNBQVMsRUFBRUMsV0FBVyxFQUFFQyxXQUFXLEVBQUVDLGFBQWEsRUFBRUMsY0FBYyxDQUFFO1FBQzNILEtBQUssQ0FBQ1QsU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxRQUFRLEdBQUdBO1FBQ2hCLElBQUksQ0FBQ0MsU0FBUyxHQUFHQTtRQUNqQixJQUFJLENBQUNDLFdBQVcsR0FBR0E7UUFDbkIsSUFBSSxDQUFDQyxXQUFXLEdBQUdBO1FBQ25CLElBQUksQ0FBQ0MsYUFBYSxHQUFHQTtRQUNyQixJQUFJLENBQUNDLGNBQWMsR0FBR0E7SUFDeEI7SUFFQUMsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDTixRQUFRO0lBQ3RCO0lBRUFPLGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQ04sU0FBUztJQUN2QjtJQUVBTyxpQkFBaUI7UUFDZixPQUFPLElBQUksQ0FBQ04sV0FBVztJQUN6QjtJQUVBTyxpQkFBaUI7UUFDZixPQUFPLElBQUksQ0FBQ04sV0FBVztJQUN6QjtJQUVBTyxrQkFBa0I7UUFDaEIsT0FBTyxJQUFJLENBQUNOLGFBQWE7SUFDM0I7SUFFQU8sb0JBQW9CO1FBQ2xCLE9BQU8sSUFBSSxDQUFDTixjQUFjO0lBQzVCO0lBRUFPLG9CQUFvQjtRQUNsQixNQUFNQyxpQkFBaUIsSUFBSSxDQUFDWixTQUFTLENBQUNhLFFBQVE7UUFFOUMsT0FBT0Q7SUFDVDtJQUVBRSxVQUFVO1FBQ1IsSUFBSUM7UUFFSixJQUFJLE9BQU87UUFDVCxHQUFHO1FBQ0wsT0FBTyxJQUFJLElBQUksQ0FBQ2hCLFFBQVEsS0FBSyxNQUFNO1lBQ2pDZ0IsT0FBTyxJQUFJLENBQUNoQixRQUFRLENBQUNlLE9BQU87UUFDOUIsT0FBTyxJQUFJLElBQUksQ0FBQ2QsU0FBUyxLQUFLLE1BQU07WUFDbENlLE9BQU8sSUFBSSxDQUFDZixTQUFTLENBQUNjLE9BQU87UUFDL0IsT0FBTyxJQUFJLElBQUksQ0FBQ2IsV0FBVyxLQUFLLE1BQU07WUFDcENjLE9BQU8sSUFBSSxDQUFDZCxXQUFXLENBQUNhLE9BQU87UUFDakMsT0FBTyxJQUFJLElBQUksQ0FBQ1osV0FBVyxLQUFLLE1BQU07WUFDcENhLE9BQU8sSUFBSSxDQUFDYixXQUFXLENBQUNZLE9BQU87UUFDakMsT0FBTyxJQUFJLElBQUksQ0FBQ1gsYUFBYSxLQUFLLE1BQU07WUFDdENZLE9BQU8sSUFBSSxDQUFDWixhQUFhLENBQUNXLE9BQU87UUFDbkMsT0FBTyxJQUFJLElBQUksQ0FBQ1YsY0FBYyxLQUFLLE1BQU07WUFDdkNXLE9BQU8sSUFBSSxDQUFDWCxjQUFjLENBQUNVLE9BQU87UUFDcEM7UUFFQSxPQUFPQztJQUNUO0lBRUFDLFlBQVk7UUFDVixNQUFNRCxPQUFPLElBQUksQ0FBQ0QsT0FBTyxJQUNuQkcsY0FBY0YsS0FBS0csYUFBYSxJQUNoQ0MsVUFBVUYsYUFBYyxHQUFHO1FBRWpDLE9BQU9FO0lBQ1Q7SUFFQUMsU0FBU3pCLE9BQU8sRUFBRTBCLElBQUksRUFBRUMsT0FBTyxFQUFFO1FBQy9CLElBQUksT0FBTztRQUNULEdBQUc7UUFDTCxPQUFPLElBQUksSUFBSSxDQUFDdkIsUUFBUSxLQUFLLE1BQU07WUFDakMsT0FBTyxJQUFJLENBQUNBLFFBQVEsQ0FBQ3FCLFFBQVEsQ0FBQ3pCLFNBQVMwQixNQUFNQztRQUMvQyxPQUFPLElBQUksSUFBSSxDQUFDdEIsU0FBUyxLQUFLLE1BQU07WUFDbEMsT0FBTyxJQUFJLENBQUNBLFNBQVMsQ0FBQ29CLFFBQVEsQ0FBQ3pCLFNBQVMwQixNQUFNQztRQUNoRCxPQUFPLElBQUksSUFBSSxDQUFDckIsV0FBVyxLQUFLLE1BQU07WUFDcEMsT0FBTyxJQUFJLENBQUNBLFdBQVcsQ0FBQ21CLFFBQVEsQ0FBQ3pCLFNBQVMwQixNQUFNQztRQUNsRCxPQUFPLElBQUksSUFBSSxDQUFDcEIsV0FBVyxLQUFLLE1BQU07WUFDcEMsT0FBTyxJQUFJLENBQUNBLFdBQVcsQ0FBQ2tCLFFBQVEsQ0FBQ3pCLFNBQVMwQixNQUFNQztRQUNsRCxPQUFPLElBQUksSUFBSSxDQUFDbkIsYUFBYSxLQUFLLE1BQU07WUFDdEMsT0FBTyxJQUFJLENBQUNBLGFBQWEsQ0FBQ2lCLFFBQVEsQ0FBQ3pCLFNBQVMwQixNQUFNQztRQUNwRCxPQUFPLElBQUksSUFBSSxDQUFDbEIsY0FBYyxLQUFLLE1BQU07WUFDdkMsT0FBTyxJQUFJLENBQUNBLGNBQWMsQ0FBQ2dCLFFBQVEsQ0FBQ3pCLFNBQVMwQixNQUFNQztRQUNyRDtJQUNGO0lBRUFDLFVBQVVDLElBQUksRUFBRTtRQUNkLElBQUlDLFVBQVU7UUFFZCxJQUFJLE9BQU87UUFDVCxHQUFHO1FBQ0wsT0FBTyxJQUFJLElBQUksQ0FBQzFCLFFBQVEsS0FBSyxNQUFNO1lBQ2pDLE1BQU1BLFdBQVd5QixLQUFLbkIsV0FBVztZQUVqQyxJQUFJTixhQUFhLE1BQU07Z0JBQ3JCMEIsVUFBVSxJQUFJLENBQUMxQixRQUFRLENBQUN3QixTQUFTLENBQUN4QjtZQUNwQztRQUNGLE9BQU8sSUFBSSxJQUFJLENBQUNDLFNBQVMsS0FBSyxNQUFNO1lBQ2xDLE1BQU1BLFlBQVl3QixLQUFLbEIsWUFBWTtZQUVuQyxJQUFJTixjQUFjLE1BQU07Z0JBQ3RCeUIsVUFBVSxJQUFJLENBQUN6QixTQUFTLENBQUN1QixTQUFTLENBQUN2QjtZQUNyQztRQUNGO1FBRUEsT0FBT3lCO0lBQ1Q7SUFFQSxPQUFPQyxPQUFPLE9BQU87SUFFckIsT0FBT0MsY0FBYzNCLFNBQVMsRUFBRUwsT0FBTyxFQUFFO1FBQ3ZDLE1BQU1pQyxrQkFBa0I1QixVQUFVNkIsU0FBUyxJQUNyQ2pDLFNBQVNnQyxpQkFDVC9CLE9BQU8sTUFDUEMsYUFBYSxNQUNiQyxXQUFXLE1BQ1hFLGNBQWMsTUFDZEMsY0FBYyxNQUNkQyxnQkFBZ0IsTUFDaEJDLGlCQUFpQjtRQUV2QlQsVUFBVTtRQUVWLE1BQU02QixPQUFPLElBQUkvQixLQUFLRSxTQUFTQyxRQUFRQyxNQUFNQyxZQUFZQyxVQUFVQyxXQUFXQyxhQUFhQyxhQUFhQyxlQUFlQztRQUV2SCxPQUFPb0I7SUFDVDtBQUNGIn0=
|
package/lib/element/terms.js
CHANGED
|
@@ -77,14 +77,14 @@ const _default = (0, _elements.define)(class Terms extends _occamlanguages.Eleme
|
|
|
77
77
|
forEachTerm(callback) {
|
|
78
78
|
this.array.forEach(callback);
|
|
79
79
|
}
|
|
80
|
-
evaluate(context) {
|
|
80
|
+
evaluate(context, back, forwarsd) {
|
|
81
81
|
const valuesArray = this.mapTerm((term)=>{
|
|
82
82
|
const value = term.evaluate(context);
|
|
83
83
|
return value;
|
|
84
84
|
}), valuesString = (0, _string.valuesStringFromValuesArray)(valuesArray, context), string = valuesString, array = valuesArray, node = null, breakPoint = null;
|
|
85
85
|
context = null;
|
|
86
86
|
const { Values } = _elements.default, values = new Values(context, string, node, breakPoint, array);
|
|
87
|
-
return values;
|
|
87
|
+
return forwarsd(values);
|
|
88
88
|
}
|
|
89
89
|
static name = "Terms";
|
|
90
90
|
static fromTerm(term, context) {
|
|
@@ -97,4 +97,4 @@ const _default = (0, _elements.define)(class Terms extends _occamlanguages.Eleme
|
|
|
97
97
|
}
|
|
98
98
|
});
|
|
99
99
|
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Rlcm1zLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgZWxlbWVudHMgZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgdGVybXNTdHJpbmdGcm9tVGVybXNBcnJheSwgdmFsdWVzU3RyaW5nRnJvbVZhbHVlc0FycmF5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9zdHJpbmdcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIFRlcm1zIGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgYXJyYXkpIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy5hcnJheSA9IGFycmF5O1xuICB9XG5cbiAgZ2V0QXJyYXkoKSB7XG4gICAgcmV0dXJuIHRoaXMuYXJyYXk7XG4gIH1cblxuICBnZXRMZW5ndGgoKSB7XG4gICAgY29uc3QgbGVuZ3RoID0gdGhpcy5hcnJheS5sZW5ndGg7XG5cbiAgICByZXR1cm4gbGVuZ3RoO1xuICB9XG5cbiAgZ2V0VGVybShpbmRleCkge1xuICAgIGNvbnN0IHRlcm0gPSB0aGlzLmFycmF5W2luZGV4XSB8fCBudWxsOyAgLy8vXG5cbiAgICByZXR1cm4gdGVybTtcbiAgfVxuXG4gIGFkZFRlcm0odGVybSkge1xuICAgIHRoaXMuYXJyYXkucHVzaCh0ZXJtKTtcbiAgfVxuXG4gIG1hcFRlcm0oY2FsbGJhY2spIHsgcmV0dXJuIHRoaXMuYXJyYXkubWFwKGNhbGxiYWNrKTsgfVxuXG4gIGZvckVhY2hUZXJtKGNhbGxiYWNrKSB7IHRoaXMuYXJyYXkuZm9yRWFjaChjYWxsYmFjayk7IH1cblxuICBldmFsdWF0ZShjb250ZXh0LCBiYWNrLCAgZm9yd2Fyc2QpIHtcbiAgICBjb25zdCB2YWx1ZXNBcnJheSA9IHRoaXMubWFwVGVybSgodGVybSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSB0ZXJtLmV2YWx1YXRlKGNvbnRleHQpO1xuXG4gICAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgICAgfSksXG4gICAgICAgICAgdmFsdWVzU3RyaW5nID0gdmFsdWVzU3RyaW5nRnJvbVZhbHVlc0FycmF5KHZhbHVlc0FycmF5LCBjb250ZXh0KSxcbiAgICAgICAgICBzdHJpbmcgPSB2YWx1ZXNTdHJpbmcsIC8vL1xuICAgICAgICAgIGFycmF5ID0gdmFsdWVzQXJyYXksIC8vL1xuICAgICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICAgIGJyZWFrUG9pbnQgPSBudWxsO1xuXG4gICAgY29udGV4dCA9IG51bGw7XG5cbiAgICBjb25zdCB7IFZhbHVlcyB9ID0gZWxlbWVudHMsXG4gICAgICAgICAgdmFsdWVzID0gbmV3IFZhbHVlcyhjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIGFycmF5KTtcblxuICAgIHJldHVybiBmb3J3YXJzZCh2YWx1ZXMpO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlRlcm1zXCI7XG5cbiAgc3RhdGljIGZyb21UZXJtKHRlcm0sIGNvbnRleHQpIHtcbiAgICBjb25zdCB0ZXJtc0FycmF5ID0gW1xuICAgICAgICAgICAgdGVybVxuICAgICAgICAgIF0sXG4gICAgICAgICAgdGVybXNTdHJpbmcgPSB0ZXJtc1N0cmluZ0Zyb21UZXJtc0FycmF5KHRlcm1zQXJyYXksIGNvbnRleHQpLFxuICAgICAgICAgIHN0cmluZyA9IHRlcm1zU3RyaW5nLCAvLy9cbiAgICAgICAgICBhcnJheSA9IHRlcm1zQXJyYXksIC8vL1xuICAgICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICAgIGJyZWFrUG9pbnQgPSBudWxsO1xuXG4gICAgY29udGV4dCA9IG51bGw7XG5cbiAgICBjb25zdCB0ZXJtcyA9IG5ldyBUZXJtcyhjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIGFycmF5KTtcblxuICAgIHJldHVybiB0ZXJtcztcbiAgfVxufSk7XG4iXSwibmFtZXMiOlsiZGVmaW5lIiwiVGVybXMiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwiYXJyYXkiLCJnZXRBcnJheSIsImdldExlbmd0aCIsImxlbmd0aCIsImdldFRlcm0iLCJpbmRleCIsInRlcm0iLCJhZGRUZXJtIiwicHVzaCIsIm1hcFRlcm0iLCJjYWxsYmFjayIsIm1hcCIsImZvckVhY2hUZXJtIiwiZm9yRWFjaCIsImV2YWx1YXRlIiwiYmFjayIsImZvcndhcnNkIiwidmFsdWVzQXJyYXkiLCJ2YWx1ZSIsInZhbHVlc1N0cmluZyIsInZhbHVlc1N0cmluZ0Zyb21WYWx1ZXNBcnJheSIsIlZhbHVlcyIsImVsZW1lbnRzIiwidmFsdWVzIiwibmFtZSIsImZyb21UZXJtIiwidGVybXNBcnJheSIsInRlcm1zU3RyaW5nIiwidGVybXNTdHJpbmdGcm9tVGVybXNBcnJheSIsInRlcm1zIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFTQTs7O2VBQUE7OztnQ0FQd0I7a0VBRUg7d0JBR2tEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7TUFFdkUsV0FBZUEsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyxjQUFjQyx1QkFBTztJQUMvQyxZQUFZQyxPQUFPLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxVQUFVLEVBQUVDLEtBQUssQ0FBRTtRQUNwRCxLQUFLLENBQUNKLFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0MsS0FBSyxHQUFHQTtJQUNmO0lBRUFDLFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQ0QsS0FBSztJQUNuQjtJQUVBRSxZQUFZO1FBQ1YsTUFBTUMsU0FBUyxJQUFJLENBQUNILEtBQUssQ0FBQ0csTUFBTTtRQUVoQyxPQUFPQTtJQUNUO0lBRUFDLFFBQVFDLEtBQUssRUFBRTtRQUNiLE1BQU1DLE9BQU8sSUFBSSxDQUFDTixLQUFLLENBQUNLLE1BQU0sSUFBSSxNQUFPLEdBQUc7UUFFNUMsT0FBT0M7SUFDVDtJQUVBQyxRQUFRRCxJQUFJLEVBQUU7UUFDWixJQUFJLENBQUNOLEtBQUssQ0FBQ1EsSUFBSSxDQUFDRjtJQUNsQjtJQUVBRyxRQUFRQyxRQUFRLEVBQUU7UUFBRSxPQUFPLElBQUksQ0FBQ1YsS0FBSyxDQUFDVyxHQUFHLENBQUNEO0lBQVc7SUFFckRFLFlBQVlGLFFBQVEsRUFBRTtRQUFFLElBQUksQ0FBQ1YsS0FBSyxDQUFDYSxPQUFPLENBQUNIO0lBQVc7SUFFdERJLFNBQVNsQixPQUFPLEVBQUVtQixJQUFJLEVBQUdDLFFBQVEsRUFBRTtRQUNqQyxNQUFNQyxjQUFjLElBQUksQ0FBQ1IsT0FBTyxDQUFDLENBQUNIO1lBQzFCLE1BQU1ZLFFBQVFaLEtBQUtRLFFBQVEsQ0FBQ2xCO1lBRTVCLE9BQU9zQjtRQUNULElBQ0FDLGVBQWVDLElBQUFBLG1DQUEyQixFQUFDSCxhQUFhckIsVUFDeERDLFNBQVNzQixjQUNUbkIsUUFBUWlCLGFBQ1JuQixPQUFPLE1BQ1BDLGFBQWE7UUFFbkJILFVBQVU7UUFFVixNQUFNLEVBQUV5QixNQUFNLEVBQUUsR0FBR0MsaUJBQVEsRUFDckJDLFNBQVMsSUFBSUYsT0FBT3pCLFNBQVNDLFFBQVFDLE1BQU1DLFlBQVlDO1FBRTdELE9BQU9nQixTQUFTTztJQUNsQjtJQUVBLE9BQU9DLE9BQU8sUUFBUTtJQUV0QixPQUFPQyxTQUFTbkIsSUFBSSxFQUFFVixPQUFPLEVBQUU7UUFDN0IsTUFBTThCLGFBQWE7WUFDWHBCO1NBQ0QsRUFDRHFCLGNBQWNDLElBQUFBLGlDQUF5QixFQUFDRixZQUFZOUIsVUFDcERDLFNBQVM4QixhQUNUM0IsUUFBUTBCLFlBQ1I1QixPQUFPLE1BQ1BDLGFBQWE7UUFFbkJILFVBQVU7UUFFVixNQUFNaUMsUUFBUSxJQUFJbkMsTUFBTUUsU0FBU0MsUUFBUUMsTUFBTUMsWUFBWUM7UUFFM0QsT0FBTzZCO0lBQ1Q7QUFDRiJ9
|
package/lib/element/toInteger.js
CHANGED
|
@@ -27,7 +27,7 @@ const _default = (0, _elements.define)(class ToInteger extends _occamlanguages.E
|
|
|
27
27
|
getVariable() {
|
|
28
28
|
return this.variable;
|
|
29
29
|
}
|
|
30
|
-
evaluate(context) {
|
|
30
|
+
evaluate(context, back, forward) {
|
|
31
31
|
let value;
|
|
32
32
|
const toIntegerString = this.getString(); ///
|
|
33
33
|
context.trace(`Evaluating the '${toIntegerString}' function...`);
|
|
@@ -40,7 +40,7 @@ const _default = (0, _elements.define)(class ToInteger extends _occamlanguages.E
|
|
|
40
40
|
case _typeNames.INTEGER_TYPE_NAME:
|
|
41
41
|
{
|
|
42
42
|
const message = `Cannot evaluate the '${toIntegerString}' function because the '${valueTypeName}' type of its argument is not supported.`, exception = _exception.default.fromMessage(message);
|
|
43
|
-
|
|
43
|
+
return back(exception);
|
|
44
44
|
}
|
|
45
45
|
case _typeNames.STRING_TYPE_NAME:
|
|
46
46
|
case _typeNames.NOMINAL_VALUE_TYPE_NAME:
|
|
@@ -48,7 +48,7 @@ const _default = (0, _elements.define)(class ToInteger extends _occamlanguages.E
|
|
|
48
48
|
const valueString = value.getString(), boolean = _tryInteger.integerRegularExpresssion.test(valueString);
|
|
49
49
|
if (!boolean) {
|
|
50
50
|
const message = `Cannot evaluate the '${toIntegerString}' function because the '${valueTypeName}' value is not an integer.`, exception = _exception.default.fromMessage(message);
|
|
51
|
-
|
|
51
|
+
return back(exception);
|
|
52
52
|
}
|
|
53
53
|
integer = Number(valueString);
|
|
54
54
|
break;
|
|
@@ -57,9 +57,9 @@ const _default = (0, _elements.define)(class ToInteger extends _occamlanguages.E
|
|
|
57
57
|
value = (0, _value.valueFromInteger)(integer);
|
|
58
58
|
const valueString = value.getString();
|
|
59
59
|
context.debug(`...evaluated the '${toIntegerString}' function as '${valueString}'.`);
|
|
60
|
-
return value;
|
|
60
|
+
return forward(value);
|
|
61
61
|
}
|
|
62
62
|
static name = "ToInteger";
|
|
63
63
|
});
|
|
64
64
|
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3RvSW50ZWdlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcblxuaW1wb3J0IEV4Y2VwdGlvbiBmcm9tIFwiLi4vZXhjZXB0aW9uXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgdmFsdWVGcm9tSW50ZWdlciB9IGZyb20gXCIuLi91dGlsaXRpZXMvdmFsdWVcIjtcbmltcG9ydCB7IGludGVnZXJSZWd1bGFyRXhwcmVzc3Npb24gfSBmcm9tIFwiLi90cnlJbnRlZ2VyXCI7XG5pbXBvcnQgeyBMSVNUX1RZUEVfTkFNRSwgU1RSSU5HX1RZUEVfTkFNRSwgQk9PTEVBTl9UWVBFX05BTUUsIElOVEVHRVJfVFlQRV9OQU1FLCBOT01JTkFMX1ZBTFVFX1RZUEVfTkFNRSB9IGZyb20gXCIuLi90eXBlTmFtZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIFRvSW50ZWdlciBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIHZhcmlhYmxlKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMudmFyaWFibGUgPSB2YXJpYWJsZTtcbiAgfVxuXG4gIGdldFZhcmlhYmxlKCkge1xuICAgIHJldHVybiB0aGlzLnZhcmlhYmxlO1xuICB9XG5cbiAgZXZhbHVhdGUoY29udGV4dCwgYmFjaywgZm9yd2FyZCkge1xuICAgIGxldCB2YWx1ZTtcblxuICAgIGNvbnN0IHRvSW50ZWdlclN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7ICAvLy9cblxuICAgIGNvbnRleHQudHJhY2UoYEV2YWx1YXRpbmcgdGhlICcke3RvSW50ZWdlclN0cmluZ30nIGZ1bmN0aW9uLi4uYCk7XG5cbiAgICB2YWx1ZSA9IHRoaXMudmFyaWFibGUuZXZhbHVhdGUoY29udGV4dCk7XG5cbiAgICBjb25zdCB2YWx1ZVR5cGUgPSB2YWx1ZS5nZXRUeXBlKCksXG4gICAgICAgICAgdmFsdWVUeXBlTmFtZSA9IHZhbHVlVHlwZS5nZXROYW1lKCk7XG5cbiAgICBsZXQgaW50ZWdlcjtcblxuICAgIHN3aXRjaCAodmFsdWVUeXBlTmFtZSkge1xuICAgICAgY2FzZSBMSVNUX1RZUEVfTkFNRTpcbiAgICAgIGNhc2UgQk9PTEVBTl9UWVBFX05BTUU6XG4gICAgICBjYXNlIElOVEVHRVJfVFlQRV9OQU1FOiB7XG4gICAgICAgIGNvbnN0IG1lc3NhZ2UgPSBgQ2Fubm90IGV2YWx1YXRlIHRoZSAnJHt0b0ludGVnZXJTdHJpbmd9JyBmdW5jdGlvbiBiZWNhdXNlIHRoZSAnJHt2YWx1ZVR5cGVOYW1lfScgdHlwZSBvZiBpdHMgYXJndW1lbnQgaXMgbm90IHN1cHBvcnRlZC5gLFxuICAgICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgICAgcmV0dXJuIGJhY2soZXhjZXB0aW9uKTtcbiAgICAgIH1cblxuICAgICAgY2FzZSBTVFJJTkdfVFlQRV9OQU1FOlxuICAgICAgY2FzZSBOT01JTkFMX1ZBTFVFX1RZUEVfTkFNRToge1xuICAgICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICAgICAgICBib29sZWFuID0gaW50ZWdlclJlZ3VsYXJFeHByZXNzc2lvbi50ZXN0KHZhbHVlU3RyaW5nKTtcblxuICAgICAgICBpZiAoIWJvb2xlYW4pIHtcbiAgICAgICAgICBjb25zdCBtZXNzYWdlID0gYENhbm5vdCBldmFsdWF0ZSB0aGUgJyR7dG9JbnRlZ2VyU3RyaW5nfScgZnVuY3Rpb24gYmVjYXVzZSB0aGUgJyR7dmFsdWVUeXBlTmFtZX0nIHZhbHVlIGlzIG5vdCBhbiBpbnRlZ2VyLmAsXG4gICAgICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICAgICAgcmV0dXJuIGJhY2soZXhjZXB0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGludGVnZXIgPSBOdW1iZXIodmFsdWVTdHJpbmcpO1xuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIHZhbHVlID0gdmFsdWVGcm9tSW50ZWdlcihpbnRlZ2VyKTtcblxuICAgIGNvbnN0IHZhbHVlU3RyaW5nID0gdmFsdWUuZ2V0U3RyaW5nKCk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5ldmFsdWF0ZWQgdGhlICcke3RvSW50ZWdlclN0cmluZ30nIGZ1bmN0aW9uIGFzICcke3ZhbHVlU3RyaW5nfScuYCk7XG5cbiAgICByZXR1cm4gZm9yd2FyZCh2YWx1ZSk7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiVG9JbnRlZ2VyXCI7XG59KTtcbiJdLCJuYW1lcyI6WyJkZWZpbmUiLCJUb0ludGVnZXIiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwidmFyaWFibGUiLCJnZXRWYXJpYWJsZSIsImV2YWx1YXRlIiwiYmFjayIsImZvcndhcmQiLCJ2YWx1ZSIsInRvSW50ZWdlclN0cmluZyIsImdldFN0cmluZyIsInRyYWNlIiwidmFsdWVUeXBlIiwiZ2V0VHlwZSIsInZhbHVlVHlwZU5hbWUiLCJnZXROYW1lIiwiaW50ZWdlciIsIkxJU1RfVFlQRV9OQU1FIiwiQk9PTEVBTl9UWVBFX05BTUUiLCJJTlRFR0VSX1RZUEVfTkFNRSIsIm1lc3NhZ2UiLCJleGNlcHRpb24iLCJFeGNlcHRpb24iLCJmcm9tTWVzc2FnZSIsIlNUUklOR19UWVBFX05BTUUiLCJOT01JTkFMX1ZBTFVFX1RZUEVfTkFNRSIsInZhbHVlU3RyaW5nIiwiYm9vbGVhbiIsImludGVnZXJSZWd1bGFyRXhwcmVzc3Npb24iLCJ0ZXN0IiwiTnVtYmVyIiwidmFsdWVGcm9tSW50ZWdlciIsImRlYnVnIiwibmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBV0E7OztlQUFBOzs7Z0NBVHdCO2tFQUVGOzBCQUVDO3VCQUNVOzRCQUNTOzJCQUNzRTs7Ozs7O01BRWhILFdBQWVBLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsa0JBQWtCQyx1QkFBTztJQUNuRCxZQUFZQyxPQUFPLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxVQUFVLEVBQUVDLFFBQVEsQ0FBRTtRQUN2RCxLQUFLLENBQUNKLFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0MsUUFBUSxHQUFHQTtJQUNsQjtJQUVBQyxjQUFjO1FBQ1osT0FBTyxJQUFJLENBQUNELFFBQVE7SUFDdEI7SUFFQUUsU0FBU04sT0FBTyxFQUFFTyxJQUFJLEVBQUVDLE9BQU8sRUFBRTtRQUMvQixJQUFJQztRQUVKLE1BQU1DLGtCQUFrQixJQUFJLENBQUNDLFNBQVMsSUFBSyxHQUFHO1FBRTlDWCxRQUFRWSxLQUFLLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRUYsZ0JBQWdCLGFBQWEsQ0FBQztRQUUvREQsUUFBUSxJQUFJLENBQUNMLFFBQVEsQ0FBQ0UsUUFBUSxDQUFDTjtRQUUvQixNQUFNYSxZQUFZSixNQUFNSyxPQUFPLElBQ3pCQyxnQkFBZ0JGLFVBQVVHLE9BQU87UUFFdkMsSUFBSUM7UUFFSixPQUFRRjtZQUNOLEtBQUtHLHlCQUFjO1lBQ25CLEtBQUtDLDRCQUFpQjtZQUN0QixLQUFLQyw0QkFBaUI7Z0JBQUU7b0JBQ3RCLE1BQU1DLFVBQVUsQ0FBQyxxQkFBcUIsRUFBRVgsZ0JBQWdCLHdCQUF3QixFQUFFSyxjQUFjLHdDQUF3QyxDQUFDLEVBQ25JTyxZQUFZQyxrQkFBUyxDQUFDQyxXQUFXLENBQUNIO29CQUV4QyxPQUFPZCxLQUFLZTtnQkFDZDtZQUVBLEtBQUtHLDJCQUFnQjtZQUNyQixLQUFLQyxrQ0FBdUI7Z0JBQUU7b0JBQzVCLE1BQU1DLGNBQWNsQixNQUFNRSxTQUFTLElBQzdCaUIsVUFBVUMscUNBQXlCLENBQUNDLElBQUksQ0FBQ0g7b0JBRS9DLElBQUksQ0FBQ0MsU0FBUzt3QkFDWixNQUFNUCxVQUFVLENBQUMscUJBQXFCLEVBQUVYLGdCQUFnQix3QkFBd0IsRUFBRUssY0FBYywwQkFBMEIsQ0FBQyxFQUNySE8sWUFBWUMsa0JBQVMsQ0FBQ0MsV0FBVyxDQUFDSDt3QkFFeEMsT0FBT2QsS0FBS2U7b0JBQ2Q7b0JBRUFMLFVBQVVjLE9BQU9KO29CQUVqQjtnQkFDRjtRQUNGO1FBRUFsQixRQUFRdUIsSUFBQUEsdUJBQWdCLEVBQUNmO1FBRXpCLE1BQU1VLGNBQWNsQixNQUFNRSxTQUFTO1FBRW5DWCxRQUFRaUMsS0FBSyxDQUFDLENBQUMsa0JBQWtCLEVBQUV2QixnQkFBZ0IsZUFBZSxFQUFFaUIsWUFBWSxFQUFFLENBQUM7UUFFbkYsT0FBT25CLFFBQVFDO0lBQ2pCO0lBRUEsT0FBT3lCLE9BQU8sWUFBWTtBQUM1QiJ9
|