occam-furtle 3.0.243 → 3.0.246
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/array.js +10 -9
- package/lib/element/assignment/object.js +38 -40
- package/lib/element/assignment/variable.js +7 -7
- package/lib/element/binding.js +9 -2
- package/lib/element/expression.js +3 -3
- package/lib/element/nodeQuery.js +3 -3
- package/lib/element/nodesQuery.js +3 -3
- package/lib/element/procedure/anonymous.js +8 -8
- package/lib/element/procedure.js +10 -69
- package/lib/element/reduce.js +14 -14
- package/lib/element/some.js +20 -20
- package/lib/element/term/bracketed.js +6 -6
- package/lib/element/term/comparison.js +12 -12
- package/lib/element/term/logical.js +13 -13
- package/lib/element/term/negated.js +13 -13
- package/lib/element/term.js +9 -9
- package/lib/element/terms.js +49 -8
- package/lib/element/ternary.js +11 -11
- package/lib/element/value.js +2 -1
- package/lib/element/variable.js +11 -11
- package/lib/index.js +2 -18
- package/lib/node/binding.js +15 -1
- package/lib/node/bindings.js +2 -2
- package/lib/node/reduce.js +5 -5
- package/lib/utilities/element.js +41 -34
- package/lib/utilities/parameters.js +29 -0
- package/lib/utilities/primitive.js +1 -10
- package/lib/utilities/term.js +3 -27
- package/lib/utilities/value.js +25 -5
- package/package.json +1 -1
- package/src/element/assignment/array.js +12 -10
- package/src/element/assignment/object.js +47 -49
- package/src/element/assignment/variable.js +6 -6
- package/src/element/binding.js +10 -1
- package/src/element/expression.js +2 -2
- package/src/element/nodeQuery.js +1 -1
- package/src/element/nodesQuery.js +1 -1
- package/src/element/procedure/anonymous.js +10 -10
- package/src/element/procedure.js +7 -24
- package/src/element/reduce.js +15 -14
- package/src/element/some.js +22 -22
- package/src/element/term/bracketed.js +5 -5
- package/src/element/term/comparison.js +16 -16
- package/src/element/term/logical.js +20 -20
- package/src/element/term/negated.js +13 -13
- package/src/element/term.js +8 -8
- package/src/element/terms.js +12 -9
- package/src/element/ternary.js +11 -11
- package/src/element/value.js +1 -0
- package/src/element/variable.js +10 -10
- package/src/index.js +1 -7
- package/src/node/binding.js +20 -0
- package/src/node/bindings.js +2 -2
- package/src/node/reduce.js +8 -8
- package/src/utilities/element.js +48 -41
- package/src/utilities/parameters.js +20 -0
- package/src/utilities/primitive.js +0 -7
- package/src/utilities/term.js +3 -37
- package/src/utilities/value.js +36 -12
- package/lib/utilities/nominal.js +0 -55
- package/lib/utilities/terms.js +0 -31
- package/src/utilities/nominal.js +0 -50
- package/src/utilities/terms.js +0 -30
|
@@ -11,7 +11,7 @@ Object.defineProperty(exports, "default", {
|
|
|
11
11
|
const _occamlanguages = require("occam-languages");
|
|
12
12
|
const _elements = /*#__PURE__*/ _interop_require_wildcard(require("../../elements"));
|
|
13
13
|
const _exception = /*#__PURE__*/ _interop_require_default(require("../../exception"));
|
|
14
|
-
const
|
|
14
|
+
const _value = require("../../utilities/value");
|
|
15
15
|
const _string = require("../../utilities/string");
|
|
16
16
|
const _types = require("../../types");
|
|
17
17
|
function _interop_require_default(obj) {
|
|
@@ -75,20 +75,21 @@ const _default = (0, _elements.define)(class ArrayAssigment extends _occamlangua
|
|
|
75
75
|
evaluate(context) {
|
|
76
76
|
const arrayAssignmentString = this.getString(); ///
|
|
77
77
|
context.trace(`Evaluating the '${arrayAssignmentString}' array assignment...`);
|
|
78
|
-
const
|
|
79
|
-
if (
|
|
80
|
-
const
|
|
78
|
+
const value = this.variable.evaluate(context), valueType = value.getType();
|
|
79
|
+
if (valueType !== _types.NOMINAL_VALUES_TYPE) {
|
|
80
|
+
const valueString = value.getString(), message = `The '${valueString}' value's '${valueType}' type should be '${_types.NOMINAL_VALUES_TYPE}'.`, exception = _exception.default.fromMessage(message);
|
|
81
81
|
throw exception;
|
|
82
82
|
}
|
|
83
|
-
const primitiveValue =
|
|
83
|
+
const primitiveValue = value.getPrimitiveValue(), nominalValues = primitiveValue, bindingsLength = this.bindings.getLength(), nominalValuesLength = nominalValues.length;
|
|
84
84
|
if (bindingsLength > nominalValuesLength) {
|
|
85
85
|
const bindingsString = this.bindings.getString(), primitiveString = (0, _string.primtiveStringFromNominalValues)(nominalValues), message = `The length of the '${bindingsString}' bindings is greater than the length of the '${primitiveString}' nodes.`, exception = _exception.default.fromMessage(message);
|
|
86
86
|
throw exception;
|
|
87
87
|
}
|
|
88
88
|
this.bindings.forEachBinding((binding, index)=>{
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
89
|
+
const elidated = binding.isElided();
|
|
90
|
+
if (!elidated) {
|
|
91
|
+
const nominalValue = nominalValues[index], value = (0, _value.valueFromNominalValue)(nominalValue);
|
|
92
|
+
this.evaluateBinding(binding, value, context);
|
|
92
93
|
}
|
|
93
94
|
});
|
|
94
95
|
context.debug(`...evaluated the '${arrayAssignmentString}' array assignment.`);
|
|
@@ -108,4 +109,4 @@ const _default = (0, _elements.define)(class ArrayAssigment extends _occamlangua
|
|
|
108
109
|
static name = "ArrayAssignment";
|
|
109
110
|
});
|
|
110
111
|
|
|
111
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50L2Fzc2lnbm1lbnQvYXJyYXkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCBlbGVtZW50cyBmcm9tIFwiLi4vLi4vZWxlbWVudHNcIjtcbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uLy4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IHZhbHVlRnJvbU5vbWluYWxWYWx1ZSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvdmFsdWVcIjtcbmltcG9ydCB7IHByaW10aXZlU3RyaW5nRnJvbU5vbWluYWxWYWx1ZXMgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuaW1wb3J0IHsgTk9NSU5BTF9WQUxVRV9UWVBFLCBOT01JTkFMX1ZBTFVFU19UWVBFIH0gZnJvbSBcIi4uLy4uL3R5cGVzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBBcnJheUFzc2lnbWVudCBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIHZhcmlhYmxlLCBiaW5kaW5ncykge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLnZhcmlhYmxlID0gdmFyaWFibGU7XG4gICAgdGhpcy5iaW5kaW5ncyA9IGJpbmRpbmdzO1xuICB9XG5cbiAgZ2V0VmFyaWFibGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFyaWFibGU7XG4gIH1cblxuICBnZXRCaW5kaW5ncygpIHtcbiAgICByZXR1cm4gdGhpcy5iaW5kaW5ncztcbiAgfVxuXG4gIGV2YWx1YXRlKGNvbnRleHQpIHtcbiAgICBjb25zdCBhcnJheUFzc2lnbm1lbnRTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpOyAvLy9cblxuICAgIGNvbnRleHQudHJhY2UoYEV2YWx1YXRpbmcgdGhlICcke2FycmF5QXNzaWdubWVudFN0cmluZ30nIGFycmF5IGFzc2lnbm1lbnQuLi5gKTtcblxuICAgIGNvbnN0IHZhbHVlID0gdGhpcy52YXJpYWJsZS5ldmFsdWF0ZShjb250ZXh0KSxcbiAgICAgICAgICB2YWx1ZVR5cGUgPSB2YWx1ZS5nZXRUeXBlKCk7XG5cbiAgICBpZiAodmFsdWVUeXBlICE9PSBOT01JTkFMX1ZBTFVFU19UWVBFKSB7XG4gICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7dmFsdWVTdHJpbmd9JyB2YWx1ZSdzICcke3ZhbHVlVHlwZX0nIHR5cGUgc2hvdWxkIGJlICcke05PTUlOQUxfVkFMVUVTX1RZUEV9Jy5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgY29uc3QgcHJpbWl0aXZlVmFsdWUgPSB2YWx1ZS5nZXRQcmltaXRpdmVWYWx1ZSgpLFxuICAgICAgICAgIG5vbWluYWxWYWx1ZXMgPSBwcmltaXRpdmVWYWx1ZSwgLy8vXG4gICAgICAgICAgYmluZGluZ3NMZW5ndGggPSB0aGlzLmJpbmRpbmdzLmdldExlbmd0aCgpLFxuICAgICAgICAgIG5vbWluYWxWYWx1ZXNMZW5ndGggPSBub21pbmFsVmFsdWVzLmxlbmd0aDtcblxuICAgIGlmIChiaW5kaW5nc0xlbmd0aCA+IG5vbWluYWxWYWx1ZXNMZW5ndGgpIHtcbiAgICAgIGNvbnN0IGJpbmRpbmdzU3RyaW5nID0gdGhpcy5iaW5kaW5ncy5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgIHByaW1pdGl2ZVN0cmluZyA9IHByaW10aXZlU3RyaW5nRnJvbU5vbWluYWxWYWx1ZXMobm9taW5hbFZhbHVlcyksXG4gICAgICAgICAgICBtZXNzYWdlID0gYFRoZSBsZW5ndGggb2YgdGhlICcke2JpbmRpbmdzU3RyaW5nfScgYmluZGluZ3MgaXMgZ3JlYXRlciB0aGFuIHRoZSBsZW5ndGggb2YgdGhlICcke3ByaW1pdGl2ZVN0cmluZ30nIG5vZGVzLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICB0aGlzLmJpbmRpbmdzLmZvckVhY2hCaW5kaW5nKChiaW5kaW5nLCBpbmRleCkgPT4ge1xuICAgICAgY29uc3QgZWxpZGF0ZWQgPSBiaW5kaW5nLmlzRWxpZGVkKCk7XG5cbiAgICAgIGlmICghZWxpZGF0ZWQpIHtcbiAgICAgICAgY29uc3Qgbm9taW5hbFZhbHVlID0gbm9taW5hbFZhbHVlc1tpbmRleF0sXG4gICAgICAgICAgICAgIHZhbHVlID0gdmFsdWVGcm9tTm9taW5hbFZhbHVlKG5vbWluYWxWYWx1ZSk7XG5cbiAgICAgICAgdGhpcy5ldmFsdWF0ZUJpbmRpbmcoYmluZGluZywgdmFsdWUsIGNvbnRleHQpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgY29udGV4dC5kZWJ1ZyhgLi4uZXZhbHVhdGVkIHRoZSAnJHthcnJheUFzc2lnbm1lbnRTdHJpbmd9JyBhcnJheSBhc3NpZ25tZW50LmApO1xuICB9XG5cbiAgZXZhbHVhdGVCaW5kaW5nKGJpbmRpbmcsIGV4cHJlc3Npb24sIGNvbnRleHQpIHtcbiAgICBjb25zdCBiaW5kaW5nU3RyaW5nID0gYmluZGluZy5nZXRTdHJpbmcoKSxcbiAgICAgICAgICBleHByZXNzaW9uU3RyaW5nID0gZXhwcmVzc2lvbi5nZXRTdHJpbmcoKTtcblxuICAgIGNvbnRleHQudHJhY2UoYEV2YWx1YXRpbmcgdGhlICcke2JpbmRpbmdTdHJpbmd9JyBiaW5kaW5nIGFnYWluc3QgdGhlICcke2V4cHJlc3Npb25TdHJpbmd9JyBleHByZXNzaW9uLi4uYCk7XG5cbiAgICBjb25zdCBiaW5kaW5nVHlwZSA9IGJpbmRpbmcuZ2V0VHlwZSgpO1xuXG4gICAgaWYgKGJpbmRpbmdUeXBlICE9PSBOT01JTkFMX1ZBTFVFX1RZUEUpIHtcbiAgICAgIGNvbnN0IG1lc3NhZ2UgPSBgVGhlIHR5cGUgb2YgdGhlICcke2JpbmRpbmdTdHJpbmd9JyBiaW5kaW5nIHNob3VsZCBiZSAnJHtOT01JTkFMX1ZBTFVFX1RZUEV9Jy5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgY29uc3QgeyBWYXJpYWJsZSB9ID0gZWxlbWVudHMsXG4gICAgICAgICAgdmFyaWFibGUgPSBWYXJpYWJsZS5mcm9tQmluZGluZyhiaW5kaW5nLCBjb250ZXh0KTtcblxuICAgIHZhcmlhYmxlLmFzc2lnbihleHByZXNzaW9uLCBjb250ZXh0KTtcblxuICAgIGNvbnRleHQuZGVidWcoYC4uLmV2YWx1YXRlZCB0aGUgJyR7YmluZGluZ1N0cmluZ30nIGJpbmRpbmcgYWdhaW5zdCB0aGUgJyR7ZXhwcmVzc2lvblN0cmluZ30nIGV4cHJlc3Npb24uYCk7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiQXJyYXlBc3NpZ25tZW50XCI7XG59KTtcbiJdLCJuYW1lcyI6WyJkZWZpbmUiLCJBcnJheUFzc2lnbWVudCIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ2YXJpYWJsZSIsImJpbmRpbmdzIiwiZ2V0VmFyaWFibGUiLCJnZXRCaW5kaW5ncyIsImV2YWx1YXRlIiwiYXJyYXlBc3NpZ25tZW50U3RyaW5nIiwiZ2V0U3RyaW5nIiwidHJhY2UiLCJ2YWx1ZSIsInZhbHVlVHlwZSIsImdldFR5cGUiLCJOT01JTkFMX1ZBTFVFU19UWVBFIiwidmFsdWVTdHJpbmciLCJtZXNzYWdlIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJwcmltaXRpdmVWYWx1ZSIsImdldFByaW1pdGl2ZVZhbHVlIiwibm9taW5hbFZhbHVlcyIsImJpbmRpbmdzTGVuZ3RoIiwiZ2V0TGVuZ3RoIiwibm9taW5hbFZhbHVlc0xlbmd0aCIsImxlbmd0aCIsImJpbmRpbmdzU3RyaW5nIiwicHJpbWl0aXZlU3RyaW5nIiwicHJpbXRpdmVTdHJpbmdGcm9tTm9taW5hbFZhbHVlcyIsImZvckVhY2hCaW5kaW5nIiwiYmluZGluZyIsImluZGV4IiwiZWxpZGF0ZWQiLCJpc0VsaWRlZCIsIm5vbWluYWxWYWx1ZSIsInZhbHVlRnJvbU5vbWluYWxWYWx1ZSIsImV2YWx1YXRlQmluZGluZyIsImRlYnVnIiwiZXhwcmVzc2lvbiIsImJpbmRpbmdTdHJpbmciLCJleHByZXNzaW9uU3RyaW5nIiwiYmluZGluZ1R5cGUiLCJOT01JTkFMX1ZBTFVFX1RZUEUiLCJWYXJpYWJsZSIsImVsZW1lbnRzIiwiZnJvbUJpbmRpbmciLCJhc3NpZ24iLCJuYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFZQTs7O2VBQUE7OztnQ0FWd0I7a0VBRUg7a0VBQ0M7dUJBR2dCO3dCQUNVO3VCQUNROzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQUV4RCxXQUFlQSxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLHVCQUF1QkMsdUJBQU87SUFDeEQsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxRQUFRLEVBQUVDLFFBQVEsQ0FBRTtRQUNqRSxLQUFLLENBQUNMLFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0MsUUFBUSxHQUFHQTtRQUNoQixJQUFJLENBQUNDLFFBQVEsR0FBR0E7SUFDbEI7SUFFQUMsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDRixRQUFRO0lBQ3RCO0lBRUFHLGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQ0YsUUFBUTtJQUN0QjtJQUVB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
|
|
@@ -13,7 +13,7 @@ const _elements = /*#__PURE__*/ _interop_require_wildcard(require("../../element
|
|
|
13
13
|
const _exception = /*#__PURE__*/ _interop_require_default(require("../../exception"));
|
|
14
14
|
const _nodeProperties = /*#__PURE__*/ _interop_require_default(require("../../nodeProperties"));
|
|
15
15
|
const _stringLiteral = require("../../utilities/stringLiteral");
|
|
16
|
-
const
|
|
16
|
+
const _value = require("../../utilities/value");
|
|
17
17
|
const _term = require("../../utilities/term");
|
|
18
18
|
const _types = require("../../types");
|
|
19
19
|
const _parameterNames = require("../../parameterNames");
|
|
@@ -64,61 +64,61 @@ function _interop_require_wildcard(obj, nodeInterop) {
|
|
|
64
64
|
return newObj;
|
|
65
65
|
}
|
|
66
66
|
const _default = (0, _elements.define)(class ObjectAssigment extends _occamlanguages.Element {
|
|
67
|
-
constructor(context, string, node, breakPoint, variable,
|
|
67
|
+
constructor(context, string, node, breakPoint, variable, namedBindings){
|
|
68
68
|
super(context, string, node, breakPoint);
|
|
69
69
|
this.variable = variable;
|
|
70
|
-
this.
|
|
70
|
+
this.namedBindings = namedBindings;
|
|
71
71
|
}
|
|
72
72
|
getVariable() {
|
|
73
73
|
return this.variable;
|
|
74
74
|
}
|
|
75
|
-
|
|
76
|
-
return this.
|
|
75
|
+
getNamedBindings() {
|
|
76
|
+
return this.namedBindings;
|
|
77
77
|
}
|
|
78
78
|
evaluate(context) {
|
|
79
79
|
const objectAssignmentString = this.getString(); ///
|
|
80
80
|
context.trace(`Evaluating the '${objectAssignmentString}' object assignment...`);
|
|
81
|
-
const
|
|
82
|
-
if (
|
|
83
|
-
const
|
|
81
|
+
const value = this.variable.evaluate(context), valueType = value.getType();
|
|
82
|
+
if (valueType !== _types.NOMINAL_VALUE_TYPE) {
|
|
83
|
+
const valueString = value.getString(), message = `The '${valueString}' value's '${valueType}' type should be '${_types.NOMINAL_VALUE_TYPE}'.`, exception = _exception.default.fromMessage(message);
|
|
84
84
|
throw exception;
|
|
85
85
|
}
|
|
86
|
-
_nodeProperties.default.
|
|
87
|
-
this.
|
|
88
|
-
this.
|
|
86
|
+
_nodeProperties.default.compareNamedBindings(this.namedBindings, context);
|
|
87
|
+
this.namedBindings.forEachNamedBinding((namedBinding)=>{
|
|
88
|
+
this.evaluateNamedBinding(namedBinding, value, context);
|
|
89
89
|
});
|
|
90
90
|
context.debug(`...evaluated the '${objectAssignmentString}' object assignment.`);
|
|
91
91
|
}
|
|
92
|
-
|
|
93
|
-
const termString = term.getString(),
|
|
94
|
-
context.trace(`Evaluating the '${
|
|
95
|
-
const name =
|
|
92
|
+
evaluateNamedBinding(namedBinding, term, context) {
|
|
93
|
+
const termString = term.getString(), namedBindingString = namedBinding.getString();
|
|
94
|
+
context.trace(`Evaluating the '${namedBindingString}' named binding against the '${termString}' term...`);
|
|
95
|
+
const name = namedBinding.getName();
|
|
96
96
|
switch(name){
|
|
97
97
|
case _parameterNames.CONTENT_PARAMETER_NAME:
|
|
98
98
|
{
|
|
99
|
-
term = this.
|
|
99
|
+
term = this.evaluateContentNamedBinding(namedBinding, term, context);
|
|
100
100
|
break;
|
|
101
101
|
}
|
|
102
102
|
case _parameterNames.TERMINAL_PARAMETER_NAME:
|
|
103
103
|
{
|
|
104
|
-
term = this.
|
|
104
|
+
term = this.evaluateTerminalNamedBinding(namedBinding, term, context);
|
|
105
105
|
break;
|
|
106
106
|
}
|
|
107
107
|
case _parameterNames.CHILD_NODES_PARAMETER_NAME:
|
|
108
108
|
{
|
|
109
|
-
term = this.
|
|
109
|
+
term = this.evaluateChildNodesNamedBinding(namedBinding, term, context);
|
|
110
110
|
break;
|
|
111
111
|
}
|
|
112
112
|
}
|
|
113
|
-
const { Variable } = _elements.default, variable = Variable.
|
|
113
|
+
const { Variable } = _elements.default, variable = Variable.fromNamedBinding(namedBinding, context);
|
|
114
114
|
variable.assign(term, context);
|
|
115
|
-
context.debug(`...evaluated the '${
|
|
115
|
+
context.debug(`...evaluated the '${namedBindingString}' parameter named against the '${termString}' term.`);
|
|
116
116
|
}
|
|
117
|
-
|
|
118
|
-
const type =
|
|
119
|
-
context.trace(`Evaluating the content '${
|
|
117
|
+
evaluateContentNamedBinding(namedBinding, term, context) {
|
|
118
|
+
const type = namedBinding.getType(), namedBindingString = namedBinding.getString();
|
|
119
|
+
context.trace(`Evaluating the content '${namedBindingString}' named binding...`);
|
|
120
120
|
if (type !== _types.STRING_TYPE) {
|
|
121
|
-
const
|
|
121
|
+
const namedBindingString = namedBinding.getString(), message = `The '${namedBindingString}' named binding's type should be '${_types.STRING_TYPE}'.`, exception = _exception.default.fromMessage(message);
|
|
122
122
|
throw exception;
|
|
123
123
|
}
|
|
124
124
|
const primitiveValue = term.getPrimitiveValue(), nominalValue = primitiveValue, node = nominalValue.getNode(), nodeTerminalNode = node.isTerminalNode();
|
|
@@ -129,28 +129,28 @@ const _default = (0, _elements.define)(class ObjectAssigment extends _occamlangu
|
|
|
129
129
|
const terminalNode = node, content = terminalNode.getContent(), string = content, stringLiteral = (0, _stringLiteral.stringLiteralFromString)(string);
|
|
130
130
|
term = (0, _term.termFromStringLiteral)(stringLiteral, context);
|
|
131
131
|
const termSttring = term.getString();
|
|
132
|
-
context.debug(`...evaluated the content '${
|
|
132
|
+
context.debug(`...evaluated the content '${namedBindingString}' named binding as '${termSttring}'.`);
|
|
133
133
|
return term;
|
|
134
134
|
}
|
|
135
|
-
|
|
136
|
-
const type =
|
|
137
|
-
context.trace(`Evaluating the terminal '${
|
|
135
|
+
evaluateTerminalNamedBinding(namedBinding, term, context) {
|
|
136
|
+
const type = namedBinding.getType(), namedBindingString = namedBinding.getString();
|
|
137
|
+
context.trace(`Evaluating the terminal '${namedBindingString}' named binding...`);
|
|
138
138
|
if (type !== _types.BOOLEAN_TYPE) {
|
|
139
|
-
const
|
|
139
|
+
const namedBindingString = namedBinding.getString(), message = `The '${namedBindingString}' named binding's type should be '${_types.BOOLEAN_TYPE}'.`, exception = _exception.default.fromMessage(message);
|
|
140
140
|
throw exception;
|
|
141
141
|
}
|
|
142
142
|
const primitiveValue = term.getPrimitiveValue(), nominalValue = primitiveValue, node = nominalValue.getNode(), nodeTerminalNode = node.isTerminalNode(), terminal = nodeTerminalNode; ///
|
|
143
143
|
const boolean = terminal; ///
|
|
144
144
|
term = (0, _term.termFromBoolean)(boolean, context); ///
|
|
145
145
|
const termSttring = term.getString();
|
|
146
|
-
context.debug(`...evaluated the terminal '${
|
|
146
|
+
context.debug(`...evaluated the terminal '${namedBindingString}' named binding as '${termSttring}'.`);
|
|
147
147
|
return term;
|
|
148
148
|
}
|
|
149
|
-
|
|
150
|
-
const type =
|
|
151
|
-
context.trace(`Evaluating the child nodes '${
|
|
149
|
+
evaluateChildNodesNamedBinding(namedBinding, term, context) {
|
|
150
|
+
const type = namedBinding.getType(), namedBindingString = namedBinding.getString();
|
|
151
|
+
context.trace(`Evaluating the child nodes '${namedBindingString}' named binding...`);
|
|
152
152
|
if (type !== _types.NOMINAL_VALUES_TYPE) {
|
|
153
|
-
const
|
|
153
|
+
const namedBindingString = namedBinding.getString(), message = `The '${namedBindingString}' named binding's type should be '${_types.NOMINAL_VALUES_TYPE}'.`, exception = _exception.default.fromMessage(message);
|
|
154
154
|
throw exception;
|
|
155
155
|
}
|
|
156
156
|
const primitiveValue = term.getPrimitiveValue(), nominalValue = primitiveValue, node = nominalValue.getNode(), nodeNonTerminalNode = node.isNonTerminalNode();
|
|
@@ -158,13 +158,11 @@ const _default = (0, _elements.define)(class ObjectAssigment extends _occamlangu
|
|
|
158
158
|
const termString = term.getString(), message = `The '${termString}' term's node must be non-terminal.`, exception = _exception.default.fromMessage(message);
|
|
159
159
|
throw exception;
|
|
160
160
|
}
|
|
161
|
-
const nonTerminalNode = node, childNodes = nonTerminalNode.getChildNodes(), nodes = childNodes;
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
context.debug(`...evaluated the childNodes '${nameBindingString}' named binding as '${termSttring}'.`);
|
|
165
|
-
return term;
|
|
161
|
+
const nonTerminalNode = node, childNodes = nonTerminalNode.getChildNodes(), nodes = childNodes, value = (0, _value.valueFromNodesAndNominalValue)(nodes, nominalValue), valueSttring = value.getString();
|
|
162
|
+
context.debug(`...evaluated the childNodes '${namedBindingString}' named binding as '${valueSttring}'.`);
|
|
163
|
+
return value;
|
|
166
164
|
}
|
|
167
165
|
static name = "ObjectAssigment";
|
|
168
166
|
});
|
|
169
167
|
|
|
170
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50L2Fzc2lnbm1lbnQvb2JqZWN0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgZWxlbWVudHMgZnJvbSBcIi4uLy4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi8uLi9leGNlcHRpb25cIjtcbmltcG9ydCBub2RlUHJvcGVydGllcyBmcm9tIFwiLi4vLi4vbm9kZVByb3BlcnRpZXNcIjtcblxuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSBcIi4uLy4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgeyBzdHJpbmdMaXRlcmFsRnJvbVN0cmluZyB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvc3RyaW5nTGl0ZXJhbFwiO1xuaW1wb3J0IHsgdGVybUZyb21Ob2Rlc0FuZE5vbWluYWxWYWx1ZSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvbm9taW5hbFwiO1xuaW1wb3J0IHsgdGVybUZyb21Cb29sZWFuLCB0ZXJtRnJvbVN0cmluZ0xpdGVyYWwgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3Rlcm1cIjtcbmltcG9ydCB7IFNUUklOR19UWVBFLCBCT09MRUFOX1RZUEUsIE5PTUlOQUxfVkFMVUVfVFlQRSwgTk9NSU5BTF9WQUxVRVNfVFlQRSB9IGZyb20gXCIuLi8uLi90eXBlc1wiO1xuaW1wb3J0IHsgQ09OVEVOVF9QQVJBTUVURVJfTkFNRSwgVEVSTUlOQUxfUEFSQU1FVEVSX05BTUUsIENISUxEX05PREVTX1BBUkFNRVRFUl9OQU1FIH0gZnJvbSBcIi4uLy4uL3BhcmFtZXRlck5hbWVzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBPYmplY3RBc3NpZ21lbnQgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB2YXJpYWJsZSwgbmFtZUJpbmRpbmdzKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMudmFyaWFibGUgPSB2YXJpYWJsZTtcbiAgICB0aGlzLm5hbWVCaW5kaW5ncyA9IG5hbWVCaW5kaW5ncztcbiAgfVxuXG4gIGdldFZhcmlhYmxlKCkge1xuICAgIHJldHVybiB0aGlzLnZhcmlhYmxlO1xuICB9XG5cbiAgZ2V0TmFtZUJpbmRpbmdzKCkge1xuICAgIHJldHVybiB0aGlzLm5hbWVCaW5kaW5ncztcbiAgfVxuXG4gIGV2YWx1YXRlKGNvbnRleHQpIHtcbiAgICBjb25zdCBvYmplY3RBc3NpZ25tZW50U3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTsgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBFdmFsdWF0aW5nIHRoZSAnJHtvYmplY3RBc3NpZ25tZW50U3RyaW5nfScgb2JqZWN0IGFzc2lnbm1lbnQuLi5gKTtcblxuICAgIGNvbnN0IHRlcm0gPSB0aGlzLnZhcmlhYmxlLmV2YWx1YXRlKGNvbnRleHQpLFxuICAgICAgICAgIHRlcm1UeXBlID0gdGVybS5nZXRUeXBlKCk7XG5cbiAgICBpZiAodGVybVR5cGUgIT09IE5PTUlOQUxfVkFMVUVfVFlQRSkge1xuICAgICAgY29uc3QgdGVybVN0cmluZyA9IHRlcm0uZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICBtZXNzYWdlID0gYFRoZSAnJHt0ZXJtU3RyaW5nfScgdGVybSdzICcke3Rlcm1UeXBlfScgdHlwZSBzaG91bGQgYmUgJyR7Tk9NSU5BTF9WQUxVRV9UWVBFfScuYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgdGhyb3cgZXhjZXB0aW9uO1xuICAgIH1cblxuICAgIG5vZGVQcm9wZXJ0aWVzLmNvbXBhcmVOYW1lQmluZGluZ3ModGhpcy5uYW1lQmluZGluZ3MsIGNvbnRleHQpO1xuXG4gICAgdGhpcy5uYW1lQmluZGluZ3MuZm9yRWFjaE5hbWVCaW5kaW5nKChuYW1lQmluZGluZykgPT4ge1xuICAgICAgdGhpcy5ldmFsdWF0ZU5hbWVCaW5kaW5nKG5hbWVCaW5kaW5nLCB0ZXJtLCBjb250ZXh0KTtcbiAgICB9KTtcblxuICAgIGNvbnRleHQuZGVidWcoYC4uLmV2YWx1YXRlZCB0aGUgJyR7b2JqZWN0QXNzaWdubWVudFN0cmluZ30nIG9iamVjdCBhc3NpZ25tZW50LmApO1xuICB9XG5cbiAgZXZhbHVhdGVOYW1lQmluZGluZyhuYW1lQmluZGluZywgdGVybSwgY29udGV4dCkge1xuICAgIGNvbnN0IHRlcm1TdHJpbmcgPSB0ZXJtLmdldFN0cmluZygpLFxuICAgICAgICAgIG5hbWVCaW5kaW5nU3RyaW5nID0gbmFtZUJpbmRpbmcuZ2V0U3RyaW5nKCk7XG5cbiAgICBjb250ZXh0LnRyYWNlKGBFdmFsdWF0aW5nIHRoZSAnJHtuYW1lQmluZGluZ1N0cmluZ30nIG5hbWVkIGJpbmRpbmcgYWdhaW5zdCB0aGUgJyR7dGVybVN0cmluZ30nIHRlcm0uLi5gKTtcblxuICAgIGNvbnN0IG5hbWUgPSBuYW1lQmluZGluZy5nZXROYW1lKCk7XG5cbiAgICBzd2l0Y2ggKG5hbWUpIHtcbiAgICAgIGNhc2UgQ09OVEVOVF9QQVJBTUVURVJfTkFNRToge1xuICAgICAgICB0ZXJtID0gdGhpcy5ldmFsdWF0ZUNvbnRlbnROYW1lQmluZGluZyhuYW1lQmluZGluZywgdGVybSwgY29udGV4dCk7XG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgVEVSTUlOQUxfUEFSQU1FVEVSX05BTUU6IHtcbiAgICAgICAgdGVybSA9IHRoaXMuZXZhbHVhdGVUZXJtaW5hbE5hbWVCaW5kaW5nKG5hbWVCaW5kaW5nLCB0ZXJtLCBjb250ZXh0KTtcblxuICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgY2FzZSBDSElMRF9OT0RFU19QQVJBTUVURVJfTkFNRToge1xuICAgICAgICB0ZXJtID0gdGhpcy5ldmFsdWF0ZUNoaWxkTm9kZXNOYW1lQmluZGluZyhuYW1lQmluZGluZywgdGVybSwgY29udGV4dCk7XG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgeyBWYXJpYWJsZSB9ID0gZWxlbWVudHMsXG4gICAgICAgICAgdmFyaWFibGUgPSBWYXJpYWJsZS5mcm9tTmFtZUJpbmRpbmcobmFtZUJpbmRpbmcsIGNvbnRleHQpO1xuXG4gICAgdmFyaWFibGUuYXNzaWduKHRlcm0sIGNvbnRleHQpO1xuXG4gICAgY29udGV4dC5kZWJ1ZyhgLi4uZXZhbHVhdGVkIHRoZSAnJHtuYW1lQmluZGluZ1N0cmluZ30nIHBhcmFtZXRlciBuYW1lZCBhZ2FpbnN0IHRoZSAnJHt0ZXJtU3RyaW5nfScgdGVybS5gKTtcbiAgfVxuXG4gIGV2YWx1YXRlQ29udGVudE5hbWVCaW5kaW5nKG5hbWVCaW5kaW5nLCB0ZXJtLCBjb250ZXh0KSB7XG4gICAgY29uc3QgdHlwZSA9IG5hbWVCaW5kaW5nLmdldFR5cGUoKSxcbiAgICAgICAgICBuYW1lQmluZGluZ1N0cmluZyA9IG5hbWVCaW5kaW5nLmdldFN0cmluZygpO1xuXG4gICAgY29udGV4dC50cmFjZShgRXZhbHVhdGluZyB0aGUgY29udGVudCAnJHtuYW1lQmluZGluZ1N0cmluZ30nIG5hbWVkIGJpbmRpbmcuLi5gKTtcblxuICAgIGlmICh0eXBlICE9PSBTVFJJTkdfVFlQRSkge1xuICAgICAgY29uc3QgbmFtZUJpbmRpbmdTdHJpbmcgPSBuYW1lQmluZGluZy5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgIG1lc3NhZ2UgPSBgVGhlICcke25hbWVCaW5kaW5nU3RyaW5nfScgbmFtZWQgYmluZGluZydzIHR5cGUgc2hvdWxkIGJlICcke1NUUklOR19UWVBFfScuYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgdGhyb3cgZXhjZXB0aW9uO1xuICAgIH1cblxuICAgIGNvbnN0IHByaW1pdGl2ZVZhbHVlID0gdGVybS5nZXRQcmltaXRpdmVWYWx1ZSgpLFxuICAgICAgICAgIG5vbWluYWxWYWx1ZSA9IHByaW1pdGl2ZVZhbHVlLCAgLy8vXG4gICAgICAgICAgbm9kZSA9IG5vbWluYWxWYWx1ZS5nZXROb2RlKCksXG4gICAgICAgICAgbm9kZVRlcm1pbmFsTm9kZSA9IG5vZGUuaXNUZXJtaW5hbE5vZGUoKTtcblxuICAgIGlmICghbm9kZVRlcm1pbmFsTm9kZSkge1xuICAgICAgY29uc3QgdGVybVN0cmluZyA9IHRlcm0uZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICBtZXNzYWdlID0gYFRoZSAnJHt0ZXJtU3RyaW5nfScgdGVybSdzIG5vZGUgbXVzdCBiZSB0ZXJtaW5hbC5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgY29uc3QgdGVybWluYWxOb2RlID0gbm9kZSwgIC8vL1xuICAgICAgICAgIGNvbnRlbnQgPSB0ZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpLFxuICAgICAgICAgIHN0cmluZyA9IGNvbnRlbnQsICAvLy9cbiAgICAgICAgICBzdHJpbmdMaXRlcmFsID0gc3RyaW5nTGl0ZXJhbEZyb21TdHJpbmcoc3RyaW5nKTtcblxuICAgIHRlcm0gPSB0ZXJtRnJvbVN0cmluZ0xpdGVyYWwoc3RyaW5nTGl0ZXJhbCwgY29udGV4dCk7XG5cbiAgICBjb25zdCB0ZXJtU3R0cmluZyA9IHRlcm0uZ2V0U3RyaW5nKCk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5ldmFsdWF0ZWQgdGhlIGNvbnRlbnQgJyR7bmFtZUJpbmRpbmdTdHJpbmd9JyBuYW1lZCBiaW5kaW5nIGFzICcke3Rlcm1TdHRyaW5nfScuYCk7XG5cbiAgICByZXR1cm4gdGVybTtcbiAgfVxuXG4gIGV2YWx1YXRlVGVybWluYWxOYW1lQmluZGluZyhuYW1lQmluZGluZywgdGVybSwgY29udGV4dCkge1xuICAgIGNvbnN0IHR5cGUgPSBuYW1lQmluZGluZy5nZXRUeXBlKCksXG4gICAgICAgICAgbmFtZUJpbmRpbmdTdHJpbmcgPSBuYW1lQmluZGluZy5nZXRTdHJpbmcoKTtcblxuICAgIGNvbnRleHQudHJhY2UoYEV2YWx1YXRpbmcgdGhlIHRlcm1pbmFsICcke25hbWVCaW5kaW5nU3RyaW5nfScgbmFtZWQgYmluZGluZy4uLmApO1xuXG4gICAgaWYgKHR5cGUgIT09IEJPT0xFQU5fVFlQRSkge1xuICAgICAgY29uc3QgbmFtZUJpbmRpbmdTdHJpbmcgPSBuYW1lQmluZGluZy5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgIG1lc3NhZ2UgPSBgVGhlICcke25hbWVCaW5kaW5nU3RyaW5nfScgbmFtZWQgYmluZGluZydzIHR5cGUgc2hvdWxkIGJlICcke0JPT0xFQU5fVFlQRX0nLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBjb25zdCBwcmltaXRpdmVWYWx1ZSA9IHRlcm0uZ2V0UHJpbWl0aXZlVmFsdWUoKSxcbiAgICAgICAgICBub21pbmFsVmFsdWUgPSBwcmltaXRpdmVWYWx1ZSwgIC8vL1xuICAgICAgICAgIG5vZGUgPSBub21pbmFsVmFsdWUuZ2V0Tm9kZSgpLFxuICAgICAgICAgIG5vZGVUZXJtaW5hbE5vZGUgPSBub2RlLmlzVGVybWluYWxOb2RlKCksXG4gICAgICAgICAgdGVybWluYWwgPSBub2RlVGVybWluYWxOb2RlOyAgLy8vXG5cbiAgICBjb25zdCBib29sZWFuID0gdGVybWluYWw7IC8vL1xuXG4gICAgdGVybSA9IHRlcm1Gcm9tQm9vbGVhbihib29sZWFuLCBjb250ZXh0KTsgIC8vL1xuXG4gICAgY29uc3QgdGVybVN0dHJpbmcgPSB0ZXJtLmdldFN0cmluZygpO1xuXG4gICAgY29udGV4dC5kZWJ1ZyhgLi4uZXZhbHVhdGVkIHRoZSB0ZXJtaW5hbCAnJHtuYW1lQmluZGluZ1N0cmluZ30nIG5hbWVkIGJpbmRpbmcgYXMgJyR7dGVybVN0dHJpbmd9Jy5gKTtcblxuICAgIHJldHVybiB0ZXJtO1xuICB9XG5cbiAgZXZhbHVhdGVDaGlsZE5vZGVzTmFtZUJpbmRpbmcobmFtZUJpbmRpbmcsIHRlcm0sIGNvbnRleHQpIHtcbiAgICBjb25zdCB0eXBlID0gbmFtZUJpbmRpbmcuZ2V0VHlwZSgpLFxuICAgICAgICAgIG5hbWVCaW5kaW5nU3RyaW5nID0gbmFtZUJpbmRpbmcuZ2V0U3RyaW5nKCk7XG5cbiAgICBjb250ZXh0LnRyYWNlKGBFdmFsdWF0aW5nIHRoZSBjaGlsZCBub2RlcyAnJHtuYW1lQmluZGluZ1N0cmluZ30nIG5hbWVkIGJpbmRpbmcuLi5gKTtcblxuICAgIGlmICh0eXBlICE9PSBOT01JTkFMX1ZBTFVFU19UWVBFKSB7XG4gICAgICBjb25zdCBuYW1lQmluZGluZ1N0cmluZyA9IG5hbWVCaW5kaW5nLmdldFN0cmluZygpLFxuICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7bmFtZUJpbmRpbmdTdHJpbmd9JyBuYW1lZCBiaW5kaW5nJ3MgdHlwZSBzaG91bGQgYmUgJyR7Tk9NSU5BTF9WQUxVRVNfVFlQRX0nLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBjb25zdCBwcmltaXRpdmVWYWx1ZSA9IHRlcm0uZ2V0UHJpbWl0aXZlVmFsdWUoKSxcbiAgICAgICAgICBub21pbmFsVmFsdWUgPSBwcmltaXRpdmVWYWx1ZSwgIC8vL1xuICAgICAgICAgIG5vZGUgPSBub21pbmFsVmFsdWUuZ2V0Tm9kZSgpLFxuICAgICAgICAgIG5vZGVOb25UZXJtaW5hbE5vZGUgPSBub2RlLmlzTm9uVGVybWluYWxOb2RlKCk7XG5cbiAgICBpZiAoIW5vZGVOb25UZXJtaW5hbE5vZGUpIHtcbiAgICAgIGNvbnN0IHRlcm1TdHJpbmcgPSB0ZXJtLmdldFN0cmluZygpLFxuICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7dGVybVN0cmluZ30nIHRlcm0ncyBub2RlIG11c3QgYmUgbm9uLXRlcm1pbmFsLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBub2RlLCAgLy8vXG4gICAgICAgICAgY2hpbGROb2RlcyA9IG5vblRlcm1pbmFsTm9kZS5nZXRDaGlsZE5vZGVzKCksXG4gICAgICAgICAgbm9kZXMgPSBjaGlsZE5vZGVzOyAgLy8vXG5cbiAgICB0ZXJtID0gdGVybUZyb21Ob2Rlc0FuZE5vbWluYWxWYWx1ZShub2Rlcywgbm9taW5hbFZhbHVlKTtcblxuICAgIGNvbnN0IHRlcm1TdHRyaW5nID0gdGVybS5nZXRTdHJpbmcoKTtcblxuICAgIGNvbnRleHQuZGVidWcoYC4uLmV2YWx1YXRlZCB0aGUgY2hpbGROb2RlcyAnJHtuYW1lQmluZGluZ1N0cmluZ30nIG5hbWVkIGJpbmRpbmcgYXMgJyR7dGVybVN0dHJpbmd9Jy5gKTtcblxuICAgIHJldHVybiB0ZXJtO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIk9iamVjdEFzc2lnbWVudFwiO1xufSk7XG4iXSwibmFtZXMiOlsiZGVmaW5lIiwiT2JqZWN0QXNzaWdtZW50IiwiRWxlbWVudCIsImNvbnRleHQiLCJzdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsInZhcmlhYmxlIiwibmFtZUJpbmRpbmdzIiwiZ2V0VmFyaWFibGUiLCJnZXROYW1lQmluZGluZ3MiLCJldmFsdWF0ZSIsIm9iamVjdEFzc2lnbm1lbnRTdHJpbmciLCJnZXRTdHJpbmciLCJ0cmFjZSIsInRlcm0iLCJ0ZXJtVHlwZSIsImdldFR5cGUiLCJOT01JTkFMX1ZBTFVFX1RZUEUiLCJ0ZXJtU3RyaW5nIiwibWVzc2FnZSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwibm9kZVByb3BlcnRpZXMiLCJjb21wYXJlTmFtZUJpbmRpbmdzIiwiZm9yRWFjaE5hbWVCaW5kaW5nIiwibmFtZUJpbmRpbmciLCJldmFsdWF0ZU5hbWVCaW5kaW5nIiwiZGVidWciLCJuYW1lQmluZGluZ1N0cmluZyIsIm5hbWUiLCJnZXROYW1lIiwiQ09OVEVOVF9QQVJBTUVURVJfTkFNRSIsImV2YWx1YXRlQ29udGVudE5hbWVCaW5kaW5nIiwiVEVSTUlOQUxfUEFSQU1FVEVSX05BTUUiLCJldmFsdWF0ZVRlcm1pbmFsTmFtZUJpbmRpbmciLCJDSElMRF9OT0RFU19QQVJBTUVURVJfTkFNRSIsImV2YWx1YXRlQ2hpbGROb2Rlc05hbWVCaW5kaW5nIiwiVmFyaWFibGUiLCJlbGVtZW50cyIsImZyb21OYW1lQmluZGluZyIsImFzc2lnbiIsInR5cGUiLCJTVFJJTkdfVFlQRSIsInByaW1pdGl2ZVZhbHVlIiwiZ2V0UHJpbWl0aXZlVmFsdWUiLCJub21pbmFsVmFsdWUiLCJnZXROb2RlIiwibm9kZVRlcm1pbmFsTm9kZSIsImlzVGVybWluYWxOb2RlIiwidGVybWluYWxOb2RlIiwiY29udGVudCIsImdldENvbnRlbnQiLCJzdHJpbmdMaXRlcmFsIiwic3RyaW5nTGl0ZXJhbEZyb21TdHJpbmciLCJ0ZXJtRnJvbVN0cmluZ0xpdGVyYWwiLCJ0ZXJtU3R0cmluZyIsIkJPT0xFQU5fVFlQRSIsInRlcm1pbmFsIiwiYm9vbGVhbiIsInRlcm1Gcm9tQm9vbGVhbiIsIk5PTUlOQUxfVkFMVUVTX1RZUEUiLCJub2RlTm9uVGVybWluYWxOb2RlIiwiaXNOb25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGUiLCJjaGlsZE5vZGVzIiwiZ2V0Q2hpbGROb2RlcyIsIm5vZGVzIiwidGVybUZyb21Ob2Rlc0FuZE5vbWluYWxWYWx1ZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBZUE7OztlQUFBOzs7Z0NBYndCO2tF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
|
|
168
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50L2Fzc2lnbm1lbnQvb2JqZWN0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgZWxlbWVudHMgZnJvbSBcIi4uLy4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi8uLi9leGNlcHRpb25cIjtcbmltcG9ydCBub2RlUHJvcGVydGllcyBmcm9tIFwiLi4vLi4vbm9kZVByb3BlcnRpZXNcIjtcblxuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSBcIi4uLy4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgeyBzdHJpbmdMaXRlcmFsRnJvbVN0cmluZyB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvc3RyaW5nTGl0ZXJhbFwiO1xuaW1wb3J0IHsgdmFsdWVGcm9tTm9kZXNBbmROb21pbmFsVmFsdWUgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL3ZhbHVlXCI7XG5pbXBvcnQgeyB0ZXJtRnJvbUJvb2xlYW4sIHRlcm1Gcm9tU3RyaW5nTGl0ZXJhbCB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvdGVybVwiO1xuaW1wb3J0IHsgU1RSSU5HX1RZUEUsIEJPT0xFQU5fVFlQRSwgTk9NSU5BTF9WQUxVRV9UWVBFLCBOT01JTkFMX1ZBTFVFU19UWVBFIH0gZnJvbSBcIi4uLy4uL3R5cGVzXCI7XG5pbXBvcnQgeyBDT05URU5UX1BBUkFNRVRFUl9OQU1FLCBURVJNSU5BTF9QQVJBTUVURVJfTkFNRSwgQ0hJTERfTk9ERVNfUEFSQU1FVEVSX05BTUUgfSBmcm9tIFwiLi4vLi4vcGFyYW1ldGVyTmFtZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIE9iamVjdEFzc2lnbWVudCBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIHZhcmlhYmxlLCBuYW1lZEJpbmRpbmdzKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMudmFyaWFibGUgPSB2YXJpYWJsZTtcbiAgICB0aGlzLm5hbWVkQmluZGluZ3MgPSBuYW1lZEJpbmRpbmdzO1xuICB9XG5cbiAgZ2V0VmFyaWFibGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFyaWFibGU7XG4gIH1cblxuICBnZXROYW1lZEJpbmRpbmdzKCkge1xuICAgIHJldHVybiB0aGlzLm5hbWVkQmluZGluZ3M7XG4gIH1cblxuICBldmFsdWF0ZShjb250ZXh0KSB7XG4gICAgY29uc3Qgb2JqZWN0QXNzaWdubWVudFN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7IC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgRXZhbHVhdGluZyB0aGUgJyR7b2JqZWN0QXNzaWdubWVudFN0cmluZ30nIG9iamVjdCBhc3NpZ25tZW50Li4uYCk7XG5cbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMudmFyaWFibGUuZXZhbHVhdGUoY29udGV4dCksXG4gICAgICAgICAgdmFsdWVUeXBlID0gdmFsdWUuZ2V0VHlwZSgpO1xuXG4gICAgaWYgKHZhbHVlVHlwZSAhPT0gTk9NSU5BTF9WQUxVRV9UWVBFKSB7XG4gICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7dmFsdWVTdHJpbmd9JyB2YWx1ZSdzICcke3ZhbHVlVHlwZX0nIHR5cGUgc2hvdWxkIGJlICcke05PTUlOQUxfVkFMVUVfVFlQRX0nLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBub2RlUHJvcGVydGllcy5jb21wYXJlTmFtZWRCaW5kaW5ncyh0aGlzLm5hbWVkQmluZGluZ3MsIGNvbnRleHQpO1xuXG4gICAgdGhpcy5uYW1lZEJpbmRpbmdzLmZvckVhY2hOYW1lZEJpbmRpbmcoKG5hbWVkQmluZGluZykgPT4ge1xuICAgICAgdGhpcy5ldmFsdWF0ZU5hbWVkQmluZGluZyhuYW1lZEJpbmRpbmcsIHZhbHVlLCBjb250ZXh0KTtcbiAgICB9KTtcblxuICAgIGNvbnRleHQuZGVidWcoYC4uLmV2YWx1YXRlZCB0aGUgJyR7b2JqZWN0QXNzaWdubWVudFN0cmluZ30nIG9iamVjdCBhc3NpZ25tZW50LmApO1xuICB9XG5cbiAgZXZhbHVhdGVOYW1lZEJpbmRpbmcobmFtZWRCaW5kaW5nLCB0ZXJtLCBjb250ZXh0KSB7XG4gICAgY29uc3QgdGVybVN0cmluZyA9IHRlcm0uZ2V0U3RyaW5nKCksXG4gICAgICAgICAgbmFtZWRCaW5kaW5nU3RyaW5nID0gbmFtZWRCaW5kaW5nLmdldFN0cmluZygpO1xuXG4gICAgY29udGV4dC50cmFjZShgRXZhbHVhdGluZyB0aGUgJyR7bmFtZWRCaW5kaW5nU3RyaW5nfScgbmFtZWQgYmluZGluZyBhZ2FpbnN0IHRoZSAnJHt0ZXJtU3RyaW5nfScgdGVybS4uLmApO1xuXG4gICAgY29uc3QgbmFtZSA9IG5hbWVkQmluZGluZy5nZXROYW1lKCk7XG5cbiAgICBzd2l0Y2ggKG5hbWUpIHtcbiAgICAgIGNhc2UgQ09OVEVOVF9QQVJBTUVURVJfTkFNRToge1xuICAgICAgICB0ZXJtID0gdGhpcy5ldmFsdWF0ZUNvbnRlbnROYW1lZEJpbmRpbmcobmFtZWRCaW5kaW5nLCB0ZXJtLCBjb250ZXh0KTtcblxuICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgY2FzZSBURVJNSU5BTF9QQVJBTUVURVJfTkFNRToge1xuICAgICAgICB0ZXJtID0gdGhpcy5ldmFsdWF0ZVRlcm1pbmFsTmFtZWRCaW5kaW5nKG5hbWVkQmluZGluZywgdGVybSwgY29udGV4dCk7XG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgQ0hJTERfTk9ERVNfUEFSQU1FVEVSX05BTUU6IHtcbiAgICAgICAgdGVybSA9IHRoaXMuZXZhbHVhdGVDaGlsZE5vZGVzTmFtZWRCaW5kaW5nKG5hbWVkQmluZGluZywgdGVybSwgY29udGV4dCk7XG5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgeyBWYXJpYWJsZSB9ID0gZWxlbWVudHMsXG4gICAgICAgICAgdmFyaWFibGUgPSBWYXJpYWJsZS5mcm9tTmFtZWRCaW5kaW5nKG5hbWVkQmluZGluZywgY29udGV4dCk7XG5cbiAgICB2YXJpYWJsZS5hc3NpZ24odGVybSwgY29udGV4dCk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5ldmFsdWF0ZWQgdGhlICcke25hbWVkQmluZGluZ1N0cmluZ30nIHBhcmFtZXRlciBuYW1lZCBhZ2FpbnN0IHRoZSAnJHt0ZXJtU3RyaW5nfScgdGVybS5gKTtcbiAgfVxuXG4gIGV2YWx1YXRlQ29udGVudE5hbWVkQmluZGluZyhuYW1lZEJpbmRpbmcsIHRlcm0sIGNvbnRleHQpIHtcbiAgICBjb25zdCB0eXBlID0gbmFtZWRCaW5kaW5nLmdldFR5cGUoKSxcbiAgICAgICAgICBuYW1lZEJpbmRpbmdTdHJpbmcgPSBuYW1lZEJpbmRpbmcuZ2V0U3RyaW5nKCk7XG5cbiAgICBjb250ZXh0LnRyYWNlKGBFdmFsdWF0aW5nIHRoZSBjb250ZW50ICcke25hbWVkQmluZGluZ1N0cmluZ30nIG5hbWVkIGJpbmRpbmcuLi5gKTtcblxuICAgIGlmICh0eXBlICE9PSBTVFJJTkdfVFlQRSkge1xuICAgICAgY29uc3QgbmFtZWRCaW5kaW5nU3RyaW5nID0gbmFtZWRCaW5kaW5nLmdldFN0cmluZygpLFxuICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7bmFtZWRCaW5kaW5nU3RyaW5nfScgbmFtZWQgYmluZGluZydzIHR5cGUgc2hvdWxkIGJlICcke1NUUklOR19UWVBFfScuYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgdGhyb3cgZXhjZXB0aW9uO1xuICAgIH1cblxuICAgIGNvbnN0IHByaW1pdGl2ZVZhbHVlID0gdGVybS5nZXRQcmltaXRpdmVWYWx1ZSgpLFxuICAgICAgICAgIG5vbWluYWxWYWx1ZSA9IHByaW1pdGl2ZVZhbHVlLCAgLy8vXG4gICAgICAgICAgbm9kZSA9IG5vbWluYWxWYWx1ZS5nZXROb2RlKCksXG4gICAgICAgICAgbm9kZVRlcm1pbmFsTm9kZSA9IG5vZGUuaXNUZXJtaW5hbE5vZGUoKTtcblxuICAgIGlmICghbm9kZVRlcm1pbmFsTm9kZSkge1xuICAgICAgY29uc3QgdGVybVN0cmluZyA9IHRlcm0uZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICBtZXNzYWdlID0gYFRoZSAnJHt0ZXJtU3RyaW5nfScgdGVybSdzIG5vZGUgbXVzdCBiZSB0ZXJtaW5hbC5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgY29uc3QgdGVybWluYWxOb2RlID0gbm9kZSwgIC8vL1xuICAgICAgICAgIGNvbnRlbnQgPSB0ZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpLFxuICAgICAgICAgIHN0cmluZyA9IGNvbnRlbnQsICAvLy9cbiAgICAgICAgICBzdHJpbmdMaXRlcmFsID0gc3RyaW5nTGl0ZXJhbEZyb21TdHJpbmcoc3RyaW5nKTtcblxuICAgIHRlcm0gPSB0ZXJtRnJvbVN0cmluZ0xpdGVyYWwoc3RyaW5nTGl0ZXJhbCwgY29udGV4dCk7XG5cbiAgICBjb25zdCB0ZXJtU3R0cmluZyA9IHRlcm0uZ2V0U3RyaW5nKCk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5ldmFsdWF0ZWQgdGhlIGNvbnRlbnQgJyR7bmFtZWRCaW5kaW5nU3RyaW5nfScgbmFtZWQgYmluZGluZyBhcyAnJHt0ZXJtU3R0cmluZ30nLmApO1xuXG4gICAgcmV0dXJuIHRlcm07XG4gIH1cblxuICBldmFsdWF0ZVRlcm1pbmFsTmFtZWRCaW5kaW5nKG5hbWVkQmluZGluZywgdGVybSwgY29udGV4dCkge1xuICAgIGNvbnN0IHR5cGUgPSBuYW1lZEJpbmRpbmcuZ2V0VHlwZSgpLFxuICAgICAgICAgIG5hbWVkQmluZGluZ1N0cmluZyA9IG5hbWVkQmluZGluZy5nZXRTdHJpbmcoKTtcblxuICAgIGNvbnRleHQudHJhY2UoYEV2YWx1YXRpbmcgdGhlIHRlcm1pbmFsICcke25hbWVkQmluZGluZ1N0cmluZ30nIG5hbWVkIGJpbmRpbmcuLi5gKTtcblxuICAgIGlmICh0eXBlICE9PSBCT09MRUFOX1RZUEUpIHtcbiAgICAgIGNvbnN0IG5hbWVkQmluZGluZ1N0cmluZyA9IG5hbWVkQmluZGluZy5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgIG1lc3NhZ2UgPSBgVGhlICcke25hbWVkQmluZGluZ1N0cmluZ30nIG5hbWVkIGJpbmRpbmcncyB0eXBlIHNob3VsZCBiZSAnJHtCT09MRUFOX1RZUEV9Jy5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgY29uc3QgcHJpbWl0aXZlVmFsdWUgPSB0ZXJtLmdldFByaW1pdGl2ZVZhbHVlKCksXG4gICAgICAgICAgbm9taW5hbFZhbHVlID0gcHJpbWl0aXZlVmFsdWUsICAvLy9cbiAgICAgICAgICBub2RlID0gbm9taW5hbFZhbHVlLmdldE5vZGUoKSxcbiAgICAgICAgICBub2RlVGVybWluYWxOb2RlID0gbm9kZS5pc1Rlcm1pbmFsTm9kZSgpLFxuICAgICAgICAgIHRlcm1pbmFsID0gbm9kZVRlcm1pbmFsTm9kZTsgIC8vL1xuXG4gICAgY29uc3QgYm9vbGVhbiA9IHRlcm1pbmFsOyAvLy9cblxuICAgIHRlcm0gPSB0ZXJtRnJvbUJvb2xlYW4oYm9vbGVhbiwgY29udGV4dCk7ICAvLy9cblxuICAgIGNvbnN0IHRlcm1TdHRyaW5nID0gdGVybS5nZXRTdHJpbmcoKTtcblxuICAgIGNvbnRleHQuZGVidWcoYC4uLmV2YWx1YXRlZCB0aGUgdGVybWluYWwgJyR7bmFtZWRCaW5kaW5nU3RyaW5nfScgbmFtZWQgYmluZGluZyBhcyAnJHt0ZXJtU3R0cmluZ30nLmApO1xuXG4gICAgcmV0dXJuIHRlcm07XG4gIH1cblxuICBldmFsdWF0ZUNoaWxkTm9kZXNOYW1lZEJpbmRpbmcobmFtZWRCaW5kaW5nLCB0ZXJtLCBjb250ZXh0KSB7XG4gICAgY29uc3QgdHlwZSA9IG5hbWVkQmluZGluZy5nZXRUeXBlKCksXG4gICAgICAgICAgbmFtZWRCaW5kaW5nU3RyaW5nID0gbmFtZWRCaW5kaW5nLmdldFN0cmluZygpO1xuXG4gICAgY29udGV4dC50cmFjZShgRXZhbHVhdGluZyB0aGUgY2hpbGQgbm9kZXMgJyR7bmFtZWRCaW5kaW5nU3RyaW5nfScgbmFtZWQgYmluZGluZy4uLmApO1xuXG4gICAgaWYgKHR5cGUgIT09IE5PTUlOQUxfVkFMVUVTX1RZUEUpIHtcbiAgICAgIGNvbnN0IG5hbWVkQmluZGluZ1N0cmluZyA9IG5hbWVkQmluZGluZy5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgIG1lc3NhZ2UgPSBgVGhlICcke25hbWVkQmluZGluZ1N0cmluZ30nIG5hbWVkIGJpbmRpbmcncyB0eXBlIHNob3VsZCBiZSAnJHtOT01JTkFMX1ZBTFVFU19UWVBFfScuYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgdGhyb3cgZXhjZXB0aW9uO1xuICAgIH1cblxuICAgIGNvbnN0IHByaW1pdGl2ZVZhbHVlID0gdGVybS5nZXRQcmltaXRpdmVWYWx1ZSgpLFxuICAgICAgICAgIG5vbWluYWxWYWx1ZSA9IHByaW1pdGl2ZVZhbHVlLCAgLy8vXG4gICAgICAgICAgbm9kZSA9IG5vbWluYWxWYWx1ZS5nZXROb2RlKCksXG4gICAgICAgICAgbm9kZU5vblRlcm1pbmFsTm9kZSA9IG5vZGUuaXNOb25UZXJtaW5hbE5vZGUoKTtcblxuICAgIGlmICghbm9kZU5vblRlcm1pbmFsTm9kZSkge1xuICAgICAgY29uc3QgdGVybVN0cmluZyA9IHRlcm0uZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICBtZXNzYWdlID0gYFRoZSAnJHt0ZXJtU3RyaW5nfScgdGVybSdzIG5vZGUgbXVzdCBiZSBub24tdGVybWluYWwuYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgdGhyb3cgZXhjZXB0aW9uO1xuICAgIH1cblxuICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IG5vZGUsICAvLy9cbiAgICAgICAgICBjaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICBub2RlcyA9IGNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgIHZhbHVlID0gdmFsdWVGcm9tTm9kZXNBbmROb21pbmFsVmFsdWUobm9kZXMsIG5vbWluYWxWYWx1ZSksXG4gICAgICAgICAgdmFsdWVTdHRyaW5nID0gdmFsdWUuZ2V0U3RyaW5nKCk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5ldmFsdWF0ZWQgdGhlIGNoaWxkTm9kZXMgJyR7bmFtZWRCaW5kaW5nU3RyaW5nfScgbmFtZWQgYmluZGluZyBhcyAnJHt2YWx1ZVN0dHJpbmd9Jy5gKTtcblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJPYmplY3RBc3NpZ21lbnRcIjtcbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIk9iamVjdEFzc2lnbWVudCIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ2YXJpYWJsZSIsIm5hbWVkQmluZGluZ3MiLCJnZXRWYXJpYWJsZSIsImdldE5hbWVkQmluZGluZ3MiLCJldmFsdWF0ZSIsIm9iamVjdEFzc2lnbm1lbnRTdHJpbmciLCJnZXRTdHJpbmciLCJ0cmFjZSIsInZhbHVlIiwidmFsdWVUeXBlIiwiZ2V0VHlwZSIsIk5PTUlOQUxfVkFMVUVfVFlQRSIsInZhbHVlU3RyaW5nIiwibWVzc2FnZSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwibm9kZVByb3BlcnRpZXMiLCJjb21wYXJlTmFtZWRCaW5kaW5ncyIsImZvckVhY2hOYW1lZEJpbmRpbmciLCJuYW1lZEJpbmRpbmciLCJldmFsdWF0ZU5hbWVkQmluZGluZyIsImRlYnVnIiwidGVybSIsInRlcm1TdHJpbmciLCJuYW1lZEJpbmRpbmdTdHJpbmciLCJuYW1lIiwiZ2V0TmFtZSIsIkNPTlRFTlRfUEFSQU1FVEVSX05BTUUiLCJldmFsdWF0ZUNvbnRlbnROYW1lZEJpbmRpbmciLCJURVJNSU5BTF9QQVJBTUVURVJfTkFNRSIsImV2YWx1YXRlVGVybWluYWxOYW1lZEJpbmRpbmciLCJDSElMRF9OT0RFU19QQVJBTUVURVJfTkFNRSIsImV2YWx1YXRlQ2hpbGROb2Rlc05hbWVkQmluZGluZyIsIlZhcmlhYmxlIiwiZWxlbWVudHMiLCJmcm9tTmFtZWRCaW5kaW5nIiwiYXNzaWduIiwidHlwZSIsIlNUUklOR19UWVBFIiwicHJpbWl0aXZlVmFsdWUiLCJnZXRQcmltaXRpdmVWYWx1ZSIsIm5vbWluYWxWYWx1ZSIsImdldE5vZGUiLCJub2RlVGVybWluYWxOb2RlIiwiaXNUZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGUiLCJjb250ZW50IiwiZ2V0Q29udGVudCIsInN0cmluZ0xpdGVyYWwiLCJzdHJpbmdMaXRlcmFsRnJvbVN0cmluZyIsInRlcm1Gcm9tU3RyaW5nTGl0ZXJhbCIsInRlcm1TdHRyaW5nIiwiQk9PTEVBTl9UWVBFIiwidGVybWluYWwiLCJib29sZWFuIiwidGVybUZyb21Cb29sZWFuIiwiTk9NSU5BTF9WQUxVRVNfVFlQRSIsIm5vZGVOb25UZXJtaW5hbE5vZGUiLCJpc05vblRlcm1pbmFsTm9kZSIsIm5vblRlcm1pbmFsTm9kZSIsImNoaWxkTm9kZXMiLCJnZXRDaGlsZE5vZGVzIiwibm9kZXMiLCJ2YWx1ZUZyb21Ob2Rlc0FuZE5vbWluYWxWYWx1ZSIsInZhbHVlU3R0cmluZyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBZUE7OztlQUFBOzs7Z0NBYndCO2tFQUVIO2tFQUNDO3VFQUNLOytCQUdhO3VCQUNNO3NCQUNTO3VCQUM0QjtnQ0FDUzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7TUFFNUYsV0FBZUEsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyx3QkFBd0JDLHVCQUFPO0lBQ3pELFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsUUFBUSxFQUFFQyxhQUFhLENBQUU7UUFDdEUsS0FBSyxDQUFDTCxTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLFFBQVEsR0FBR0E7UUFDaEIsSUFBSSxDQUFDQyxhQUFhLEdBQUdBO0lBQ3ZCO0lBRUFDLGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQ0YsUUFBUTtJQUN0QjtJQUVBRyxtQkFBbUI7UUFDakIsT0FBTyxJQUFJLENBQUNGLGFBQWE7SUFDM0I7SUFFQUcsU0FBU1IsT0FBTyxFQUFFO1FBQ2hCLE1BQU1TLHlCQUF5QixJQUFJLENBQUNDLFNBQVMsSUFBSSxHQUFHO1FBRXBEVixRQUFRVyxLQUFLLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRUYsdUJBQXVCLHNCQUFzQixDQUFDO1FBRS9FLE1BQU1HLFFBQVEsSUFBSSxDQUFDUixRQUFRLENBQUNJLFFBQVEsQ0FBQ1IsVUFDL0JhLFlBQVlELE1BQU1FLE9BQU87UUFFL0IsSUFBSUQsY0FBY0UseUJBQWtCLEVBQUU7WUFDcEMsTUFBTUMsY0FBY0osTUFBTUYsU0FBUyxJQUM3Qk8sVUFBVSxDQUFDLEtBQUssRUFBRUQsWUFBWSxXQUFXLEVBQUVILFVBQVUsa0JBQWtCLEVBQUVFLHlCQUFrQixDQUFDLEVBQUUsQ0FBQyxFQUMvRkcsWUFBWUMsa0JBQVMsQ0FBQ0MsV0FB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
|
|
@@ -23,16 +23,16 @@ const _default = (0, _elements.define)(class VariableAssignment extends _occamla
|
|
|
23
23
|
return this.expression;
|
|
24
24
|
}
|
|
25
25
|
async evaluate(context) {
|
|
26
|
-
let
|
|
26
|
+
let value;
|
|
27
27
|
const variableAssignmentString = this.getString(); ///
|
|
28
28
|
context.trace(`Evaluating the '${variableAssignmentString}' variable assignment...`);
|
|
29
|
-
|
|
30
|
-
this.variable.assign(
|
|
31
|
-
const
|
|
32
|
-
context.debug(`...evaluated the '${variableAssignmentString}' variable assignment as '${
|
|
33
|
-
return
|
|
29
|
+
value = await this.expression.evaluate(context);
|
|
30
|
+
this.variable.assign(value, context);
|
|
31
|
+
const valueString = value.getString();
|
|
32
|
+
context.debug(`...evaluated the '${variableAssignmentString}' variable assignment as '${valueString}'.`);
|
|
33
|
+
return value;
|
|
34
34
|
}
|
|
35
35
|
static name = "VariableAssignment";
|
|
36
36
|
});
|
|
37
37
|
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50L2Fzc2lnbm1lbnQvdmFyaWFibGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi8uLi9lbGVtZW50c1wiO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgVmFyaWFibGVBc3NpZ25tZW50IGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdmFyaWFibGUsIGV4cHJlc3Npb24pIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy52YXJpYWJsZSA9IHZhcmlhYmxlO1xuICAgIHRoaXMuZXhwcmVzc2lvbiA9IGV4cHJlc3Npb247XG4gIH1cblxuICBnZXRWYXJpYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YXJpYWJsZTtcbiAgfVxuXG4gIGdldEV4cHJlc3Npb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuZXhwcmVzc2lvbjtcbiAgfVxuXG4gIGFzeW5jIGV2YWx1YXRlKGNvbnRleHQpIHtcbiAgICBsZXQgdmFsdWU7XG5cbiAgICBjb25zdCB2YXJpYWJsZUFzc2lnbm1lbnRTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpOyAvLy9cblxuICAgIGNvbnRleHQudHJhY2UoYEV2YWx1YXRpbmcgdGhlICcke3ZhcmlhYmxlQXNzaWdubWVudFN0cmluZ30nIHZhcmlhYmxlIGFzc2lnbm1lbnQuLi5gKTtcblxuICAgIHZhbHVlID0gYXdhaXQgdGhpcy5leHByZXNzaW9uLmV2YWx1YXRlKGNvbnRleHQpO1xuXG4gICAgdGhpcy52YXJpYWJsZS5hc3NpZ24odmFsdWUsIGNvbnRleHQpO1xuXG4gICAgY29uc3QgdmFsdWVTdHJpbmcgPSB2YWx1ZS5nZXRTdHJpbmcoKTtcblxuICAgIGNvbnRleHQuZGVidWcoYC4uLmV2YWx1YXRlZCB0aGUgJyR7dmFyaWFibGVBc3NpZ25tZW50U3RyaW5nfScgdmFyaWFibGUgYXNzaWdubWVudCBhcyAnJHt2YWx1ZVN0cmluZ30nLmApO1xuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlZhcmlhYmxlQXNzaWdubWVudFwiO1xufSk7XG4iXSwibmFtZXMiOlsiZGVmaW5lIiwiVmFyaWFibGVBc3NpZ25tZW50IiwiRWxlbWVudCIsImNvbnRleHQiLCJzdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsInZhcmlhYmxlIiwiZXhwcmVzc2lvbiIsImdldFZhcmlhYmxlIiwiZ2V0RXhwcmVzc2lvbiIsImV2YWx1YXRlIiwidmFsdWUiLCJ2YXJpYWJsZUFzc2lnbm1lbnRTdHJpbmciLCJnZXRTdHJpbmciLCJ0cmFjZSIsImFzc2lnbiIsInZhbHVlU3RyaW5nIiwiZGVidWciLCJuYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFNQTs7O2VBQUE7OztnQ0FKd0I7MEJBRUQ7TUFFdkIsV0FBZUEsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQywyQkFBMkJDLHVCQUFPO0lBQzVELFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsUUFBUSxFQUFFQyxVQUFVLENBQUU7UUFDbkUsS0FBSyxDQUFDTCxTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLFFBQVEsR0FBR0E7UUFDaEIsSUFBSSxDQUFDQyxVQUFVLEdBQUdBO0lBQ3BCO0lBRUFDLGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQ0YsUUFBUTtJQUN0QjtJQUVBRyxnQkFBZ0I7UUFDZCxPQUFPLElBQUksQ0FBQ0YsVUFBVTtJQUN4QjtJQUVBLE1BQU1HLFNBQVNSLE9BQU8sRUFBRTtRQUN0QixJQUFJUztRQUVKLE1BQU1DLDJCQUEyQixJQUFJLENBQUNDLFNBQVMsSUFBSSxHQUFHO1FBRXREWCxRQUFRWSxLQUFLLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRUYseUJBQXlCLHdCQUF3QixDQUFDO1FBRW5GRCxRQUFRLE1BQU0sSUFBSSxDQUFDSixVQUFVLENBQUNHLFFBQVEsQ0FBQ1I7UUFFdkMsSUFBSSxDQUFDSSxRQUFRLENBQUNTLE1BQU0sQ0FBQ0osT0FBT1Q7UUFFNUIsTUFBTWMsY0FBY0wsTUFBTUUsU0FBUztRQUVuQ1gsUUFBUWUsS0FBSyxDQUFDLENBQUMsa0JBQWtCLEVBQUVMLHlCQUF5QiwwQkFBMEIsRUFBRUksWUFBWSxFQUFFLENBQUM7UUFFdkcsT0FBT0w7SUFDVDtJQUVBLE9BQU9PLE9BQU8scUJBQXFCO0FBQ3JDIn0=
|
package/lib/element/binding.js
CHANGED
|
@@ -17,10 +17,11 @@ function _interop_require_default(obj) {
|
|
|
17
17
|
};
|
|
18
18
|
}
|
|
19
19
|
const _default = (0, _elements.define)(class Binding extends _occamlanguages.Element {
|
|
20
|
-
constructor(context, string, node, breakPoint, type, name){
|
|
20
|
+
constructor(context, string, node, breakPoint, type, name, elided){
|
|
21
21
|
super(context, string, node, breakPoint);
|
|
22
22
|
this.type = type;
|
|
23
23
|
this.name = name;
|
|
24
|
+
this.elided = elided;
|
|
24
25
|
}
|
|
25
26
|
getType() {
|
|
26
27
|
return this.type;
|
|
@@ -28,7 +29,13 @@ const _default = (0, _elements.define)(class Binding extends _occamlanguages.Ele
|
|
|
28
29
|
getName() {
|
|
29
30
|
return this.name;
|
|
30
31
|
}
|
|
32
|
+
isElided() {
|
|
33
|
+
return this.elided;
|
|
34
|
+
}
|
|
31
35
|
compareTerm(term, context) {
|
|
36
|
+
if (this.elided) {
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
32
39
|
const termString = term.getString(), bindingString = this.getString(); ///
|
|
33
40
|
context.trace(`Comparing the '${termString}' term against the '${bindingString}' binding...`);
|
|
34
41
|
const termType = term.getType();
|
|
@@ -41,4 +48,4 @@ const _default = (0, _elements.define)(class Binding extends _occamlanguages.Ele
|
|
|
41
48
|
static name = "Binding";
|
|
42
49
|
});
|
|
43
50
|
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L2JpbmRpbmcuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIEJpbmRpbmcgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB0eXBlLCBuYW1lLCBlbGlkZWQpIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xuICAgIHRoaXMuZWxpZGVkID0gZWxpZGVkO1xuICB9XG5cbiAgZ2V0VHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG5cbiAgaXNFbGlkZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZWxpZGVkO1xuICB9XG5cbiAgY29tcGFyZVRlcm0odGVybSwgY29udGV4dCkge1xuICAgIGlmICh0aGlzLmVsaWRlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHRlcm1TdHJpbmcgPSB0ZXJtLmdldFN0cmluZygpLFxuICAgICAgICAgIGJpbmRpbmdTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpOyAgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBDb21wYXJpbmcgdGhlICcke3Rlcm1TdHJpbmd9JyB0ZXJtIGFnYWluc3QgdGhlICcke2JpbmRpbmdTdHJpbmd9JyBiaW5kaW5nLi4uYCk7XG5cbiAgICBjb25zdCB0ZXJtVHlwZSA9IHRlcm0uZ2V0VHlwZSgpO1xuXG4gICAgaWYgKHRoaXMudHlwZSAhPT0gdGVybVR5cGUpIHtcbiAgICAgIGNvbnN0IG1lc3NhZ2UgPSBgVGhlICcke3Rlcm1TdHJpbmd9JyB0ZXJtJ3MgJyR7dGVybVR5cGV9JyB0eXBlIGlzIG5vdCBlcXVhbCB0byB0aGUgJyR7YmluZGluZ1N0cmluZ30nIGJpbmRpbmcncyAnJHt0aGlzLnR5cGV9JyB0eXBlLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5jb21wYXJpbmcgdGhlICcke3Rlcm1TdHJpbmd9JyB0ZXJtIGFnYWluc3QgdGhlICcke2JpbmRpbmdTdHJpbmd9JyBiaW5kaW5nLmApO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIkJpbmRpbmdcIjtcbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIkJpbmRpbmciLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwidHlwZSIsIm5hbWUiLCJlbGlkZWQiLCJnZXRUeXBlIiwiZ2V0TmFtZSIsImlzRWxpZGVkIiwiY29tcGFyZVRlcm0iLCJ0ZXJtIiwidGVybVN0cmluZyIsImdldFN0cmluZyIsImJpbmRpbmdTdHJpbmciLCJ0cmFjZSIsInRlcm1UeXBlIiwibWVzc2FnZSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwiZGVidWciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVFBOzs7ZUFBQTs7O2dDQU53QjtrRUFFRjswQkFFQzs7Ozs7O01BRXZCLFdBQWVBLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsZ0JBQWdCQyx1QkFBTztJQUNqRCxZQUFZQyxPQUFPLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxVQUFVLEVBQUVDLElBQUksRUFBRUMsSUFBSSxFQUFFQyxNQUFNLENBQUU7UUFDakUsS0FBSyxDQUFDTixTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLE1BQU0sR0FBR0E7SUFDaEI7SUFFQUMsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDSCxJQUFJO0lBQ2xCO0lBRUFJLFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQ0gsSUFBSTtJQUNsQjtJQUVBSSxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUNILE1BQU07SUFDcEI7SUFFQUksWUFBWUMsSUFBSSxFQUFFWCxPQUFPLEVBQUU7UUFDekIsSUFBSSxJQUFJLENBQUNNLE1BQU0sRUFBRTtZQUNmO1FBQ0Y7UUFFQSxNQUFNTSxhQUFhRCxLQUFLRSxTQUFTLElBQzNCQyxnQkFBZ0IsSUFBSSxDQUFDRCxTQUFTLElBQUssR0FBRztRQUU1Q2IsUUFBUWUsS0FBSyxDQUFDLENBQUMsZUFBZSxFQUFFSCxXQUFXLG9CQUFvQixFQUFFRSxjQUFjLFlBQVksQ0FBQztRQUU1RixNQUFNRSxXQUFXTCxLQUFLSixPQUFPO1FBRTdCLElBQUksSUFBSSxDQUFDSCxJQUFJLEtBQUtZLFVBQVU7WUFDMUIsTUFBTUMsVUFBVSxDQUFDLEtBQUssRUFBRUwsV0FBVyxVQUFVLEVBQUVJLFNBQVMsNEJBQTRCLEVBQUVGLGNBQWMsYUFBYSxFQUFFLElBQUksQ0FBQ1YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUMvSGMsWUFBWUMsa0JBQVMsQ0FBQ0MsV0FBVyxDQUFDSDtZQUV4QyxNQUFNQztRQUNSO1FBRUFsQixRQUFRcUIsS0FBSyxDQUFDLENBQUMsa0JBQWtCLEVBQUVULFdBQVcsb0JBQW9CLEVBQUVFLGNBQWMsVUFBVSxDQUFDO0lBQy9GO0lBRUEsT0FBT1QsT0FBTyxVQUFVO0FBQzFCIn0=
|
|
@@ -79,8 +79,8 @@ const _default = (0, _elements.define)(class Expression extends _occamlanguages.
|
|
|
79
79
|
let value;
|
|
80
80
|
if (false) {
|
|
81
81
|
///
|
|
82
|
-
} else if (this.
|
|
83
|
-
value = this.
|
|
82
|
+
} else if (this.term !== null) {
|
|
83
|
+
value = this.term.evaluate(context);
|
|
84
84
|
} else if (this.nodeQuery !== null) {
|
|
85
85
|
value = this.nodeQuery.evaluate(context);
|
|
86
86
|
} else if (this.nodesQuery !== null) {
|
|
@@ -103,4 +103,4 @@ const _default = (0, _elements.define)(class Expression extends _occamlanguages.
|
|
|
103
103
|
static name = "Expression";
|
|
104
104
|
});
|
|
105
105
|
|
|
106
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
106
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L2V4cHJlc3Npb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgRXhwcmVzc2lvbiBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIHRlcm0sIHNvbWUsIGV2ZXJ5LCByZWR1Y2UsIHRlcm5hcnksIG5vZGVRdWVyeSwgbm9kZXNRdWVyeSwgcmV0dXJuQmxvY2ssIHByb2NlZHVyZUNhbGwpIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy50ZXJtID0gdGVybTtcbiAgICB0aGlzLnNvbWUgPSBzb21lO1xuICAgIHRoaXMuZXZlcnkgPSBldmVyeTtcbiAgICB0aGlzLnJlZHVjZSA9IHJlZHVjZTtcbiAgICB0aGlzLnRlcm5hcnkgPSB0ZXJuYXJ5O1xuICAgIHRoaXMubm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5O1xuICAgIHRoaXMubm9kZXNRdWVyeSA9IG5vZGVzUXVlcnk7XG4gICAgdGhpcy5yZXR1cm5CbG9jayA9IHJldHVybkJsb2NrO1xuICAgIHRoaXMucHJvY2VkdXJlQ2FsbCA9IHByb2NlZHVyZUNhbGw7XG4gIH1cblxuICBnZXRUZXJtKCkge1xuICAgIHJldHVybiB0aGlzLnRlcm07XG4gIH1cblxuICBnZXRTb21lKCkge1xuICAgIHJldHVybiB0aGlzLnNvbWU7XG4gIH1cblxuICBnZXRFdmVyeSgpIHtcbiAgICByZXR1cm4gdGhpcy5ldmVyeTtcbiAgfVxuXG4gIGdldFJlZHVjZSgpIHtcbiAgICByZXR1cm4gdGhpcy5yZWR1Y2U7XG4gIH1cblxuICBnZXRUZXJuYXJ5KCkge1xuICAgIHJldHVybiB0aGlzLnRlcm5heTtcbiAgfVxuXG4gIGdldE5vZGVRdWVyeSgpIHtcbiAgICByZXR1cm4gdGhpcy5ub2RlUXVlcnk7XG4gIH1cblxuICBnZXROb2Rlc1F1ZXJ5KCkge1xuICAgIHJldHVybiB0aGlzLm5vZGVzUXVlcnk7XG4gIH1cblxuICBnZXRSZXR1cm5CbG9jaygpIHtcbiAgICByZXR1cm4gdGhpcy5yZXR1cm5CbG9jaztcbiAgfVxuXG4gIGdldFByb2NlZHVyZUNhbGwoKSB7XG4gICAgcmV0dXJuIHRoaXMucHJvY2VkdXJlQ2FsbDtcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgbGV0IHR5cGU7XG5cbiAgICBpZiAoZmFsc2UpIHtcbiAgICAgIC8vL1xuICAgIH0gZWxzZSBpZiAodGhpcy50ZXJtICE9PSBudWxsKSB7XG4gICAgICB0eXBlID0gdGhpcy50ZXJtLmdldFR5cGUoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuc29tZSAhPT0gbnVsbCkge1xuICAgICAgdHlwZSA9IHRoaXMuc29tZS5nZXRUeXBlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmV2ZXJ5ICE9PSBudWxsKSB7XG4gICAgICB0eXBlID0gdGhpcy5ldmVyeS5nZXRUeXBlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnJlZHVjZSAhPT0gbnVsbCkge1xuICAgICAgdHlwZSA9IHRoaXMucmVkdWNlLmdldFR5cGUoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMudGVybmFyeSAhPT0gbnVsbCkge1xuICAgICAgdHlwZSA9IHRoaXMudGVybmFyeS5nZXRUeXBlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLm5vZGVRdWVyeSAhPT0gbnVsbCkge1xuICAgICAgdHlwZSA9IHRoaXMubm9kZVF1ZXJ5LmdldFR5cGUoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMubm9kZXNRdWVyeSAhPT0gbnVsbCkge1xuICAgICAgdHlwZSA9IHRoaXMubm9kZXNRdWVyeS5nZXRUeXBlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnJldHVybkJsb2NrICE9PSBudWxsKSB7XG4gICAgICB0eXBlID0gdGhpcy5yZXR1cm5CbG9jay5nZXRUeXBlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnByb2NlZHVyZUNhbGwgIT09IG51bGwpIHtcbiAgICAgIHR5cGUgPSB0aGlzLnByb2NlZHVyZUNhbGwuZ2V0VHlwZSgpO1xuICAgIH1cblxuICAgIHJldHVybiB0eXBlO1xuICB9XG5cbiAgYXN5bmMgZXZhbHVhdGUoY29udGV4dCkge1xuICAgIGxldCB2YWx1ZTtcblxuICAgIGlmIChmYWxzZSkge1xuICAgICAgLy8vXG4gICAgfSBlbHNlIGlmICh0aGlzLnRlcm0gIT09IG51bGwpIHtcbiAgICAgIHZhbHVlID0gdGhpcy50ZXJtLmV2YWx1YXRlKGNvbnRleHQpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5ub2RlUXVlcnkgIT09IG51bGwpIHtcbiAgICAgIHZhbHVlID0gdGhpcy5ub2RlUXVlcnkuZXZhbHVhdGUoY29udGV4dCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLm5vZGVzUXVlcnkgIT09IG51bGwpIHtcbiAgICAgIHZhbHVlID0gdGhpcy5ub2Rlc1F1ZXJ5LmV2YWx1YXRlKGNvbnRleHQpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5zb21lICE9PSBudWxsKSB7XG4gICAgICB2YWx1ZSA9IGF3YWl0IHRoaXMuc29tZS5ldmFsdWF0ZShjb250ZXh0KTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuZXZlcnkgIT09IG51bGwpIHtcbiAgICAgIHZhbHVlID0gYXdhaXQgIHRoaXMuZXZlcnkuZXZhbHVhdGUoY29udGV4dCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnJlZHVjZSAhPT0gbnVsbCkge1xuICAgICAgdmFsdWUgPSBhd2FpdCB0aGlzLnJlZHVjZS5ldmFsdWF0ZShjb250ZXh0KTtcbiAgICB9IGVsc2UgaWYgKHRoaXMudGVybmFyeSAhPT0gbnVsbCkge1xuICAgICAgdmFsdWUgPSBhd2FpdCB0aGlzLnRlcm5hcnkuZXZhbHVhdGUoY29udGV4dCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnJldHVybkJsb2NrICE9PSBudWxsKSB7XG4gICAgICB2YWx1ZSA9IGF3YWl0IHRoaXMucmV0dXJuQmxvY2suZXZhbHVhdGUoY29udGV4dCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnByb2NlZHVyZUNhbGwgIT09IG51bGwpIHtcbiAgICAgIHZhbHVlID0gYXdhaXQgdGhpcy5wcm9jZWR1cmVDYWxsLmV2YWx1YXRlKGNvbnRleHQpO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJFeHByZXNzaW9uXCI7XG59KTtcbiJdLCJuYW1lcyI6WyJkZWZpbmUiLCJFeHByZXNzaW9uIiwiRWxlbWVudCIsImNvbnRleHQiLCJzdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsInRlcm0iLCJzb21lIiwiZXZlcnkiLCJyZWR1Y2UiLCJ0ZXJuYXJ5Iiwibm9kZVF1ZXJ5Iiwibm9kZXNRdWVyeSIsInJldHVybkJsb2NrIiwicHJvY2VkdXJlQ2FsbCIsImdldFRlcm0iLCJnZXRTb21lIiwiZ2V0RXZlcnkiLCJnZXRSZWR1Y2UiLCJnZXRUZXJuYXJ5IiwidGVybmF5IiwiZ2V0Tm9kZVF1ZXJ5IiwiZ2V0Tm9kZXNRdWVyeSIsImdldFJldHVybkJsb2NrIiwiZ2V0UHJvY2VkdXJlQ2FsbCIsImdldFR5cGUiLCJ0eXBlIiwiZXZhbHVhdGUiLCJ2YWx1ZSIsIm5hbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQU1BOzs7ZUFBQTs7O2dDQUp3QjswQkFFRDtNQUV2QixXQUFlQSxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLG1CQUFtQkMsdUJBQU87SUFDcEQsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxJQUFJLEVBQUVDLElBQUksRUFBRUMsS0FBSyxFQUFFQyxNQUFNLEVBQUVDLE9BQU8sRUFBRUMsU0FBUyxFQUFFQyxVQUFVLEVBQUVDLFdBQVcsRUFBRUMsYUFBYSxDQUFFO1FB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
|
package/lib/element/nodeQuery.js
CHANGED
|
@@ -13,7 +13,7 @@ const _necessary = require("necessary");
|
|
|
13
13
|
const _exception = /*#__PURE__*/ _interop_require_default(require("../exception"));
|
|
14
14
|
const _elements = require("../elements");
|
|
15
15
|
const _types = require("../types");
|
|
16
|
-
const
|
|
16
|
+
const _value = require("../utilities/value");
|
|
17
17
|
function _interop_require_default(obj) {
|
|
18
18
|
return obj && obj.__esModule ? obj : {
|
|
19
19
|
default: obj
|
|
@@ -60,7 +60,7 @@ const _default = (0, _elements.define)(class NodeQuery extends _occamlanguages.E
|
|
|
60
60
|
}
|
|
61
61
|
const firstNode = first(nodes);
|
|
62
62
|
node = firstNode; ///
|
|
63
|
-
value = (0,
|
|
63
|
+
value = (0, _value.valueFromNodeAndNominalValue)(node, nominalValue);
|
|
64
64
|
const valueString = value.getString();
|
|
65
65
|
context.debug(`...evaluated the '${nodeQueryString}' node query as '${valueString}'.`);
|
|
66
66
|
return value;
|
|
@@ -68,4 +68,4 @@ const _default = (0, _elements.define)(class NodeQuery extends _occamlanguages.E
|
|
|
68
68
|
static name = "NodeQuery";
|
|
69
69
|
});
|
|
70
70
|
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L25vZGVRdWVyeS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcbmltcG9ydCB7IGFycmF5VXRpbGl0aWVzIH0gZnJvbSBcIm5lY2Vzc2FyeVwiO1xuXG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgeyBOT01JTkFMX1ZBTFVFX1RZUEUgfSBmcm9tIFwiLi4vdHlwZXNcIjtcbmltcG9ydCB7IHZhbHVlRnJvbU5vZGVBbmROb21pbmFsVmFsdWUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3ZhbHVlXCI7XG5cbmNvbnN0IHsgZmlyc3QgfSA9IGFycmF5VXRpbGl0aWVzO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgTm9kZVF1ZXJ5IGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdmFyaWFibGUsIHF1ZXJ5KSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMudmFyaWFibGUgPSB2YXJpYWJsZTtcbiAgICB0aGlzLnF1ZXJ5ID0gcXVlcnk7XG4gIH1cblxuICBnZXRWYXJpYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YXJpYWJsZTtcbiAgfVxuXG4gIGdldFF1ZXJ5KCkge1xuICAgIHJldHVybiB0aGlzLnF1ZXJ5O1xuICB9XG5cbiAgZXZhbHVhdGUoY29udGV4dCkge1xuICAgIGxldCB2YWx1ZTtcblxuICAgIGNvbnN0IG5vZGVRdWVyeVN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7ICAvLy9cblxuICAgIGNvbnRleHQudHJhY2UoYEV2YWx1YXRpbmcgdGhlICcke25vZGVRdWVyeVN0cmluZ30nIG5vZGUgcXVlcnkuLi5gKTtcblxuICAgIGlmICh0aGlzLnF1ZXJ5ID09PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYENhbm5vdCBldmFsdWF0ZSB0aGUgJyR7bm9kZVF1ZXJ5U3RyaW5nfScgbm9kZSBxdWVyeSBiZWNhdXNlIGl0cyBleHByZXNzaW9uIGlzIG1hbGZvcm1lZC5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgdmFsdWUgPSB0aGlzLnZhcmlhYmxlLmV2YWx1YXRlKGNvbnRleHQpO1xuXG4gICAgY29uc3QgdmFsdWVUeXBlID0gdmFsdWUuZ2V0VHlwZSgpO1xuXG4gICAgaWYgKHZhbHVlVHlwZSAhPT0gTk9NSU5BTF9WQUxVRV9UWVBFKSB7XG4gICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7dmFsdWVTdHJpbmd9JyB2YWx1ZSdzICcke3ZhbHVlVHlwZX0nIHR5cGUgc2hvdWxkIGJlICcke05PTUlOQUxfVkFMVUVfVFlQRX0nLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBsZXQgbm9kZTtcblxuICAgIGNvbnN0IHByaW1pdGl2ZVZhbHVlID0gdmFsdWUuZ2V0UHJpbWl0aXZlVmFsdWUoKSxcbiAgICAgICAgICBub21pbmFsVmFsdWUgPSBwcmltaXRpdmVWYWx1ZTsgIC8vL1xuXG4gICAgbm9kZSA9IG5vbWluYWxWYWx1ZS5nZXROb2RlKCk7XG5cbiAgICBpZiAobm9kZSA9PT0gbnVsbCkge1xuICAgICAgY29uc3QgdmFsdWVTdHJpbmcgPSB2YWx1ZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgIG1lc3NhZ2UgPSBgVGhlICcke3ZhbHVlU3RyaW5nfScgdmFsdWUncyBub2RlIGlzIG51bGwuYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgdGhyb3cgZXhjZXB0aW9uO1xuICAgIH1cblxuICAgIGNvbnN0IG5vZGVzID0gdGhpcy5xdWVyeS5leGVjdXRlKG5vZGUpLFxuICAgICAgICAgIG5vZGVzTGVuZ3RoID0gbm9kZXMubGVuZ3RoO1xuXG4gICAgaWYgKG5vZGVzTGVuZ3RoICE9PSAxKSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYFRoZSBsZW5ndGggb2YgdGhlIHJldHVybmVkIG5vZGVzIGlzICR7bm9kZXNMZW5ndGh9IHdoZW4gaXQgc2hvdWxkIGJlIDEuYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgdGhyb3cgZXhjZXB0aW9uO1xuICAgIH1cblxuXG4gICAgY29uc3QgZmlyc3ROb2RlID0gZmlyc3Qobm9kZXMpO1xuXG4gICAgbm9kZSA9IGZpcnN0Tm9kZSAvLy9cblxuICAgIHZhbHVlID0gdmFsdWVGcm9tTm9kZUFuZE5vbWluYWxWYWx1ZShub2RlLCBub21pbmFsVmFsdWUpO1xuXG4gICAgY29uc3QgdmFsdWVTdHJpbmcgPSB2YWx1ZS5nZXRTdHJpbmcoKTtcblxuICAgIGNvbnRleHQuZGVidWcoYC4uLmV2YWx1YXRlZCB0aGUgJyR7bm9kZVF1ZXJ5U3RyaW5nfScgbm9kZSBxdWVyeSBhcyAnJHt2YWx1ZVN0cmluZ30nLmApO1xuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIk5vZGVRdWVyeVwiO1xufSk7XG4iXSwibmFtZXMiOlsiZmlyc3QiLCJhcnJheVV0aWxpdGllcyIsImRlZmluZSIsIk5vZGVRdWVyeSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ2YXJpYWJsZSIsInF1ZXJ5IiwiZ2V0VmFyaWFibGUiLCJnZXRRdWVyeSIsImV2YWx1YXRlIiwidmFsdWUiLCJub2RlUXVlcnlTdHJpbmciLCJnZXRTdHJpbmciLCJ0cmFjZSIsIm1lc3NhZ2UiLCJleGNlcHRpb24iLCJFeGNlcHRpb24iLCJmcm9tTWVzc2FnZSIsInZhbHVlVHlwZSIsImdldFR5cGUiLCJOT01JTkFMX1ZBTFVFX1RZUEUiLCJ2YWx1ZVN0cmluZyIsInByaW1pdGl2ZVZhbHVlIiwiZ2V0UHJpbWl0aXZlVmFsdWUiLCJub21pbmFsVmFsdWUiLCJnZXROb2RlIiwibm9kZXMiLCJleGVjdXRlIiwibm9kZXNMZW5ndGgiLCJsZW5ndGgiLCJmaXJzdE5vZGUiLCJ2YWx1ZUZyb21Ob2RlQW5kTm9taW5hbFZhbHVlIiwiZGVidWciLCJuYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFhQTs7O2VBQUE7OztnQ0FYd0I7MkJBQ087a0VBRVQ7MEJBRUM7dUJBQ1k7dUJBQ1U7Ozs7OztBQUU3QyxNQUFNLEVBQUVBLEtBQUssRUFBRSxHQUFHQyx5QkFBYztNQUVoQyxXQUFlQyxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLGtCQUFrQkMsdUJBQU87SUFDbkQsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxRQUFRLEVBQUVDLEtBQUssQ0FBRTtRQUM5RCxLQUFLLENBQUNMLFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0MsUUFBUSxHQUFHQTtRQUNoQixJQUFJLENBQUNDLEtBQUssR0FBR0E7SUFDZjtJQUVBQyxjQUFjO1FBQ1osT0FBTyxJQUFJLENBQUNGLFFBQVE7SUFDdEI7SUFFQUcsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDRixLQUFLO0lBQ25CO0lBRUFHLFNBQVNSLE9BQU8sRUFBRTtRQUNoQixJQUFJUztRQUVKLE1BQU1DLGtCQUFrQixJQUFJLENBQUNDLFNBQVMsSUFBSyxHQUFHO1FBRTlDWCxRQUFRWSxLQUFLLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRUYsZ0JBQWdCLGVBQWUsQ0FBQztRQUVqRSxJQUFJLElBQUksQ0FBQ0wsS0FBSyxLQUFLLE1BQU07WUFDdkIsTUFBTVEsVUFBVSxDQUFDLHFCQUFxQixFQUFFSCxnQkFBZ0IsaURBQWlELENBQUMsRUFDcEdJLFlBQVlDLGtCQUFTLENBQUNDLFdBQVcsQ0FBQ0g7WUFFeEMsTUFBTUM7UUFDUjtRQUVBTCxRQUFRLElBQUksQ0FBQ0wsUUFBUSxDQUFDSSxRQUFRLENBQUNSO1FBRS9CLE1BQU1pQixZQUFZUixNQUFNUyxPQUFPO1FBRS9CLElBQUlELGNBQWNFLHlCQUFrQixFQUFFO1lBQ3BDLE1BQU1DLGNBQWNYLE1BQU1FLFNBQVMsSUFDN0JFLFVBQVUsQ0FBQyxLQUFLLEVBQUVPLFlBQVksV0FBVyxFQUFFSCxVQUFVLGtCQUFrQixFQUFFRSx5QkFBa0IsQ0FBQyxFQUFFLENBQUMsRUFDL0ZMLFlBQVlDLGtCQUFTLENBQUNDLFdBQVcsQ0FBQ0g7WUFFeEMsTUFBTUM7UUFDUjtRQUVBLElBQUlaO1FBRUosTUFBTW1CLGlCQUFpQlosTUFBTWEsaUJBQWlCLElBQ3hDQyxlQUFlRixnQkFBaUIsR0FBRztRQUV6Q25CLE9BQU9xQixhQUFhQyxPQUFPO1FBRTNCLElBQUl0QixTQUFTLE1BQU07WUFDakIsTUFBTWtCLGNBQWNYLE1BQU1FLFNBQVMsSUFDN0JFLFVBQVUsQ0FBQyxLQUFLLEVBQUVPLFlBQVksdUJBQXVCLENBQUMsRUFDdEROLFlBQVlDLGtCQUFTLENBQUNDLFdBQVcsQ0FBQ0g7WUFFeEMsTUFBTUM7UUFDUjtRQUVBLE1BQU1XLFFBQVEsSUFBSSxDQUFDcEIsS0FBSyxDQUFDcUIsT0FBTyxDQUFDeEIsT0FDM0J5QixjQUFjRixNQUFNRyxNQUFNO1FBRWhDLElBQUlELGdCQUFnQixHQUFHO1lBQ3JCLE1BQU1kLFVBQVUsQ0FBQyxvQ0FBb0MsRUFBRWMsWUFBWSxxQkFBcUIsQ0FBQyxFQUNuRmIsWUFBWUMsa0JBQVMsQ0FBQ0MsV0FBVyxDQUFDSDtZQUV4QyxNQUFNQztRQUNSO1FBR0EsTUFBTWUsWUFBWWxDLE1BQU04QjtRQUV4QnZCLE9BQU8yQixXQUFVLEdBQUc7UUFFcEJwQixRQUFRcUIsSUFBQUEsbUNBQTRCLEVBQUM1QixNQUFNcUI7UUFFM0MsTUFBTUgsY0FBY1gsTUFBTUUsU0FBUztRQUVuQ1gsUUFBUStCLEtBQUssQ0FBQyxDQUFDLGtCQUFrQixFQUFFckIsZ0JBQWdCLGlCQUFpQixFQUFFVSxZQUFZLEVBQUUsQ0FBQztRQUVyRixPQUFPWDtJQUNUO0lBRUEsT0FBT3VCLE9BQU8sWUFBWTtBQUM1QiJ9
|
|
@@ -12,7 +12,7 @@ const _occamlanguages = require("occam-languages");
|
|
|
12
12
|
const _exception = /*#__PURE__*/ _interop_require_default(require("../exception"));
|
|
13
13
|
const _elements = require("../elements");
|
|
14
14
|
const _types = require("../types");
|
|
15
|
-
const
|
|
15
|
+
const _value = require("../utilities/value");
|
|
16
16
|
function _interop_require_default(obj) {
|
|
17
17
|
return obj && obj.__esModule ? obj : {
|
|
18
18
|
default: obj
|
|
@@ -52,7 +52,7 @@ const _default = (0, _elements.define)(class NodesQuery extends _occamlanguages.
|
|
|
52
52
|
throw exception;
|
|
53
53
|
}
|
|
54
54
|
const nodes = this.query.execute(node);
|
|
55
|
-
value = (0,
|
|
55
|
+
value = (0, _value.valueFromNodesAndNominalValue)(nodes, nominalValue);
|
|
56
56
|
const valueString = value.getString();
|
|
57
57
|
context.debug(`...evaluated the '${nodesQueryString}' nodes query as '${valueString}'.`);
|
|
58
58
|
return value;
|
|
@@ -60,4 +60,4 @@ const _default = (0, _elements.define)(class NodesQuery extends _occamlanguages.
|
|
|
60
60
|
static name = "NodesQuery";
|
|
61
61
|
});
|
|
62
62
|
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L25vZGVzUXVlcnkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IE5PTUlOQUxfVkFMVUVfVFlQRSB9IGZyb20gXCIuLi90eXBlc1wiO1xuaW1wb3J0IHsgdmFsdWVGcm9tTm9kZXNBbmROb21pbmFsVmFsdWUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3ZhbHVlXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBOb2Rlc1F1ZXJ5IGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdmFyaWFibGUsIHF1ZXJ5KSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMudmFyaWFibGUgPSB2YXJpYWJsZTtcbiAgICB0aGlzLnF1ZXJ5ID0gcXVlcnk7XG4gIH1cblxuICBnZXRWYXJpYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YXJpYWJsZTtcbiAgfVxuXG4gIGdldFF1ZXJ5KCkge1xuICAgIHJldHVybiB0aGlzLnF1ZXJ5O1xuICB9XG5cbiAgZXZhbHVhdGUoY29udGV4dCkge1xuICAgIGxldCB2YWx1ZTtcblxuICAgIGNvbnN0IG5vZGVzUXVlcnlTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpOyAgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBFdmFsdWF0aW5nIHRoZSAnJHtub2Rlc1F1ZXJ5U3RyaW5nfScgbm9kZXMgcXVlcnkuLi5gKTtcblxuICAgIGlmICh0aGlzLnF1ZXJ5ID09PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYENhbm5vdCBldmFsdWF0ZSB0aGUgJyR7bm9kZXNRdWVyeVN0cmluZ30nIG5vZGVzIHF1ZXJ5IGJlY2F1c2UgaXRzIGV4cHJlc3Npb24gaXMgbWFsZm9ybWVkLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICB2YWx1ZSA9IHRoaXMudmFyaWFibGUuZXZhbHVhdGUoY29udGV4dCk7XG5cbiAgICBjb25zdCB2YWx1ZVR5cGUgPSB2YWx1ZS5nZXRUeXBlKCk7XG5cbiAgICBpZiAodmFsdWVUeXBlICE9PSBOT01JTkFMX1ZBTFVFX1RZUEUpIHtcbiAgICAgIGNvbnN0IHZhbHVlU3RyaW5nID0gdmFsdWUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICBtZXNzYWdlID0gYFRoZSAnJHt2YWx1ZVN0cmluZ30nIHZhbHVlJ3MgJyR7dmFsdWVUeXBlfScgdHlwZSBzaG91bGQgYmUgJyR7Tk9NSU5BTF9WQUxVRV9UWVBFfScuYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgdGhyb3cgZXhjZXB0aW9uO1xuICAgIH1cblxuICAgIGxldCBub2RlO1xuXG4gICAgY29uc3QgcHJpbWl0aXZlVmFsdWUgPSB2YWx1ZS5nZXRQcmltaXRpdmVWYWx1ZSgpLFxuICAgICAgICAgIG5vbWluYWxWYWx1ZSA9IHByaW1pdGl2ZVZhbHVlOyAgLy8vXG5cbiAgICBub2RlID0gbm9taW5hbFZhbHVlLmdldE5vZGUoKTtcblxuICAgIGlmIChub2RlID09PSBudWxsKSB7XG4gICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7dmFsdWVTdHJpbmd9JyB2YWx1ZSdzIG5vZGUgaXMgbnVsbC5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgY29uc3Qgbm9kZXMgPSB0aGlzLnF1ZXJ5LmV4ZWN1dGUobm9kZSk7XG5cbiAgICB2YWx1ZSA9IHZhbHVlRnJvbU5vZGVzQW5kTm9taW5hbFZhbHVlKG5vZGVzLCBub21pbmFsVmFsdWUpO1xuXG4gICAgY29uc3QgdmFsdWVTdHJpbmcgPSB2YWx1ZS5nZXRTdHJpbmcoKTtcblxuICAgIGNvbnRleHQuZGVidWcoYC4uLmV2YWx1YXRlZCB0aGUgJyR7bm9kZXNRdWVyeVN0cmluZ30nIG5vZGVzIHF1ZXJ5IGFzICcke3ZhbHVlU3RyaW5nfScuYCk7XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiTm9kZXNRdWVyeVwiO1xufSk7XG4iXSwibmFtZXMiOlsiZGVmaW5lIiwiTm9kZXNRdWVyeSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ2YXJpYWJsZSIsInF1ZXJ5IiwiZ2V0VmFyaWFibGUiLCJnZXRRdWVyeSIsImV2YWx1YXRlIiwidmFsdWUiLCJub2Rlc1F1ZXJ5U3RyaW5nIiwiZ2V0U3RyaW5nIiwidHJhY2UiLCJtZXNzYWdlIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJ2YWx1ZVR5cGUiLCJnZXRUeXBlIiwiTk9NSU5BTF9WQUxVRV9UWVBFIiwidmFsdWVTdHJpbmciLCJwcmltaXRpdmVWYWx1ZSIsImdldFByaW1pdGl2ZVZhbHVlIiwibm9taW5hbFZhbHVlIiwiZ2V0Tm9kZSIsIm5vZGVzIiwiZXhlY3V0ZSIsInZhbHVlRnJvbU5vZGVzQW5kTm9taW5hbFZhbHVlIiwiZGVidWciLCJuYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFVQTs7O2VBQUE7OztnQ0FSd0I7a0VBRUY7MEJBRUM7dUJBQ1k7dUJBQ1c7Ozs7OztNQUU5QyxXQUFlQSxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLG1CQUFtQkMsdUJBQU87SUFDcEQsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxRQUFRLEVBQUVDLEtBQUssQ0FBRTtRQUM5RCxLQUFLLENBQUNMLFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0MsUUFBUSxHQUFHQTtRQUNoQixJQUFJLENBQUNDLEtBQUssR0FBR0E7SUFDZjtJQUVBQyxjQUFjO1FBQ1osT0FBTyxJQUFJLENBQUNGLFFBQVE7SUFDdEI7SUFFQUcsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDRixLQUFLO0lBQ25CO0lBRUFHLFNBQVNSLE9BQU8sRUFBRTtRQUNoQixJQUFJUztRQUVKLE1BQU1DLG1CQUFtQixJQUFJLENBQUNDLFNBQVMsSUFBSyxHQUFHO1FBRS9DWCxRQUFRWSxLQUFLLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRUYsaUJBQWlCLGdCQUFnQixDQUFDO1FBRW5FLElBQUksSUFBSSxDQUFDTCxLQUFLLEtBQUssTUFBTTtZQUN2QixNQUFNUSxVQUFVLENBQUMscUJBQXFCLEVBQUVILGlCQUFpQixrREFBa0QsQ0FBQyxFQUN0R0ksWUFBWUMsa0JBQVMsQ0FBQ0MsV0FBVyxDQUFDSDtZQUV4QyxNQUFNQztRQUNSO1FBRUFMLFFBQVEsSUFBSSxDQUFDTCxRQUFRLENBQUNJLFFBQVEsQ0FBQ1I7UUFFL0IsTUFBTWlCLFlBQVlSLE1BQU1TLE9BQU87UUFFL0IsSUFBSUQsY0FBY0UseUJBQWtCLEVBQUU7WUFDcEMsTUFBTUMsY0FBY1gsTUFBTUUsU0FBUyxJQUM3QkUsVUFBVSxDQUFDLEtBQUssRUFBRU8sWUFBWSxXQUFXLEVBQUVILFVBQVUsa0JBQWtCLEVBQUVFLHlCQUFrQixDQUFDLEVBQUUsQ0FBQyxFQUMvRkwsWUFBWUMsa0JBQVMsQ0FBQ0MsV0FBVyxDQUFDSDtZQUV4QyxNQUFNQztRQUNSO1FBRUEsSUFBSVo7UUFFSixNQUFNbUIsaUJBQWlCWixNQUFNYSxpQkFBaUIsSUFDeENDLGVBQWVGLGdCQUFpQixHQUFHO1FBRXpDbkIsT0FBT3FCLGFBQWFDLE9BQU87UUFFM0IsSUFBSXRCLFNBQVMsTUFBTTtZQUNqQixNQUFNa0IsY0FBY1gsTUFBTUUsU0FBUyxJQUM3QkUsVUFBVSxDQUFDLEtBQUssRUFBRU8sWUFBWSx1QkFBdUIsQ0FBQyxFQUN0RE4sWUFBWUMsa0JBQVMsQ0FBQ0MsV0FBVyxDQUFDSDtZQUV4QyxNQUFNQztRQUNSO1FBRUEsTUFBTVcsUUFBUSxJQUFJLENBQUNwQixLQUFLLENBQUNxQixPQUFPLENBQUN4QjtRQUVqQ08sUUFBUWtCLElBQUFBLG9DQUE2QixFQUFDRixPQUFPRjtRQUU3QyxNQUFNSCxjQUFjWCxNQUFNRSxTQUFTO1FBRW5DWCxRQUFRNEIsS0FBSyxDQUFDLENBQUMsa0JBQWtCLEVBQUVsQixpQkFBaUIsa0JBQWtCLEVBQUVVLFlBQVksRUFBRSxDQUFDO1FBRXZGLE9BQU9YO0lBQ1Q7SUFFQSxPQUFPb0IsT0FBTyxhQUFhO0FBQzdCIn0=
|
|
@@ -11,7 +11,7 @@ Object.defineProperty(exports, "default", {
|
|
|
11
11
|
const _occamlanguages = require("occam-languages");
|
|
12
12
|
const _exception = /*#__PURE__*/ _interop_require_default(require("../../exception"));
|
|
13
13
|
const _elements = require("../../elements");
|
|
14
|
-
const
|
|
14
|
+
const _parameters = require("../../utilities/parameters");
|
|
15
15
|
function _interop_require_default(obj) {
|
|
16
16
|
return obj && obj.__esModule ? obj : {
|
|
17
17
|
default: obj
|
|
@@ -33,19 +33,19 @@ const _default = (0, _elements.define)(class AnonymousProcedure extends _occamla
|
|
|
33
33
|
getReturnBlock() {
|
|
34
34
|
return this.returnBlock;
|
|
35
35
|
}
|
|
36
|
-
async call(
|
|
36
|
+
async call(values, context) {
|
|
37
37
|
const anonymousProcedureString = this.getString(); ///
|
|
38
38
|
context.trace(`Calling the '${anonymousProcedureString}' anonymous procedure...`);
|
|
39
|
-
this.parameters.
|
|
40
|
-
const variables = (0,
|
|
41
|
-
if (this.type !==
|
|
42
|
-
const
|
|
39
|
+
this.parameters.compareValues(values, context);
|
|
40
|
+
const variables = (0, _parameters.variablesFromValuesAndParameters)(values, this.parameters, context), value = await this.returnBlock.evaluate(variables, context), valueType = value.getType();
|
|
41
|
+
if (this.type !== valueType) {
|
|
42
|
+
const valueString = value.getString(), message = `The '${valueString}' value's '${valueType}' type is not equal to the '${anonymousProcedureString}' anonymous procedure's '${this.type}' type.`, exception = _exception.default.fromMessage(message);
|
|
43
43
|
throw exception;
|
|
44
44
|
}
|
|
45
45
|
context.debug(`...called the '${anonymousProcedureString}' anonymous procedure.`);
|
|
46
|
-
return
|
|
46
|
+
return value;
|
|
47
47
|
}
|
|
48
48
|
static name = "AnonymousProcedure";
|
|
49
49
|
});
|
|
50
50
|
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50L3Byb2NlZHVyZS9hbm9ueW1vdXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uLy4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IHZhcmlhYmxlc0Zyb21WYWx1ZXNBbmRQYXJhbWV0ZXJzIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9wYXJhbWV0ZXJzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBBbm9ueW1vdXNQcm9jZWR1cmUgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB0eXBlLCBwYXJhbWV0ZXJzLCByZXR1cm5CbG9jaykge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMucGFyYW1ldGVycyA9IHBhcmFtZXRlcnM7XG4gICAgdGhpcy5yZXR1cm5CbG9jayA9IHJldHVybkJsb2NrO1xuICB9XG5cbiAgZ2V0VHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlO1xuICB9XG5cbiAgZ2V0UGFyYW1ldGVycygpIHtcbiAgICByZXR1cm4gdGhpcy5wYXJhbWV0ZXJzO1xuICB9XG5cbiAgZ2V0UmV0dXJuQmxvY2soKSB7XG4gICAgcmV0dXJuIHRoaXMucmV0dXJuQmxvY2s7XG4gIH1cblxuICBhc3luYyBjYWxsKHZhbHVlcywgY29udGV4dCkge1xuICAgIGNvbnN0IGFub255bW91c1Byb2NlZHVyZVN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7IC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgQ2FsbGluZyB0aGUgJyR7YW5vbnltb3VzUHJvY2VkdXJlU3RyaW5nfScgYW5vbnltb3VzIHByb2NlZHVyZS4uLmApO1xuXG4gICAgdGhpcy5wYXJhbWV0ZXJzLmNvbXBhcmVWYWx1ZXModmFsdWVzLCBjb250ZXh0KTtcblxuICAgIGNvbnN0IHZhcmlhYmxlcyA9IHZhcmlhYmxlc0Zyb21WYWx1ZXNBbmRQYXJhbWV0ZXJzKHZhbHVlcywgdGhpcy5wYXJhbWV0ZXJzLCBjb250ZXh0KSxcbiAgICAgICAgICB2YWx1ZSA9IGF3YWl0IHRoaXMucmV0dXJuQmxvY2suZXZhbHVhdGUodmFyaWFibGVzLCBjb250ZXh0KSxcbiAgICAgICAgICB2YWx1ZVR5cGUgPSB2YWx1ZS5nZXRUeXBlKCk7XG5cbiAgICBpZiAodGhpcy50eXBlICE9PSB2YWx1ZVR5cGUpIHtcbiAgICAgIGNvbnN0IHZhbHVlU3RyaW5nID0gdmFsdWUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICBtZXNzYWdlID0gYFRoZSAnJHt2YWx1ZVN0cmluZ30nIHZhbHVlJ3MgJyR7dmFsdWVUeXBlfScgdHlwZSBpcyBub3QgZXF1YWwgdG8gdGhlICcke2Fub255bW91c1Byb2NlZHVyZVN0cmluZ30nIGFub255bW91cyBwcm9jZWR1cmUncyAnJHt0aGlzLnR5cGV9JyB0eXBlLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5jYWxsZWQgdGhlICcke2Fub255bW91c1Byb2NlZHVyZVN0cmluZ30nIGFub255bW91cyBwcm9jZWR1cmUuYCk7XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiQW5vbnltb3VzUHJvY2VkdXJlXCI7XG59KTtcbiJdLCJuYW1lcyI6WyJkZWZpbmUiLCJBbm9ueW1vdXNQcm9jZWR1cmUiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwidHlwZSIsInBhcmFtZXRlcnMiLCJyZXR1cm5CbG9jayIsImdldFR5cGUiLCJnZXRQYXJhbWV0ZXJzIiwiZ2V0UmV0dXJuQmxvY2siLCJjYWxsIiwidmFsdWVzIiwiYW5vbnltb3VzUHJvY2VkdXJlU3RyaW5nIiwiZ2V0U3RyaW5nIiwidHJhY2UiLCJjb21wYXJlVmFsdWVzIiwidmFyaWFibGVzIiwidmFyaWFibGVzRnJvbVZhbHVlc0FuZFBhcmFtZXRlcnMiLCJ2YWx1ZSIsImV2YWx1YXRlIiwidmFsdWVUeXBlIiwidmFsdWVTdHJpbmciLCJtZXNzYWdlIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJkZWJ1ZyIsIm5hbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVNBOzs7ZUFBQTs7O2dDQVB3QjtrRUFFRjswQkFFQzs0QkFDMEI7Ozs7OztNQUVqRCxXQUFlQSxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLDJCQUEyQkMsdUJBQU87SUFDNUQsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsV0FBVyxDQUFFO1FBQzVFLEtBQUssQ0FBQ04sU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxJQUFJLEdBQUdBO1FBQ1osSUFBSSxDQUFDQyxVQUFVLEdBQUdBO1FBQ2xCLElBQUksQ0FBQ0MsV0FBVyxHQUFHQTtJQUNyQjtJQUVBQyxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUNILElBQUk7SUFDbEI7SUFFQUksZ0JBQWdCO1FBQ2QsT0FBTyxJQUFJLENBQUNILFVBQVU7SUFDeEI7SUFFQUksaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUNILFdBQVc7SUFDekI7SUFFQSxNQUFNSSxLQUFLQyxNQUFNLEVBQUVYLE9BQU8sRUFBRTtRQUMxQixNQUFNWSwyQkFBMkIsSUFBSSxDQUFDQyxTQUFTLElBQUksR0FBRztRQUV0RGIsUUFBUWMsS0FBSyxDQUFDLENBQUMsYUFBYSxFQUFFRix5QkFBeUIsd0JBQXdCLENBQUM7UUFFaEYsSUFBSSxDQUFDUCxVQUFVLENBQUNVLGFBQWEsQ0FBQ0osUUFBUVg7UUFFdEMsTUFBTWdCLFlBQVlDLElBQUFBLDRDQUFnQyxFQUFDTixRQUFRLElBQUksQ0FBQ04sVUFBVSxFQUFFTCxVQUN0RWtCLFFBQVEsTUFBTSxJQUFJLENBQUNaLFdBQVcsQ0FBQ2EsUUFBUSxDQUFDSCxXQUFXaEIsVUFDbkRvQixZQUFZRixNQUFNWCxPQUFPO1FBRS9CLElBQUksSUFBSSxDQUFDSCxJQUFJLEtBQUtnQixXQUFXO1lBQzNCLE1BQU1DLGNBQWNILE1BQU1MLFNBQVMsSUFDN0JTLFVBQVUsQ0FBQyxLQUFLLEVBQUVELFlBQVksV0FBVyxFQUFFRCxVQUFVLDRCQUE0QixFQUFFUix5QkFBeUIseUJBQXlCLEVBQUUsSUFBSSxDQUFDUixJQUFJLENBQUMsT0FBTyxDQUFDLEVBQ3pKbUIsWUFBWUMsa0JBQVMsQ0FBQ0MsV0FBVyxDQUFDSDtZQUV4QyxNQUFNQztRQUNSO1FBRUF2QixRQUFRMEIsS0FBSyxDQUFDLENBQUMsZUFBZSxFQUFFZCx5QkFBeUIsc0JBQXNCLENBQUM7UUFFaEYsT0FBT007SUFDVDtJQUVBLE9BQU9TLE9BQU8scUJBQXFCO0FBQ3JDIn0=
|