occam-furtle 3.0.516 → 3.0.520
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/context/block.js +9 -1
- package/lib/context/file/furtle.js +66 -11
- package/lib/element/importBinding.js +108 -0
- package/lib/element/importBindings.js +17 -0
- package/lib/element/importStatement.js +67 -0
- package/lib/element/label.js +7 -5
- package/lib/element/parameters.js +7 -5
- package/lib/element/procedure.js +9 -5
- package/lib/element/procedureCall.js +10 -4
- package/lib/element/reference.js +21 -1
- package/lib/element/type.js +8 -5
- package/lib/element/values.js +2 -2
- package/lib/example/furtle/bnf.js +2 -2
- package/lib/example/furtle/entries.js +1 -1
- package/lib/node/importBinding.js +27 -0
- package/lib/node/importBindings.js +23 -0
- package/lib/node/importStatement.js +42 -0
- package/lib/node/procedure.js +8 -13
- package/lib/nonTerminalNodeMap.js +7 -1
- package/lib/preamble.js +4 -1
- package/lib/process/instantiate.js +20 -2
- package/lib/process/verify.js +9 -2
- package/lib/ruleNames.js +13 -1
- package/lib/utilities/element.js +87 -27
- package/lib/utilities/json.js +59 -6
- package/package.json +2 -2
- package/src/context/block.js +14 -0
- package/src/context/file/furtle.js +102 -19
- package/src/element/importBinding.js +165 -0
- package/src/element/importBindings.js +9 -0
- package/src/element/importStatement.js +89 -0
- package/src/element/label.js +9 -5
- package/src/element/parameters.js +9 -5
- package/src/element/procedure.js +19 -16
- package/src/element/procedureCall.js +12 -3
- package/src/element/reference.js +33 -0
- package/src/element/type.js +13 -8
- package/src/element/values.js +1 -1
- package/src/example/furtle/bnf.js +1 -1
- package/src/example/furtle/entries.js +1 -1
- package/src/node/importBinding.js +23 -0
- package/src/node/importBindings.js +16 -0
- package/src/node/importStatement.js +45 -0
- package/src/node/procedure.js +7 -14
- package/src/nonTerminalNodeMap.js +9 -0
- package/src/preamble.js +3 -0
- package/src/process/instantiate.js +11 -2
- package/src/process/verify.js +11 -2
- package/src/ruleNames.js +3 -0
- package/src/utilities/element.js +120 -43
- package/src/utilities/json.js +62 -5
package/lib/element/procedure.js
CHANGED
|
@@ -59,6 +59,9 @@ const _default = (0, _elements.define)(class Procedure extends _occamlanguages.E
|
|
|
59
59
|
getReturnStatement() {
|
|
60
60
|
return this.returnBlock.getReturnStatement();
|
|
61
61
|
}
|
|
62
|
+
compareReleaseName(releaseName) {
|
|
63
|
+
return this.context.compareReleaseName(releaseName);
|
|
64
|
+
}
|
|
62
65
|
compareProcedureName(procedureName) {
|
|
63
66
|
return this.label.compareProcedureName(procedureName);
|
|
64
67
|
}
|
|
@@ -70,7 +73,6 @@ const _default = (0, _elements.define)(class Procedure extends _occamlanguages.E
|
|
|
70
73
|
this.returnBlock = (0, _element.returnBlockFromProcedureNode)(procedureNode, context);
|
|
71
74
|
}
|
|
72
75
|
verify = breakable(function(context, forward, back) {
|
|
73
|
-
let procedure;
|
|
74
76
|
const procedureString = this.getString();
|
|
75
77
|
context.trace(`Verifying the '${procedureString}' function...`);
|
|
76
78
|
const procedureName = this.getProcedureName(), procedurePresent = context.isProcedurePresentByProcedureName(procedureName);
|
|
@@ -78,7 +80,7 @@ const _default = (0, _elements.define)(class Procedure extends _occamlanguages.E
|
|
|
78
80
|
context.trace(`The '${procedureString}' function is already present.`);
|
|
79
81
|
return back();
|
|
80
82
|
}
|
|
81
|
-
procedure = this; ///
|
|
83
|
+
const procedure = this; ///
|
|
82
84
|
context.addProcedure(procedure);
|
|
83
85
|
context.debug(`...verified the '${procedureString}' function.`);
|
|
84
86
|
return forward(context, back);
|
|
@@ -111,12 +113,14 @@ const _default = (0, _elements.define)(class Procedure extends _occamlanguages.E
|
|
|
111
113
|
}, back);
|
|
112
114
|
}
|
|
113
115
|
toJSON() {
|
|
114
|
-
|
|
116
|
+
let json;
|
|
117
|
+
const string = this.getString(), typeJSON = (0, _json.typeToTypeJSON)(this.type), labelJSON = (0, _json.labelToLabelJSON)(this.label), exportedJJSON = (0, _json.exportedToExportedJSON)(this.exported), parametersJSON = (0, _json.parametersToParametersJSON)(this.parameters);
|
|
115
118
|
let breakPoint;
|
|
116
119
|
breakPoint = this.getBreakPoint();
|
|
117
120
|
const breakPointJSON = breakPointToBreakPointJSON(breakPoint);
|
|
118
121
|
breakPoint = breakPointJSON; ///
|
|
119
|
-
const type = typeJSON, label = labelJSON, exported = exportedJJSON, parameters = parametersJSON
|
|
122
|
+
const type = typeJSON, label = labelJSON, exported = exportedJJSON, parameters = parametersJSON; ///
|
|
123
|
+
json = {
|
|
120
124
|
string,
|
|
121
125
|
breakPoint,
|
|
122
126
|
type,
|
|
@@ -133,4 +137,4 @@ const _default = (0, _elements.define)(class Procedure extends _occamlanguages.E
|
|
|
133
137
|
}
|
|
134
138
|
});
|
|
135
139
|
|
|
136
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Byb2NlZHVyZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCwgYnJlYWtQb2ludFV0aWxpdGllcywgY29udGludWF0aW9uVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgeyB2YWx1ZXNGcm9tTm9taW5hbFZhbHVlcyB9IGZyb20gXCIuLi91dGlsaXRpZXMvdmFsdWVzXCI7XG5pbXBvcnQgeyByZXR1cm5CbG9ja0Zyb21Qcm9jZWR1cmVOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9lbGVtZW50XCI7XG5pbXBvcnQgeyB2YXJpYWJsZXNGcm9tVmFsdWVzQW5kUGFyYW1ldGVycyB9IGZyb20gXCIuLi91dGlsaXRpZXMvcGFyYW1ldGVyc1wiO1xuaW1wb3J0IHsgdHlwZUZyb21KU09OLCBsYWJlbEZyb21KU09OLCBleHBvcnRlZEZyb21KU09OLCBwYXJhbWV0ZXJzRnJvbUpTT04sIHR5cGVUb1R5cGVKU09OLCBsYWJlbFRvTGFiZWxKU09OLCBleHBvcnRlZFRvRXhwb3J0ZWRKU09OLCBwYXJhbWV0ZXJzVG9QYXJhbWV0ZXJzSlNPTiB9IGZyb20gXCIuLi91dGlsaXRpZXMvanNvblwiO1xuXG5jb25zdCB7IGN1dCB9ID0gY29udGludWF0aW9uVXRpbGl0aWVzLFxuICAgICAgeyBicmVha2FibGUsIGJyZWFrUG9pbnRGcm9tSlNPTiwgYnJlYWtQb2ludFRvQnJlYWtQb2ludEpTT04gfSA9IGJyZWFrUG9pbnRVdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBQcm9jZWR1cmUgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB0eXBlLCBsYWJlbCwgZXhwb3J0ZWQsIHBhcmFtZXRlcnMsIHJldHVybkJsb2NrKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gICAgdGhpcy5sYWJlbCA9IGxhYmVsO1xuICAgIHRoaXMuZXhwb3J0ZWQgPSBleHBvcnRlZDtcbiAgICB0aGlzLnBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzO1xuICAgIHRoaXMucmV0dXJuQmxvY2sgPSByZXR1cm5CbG9jaztcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIGdldExhYmVsKCkge1xuICAgIHJldHVybiB0aGlzLmxhYmVsO1xuICB9XG5cbiAgaXNFeHBvcnRlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5leHBvcnRlZDtcbiAgfVxuXG4gIGdldFBhcmFtZXRlcnMoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyYW1ldGVycztcbiAgfVxuXG4gIGdldFJldHVybkJsb2NrKCkge1xuICAgIHJldHVybiB0aGlzLnJldHVybkJsb2NrO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHsgcmV0dXJuIHRoaXMubGFiZWwuZ2V0TmFtZSgpOyB9XG5cbiAgaXNCb29sZWFuKCkge1xuICAgIGNvbnN0IHR5cGUgPSB0aGlzLmdldFR5cGUoKSxcbiAgICAgICAgICBib29sZWFuVHlwZSA9IHR5cGUuaXNCb29sZWFuVHlwZSgpLFxuICAgICAgICAgIGJvb2xlYW4gPSBib29sZWFuVHlwZTsgIC8vL1xuXG4gICAgcmV0dXJuIGJvb2xlYW47XG4gIH1cblxuICBnZXRQcm9jZWR1cmVOYW1lKCkge1xuICAgIGNvbnN0IG5hbWUgPSB0aGlzLmdldE5hbWUoKSxcbiAgICAgICAgICBwcm9jZWR1cmVOYW1lID0gbmFtZTsgLy8vXG5cbiAgICByZXR1cm4gcHJvY2VkdXJlTmFtZTtcbiAgfVxuXG4gIGdldFJldHVyblN0YXRlbWVudCgpIHsgcmV0dXJuIHRoaXMucmV0dXJuQmxvY2suZ2V0UmV0dXJuU3RhdGVtZW50KCk7IH1cblxuICBjb21wYXJlUHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKSB7IHJldHVybiB0aGlzLmxhYmVsLmNvbXBhcmVQcm9jZWR1cmVOYW1lKHByb2NlZHVyZU5hbWUpOyB9XG5cbiAgZ3VhcmFudGVlUmV0dXJuQmxvY2soKSB7XG4gICAgaWYgKHRoaXMucmV0dXJuQmxvY2sgIT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IG5vZGUgPSB0aGlzLmdldE5vZGUoKSxcbiAgICAgICAgICBjb250ZXh0ID0gdGhpcy5nZXRDb250ZXh0KCksXG4gICAgICAgICAgcHJvY2VkdXJlTm9kZSA9IG5vZGU7XG5cbiAgICB0aGlzLnJldHVybkJsb2NrID0gcmV0dXJuQmxvY2tGcm9tUHJvY2VkdXJlTm9kZShwcm9jZWR1cmVOb2RlLCBjb250ZXh0KTtcbiAgfVxuXG4gIHZlcmlmeSA9IGJyZWFrYWJsZShmdW5jdGlvbiAoY29udGV4dCwgZm9yd2FyZCwgYmFjaykge1xuICAgIGxldCBwcm9jZWR1cmU7XG5cbiAgICBjb25zdCBwcm9jZWR1cmVTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpO1xuXG4gICAgY29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtwcm9jZWR1cmVTdHJpbmd9JyBmdW5jdGlvbi4uLmApO1xuXG4gICAgY29uc3QgcHJvY2VkdXJlTmFtZSA9IHRoaXMuZ2V0UHJvY2VkdXJlTmFtZSgpLFxuICAgICAgICAgIHByb2NlZHVyZVByZXNlbnQgPSBjb250ZXh0LmlzUHJvY2VkdXJlUHJlc2VudEJ5UHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKTtcblxuICAgIGlmIChwcm9jZWR1cmVQcmVzZW50KSB7XG4gICAgICBjb250ZXh0LnRyYWNlKGBUaGUgJyR7cHJvY2VkdXJlU3RyaW5nfScgZnVuY3Rpb24gaXMgYWxyZWFkeSBwcmVzZW50LmApO1xuXG4gICAgICByZXR1cm4gYmFjaygpO1xuICAgIH1cblxuICAgIHByb2NlZHVyZSA9IHRoaXM7IC8vL1xuXG4gICAgY29udGV4dC5hZGRQcm9jZWR1cmUocHJvY2VkdXJlKTtcblxuICAgIGNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtwcm9jZWR1cmVTdHJpbmd9JyBmdW5jdGlvbi5gKTtcblxuICAgIHJldHVybiBmb3J3YXJkKGNvbnRleHQsIGJhY2spO1xuICB9KTtcblxuICBldmFsdWF0ZSA9IGJyZWFrYWJsZShmdW5jdGlvbiAodmFsdWVzLCBjb250ZXh0LCBmb3J3YXJkLCBiYWNrKSB7XG4gICAgZm9yd2FyZCA9IGN1dChmb3J3YXJkLCBiYWNrKTtcblxuICAgIGNvbnN0IHByb2NlZHVyZVN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7ICAvLy9cblxuICAgIGNvbnRleHQudHJhY2UoYENhbGxpbmcgdGhlICcke3Byb2NlZHVyZVN0cmluZ30nIGZ1bmN0aW9uLi4uYCk7XG5cbiAgICByZXR1cm4gdGhpcy5wYXJhbWV0ZXJzLmNvbXBhcmVWYWx1ZXModmFsdWVzLCBjb250ZXh0LCAoYmFjaykgPT4ge1xuICAgICAgdGhpcy5ndWFyYW50ZWVSZXR1cm5CbG9jaygpO1xuXG4gICAgICBjb25zdCB2YXJpYWJsZXMgPSB2YXJpYWJsZXNGcm9tVmFsdWVzQW5kUGFyYW1ldGVycyh2YWx1ZXMsIHRoaXMucGFyYW1ldGVycywgY29udGV4dCk7XG5cbiAgICAgIHJldHVybiB0aGlzLnJldHVybkJsb2NrLmV2YWx1YXRlKHZhcmlhYmxlcywgY29udGV4dCwgKHZhbHVlLCBiYWNrKSA9PiB7XG4gICAgICAgIGNvbnN0IHZhbHVlVHlwZSA9IHZhbHVlLmdldFR5cGUoKSxcbiAgICAgICAgICAgICAgdHlwZUVxdWFsVG9WYWx1ZVR5cGUgPSB0aGlzLnR5cGUuaXNFcXVhbFRvKHZhbHVlVHlwZSk7XG5cbiAgICAgICAgaWYgKCF0eXBlRXF1YWxUb1ZhbHVlVHlwZSkge1xuICAgICAgICAgIGNvbnN0IHR5cGVTdHJpbmcgPSB0aGlzLnR5cGUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICAgICAgdmFsdWVTdHJpbmcgPSB2YWx1ZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgICAgICB2YWx1ZVR5cGVTdHJpbmcgPSB2YWx1ZVR5cGUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7dmFsdWVTdHJpbmd9JyB2YWx1ZSdzICcke3ZhbHVlVHlwZVN0cmluZ30nIHR5cGUgaXMgbm90IGVxdWFsIHRvIHRoZSAnJHtwcm9jZWR1cmVTdHJpbmd9JyBmdW5jdGlvbidzICcke3R5cGVTdHJpbmd9JyB0eXBlLmAsXG4gICAgICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICAgICAgcmV0dXJuIGJhY2soZXhjZXB0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnRleHQuZGVidWcoYC4uLmNhbGxlZCB0aGUgJyR7cHJvY2VkdXJlU3RyaW5nfScgZnVuY3Rpb24uYCk7XG5cbiAgICAgICAgcmV0dXJuIGZvcndhcmQodmFsdWUsIGJhY2spO1xuICAgICAgfSwgYmFjayk7XG4gICAgfSwgYmFjayk7XG4gIH0pO1xuXG4gIGNhbGxOb21pbmFsbHkobm9taW5hbFZhbHVlcywgZm9yd2FyZCwgYmFjaykge1xuICAgIGNvbnN0IGNvbnRleHQgPSB0aGlzLmdldENvbnRleHQoKSxcbiAgICAgICAgICBwcm9jZWR1cmVTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpOyAgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBDYWxsaW5nIHRoZSAnJHtwcm9jZWR1cmVTdHJpbmd9JyBmdW5jdGlvbiBub21pbmFsbHkuLi5gKTtcblxuICAgIGNvbnN0IHZhbHVlcyA9IHZhbHVlc0Zyb21Ob21pbmFsVmFsdWVzKG5vbWluYWxWYWx1ZXMsIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIHRoaXMuZXZhbHVhdGUodmFsdWVzLCBjb250ZXh0LCAodmFsdWUsIGJhY2spID0+IHtcbiAgICAgIGNvbnRleHQuZGVidWcoYC4uLmNhbGxlZCB0aGUgJyR7cHJvY2VkdXJlU3RyaW5nfScgZnVuY3Rpb24gbm9taW5hbGx5LmApO1xuXG4gICAgICByZXR1cm4gZm9yd2FyZCh2YWx1ZSwgYmFjayk7XG4gICAgfSwgYmFjayk7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgY29uc3QgdHlwZUpTT04gPSB0eXBlVG9UeXBlSlNPTih0aGlzLnR5cGUpLFxuICAgICAgICAgIGxhYmVsSlNPTiA9IGxhYmVsVG9MYWJlbEpTT04odGhpcy5sYWJlbCksXG4gICAgICAgICAgZXhwb3J0ZWRKSlNPTiA9IGV4cG9ydGVkVG9FeHBvcnRlZEpTT04odGhpcy5sYWJlbCksXG4gICAgICAgICAgcGFyYW1ldGVyc0pTT04gPSBwYXJhbWV0ZXJzVG9QYXJhbWV0ZXJzSlNPTih0aGlzLnBhcmFtZXRlcnMpLFxuICAgICAgICAgIHN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7XG5cbiAgICBsZXQgYnJlYWtQb2ludDtcblxuICAgIGJyZWFrUG9pbnQgPSB0aGlzLmdldEJyZWFrUG9pbnQoKTtcblxuICAgIGNvbnN0IGJyZWFrUG9pbnRKU09OID0gYnJlYWtQb2ludFRvQnJlYWtQb2ludEpTT04oYnJlYWtQb2ludCk7XG5cbiAgICBicmVha1BvaW50ID0gYnJlYWtQb2ludEpTT047ICAvLy9cblxuICAgIGNvbnN0IHR5cGUgPSB0eXBlSlNPTiwgIC8vL1xuICAgICAgICAgIGxhYmVsID0gbGFiZWxKU09OLCAgLy8vXG4gICAgICAgICAgZXhwb3J0ZWQgPSBleHBvcnRlZEpKU09OLCAvLy9cbiAgICAgICAgICBwYXJhbWV0ZXJzID0gcGFyYW1ldGVyc0pTT04sICAvLy9cbiAgICAgICAgICBqc29uID0ge1xuICAgICAgICAgICAgc3RyaW5nLFxuICAgICAgICAgICAgYnJlYWtQb2ludCxcbiAgICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgICBsYWJlbCxcbiAgICAgICAgICAgIGV4cG9ydGVkLFxuICAgICAgICAgICAgcGFyYW1ldGVyc1xuICAgICAgICAgIH07XG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJQcm9jZWR1cmVcIjtcblxuICBzdGF0aWMgZnJvbUpTT04oanNvbiwgY29udGV4dCkge1xuICAgIGNvbnN0IHsgc3RyaW5nIH0gPSBqc29uLFxuICAgICAgICAgIGJyZWFrUG9pbnQgPSBicmVha1BvaW50RnJvbUpTT04oanNvbiksXG4gICAgICAgICAgdHlwZSA9IHR5cGVGcm9tSlNPTihqc29uLCBjb250ZXh0KSxcbiAgICAgICAgICBsYWJlbCA9IGxhYmVsRnJvbUpTT04oanNvbiwgY29udGV4dCksXG4gICAgICAgICAgZXhwb3J0ZWQgPSBleHBvcnRlZEZyb21KU09OKGpzb24sIGNvbnRleHQpLFxuICAgICAgICAgIHBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzRnJvbUpTT04oanNvbiwgY29udGV4dCksXG4gICAgICAgICAgcHJvY2VkdXJlTm9kZSA9IGNvbnRleHQuZmluZFByb2NlZHVyZU5vZGUobGFiZWwpLFxuICAgICAgICAgIHJldHVybkJsb2NrID0gbnVsbCwgLy8vXG4gICAgICAgICAgbm9kZSA9IHByb2NlZHVyZU5vZGUsIC8vL1xuICAgICAgICAgIHByb2NlZHVyZSA9IG5ldyBQcm9jZWR1cmUoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB0eXBlLCBsYWJlbCwgZXhwb3J0ZWQsIHBhcmFtZXRlcnMsIHJldHVybkJsb2NrKTtcblxuICAgIHJldHVybiBwcm9jZWR1cmU7XG4gIH1cbn0pO1xuIl0sIm5hbWVzIjpbImN1dCIsImNvbnRpbnVhdGlvblV0aWxpdGllcyIsImJyZWFrYWJsZSIsImJyZWFrUG9pbnRGcm9tSlNPTiIsImJyZWFrUG9pbnRUb0JyZWFrUG9pbnRKU09OIiwiYnJlYWtQb2ludFV0aWxpdGllcyIsImRlZmluZSIsIlByb2NlZHVyZSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ0eXBlIiwibGFiZWwiLCJleHBvcnRlZCIsInBhcmFtZXRlcnMiLCJyZXR1cm5CbG9jayIsImdldFR5cGUiLCJnZXRMYWJlbCIsImlzRXhwb3J0ZWQiLCJnZXRQYXJhbWV0ZXJzIiwiZ2V0UmV0dXJuQmxvY2siLCJnZXROYW1lIiwiaXNCb29sZWFuIiwiYm9vbGVhblR5cGUiLCJpc0Jvb2xlYW5UeXBlIiwiYm9vbGVhbiIsImdldFByb2NlZHVyZU5hbWUiLCJuYW1lIiwicHJvY2VkdXJlTmFtZSIsImdldFJldHVyblN0YXRlbWVudCIsImNvbXBhcmVQcm9jZWR1cmVOYW1lIiwiZ3VhcmFudGVlUmV0dXJuQmxvY2siLCJnZXROb2RlIiwiZ2V0Q29udGV4dCIsInByb2NlZHVyZU5vZGUiLCJyZXR1cm5CbG9ja0Zyb21Qcm9jZWR1cmVOb2RlIiwidmVyaWZ5IiwiZm9yd2FyZCIsImJhY2siLCJwcm9jZWR1cmUiLCJwcm9jZWR1cmVTdHJpbmciLCJnZXRTdHJpbmciLCJ0cmFjZSIsInByb2NlZHVyZVByZXNlbnQiLCJpc1Byb2NlZHVyZVByZXNlbnRCeVByb2NlZHVyZU5hbWUiLCJhZGRQcm9jZWR1cmUiLCJkZWJ1ZyIsImV2YWx1YXRlIiwidmFsdWVzIiwiY29tcGFyZVZhbHVlcyIsInZhcmlhYmxlcyIsInZhcmlhYmxlc0Zyb21WYWx1ZXNBbmRQYXJhbWV0ZXJzIiwidmFsdWUiLCJ2YWx1ZVR5cGUiLCJ0eXBlRXF1YWxUb1ZhbHVlVHlwZSIsImlzRXF1YWxUbyIsInR5cGVTdHJpbmciLCJ2YWx1ZVN0cmluZyIsInZhbHVlVHlwZVN0cmluZyIsIm1lc3NhZ2UiLCJleGNlcHRpb24iLCJFeGNlcHRpb24iLCJmcm9tTWVzc2FnZSIsImNhbGxOb21pbmFsbHkiLCJub21pbmFsVmFsdWVzIiwidmFsdWVzRnJvbU5vbWluYWxWYWx1ZXMiLCJ0b0pTT04iLCJ0eXBlSlNPTiIsInR5cGVUb1R5cGVKU09OIiwibGFiZWxKU09OIiwibGFiZWxUb0xhYmVsSlNPTiIsImV4cG9ydGVkSkpTT04iLCJleHBvcnRlZFRvRXhwb3J0ZWRKU09OIiwicGFyYW1ldGVyc0pTT04iLCJwYXJhbWV0ZXJzVG9QYXJhbWV0ZXJzSlNPTiIsImdldEJyZWFrUG9pbnQiLCJicmVha1BvaW50SlNPTiIsImpzb24iLCJmcm9tSlNPTiIsInR5cGVGcm9tSlNPTiIsImxhYmVsRnJvbUpTT04iLCJleHBvcnRlZEZyb21KU09OIiwicGFyYW1ldGVyc0Zyb21KU09OIiwiZmluZFByb2NlZHVyZU5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWVBOzs7ZUFBQTs7O2dDQWJvRTtrRUFFOUM7MEJBRUM7d0JBQ2lCO3lCQUNLOzRCQUNJO3NCQUN1SDs7Ozs7O0FBRXhLLE1BQU0sRUFBRUEsR0FBRyxFQUFFLEdBQUdDLHFDQUFxQixFQUMvQixFQUFFQyxTQUFTLEVBQUVDLGtCQUFrQixFQUFFQywwQkFBMEIsRUFBRSxHQUFHQyxtQ0FBbUI7TUFFekYsV0FBZUMsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyxrQkFBa0JDLHVCQUFPO0lBQ25ELFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsSUFBSSxFQUFFQyxLQUFLLEVBQUVDLFFBQVEsRUFBRUMsVUFBVSxFQUFFQyxXQUFXLENBQUU7UUFDN0YsS0FBSyxDQUFDUixTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLEtBQUssR0FBR0E7UUFDYixJQUFJLENBQUNDLFFBQVEsR0FBR0E7UUFDaEIsSUFBSSxDQUFDQyxVQUFVLEdBQUdBO1FBQ2xCLElBQUksQ0FBQ0MsV0FBVyxHQUFHQTtJQUNyQjtJQUVBQyxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUNMLElBQUk7SUFDbEI7SUFFQU0sV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDTCxLQUFLO0lBQ25CO0lBRUFNLGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQ0wsUUFBUTtJQUN0QjtJQUVBTSxnQkFBZ0I7UUFDZCxPQUFP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
|
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Byb2NlZHVyZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCwgYnJlYWtQb2ludFV0aWxpdGllcywgY29udGludWF0aW9uVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgeyB2YWx1ZXNGcm9tTm9taW5hbFZhbHVlcyB9IGZyb20gXCIuLi91dGlsaXRpZXMvdmFsdWVzXCI7XG5pbXBvcnQgeyByZXR1cm5CbG9ja0Zyb21Qcm9jZWR1cmVOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9lbGVtZW50XCI7XG5pbXBvcnQgeyB2YXJpYWJsZXNGcm9tVmFsdWVzQW5kUGFyYW1ldGVycyB9IGZyb20gXCIuLi91dGlsaXRpZXMvcGFyYW1ldGVyc1wiO1xuaW1wb3J0IHsgdHlwZUZyb21KU09OLCBsYWJlbEZyb21KU09OLCBleHBvcnRlZEZyb21KU09OLCBwYXJhbWV0ZXJzRnJvbUpTT04sIHR5cGVUb1R5cGVKU09OLCBsYWJlbFRvTGFiZWxKU09OLCBleHBvcnRlZFRvRXhwb3J0ZWRKU09OLCBwYXJhbWV0ZXJzVG9QYXJhbWV0ZXJzSlNPTiB9IGZyb20gXCIuLi91dGlsaXRpZXMvanNvblwiO1xuXG5jb25zdCB7IGN1dCB9ID0gY29udGludWF0aW9uVXRpbGl0aWVzLFxuICAgICAgeyBicmVha2FibGUsIGJyZWFrUG9pbnRGcm9tSlNPTiwgYnJlYWtQb2ludFRvQnJlYWtQb2ludEpTT04gfSA9IGJyZWFrUG9pbnRVdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBQcm9jZWR1cmUgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB0eXBlLCBsYWJlbCwgZXhwb3J0ZWQsIHBhcmFtZXRlcnMsIHJldHVybkJsb2NrKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gICAgdGhpcy5sYWJlbCA9IGxhYmVsO1xuICAgIHRoaXMuZXhwb3J0ZWQgPSBleHBvcnRlZDtcbiAgICB0aGlzLnBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzO1xuICAgIHRoaXMucmV0dXJuQmxvY2sgPSByZXR1cm5CbG9jaztcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIGdldExhYmVsKCkge1xuICAgIHJldHVybiB0aGlzLmxhYmVsO1xuICB9XG5cbiAgaXNFeHBvcnRlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5leHBvcnRlZDtcbiAgfVxuXG4gIGdldFBhcmFtZXRlcnMoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyYW1ldGVycztcbiAgfVxuXG4gIGdldFJldHVybkJsb2NrKCkge1xuICAgIHJldHVybiB0aGlzLnJldHVybkJsb2NrO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHsgcmV0dXJuIHRoaXMubGFiZWwuZ2V0TmFtZSgpOyB9XG5cbiAgaXNCb29sZWFuKCkge1xuICAgIGNvbnN0IHR5cGUgPSB0aGlzLmdldFR5cGUoKSxcbiAgICAgICAgICBib29sZWFuVHlwZSA9IHR5cGUuaXNCb29sZWFuVHlwZSgpLFxuICAgICAgICAgIGJvb2xlYW4gPSBib29sZWFuVHlwZTsgIC8vL1xuXG4gICAgcmV0dXJuIGJvb2xlYW47XG4gIH1cblxuICBnZXRQcm9jZWR1cmVOYW1lKCkge1xuICAgIGNvbnN0IG5hbWUgPSB0aGlzLmdldE5hbWUoKSxcbiAgICAgICAgICBwcm9jZWR1cmVOYW1lID0gbmFtZTsgLy8vXG5cbiAgICByZXR1cm4gcHJvY2VkdXJlTmFtZTtcbiAgfVxuXG4gIGdldFJldHVyblN0YXRlbWVudCgpIHsgcmV0dXJuIHRoaXMucmV0dXJuQmxvY2suZ2V0UmV0dXJuU3RhdGVtZW50KCk7IH1cblxuICBjb21wYXJlUmVsZWFzZU5hbWUocmVsZWFzZU5hbWUpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5jb21wYXJlUmVsZWFzZU5hbWUocmVsZWFzZU5hbWUpOyB9XG5cbiAgY29tcGFyZVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSkgeyByZXR1cm4gdGhpcy5sYWJlbC5jb21wYXJlUHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKTsgfVxuXG4gIGd1YXJhbnRlZVJldHVybkJsb2NrKCkge1xuICAgIGlmICh0aGlzLnJldHVybkJsb2NrICE9IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBub2RlID0gdGhpcy5nZXROb2RlKCksXG4gICAgICAgICAgY29udGV4dCA9IHRoaXMuZ2V0Q29udGV4dCgpLFxuICAgICAgICAgIHByb2NlZHVyZU5vZGUgPSBub2RlO1xuXG4gICAgdGhpcy5yZXR1cm5CbG9jayA9IHJldHVybkJsb2NrRnJvbVByb2NlZHVyZU5vZGUocHJvY2VkdXJlTm9kZSwgY29udGV4dCk7XG4gIH1cblxuICB2ZXJpZnkgPSBicmVha2FibGUoZnVuY3Rpb24gKGNvbnRleHQsIGZvcndhcmQsIGJhY2spIHtcbiAgICBjb25zdCBwcm9jZWR1cmVTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpO1xuXG4gICAgY29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtwcm9jZWR1cmVTdHJpbmd9JyBmdW5jdGlvbi4uLmApO1xuXG4gICAgY29uc3QgcHJvY2VkdXJlTmFtZSA9IHRoaXMuZ2V0UHJvY2VkdXJlTmFtZSgpLFxuICAgICAgICAgIHByb2NlZHVyZVByZXNlbnQgPSBjb250ZXh0LmlzUHJvY2VkdXJlUHJlc2VudEJ5UHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKTtcblxuICAgIGlmIChwcm9jZWR1cmVQcmVzZW50KSB7XG4gICAgICBjb250ZXh0LnRyYWNlKGBUaGUgJyR7cHJvY2VkdXJlU3RyaW5nfScgZnVuY3Rpb24gaXMgYWxyZWFkeSBwcmVzZW50LmApO1xuXG4gICAgICByZXR1cm4gYmFjaygpO1xuICAgIH1cblxuICAgIGNvbnN0IHByb2NlZHVyZSA9IHRoaXM7IC8vL1xuXG4gICAgY29udGV4dC5hZGRQcm9jZWR1cmUocHJvY2VkdXJlKTtcblxuICAgIGNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtwcm9jZWR1cmVTdHJpbmd9JyBmdW5jdGlvbi5gKTtcblxuICAgIHJldHVybiBmb3J3YXJkKGNvbnRleHQsIGJhY2spO1xuICB9KTtcblxuICBldmFsdWF0ZSA9IGJyZWFrYWJsZShmdW5jdGlvbiAodmFsdWVzLCBjb250ZXh0LCBmb3J3YXJkLCBiYWNrKSB7XG4gICAgZm9yd2FyZCA9IGN1dChmb3J3YXJkLCBiYWNrKTtcblxuICAgIGNvbnN0IHByb2NlZHVyZVN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7ICAvLy9cblxuICAgIGNvbnRleHQudHJhY2UoYENhbGxpbmcgdGhlICcke3Byb2NlZHVyZVN0cmluZ30nIGZ1bmN0aW9uLi4uYCk7XG5cbiAgICByZXR1cm4gdGhpcy5wYXJhbWV0ZXJzLmNvbXBhcmVWYWx1ZXModmFsdWVzLCBjb250ZXh0LCAoYmFjaykgPT4ge1xuICAgICAgdGhpcy5ndWFyYW50ZWVSZXR1cm5CbG9jaygpO1xuXG4gICAgICBjb25zdCB2YXJpYWJsZXMgPSB2YXJpYWJsZXNGcm9tVmFsdWVzQW5kUGFyYW1ldGVycyh2YWx1ZXMsIHRoaXMucGFyYW1ldGVycywgY29udGV4dCk7XG5cbiAgICAgIHJldHVybiB0aGlzLnJldHVybkJsb2NrLmV2YWx1YXRlKHZhcmlhYmxlcywgY29udGV4dCwgKHZhbHVlLCBiYWNrKSA9PiB7XG4gICAgICAgIGNvbnN0IHZhbHVlVHlwZSA9IHZhbHVlLmdldFR5cGUoKSxcbiAgICAgICAgICAgICAgdHlwZUVxdWFsVG9WYWx1ZVR5cGUgPSB0aGlzLnR5cGUuaXNFcXVhbFRvKHZhbHVlVHlwZSk7XG5cbiAgICAgICAgaWYgKCF0eXBlRXF1YWxUb1ZhbHVlVHlwZSkge1xuICAgICAgICAgIGNvbnN0IHR5cGVTdHJpbmcgPSB0aGlzLnR5cGUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICAgICAgdmFsdWVTdHJpbmcgPSB2YWx1ZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgICAgICB2YWx1ZVR5cGVTdHJpbmcgPSB2YWx1ZVR5cGUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7dmFsdWVTdHJpbmd9JyB2YWx1ZSdzICcke3ZhbHVlVHlwZVN0cmluZ30nIHR5cGUgaXMgbm90IGVxdWFsIHRvIHRoZSAnJHtwcm9jZWR1cmVTdHJpbmd9JyBmdW5jdGlvbidzICcke3R5cGVTdHJpbmd9JyB0eXBlLmAsXG4gICAgICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICAgICAgcmV0dXJuIGJhY2soZXhjZXB0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnRleHQuZGVidWcoYC4uLmNhbGxlZCB0aGUgJyR7cHJvY2VkdXJlU3RyaW5nfScgZnVuY3Rpb24uYCk7XG5cbiAgICAgICAgcmV0dXJuIGZvcndhcmQodmFsdWUsIGJhY2spO1xuICAgICAgfSwgYmFjayk7XG4gICAgfSwgYmFjayk7XG4gIH0pO1xuXG4gIGNhbGxOb21pbmFsbHkobm9taW5hbFZhbHVlcywgZm9yd2FyZCwgYmFjaykge1xuICAgIGNvbnN0IGNvbnRleHQgPSB0aGlzLmdldENvbnRleHQoKSxcbiAgICAgICAgICBwcm9jZWR1cmVTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpOyAgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBDYWxsaW5nIHRoZSAnJHtwcm9jZWR1cmVTdHJpbmd9JyBmdW5jdGlvbiBub21pbmFsbHkuLi5gKTtcblxuICAgIGNvbnN0IHZhbHVlcyA9IHZhbHVlc0Zyb21Ob21pbmFsVmFsdWVzKG5vbWluYWxWYWx1ZXMsIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIHRoaXMuZXZhbHVhdGUodmFsdWVzLCBjb250ZXh0LCAodmFsdWUsIGJhY2spID0+IHtcbiAgICAgIGNvbnRleHQuZGVidWcoYC4uLmNhbGxlZCB0aGUgJyR7cHJvY2VkdXJlU3RyaW5nfScgZnVuY3Rpb24gbm9taW5hbGx5LmApO1xuXG4gICAgICByZXR1cm4gZm9yd2FyZCh2YWx1ZSwgYmFjayk7XG4gICAgfSwgYmFjayk7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgbGV0IGpzb247XG5cbiAgICBjb25zdCBzdHJpbmcgPSB0aGlzLmdldFN0cmluZygpLFxuICAgICAgICAgIHR5cGVKU09OID0gdHlwZVRvVHlwZUpTT04odGhpcy50eXBlKSxcbiAgICAgICAgICBsYWJlbEpTT04gPSBsYWJlbFRvTGFiZWxKU09OKHRoaXMubGFiZWwpLFxuICAgICAgICAgIGV4cG9ydGVkSkpTT04gPSBleHBvcnRlZFRvRXhwb3J0ZWRKU09OKHRoaXMuZXhwb3J0ZWQpLFxuICAgICAgICAgIHBhcmFtZXRlcnNKU09OID0gcGFyYW1ldGVyc1RvUGFyYW1ldGVyc0pTT04odGhpcy5wYXJhbWV0ZXJzKTtcblxuICAgIGxldCBicmVha1BvaW50O1xuXG4gICAgYnJlYWtQb2ludCA9IHRoaXMuZ2V0QnJlYWtQb2ludCgpO1xuXG4gICAgY29uc3QgYnJlYWtQb2ludEpTT04gPSBicmVha1BvaW50VG9CcmVha1BvaW50SlNPTihicmVha1BvaW50KTtcblxuICAgIGJyZWFrUG9pbnQgPSBicmVha1BvaW50SlNPTjsgIC8vL1xuXG4gICAgY29uc3QgdHlwZSA9IHR5cGVKU09OLCAgLy8vXG4gICAgICAgICAgbGFiZWwgPSBsYWJlbEpTT04sICAvLy9cbiAgICAgICAgICBleHBvcnRlZCA9IGV4cG9ydGVkSkpTT04sIC8vL1xuICAgICAgICAgIHBhcmFtZXRlcnMgPSBwYXJhbWV0ZXJzSlNPTjsgIC8vL1xuXG4gICAganNvbiA9IHtcbiAgICAgIHN0cmluZyxcbiAgICAgIGJyZWFrUG9pbnQsXG4gICAgICB0eXBlLFxuICAgICAgbGFiZWwsXG4gICAgICBleHBvcnRlZCxcbiAgICAgIHBhcmFtZXRlcnNcbiAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiUHJvY2VkdXJlXCI7XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24sIGNvbnRleHQpIHtcbiAgICBjb25zdCB7IHN0cmluZyB9ID0ganNvbixcbiAgICAgICAgICBicmVha1BvaW50ID0gYnJlYWtQb2ludEZyb21KU09OKGpzb24pLFxuICAgICAgICAgIHR5cGUgPSB0eXBlRnJvbUpTT04oanNvbiwgY29udGV4dCksXG4gICAgICAgICAgbGFiZWwgPSBsYWJlbEZyb21KU09OKGpzb24sIGNvbnRleHQpLFxuICAgICAgICAgIGV4cG9ydGVkID0gZXhwb3J0ZWRGcm9tSlNPTihqc29uLCBjb250ZXh0KSxcbiAgICAgICAgICBwYXJhbWV0ZXJzID0gcGFyYW1ldGVyc0Zyb21KU09OKGpzb24sIGNvbnRleHQpLFxuICAgICAgICAgIHByb2NlZHVyZU5vZGUgPSBjb250ZXh0LmZpbmRQcm9jZWR1cmVOb2RlKGxhYmVsKSxcbiAgICAgICAgICByZXR1cm5CbG9jayA9IG51bGwsIC8vL1xuICAgICAgICAgIG5vZGUgPSBwcm9jZWR1cmVOb2RlLCAvLy9cbiAgICAgICAgICBwcm9jZWR1cmUgPSBuZXcgUHJvY2VkdXJlKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdHlwZSwgbGFiZWwsIGV4cG9ydGVkLCBwYXJhbWV0ZXJzLCByZXR1cm5CbG9jayk7XG5cbiAgICByZXR1cm4gcHJvY2VkdXJlO1xuICB9XG59KTtcbiJdLCJuYW1lcyI6WyJjdXQiLCJjb250aW51YXRpb25VdGlsaXRpZXMiLCJicmVha2FibGUiLCJicmVha1BvaW50RnJvbUpTT04iLCJicmVha1BvaW50VG9CcmVha1BvaW50SlNPTiIsImJyZWFrUG9pbnRVdGlsaXRpZXMiLCJkZWZpbmUiLCJQcm9jZWR1cmUiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwidHlwZSIsImxhYmVsIiwiZXhwb3J0ZWQiLCJwYXJhbWV0ZXJzIiwicmV0dXJuQmxvY2siLCJnZXRUeXBlIiwiZ2V0TGFiZWwiLCJpc0V4cG9ydGVkIiwiZ2V0UGFyYW1ldGVycyIsImdldFJldHVybkJsb2NrIiwiZ2V0TmFtZSIsImlzQm9vbGVhbiIsImJvb2xlYW5UeXBlIiwiaXNCb29sZWFuVHlwZSIsImJvb2xlYW4iLCJnZXRQcm9jZWR1cmVOYW1lIiwibmFtZSIsInByb2NlZHVyZU5hbWUiLCJnZXRSZXR1cm5TdGF0ZW1lbnQiLCJjb21wYXJlUmVsZWFzZU5hbWUiLCJyZWxlYXNlTmFtZSIsImNvbXBhcmVQcm9jZWR1cmVOYW1lIiwiZ3VhcmFudGVlUmV0dXJuQmxvY2siLCJnZXROb2RlIiwiZ2V0Q29udGV4dCIsInByb2NlZHVyZU5vZGUiLCJyZXR1cm5CbG9ja0Zyb21Qcm9jZWR1cmVOb2RlIiwidmVyaWZ5IiwiZm9yd2FyZCIsImJhY2siLCJwcm9jZWR1cmVTdHJpbmciLCJnZXRTdHJpbmciLCJ0cmFjZSIsInByb2NlZHVyZVByZXNlbnQiLCJpc1Byb2NlZHVyZVByZXNlbnRCeVByb2NlZHVyZU5hbWUiLCJwcm9jZWR1cmUiLCJhZGRQcm9jZWR1cmUiLCJkZWJ1ZyIsImV2YWx1YXRlIiwidmFsdWVzIiwiY29tcGFyZVZhbHVlcyIsInZhcmlhYmxlcyIsInZhcmlhYmxlc0Zyb21WYWx1ZXNBbmRQYXJhbWV0ZXJzIiwidmFsdWUiLCJ2YWx1ZVR5cGUiLCJ0eXBlRXF1YWxUb1ZhbHVlVHlwZSIsImlzRXF1YWxUbyIsInR5cGVTdHJpbmciLCJ2YWx1ZVN0cmluZyIsInZhbHVlVHlwZVN0cmluZyIsIm1lc3NhZ2UiLCJleGNlcHRpb24iLCJFeGNlcHRpb24iLCJmcm9tTWVzc2FnZSIsImNhbGxOb21pbmFsbHkiLCJub21pbmFsVmFsdWVzIiwidmFsdWVzRnJvbU5vbWluYWxWYWx1ZXMiLCJ0b0pTT04iLCJqc29uIiwidHlwZUpTT04iLCJ0eXBlVG9UeXBlSlNPTiIsImxhYmVsSlNPTiIsImxhYmVsVG9MYWJlbEpTT04iLCJleHBvcnRlZEpKU09OIiwiZXhwb3J0ZWRUb0V4cG9ydGVkSlNPTiIsInBhcmFtZXRlcnNKU09OIiwicGFyYW1ldGVyc1RvUGFyYW1ldGVyc0pTT04iLCJnZXRCcmVha1BvaW50IiwiYnJlYWtQb2ludEpTT04iLCJmcm9tSlNPTiIsInR5cGVGcm9tSlNPTiIsImxhYmVsRnJvbUpTT04iLCJleHBvcnRlZEZyb21KU09OIiwicGFyYW1ldGVyc0Zyb21KU09OIiwiZmluZFByb2NlZHVyZU5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWVBOzs7ZUFBQTs7O2dDQWJvRTtrRUFFOUM7MEJBRUM7d0JBQ2lCO3lCQUNLOzRCQUNJO3NCQUN1SDs7Ozs7O0FBRXhLLE1BQU0sRUFBRUEsR0FBRyxFQUFFLEdBQUdDLHFDQUFxQixFQUMvQixFQUFFQyxTQUFTLEVBQUVDLGtCQUFrQixFQUFFQywwQkFBMEIsRUFBRSxHQUFHQyxtQ0FBbUI7TUFFekYsV0FBZUMsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyxrQkFBa0JDLHVCQUFPO0lBQ25ELFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsSUFBSSxFQUFFQyxLQUFLLEVBQUVDLFFBQVEsRUFBRUMsVUFBVSxFQUFFQyxXQUFXLENBQUU7UUFDN0YsS0FBSyxDQUFDUixTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLEtBQUssR0FBR0E7UUFDYixJQUFJLENBQUNDLFFBQVEsR0FBR0E7UUFDaEIsSUFBSSxDQUFDQyxVQUFVLEdBQUdBO1FBQ2xCLElBQUksQ0FBQ0MsV0FBVyxHQUFHQTtJQUNyQjtJQUVBQyxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUNMLElBQUk7SUFDbEI7SUFFQU0sV0FBVztRQUNULE9BQU8s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
|
|
@@ -35,12 +35,18 @@ const _default = (0, _elements.define)(class ProcedureCall extends _occamlanguag
|
|
|
35
35
|
evaluate(context, forward, back) {
|
|
36
36
|
const procedureCallString = this.getString(); ///
|
|
37
37
|
context.trace(`Evaluating the '${procedureCallString}' function call...`);
|
|
38
|
-
const procedureName = this.getProcedureName(), procedurePresent = context.isProcedurePresentByProcedureName(procedureName);
|
|
39
|
-
if (!procedurePresent) {
|
|
38
|
+
const procedureName = this.getProcedureName(), procedurePresent = context.isProcedurePresentByProcedureName(procedureName), importedProcedurePresent = context.isImportedProcedurePresentByProcedureName(procedureName);
|
|
39
|
+
if (!procedurePresent && !importedProcedurePresent) {
|
|
40
40
|
const message = `The '${procedureCallString}' function is not present.'`, exception = _exception.default.fromMessage(message);
|
|
41
41
|
return back(exception);
|
|
42
42
|
}
|
|
43
|
-
|
|
43
|
+
let procedure;
|
|
44
|
+
if (!importedProcedurePresent) {
|
|
45
|
+
procedure = context.findProcedureByProcedureName(procedureName);
|
|
46
|
+
} else {
|
|
47
|
+
const importedProcedure = context.findImportedProcedureByProcedureName(procedureName);
|
|
48
|
+
procedure = importedProcedure; ///
|
|
49
|
+
}
|
|
44
50
|
return this.values.evaluate(context, (values, back)=>{
|
|
45
51
|
return (0, _context.free)((context)=>{
|
|
46
52
|
return procedure.evaluate(values, context, (value, back)=>{
|
|
@@ -54,4 +60,4 @@ const _default = (0, _elements.define)(class ProcedureCall extends _occamlanguag
|
|
|
54
60
|
static name = "ProcedureCall";
|
|
55
61
|
});
|
|
56
62
|
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Byb2NlZHVyZUNhbGwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBmcmVlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9jb250ZXh0XCI7XG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIFByb2NlZHVyZUNhbGwgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCByZWZlcmVuY2UsIHZhbHVlcykge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLnJlZmVyZW5jZSA9IHJlZmVyZW5jZTtcbiAgICB0aGlzLnZhbHVlcyA9IHZhbHVlcztcbiAgfVxuXG4gIGdldFJlZmVyZW5jZSgpIHtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2U7XG4gIH1cblxuICBnZXRWYWx1ZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVzO1xuICB9XG5cbiAgZ2V0UHJvY2VkdXJlTmFtZSgpIHsgcmV0dXJuIHRoaXMucmVmZXJlbmNlLmdldFByb2NlZHVyZU5hbWUoKTsgfVxuXG4gIGV2YWx1YXRlKGNvbnRleHQsIGZvcndhcmQsIGJhY2spIHtcbiAgICBjb25zdCBwcm9jZWR1cmVDYWxsU3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTsgIC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgRXZhbHVhdGluZyB0aGUgJyR7cHJvY2VkdXJlQ2FsbFN0cmluZ30nIGZ1bmN0aW9uIGNhbGwuLi5gKTtcblxuICAgIGNvbnN0IHByb2NlZHVyZU5hbWUgPSB0aGlzLmdldFByb2NlZHVyZU5hbWUoKSxcbiAgICAgICAgICBwcm9jZWR1cmVQcmVzZW50ID0gY29udGV4dC5pc1Byb2NlZHVyZVByZXNlbnRCeVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSksXG4gICAgICAgICAgaW1wb3J0ZWRQcm9jZWR1cmVQcmVzZW50ID0gY29udGV4dC5pc0ltcG9ydGVkUHJvY2VkdXJlUHJlc2VudEJ5UHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKTtcblxuICAgIGlmICghcHJvY2VkdXJlUHJlc2VudCAmJiAhaW1wb3J0ZWRQcm9jZWR1cmVQcmVzZW50KSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYFRoZSAnJHtwcm9jZWR1cmVDYWxsU3RyaW5nfScgZnVuY3Rpb24gaXMgbm90IHByZXNlbnQuJ2AsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHJldHVybiBiYWNrKGV4Y2VwdGlvbik7XG4gICAgfVxuXG4gICAgbGV0IHByb2NlZHVyZTtcblxuICAgIGlmICghaW1wb3J0ZWRQcm9jZWR1cmVQcmVzZW50KSB7XG4gICAgICBwcm9jZWR1cmUgPSBjb250ZXh0LmZpbmRQcm9jZWR1cmVCeVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGltcG9ydGVkUHJvY2VkdXJlID0gY29udGV4dC5maW5kSW1wb3J0ZWRQcm9jZWR1cmVCeVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSk7XG5cbiAgICAgIHByb2NlZHVyZSA9IGltcG9ydGVkUHJvY2VkdXJlOyAgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudmFsdWVzLmV2YWx1YXRlKGNvbnRleHQsICh2YWx1ZXMsIGJhY2spID0+IHtcbiAgICAgIHJldHVybiBmcmVlKChjb250ZXh0KSA9PiB7XG4gICAgICAgIHJldHVybiBwcm9jZWR1cmUuZXZhbHVhdGUodmFsdWVzLCBjb250ZXh0LCAodmFsdWUsIGJhY2spID0+IHtcbiAgICAgICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpO1xuXG4gICAgICAgICAgY29udGV4dC5kZWJ1ZyhgLi4uZXZhbHVhdGVkIHRoZSAnJHtwcm9jZWR1cmVDYWxsU3RyaW5nfScgZnVuY3Rpb24gY2FsbCBhcyAnJHt2YWx1ZVN0cmluZ30nLmApO1xuXG4gICAgICAgICAgcmV0dXJuIGZvcndhcmQodmFsdWUsIGJhY2spO1xuICAgICAgICB9LCBiYWNrKTtcbiAgICAgIH0sIGNvbnRleHQpO1xuICAgIH0sIGJhY2spO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlByb2NlZHVyZUNhbGxcIjtcbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIlByb2NlZHVyZUNhbGwiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwicmVmZXJlbmNlIiwidmFsdWVzIiwiZ2V0UmVmZXJlbmNlIiwiZ2V0VmFsdWVzIiwiZ2V0UHJvY2VkdXJlTmFtZSIsImV2YWx1YXRlIiwiZm9yd2FyZCIsImJhY2siLCJwcm9jZWR1cmVDYWxsU3RyaW5nIiwiZ2V0U3RyaW5nIiwidHJhY2UiLCJwcm9jZWR1cmVOYW1lIiwicHJvY2VkdXJlUHJlc2VudCIsImlzUHJvY2VkdXJlUHJlc2VudEJ5UHJvY2VkdXJlTmFtZSIsImltcG9ydGVkUHJvY2VkdXJlUHJlc2VudCIsImlzSW1wb3J0ZWRQcm9jZWR1cmVQcmVzZW50QnlQcm9jZWR1cmVOYW1lIiwibWVzc2FnZSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwicHJvY2VkdXJlIiwiZmluZFByb2NlZHVyZUJ5UHJvY2VkdXJlTmFtZSIsImltcG9ydGVkUHJvY2VkdXJlIiwiZmluZEltcG9ydGVkUHJvY2VkdXJlQnlQcm9jZWR1cmVOYW1lIiwiZnJlZSIsInZhbHVlIiwidmFsdWVTdHJpbmciLCJkZWJ1ZyIsIm5hbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVNBOzs7ZUFBQTs7O2dDQVB3QjtrRUFFRjt5QkFFRDswQkFDRTs7Ozs7O01BRXZCLFdBQWVBLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsc0JBQXNCQyx1QkFBTztJQUN2RCxZQUFZQyxPQUFPLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxVQUFVLEVBQUVDLFNBQVMsRUFBRUMsTUFBTSxDQUFFO1FBQ2hFLEtBQUssQ0FBQ0wsU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxTQUFTLEdBQUdBO1FBQ2pCLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtJQUNoQjtJQUVBQyxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUNGLFNBQVM7SUFDdkI7SUFFQUcsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDRixNQUFNO0lBQ3BCO0lBRUFHLG1CQUFtQjtRQUFFLE9BQU8sSUFBSSxDQUFDSixTQUFTLENBQUNJLGdCQUFnQjtJQUFJO0lBRS9EQyxTQUFTVCxPQUFPLEVBQUVVLE9BQU8sRUFBRUMsSUFBSSxFQUFFO1FBQy9CLE1BQU1DLHNCQUFzQixJQUFJLENBQUNDLFNBQVMsSUFBSyxHQUFHO1FBRWxEYixRQUFRYyxLQUFLLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRUYsb0JBQW9CLGtCQUFrQixDQUFDO1FBRXhFLE1BQU1HLGdCQUFnQixJQUFJLENBQUNQLGdCQUFnQixJQUNyQ1EsbUJBQW1CaEIsUUFBUWlCLGlDQUFpQyxDQUFDRixnQkFDN0RHLDJCQUEyQmxCLFFBQVFtQix5Q0FBeUMsQ0FBQ0o7UUFFbkYsSUFBSSxDQUFDQyxvQkFBb0IsQ0FBQ0UsMEJBQTBCO1lBQ2xELE1BQU1FLFVBQVUsQ0FBQyxLQUFLLEVBQUVSLG9CQUFvQiwyQkFBMkIsQ0FBQyxFQUNsRVMsWUFBWUMsa0JBQVMsQ0FBQ0MsV0FBVyxDQUFDSDtZQUV4QyxPQUFPVCxLQUFLVTtRQUNkO1FBRUEsSUFBSUc7UUFFSixJQUFJLENBQUNOLDBCQUEwQjtZQUM3Qk0sWUFBWXhCLFFBQVF5Qiw0QkFBNEIsQ0FBQ1Y7UUFDbkQsT0FBTztZQUNMLE1BQU1XLG9CQUFvQjFCLFFBQVEyQixvQ0FBb0MsQ0FBQ1o7WUFFdkVTLFlBQVlFLG1CQUFvQixHQUFHO1FBQ3JDO1FBRUEsT0FBTyxJQUFJLENBQUNyQixNQUFNLENBQUNJLFFBQVEsQ0FBQ1QsU0FBUyxDQUFDSyxRQUFRTTtZQUM1QyxPQUFPaUIsSUFBQUEsYUFBSSxFQUFDLENBQUM1QjtnQkFDWCxPQUFPd0IsVUFBVWYsUUFBUSxDQUFDSixRQUFRTCxTQUFTLENBQUM2QixPQUFPbEI7b0JBQ2pELE1BQU1tQixjQUFjRCxNQUFNaEIsU0FBUztvQkFFbkNiLFFBQVErQixLQUFLLENBQUMsQ0FBQyxrQkFBa0IsRUFBRW5CLG9CQUFvQixvQkFBb0IsRUFBRWtCLFlBQVksRUFBRSxDQUFDO29CQUU1RixPQUFPcEIsUUFBUW1CLE9BQU9sQjtnQkFDeEIsR0FBR0E7WUFDTCxHQUFHWDtRQUNMLEdBQUdXO0lBQ0w7SUFFQSxPQUFPcUIsT0FBTyxnQkFBZ0I7QUFDaEMifQ==
|
package/lib/element/reference.js
CHANGED
|
@@ -10,6 +10,9 @@ Object.defineProperty(exports, "default", {
|
|
|
10
10
|
});
|
|
11
11
|
const _occamlanguages = require("occam-languages");
|
|
12
12
|
const _elements = require("../elements");
|
|
13
|
+
const _context = require("../utilities/context");
|
|
14
|
+
const _instantiate = require("../process/instantiate");
|
|
15
|
+
const _element = require("../utilities/element");
|
|
13
16
|
const _default = (0, _elements.define)(class Reference extends _occamlanguages.Element {
|
|
14
17
|
constructor(context, string, node, breakPoint, name){
|
|
15
18
|
super(context, string, node, breakPoint);
|
|
@@ -22,7 +25,24 @@ const _default = (0, _elements.define)(class Reference extends _occamlanguages.E
|
|
|
22
25
|
const procedureName = this.name; ///
|
|
23
26
|
return procedureName;
|
|
24
27
|
}
|
|
28
|
+
toJSON() {
|
|
29
|
+
let json;
|
|
30
|
+
const string = this.getString();
|
|
31
|
+
json = {
|
|
32
|
+
string
|
|
33
|
+
};
|
|
34
|
+
return json;
|
|
35
|
+
}
|
|
25
36
|
static name = "Reference";
|
|
37
|
+
static fromJSON(json, context) {
|
|
38
|
+
let reference;
|
|
39
|
+
(0, _context.instantiate)((context)=>{
|
|
40
|
+
const { string } = json, referencelNode = (0, _instantiate.instantiateReference)(string, context), node = referencelNode, breakPoint = null, name = (0, _element.nameFromReferenceNode)(referencelNode, context);
|
|
41
|
+
context = null;
|
|
42
|
+
reference = new Reference(context, string, node, breakPoint, name);
|
|
43
|
+
}, context);
|
|
44
|
+
return reference;
|
|
45
|
+
}
|
|
26
46
|
});
|
|
27
47
|
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3JlZmVyZW5jZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcblxuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgeyBpbnN0YW50aWF0ZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvY29udGV4dFwiO1xuaW1wb3J0IHsgaW5zdGFudGlhdGVSZWZlcmVuY2UgfSBmcm9tIFwiLi4vcHJvY2Vzcy9pbnN0YW50aWF0ZVwiO1xuaW1wb3J0IHsgbmFtZUZyb21SZWZlcmVuY2VOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9lbGVtZW50XCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBSZWZlcmVuY2UgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBuYW1lKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gIH1cblxuICBnZXROYW1lKCkge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cblxuICBnZXRQcm9jZWR1cmVOYW1lKCkge1xuICAgIGNvbnN0IHByb2NlZHVyZU5hbWUgPSB0aGlzLm5hbWU7ICAvLy9cblxuICAgIHJldHVybiBwcm9jZWR1cmVOYW1lO1xuICB9XG5cbiAgdG9KU09OKCkge1xuICAgIGxldCBqc29uO1xuXG4gICAgY29uc3Qgc3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTtcblxuICAgIGpzb24gPSB7XG4gICAgICBzdHJpbmdcbiAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiUmVmZXJlbmNlXCI7XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24sIGNvbnRleHQpIHtcbiAgICBsZXQgcmVmZXJlbmNlO1xuXG4gICAgaW5zdGFudGlhdGUoKGNvbnRleHQpID0+IHtcbiAgICAgIGNvbnN0IHsgc3RyaW5nIH0gPSBqc29uLFxuICAgICAgICAgICAgcmVmZXJlbmNlbE5vZGUgPSBpbnN0YW50aWF0ZVJlZmVyZW5jZShzdHJpbmcsIGNvbnRleHQpLFxuICAgICAgICAgICAgbm9kZSA9IHJlZmVyZW5jZWxOb2RlLCAgLy8vXG4gICAgICAgICAgICBicmVha1BvaW50ID0gbnVsbCxcbiAgICAgICAgICAgIG5hbWUgPSBuYW1lRnJvbVJlZmVyZW5jZU5vZGUocmVmZXJlbmNlbE5vZGUsIGNvbnRleHQpO1xuXG4gICAgICBjb250ZXh0ID0gbnVsbDtcblxuICAgICAgcmVmZXJlbmNlID0gbmV3IFJlZmVyZW5jZShjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIG5hbWUpO1xuICAgIH0sIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIHJlZmVyZW5jZTtcbiAgfVxufSk7XG4iXSwibmFtZXMiOlsiZGVmaW5lIiwiUmVmZXJlbmNlIiwiRWxlbWVudCIsImNvbnRleHQiLCJzdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsIm5hbWUiLCJnZXROYW1lIiwiZ2V0UHJvY2VkdXJlTmFtZSIsInByb2NlZHVyZU5hbWUiLCJ0b0pTT04iLCJqc29uIiwiZ2V0U3RyaW5nIiwiZnJvbUpTT04iLCJyZWZlcmVuY2UiLCJpbnN0YW50aWF0ZSIsInJlZmVyZW5jZWxOb2RlIiwiaW5zdGFudGlhdGVSZWZlcmVuY2UiLCJuYW1lRnJvbVJlZmVyZW5jZU5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVNBOzs7ZUFBQTs7O2dDQVB3QjswQkFFRDt5QkFDSzs2QkFDUzt5QkFDQztNQUV0QyxXQUFlQSxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLGtCQUFrQkMsdUJBQU87SUFDbkQsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxJQUFJLENBQUU7UUFDbkQsS0FBSyxDQUFDSixTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLElBQUksR0FBR0E7SUFDZDtJQUVBQyxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUNELElBQUk7SUFDbEI7SUFFQUUsbUJBQW1CO1FBQ2pCLE1BQU1DLGdCQUFnQixJQUFJLENBQUNILElBQUksRUFBRyxHQUFHO1FBRXJDLE9BQU9HO0lBQ1Q7SUFFQUMsU0FBUztRQUNQLElBQUlDO1FBRUosTUFBTVIsU0FBUyxJQUFJLENBQUNTLFNBQVM7UUFFN0JELE9BQU87WUFDTFI7UUFDRjtRQUVBLE9BQU9RO0lBQ1Q7SUFFQSxPQUFPTCxPQUFPLFlBQVk7SUFFMUIsT0FBT08sU0FBU0YsSUFBSSxFQUFFVCxPQUFPLEVBQUU7UUFDN0IsSUFBSVk7UUFFSkMsSUFBQUEsb0JBQVcsRUFBQyxDQUFDYjtZQUNYLE1BQU0sRUFBRUMsTUFBTSxFQUFFLEdBQUdRLE1BQ2JLLGlCQUFpQkMsSUFBQUEsaUNBQW9CLEVBQUNkLFFBQVFELFVBQzlDRSxPQUFPWSxnQkFDUFgsYUFBYSxNQUNiQyxPQUFPWSxJQUFBQSw4QkFBcUIsRUFBQ0YsZ0JBQWdCZDtZQUVuREEsVUFBVTtZQUVWWSxZQUFZLElBQUlkLFVBQVVFLFNBQVNDLFFBQVFDLE1BQU1DLFlBQVlDO1FBQy9ELEdBQUdKO1FBRUgsT0FBT1k7SUFDVDtBQUNGIn0=
|
package/lib/element/type.js
CHANGED
|
@@ -80,19 +80,22 @@ const _default = (0, _elements.define)(class Type extends _occamlanguages.Elemen
|
|
|
80
80
|
return equalTo;
|
|
81
81
|
}
|
|
82
82
|
toJSON() {
|
|
83
|
-
|
|
83
|
+
let json;
|
|
84
|
+
const string = this.getString();
|
|
85
|
+
json = {
|
|
84
86
|
string
|
|
85
87
|
};
|
|
86
88
|
return json;
|
|
87
89
|
}
|
|
88
90
|
static name = "Type";
|
|
89
91
|
static fromJSON(json, context) {
|
|
90
|
-
|
|
92
|
+
let type;
|
|
93
|
+
(0, _context.instantiate)((context)=>{
|
|
91
94
|
const { string } = json, typeNode = (0, _instantiate.instantiateType)(string, context), node = typeNode, breakPoint = null, name = (0, _element.nameFromTypeNode)(typeNode, context), argumentType = (0, _element.argumentTypeFromTypeNode)(typeNode, context);
|
|
92
95
|
context = null;
|
|
93
|
-
|
|
94
|
-
return type;
|
|
96
|
+
type = new Type(context, string, node, breakPoint, name, argumentType);
|
|
95
97
|
}, context);
|
|
98
|
+
return type;
|
|
96
99
|
}
|
|
97
100
|
static fromTypeName(typeName, context) {
|
|
98
101
|
let type = null;
|
|
@@ -111,4 +114,4 @@ const _default = (0, _elements.define)(class Type extends _occamlanguages.Elemen
|
|
|
111
114
|
}
|
|
112
115
|
});
|
|
113
116
|
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3R5cGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuXG5pbXBvcnQgeyBpbnN0YW50aWF0ZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvY29udGV4dFwiO1xuaW1wb3J0IHsgaW5zdGFudGlhdGVUeXBlIH0gZnJvbSBcIi4uL3Byb2Nlc3MvaW5zdGFudGlhdGVcIjtcbmltcG9ydCB7IHR5cGVTdHJpbmdGcm9tVHlwZU5hbWVBbmRBcmd1bWVudFR5cGVOYW1lIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9zdHJpbmdcIjtcbmltcG9ydCB7IG5hbWVGcm9tVHlwZU5vZGUsIGFyZ3VtZW50VHlwZUZyb21UeXBlTm9kZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvZWxlbWVudFwiO1xuaW1wb3J0IHsgTElTVF9UWVBFX05BTUUsIFNUUklOR19UWVBFX05BTUUsIEJPT0xFQU5fVFlQRV9OQU1FLCBJTlRFR0VSX1RZUEVfTkFNRSwgTk9NSU5BTF9WQUxVRV9UWVBFX05BTUUgfSBmcm9tIFwiLi4vdHlwZU5hbWVzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBUeXBlIGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgbmFtZSwgYXJndW1lbnRUeXBlKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgdGhpcy5hcmd1bWVudFR5cGUgPSBhcmd1bWVudFR5cGU7XG4gIH1cblxuICBnZXROYW1lKCkge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cblxuICBnZXRBcmd1bWVudFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuYXJndW1lbnRUeXBlO1xuICB9XG5cbiAgaXNMaXN0VHlwZSgpIHtcbiAgICBjb25zdCBsaXN0VHlwZSA9ICh0aGlzLm5hbWUgPT09IExJU1RfVFlQRV9OQU1FKTtcblxuICAgIHJldHVybiBsaXN0VHlwZTtcbiAgfVxuXG4gIGlzU3RyaW5nVHlwZSgpIHtcbiAgICBjb25zdCBib29sZWFuVHlwZSA9ICh0aGlzLm5hbWUgPT09IFNUUklOR19UWVBFX05BTUUpO1xuXG4gICAgcmV0dXJuIGJvb2xlYW5UeXBlO1xuICB9XG5cbiAgaXNCb29sZWFuVHlwZSgpIHtcbiAgICBjb25zdCBib29sZWFuVHlwZSA9ICh0aGlzLm5hbWUgPT09IEJPT0xFQU5fVFlQRV9OQU1FKTtcblxuICAgIHJldHVybiBib29sZWFuVHlwZTtcbiAgfVxuXG4gIGlzSW50ZWdlclR5cGUoKSB7XG4gICAgY29uc3QgaW50ZWdlclR5cGUgPSAodGhpcy5uYW1lID09PSBJTlRFR0VSX1RZUEVfTkFNRSk7XG5cbiAgICByZXR1cm4gaW50ZWdlclR5cGU7XG4gIH1cblxuICBpc05vbWluYWxWYWx1ZVR5cGUoKSB7XG4gICAgY29uc3QgbGlzdFR5cGUgPSAodGhpcy5uYW1lID09PSBOT01JTkFMX1ZBTFVFX1RZUEVfTkFNRSk7XG5cbiAgICByZXR1cm4gbGlzdFR5cGU7XG4gIH1cblxuICBpc0VxdWFsVG8odHlwZSkge1xuICAgIGxldCBlcXVhbFRvID0gZmFsc2U7XG5cbiAgICBjb25zdCB0eXBlTmFtZSA9IHR5cGUuZ2V0TmFtZSgpO1xuXG4gICAgaWYgKHRoaXMubmFtZSA9PT0gdHlwZU5hbWUpIHtcbiAgICAgIHN3aXRjaCAodGhpcy5uYW1lKSB7XG4gICAgICAgIGNhc2UgTElTVF9UWVBFX05BTUU6IHtcbiAgICAgICAgICBjb25zdCB0eXBlQXJndW1lbnRUeXBlID0gdHlwZS5nZXRBcmd1bWVudFR5cGUoKTtcblxuICAgICAgICAgIGlmICgodGhpcy5hcmd1bWVudFR5cGUgPT09IG51bGwpIHx8ICh0eXBlQXJndW1lbnRUeXBlID09PSBudWxsKSkge1xuICAgICAgICAgICAgaWYgKHRoaXMuYXJndW1lbnRUeXBlID09PSB0eXBlQXJndW1lbnRUeXBlKSB7XG4gICAgICAgICAgICAgIGVxdWFsVG8gPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBhcmd1ZW1udFR5cGVFcXVhbFRvVHlwZUFyZ3VtZW50VHlwZSA9IHRoaXMuYXJndW1lbnRUeXBlLmlzRXF1YWxUbyh0eXBlQXJndW1lbnRUeXBlKTtcblxuICAgICAgICAgICAgaWYgKGFyZ3VlbW50VHlwZUVxdWFsVG9UeXBlQXJndW1lbnRUeXBlKSB7XG4gICAgICAgICAgICAgIGVxdWFsVG8gPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgY2FzZSBTVFJJTkdfVFlQRV9OQU1FOlxuICAgICAgICBjYXNlIEJPT0xFQU5fVFlQRV9OQU1FOlxuICAgICAgICBjYXNlIElOVEVHRVJfVFlQRV9OQU1FOlxuICAgICAgICBjYXNlIE5PTUlOQUxfVkFMVUVfVFlQRV9OQU1FOiB7XG4gICAgICAgICAgZXF1YWxUbyA9IHRydWU7XG5cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBlcXVhbFRvO1xuICB9XG5cbiAgdG9KU09OKCkge1xuICAgIGxldCBqc29uO1xuXG4gICAgY29uc3Qgc3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTtcblxuICAgIGpzb24gPSB7XG4gICAgICBzdHJpbmdcbiAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiVHlwZVwiO1xuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uLCBjb250ZXh0KSB7XG4gICAgbGV0IHR5cGU7XG5cbiAgICBpbnN0YW50aWF0ZSgoY29udGV4dCkgPT4ge1xuICAgICAgY29uc3QgeyBzdHJpbmcgfSA9IGpzb24sXG4gICAgICAgICAgICB0eXBlTm9kZSA9IGluc3RhbnRpYXRlVHlwZShzdHJpbmcsIGNvbnRleHQpLFxuICAgICAgICAgICAgbm9kZSA9IHR5cGVOb2RlLCAgLy8vXG4gICAgICAgICAgICBicmVha1BvaW50ID0gbnVsbCxcbiAgICAgICAgICAgIG5hbWUgPSBuYW1lRnJvbVR5cGVOb2RlKHR5cGVOb2RlLCBjb250ZXh0KSxcbiAgICAgICAgICAgIGFyZ3VtZW50VHlwZSA9IGFyZ3VtZW50VHlwZUZyb21UeXBlTm9kZSh0eXBlTm9kZSwgY29udGV4dCk7XG5cbiAgICAgIGNvbnRleHQgPSBudWxsO1xuXG4gICAgICB0eXBlID0gbmV3IFR5cGUoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBuYW1lLCBhcmd1bWVudFR5cGUpO1xuICAgIH0sIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbVR5cGVOYW1lKHR5cGVOYW1lLCBjb250ZXh0KSB7XG4gICAgbGV0IHR5cGUgPSBudWxsO1xuXG4gICAgaWYgKHR5cGVOYW1lICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBub2RlID0gbnVsbCwgIC8vL1xuICAgICAgICAgICAgbmFtZSA9IHR5cGVOYW1lLCAgLy8vXG4gICAgICAgICAgICBhcmd1bWVudFR5cGUgPSBudWxsLFxuICAgICAgICAgICAgdHlwZVN0cmluZyA9IHR5cGVOYW1lLCAgLy8vXG4gICAgICAgICAgICBzdHJpbmcgPSB0eXBlU3RyaW5nLCAgLy8vXG4gICAgICAgICAgICBicmVha1BvaW50ID0gbnVsbDtcblxuICAgICAgY29udGV4dCA9IG51bGw7XG5cbiAgICAgIHR5cGUgPSBuZXcgVHlwZShjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIG5hbWUsIGFyZ3VtZW50VHlwZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbVR5cGVOYW1lQW5kQXJndW1lbnRUeXBlTmFtZSh0eXBlTmFtZSwgYXJndW1lbnRUeXBlTmFtZSwgY29udGV4dCkge1xuICAgIGNvbnN0IG5vZGUgPSBudWxsLCAgLy8vXG4gICAgICAgICAgbmFtZSA9IHR5cGVOYW1lLCAgLy8vXG4gICAgICAgICAgYXJndW1lbnRUeXBlID0gVHlwZS5mcm9tVHlwZU5hbWUoYXJndW1lbnRUeXBlTmFtZSwgY29udGV4dCksXG4gICAgICAgICAgdHlwZVN0cmluZyA9IHR5cGVTdHJpbmdGcm9tVHlwZU5hbWVBbmRBcmd1bWVudFR5cGVOYW1lKHR5cGVOYW1lLCBhcmd1bWVudFR5cGVOYW1lKSxcbiAgICAgICAgICBzdHJpbmcgPSB0eXBlU3RyaW5nLCAgLy8vXG4gICAgICAgICAgYnJlYWtQb2ludCA9IG51bGw7XG5cbiAgICBjb250ZXh0ID0gbnVsbDtcblxuICAgIGNvbnN0IHR5cGUgPSBuZXcgVHlwZShjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIG5hbWUsIGFyZ3VtZW50VHlwZSk7XG5cbiAgICByZXR1cm4gdHlwZTtcbiAgfVxuXG59KTtcbiJdLCJuYW1lcyI6WyJkZWZpbmUiLCJUeXBlIiwiRWxlbWVudCIsImNvbnRleHQiLCJzdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsIm5hbWUiLCJhcmd1bWVudFR5cGUiLCJnZXROYW1lIiwiZ2V0QXJndW1lbnRUeXBlIiwiaXNMaXN0VHlwZSIsImxpc3RUeXBlIiwiTElTVF9UWVBFX05BTUUiLCJpc1N0cmluZ1R5cGUiLCJib29sZWFuVHlwZSIsIlNUUklOR19UWVBFX05BTUUiLCJpc0Jvb2xlYW5UeXBlIiwiQk9PTEVBTl9UWVBFX05BTUUiLCJpc0ludGVnZXJUeXBlIiwiaW50ZWdlclR5cGUiLCJJTlRFR0VSX1RZUEVfTkFNRSIsImlzTm9taW5hbFZhbHVlVHlwZSIsIk5PTUlOQUxfVkFMVUVfVFlQRV9OQU1FIiwiaXNFcXVhbFRvIiwidHlwZSIsImVxdWFsVG8iLCJ0eXBlTmFtZSIsInR5cGVBcmd1bWVudFR5cGUiLCJhcmd1ZW1udFR5cGVFcXVhbFRvVHlwZUFyZ3VtZW50VHlwZSIsInRvSlNPTiIsImpzb24iLCJnZXRTdHJpbmciLCJmcm9tSlNPTiIsImluc3RhbnRpYXRlIiwidHlwZU5vZGUiLCJpbnN0YW50aWF0ZVR5cGUiLCJuYW1lRnJvbVR5cGVOb2RlIiwiYXJndW1lbnRUeXBlRnJvbVR5cGVOb2RlIiwiZnJvbVR5cGVOYW1lIiwidHlwZVN0cmluZyIsImZyb21UeXBlTmFtZUFuZEFyZ3VtZW50VHlwZU5hbWUiLCJhcmd1bWVudFR5cGVOYW1lIiwidHlwZVN0cmluZ0Zyb21UeXBlTmFtZUFuZEFyZ3VtZW50VHlwZU5hbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVlBOzs7ZUFBQTs7O2dDQVZ3QjswQkFFRDt5QkFFSzs2QkFDSTt3QkFDMEI7eUJBQ0M7MkJBQ3FEO01BRWhILFdBQWVBLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsYUFBYUMsdUJBQU87SUFDOUMsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxJQUFJLEVBQUVDLFlBQVksQ0FBRTtRQUNqRSxLQUFLLENBQUNMLFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtRQUNaLElBQUksQ0FBQ0MsWUFBWSxHQUFHQTtJQUN0QjtJQUVBQyxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUNGLElBQUk7SUFDbEI7SUFFQUcsa0JBQWtCO1FBQ2hCLE9BQU8sSUFBSSxDQUFDRixZQUFZO0lBQzFCO0lBRUFHLGFBQWE7UUFDWCxNQUFNQyxXQUFZLElBQUksQ0FBQ0wsSUFBSSxLQUFLTSx5QkFBYztRQUU5QyxPQUFPRDtJQUNUO0lBRUFFLGVBQWU7UUFDYixNQUFNQyxjQUFlLElBQUksQ0FBQ1IsSUFBSSxLQUFLUywyQkFBZ0I7UUFFbkQsT0FBT0Q7SUFDVDtJQUVBRSxnQkFBZ0I7UUFDZCxNQUFNRixjQUFlLElBQUksQ0FBQ1IsSUFBSSxLQUFLVyw0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
|
package/lib/element/values.js
CHANGED
|
@@ -11,7 +11,7 @@ Object.defineProperty(exports, "default", {
|
|
|
11
11
|
const _occamlanguages = require("occam-languages");
|
|
12
12
|
const _elements = require("../elements");
|
|
13
13
|
const _string = require("../utilities/string");
|
|
14
|
-
const { map
|
|
14
|
+
const { map } = _occamlanguages.continuationUtilities;
|
|
15
15
|
const _default = (0, _elements.define)(class Values extends _occamlanguages.Element {
|
|
16
16
|
constructor(context, string, node, breakPoint, array){
|
|
17
17
|
super(context, string, node, breakPoint);
|
|
@@ -58,4 +58,4 @@ const _default = (0, _elements.define)(class Values extends _occamlanguages.Elem
|
|
|
58
58
|
}
|
|
59
59
|
});
|
|
60
60
|
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3ZhbHVlcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCwgY29udGludWF0aW9uVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IHZhbHVlc1N0cmluZ0Zyb21WYWx1ZXNBcnJheSB9IGZyb20gXCIuLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5cbmNvbnN0IHsgbWFwIH0gPSBjb250aW51YXRpb25VdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBWYWx1ZXMgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBhcnJheSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLmFycmF5ID0gYXJyYXk7XG4gIH1cblxuICBnZXRBcnJheSgpIHtcbiAgICByZXR1cm4gdGhpcy5hcnJheTtcbiAgfVxuXG4gIGdldExlbmd0aCgpIHtcbiAgICBjb25zdCBsZW5ndGggPSB0aGlzLmFycmF5Lmxlbmd0aDtcblxuICAgIHJldHVybiBsZW5ndGg7XG4gIH1cblxuICBnZXRWYWx1ZShpbmRleCkge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5hcnJheVtpbmRleF0gfHwgbnVsbDsgIC8vL1xuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgYWRkVmFsdWUodmFsdWUpIHtcbiAgICB0aGlzLmFycmF5LnB1c2godmFsdWUpO1xuICB9XG5cbiAgbWFwVmFsdWUoY2FsbGJhY2ssIGZvcndhcmQsIGJhY2spIHtcbiAgICByZXR1cm4gbWFwKHRoaXMuYXJyYXksIGNhbGxiYWNrLCBmb3J3YXJkLCBiYWNrKTtcbiAgfVxuXG4gIGZvckVhY2hWYWx1ZShjYWxsYmFjaykge1xuICAgIHRoaXMuYXJyYXkuZm9yRWFjaChjYWxsYmFjayk7XG4gIH1cblxuICBldmFsdWF0ZShjb250ZXh0LCBmb3J3YXJkLCBiYWNrKSB7XG4gICAgcmV0dXJuIHRoaXMubWFwVmFsdWUoKHZhbHVlLCBmb3J3YXJkLCBiYWNrKSA9PiB7XG4gICAgICByZXR1cm4gdmFsdWUuZXZhbHVhdGUoY29udGV4dCwgZm9yd2FyZCwgYmFjayk7XG4gICAgfSwgKHZhbHVlc0FycmF5LCBiYWNrKSA9PiB7XG4gICAgICBjb25zdCB2YWx1ZXNTdHJpbmcgPSB2YWx1ZXNTdHJpbmdGcm9tVmFsdWVzQXJyYXkodmFsdWVzQXJyYXksIGNvbnRleHQpLFxuICAgICAgICAgICAgc3RyaW5nID0gdmFsdWVzU3RyaW5nLCAvLy9cbiAgICAgICAgICAgIGFycmF5ID0gdmFsdWVzQXJyYXksIC8vL1xuICAgICAgICAgICAgbm9kZSA9IG51bGwsXG4gICAgICAgICAgICBicmVha1BvaW50ID0gbnVsbDtcblxuICAgICAgY29udGV4dCA9IG51bGw7XG5cbiAgICAgIGNvbnN0IHZhbHVlcyA9IG5ldyBWYWx1ZXMoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBhcnJheSk7XG5cbiAgICAgIHJldHVybiBmb3J3YXJkKHZhbHVlcywgYmFjayk7XG4gICAgfSwgYmFjayk7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiVmFsdWVzXCI7XG5cbiAgc3RhdGljIGZyb21WYWx1ZSh2YWx1ZSwgY29udGV4dCkge1xuICAgIGNvbnN0IHZhbHVlc0FycmF5ID0gW1xuICAgICAgICAgICAgdmFsdWVcbiAgICAgICAgICBdLFxuICAgICAgICAgIHZhbHVlc1N0cmluZyA9IHZhbHVlc1N0cmluZ0Zyb21WYWx1ZXNBcnJheSh2YWx1ZXNBcnJheSwgY29udGV4dCksXG4gICAgICAgICAgc3RyaW5nID0gdmFsdWVzU3RyaW5nLCAvLy9cbiAgICAgICAgICBhcnJheSA9IHZhbHVlc0FycmF5LCAvLy9cbiAgICAgICAgICBub2RlID0gbnVsbCxcbiAgICAgICAgICBicmVha1BvaW50ID0gbnVsbDtcblxuICAgIGNvbnRleHQgPSBudWxsO1xuXG4gICAgY29uc3QgdmFsdWVzID0gbmV3IFZhbHVlcyhjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIGFycmF5KTtcblxuICAgIHJldHVybiB2YWx1ZXM7XG4gIH1cbn0pO1xuIl0sIm5hbWVzIjpbIm1hcCIsImNvbnRpbnVhdGlvblV0aWxpdGllcyIsImRlZmluZSIsIlZhbHVlcyIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJhcnJheSIsImdldEFycmF5IiwiZ2V0TGVuZ3RoIiwibGVuZ3RoIiwiZ2V0VmFsdWUiLCJpbmRleCIsInZhbHVlIiwiYWRkVmFsdWUiLCJwdXNoIiwibWFwVmFsdWUiLCJjYWxsYmFjayIsImZvcndhcmQiLCJiYWNrIiwiZm9yRWFjaFZhbHVlIiwiZm9yRWFjaCIsImV2YWx1YXRlIiwidmFsdWVzQXJyYXkiLCJ2YWx1ZXNTdHJpbmciLCJ2YWx1ZXNTdHJpbmdGcm9tVmFsdWVzQXJyYXkiLCJ2YWx1ZXMiLCJuYW1lIiwiZnJvbVZhbHVlIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFTQTs7O2VBQUE7OztnQ0FQK0M7MEJBRXhCO3dCQUNxQjtBQUU1QyxNQUFNLEVBQUVBLEdBQUcsRUFBRSxHQUFHQyxxQ0FBcUI7TUFFckMsV0FBZUMsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyxlQUFlQyx1QkFBTztJQUNoRCxZQUFZQyxPQUFPLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxVQUFVLEVBQUVDLEtBQUssQ0FBRTtRQUNwRCxLQUFLLENBQUNKLFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0MsS0FBSyxHQUFHQTtJQUNmO0lBRUFDLFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQ0QsS0FBSztJQUNuQjtJQUVBRSxZQUFZO1FBQ1YsTUFBTUMsU0FBUyxJQUFJLENBQUNILEtBQUssQ0FBQ0csTUFBTTtRQUVoQyxPQUFPQTtJQUNUO0lBRUFDLFNBQVNDLEtBQUssRUFBRTtRQUNkLE1BQU1DLFFBQVEsSUFBSSxDQUFDTixLQUFLLENBQUNLLE1BQU0sSUFBSSxNQUFPLEdBQUc7UUFFN0MsT0FBT0M7SUFDVDtJQUVBQyxTQUFTRCxLQUFLLEVBQUU7UUFDZCxJQUFJLENBQUNOLEtBQUssQ0FBQ1EsSUFBSSxDQUFDRjtJQUNsQjtJQUVBRyxTQUFTQyxRQUFRLEVBQUVDLE9BQU8sRUFBRUMsSUFBSSxFQUFFO1FBQ2hDLE9BQU9yQixJQUFJLElBQUksQ0FBQ1MsS0FBSyxFQUFFVSxVQUFVQyxTQUFTQztJQUM1QztJQUVBQyxhQUFhSCxRQUFRLEVBQUU7UUFDckIsSUFBSSxDQUFDVixLQUFLLENBQUNjLE9BQU8sQ0FBQ0o7SUFDckI7SUFFQUssU0FBU25CLE9BQU8sRUFBRWUsT0FBTyxFQUFFQyxJQUFJLEVBQUU7UUFDL0IsT0FBTyxJQUFJLENBQUNILFFBQVEsQ0FBQyxDQUFDSCxPQUFPSyxTQUFTQztZQUNwQyxPQUFPTixNQUFNUyxRQUFRLENBQUNuQixTQUFTZSxTQUFTQztRQUMxQyxHQUFHLENBQUNJLGFBQWFKO1lBQ2YsTUFBTUssZUFBZUMsSUFBQUEsbUNBQTJCLEVBQUNGLGFBQWFwQixVQUN4REMsU0FBU29CLGNBQ1RqQixRQUFRZ0IsYUFDUmxCLE9BQU8sTUFDUEMsYUFBYTtZQUVuQkgsVUFBVTtZQUVWLE1BQU11QixTQUFTLElBQUl6QixPQUFPRSxTQUFTQyxRQUFRQyxNQUFNQyxZQUFZQztZQUU3RCxPQUFPVyxRQUFRUSxRQUFRUDtRQUN6QixHQUFHQTtJQUNMO0lBRUEsT0FBT1EsT0FBTyxTQUFTO0lBRXZCLE9BQU9DLFVBQVVmLEtBQUssRUFBRVYsT0FBTyxFQUFFO1FBQy9CLE1BQU1vQixjQUFjO1lBQ1pWO1NBQ0QsRUFDRFcsZUFBZUMsSUFBQUEsbUNBQTJCLEVBQUNGLGFBQWFwQixVQUN4REMsU0FBU29CLGNBQ1RqQixRQUFRZ0IsYUFDUmxCLE9BQU8sTUFDUEMsYUFBYTtRQUVuQkgsVUFBVTtRQUVWLE1BQU11QixTQUFTLElBQUl6QixPQUFPRSxTQUFTQyxRQUFRQyxNQUFNQyxZQUFZQztRQUU3RCxPQUFPbUI7SUFDVDtBQUNGIn0=
|
|
@@ -36,7 +36,7 @@ const bnf = `
|
|
|
36
36
|
|
|
37
37
|
objectAssignment ::= "{" namedBindings "}" "=" variable ";" ;
|
|
38
38
|
|
|
39
|
-
listAssignment
|
|
39
|
+
listAssignment ::= "[" bindings "]" "=" variable ";" ;
|
|
40
40
|
|
|
41
41
|
|
|
42
42
|
|
|
@@ -215,4 +215,4 @@ const bnf = `
|
|
|
215
215
|
`;
|
|
216
216
|
const _default = bnf;
|
|
217
217
|
|
|
218
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9leGFtcGxlL2Z1cnRsZS9ibmYuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmNvbnN0IGJuZiA9IGBcblxuICAgIGRvY3VtZW50ICAgICAgICAgICAgICAgIDo6PSAgKCBpbXBvcnRTdGF0ZW1lbnQgfCBwcm9jZWR1cmUgfCBlcnJvciApKyA7XG4gICAgXG4gICAgXG4gICAgXG4gICAgcHJvY2VkdXJlICAgICAgICAgICAgICAgOjo9ICBcImV4cG9ydFwiPyB0eXBlIGxhYmVsPE5PX1dISVRFU1BBQ0U+
|
|
218
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9leGFtcGxlL2Z1cnRsZS9ibmYuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmNvbnN0IGJuZiA9IGBcblxuICAgIGRvY3VtZW50ICAgICAgICAgICAgICAgIDo6PSAgKCBpbXBvcnRTdGF0ZW1lbnQgfCBwcm9jZWR1cmUgfCBlcnJvciApKyA7XG4gICAgXG4gICAgXG4gICAgXG4gICAgcHJvY2VkdXJlICAgICAgICAgICAgICAgOjo9ICBcImV4cG9ydFwiPyB0eXBlIGxhYmVsPE5PX1dISVRFU1BBQ0U+XCIoXCIgcGFyYW1ldGVycz8gXCIpXCIgcmV0dXJuQmxvY2sgO1xuICAgIFxuICAgIGltcG9ydFN0YXRlbWVudCAgICAgICAgIDo6PSAgXCJpbXBvcnRcIiBpbXBvcnRCaW5kaW5ncyBcImZyb21cIiBbc3RyaW5nLWxpdGVyYWxdIFwiO1wiIDtcbiAgICBcbiAgICBhbm9ueW1vdXNQcm9jZWR1cmUgICAgICA6Oj0gIHR5cGUgXCIoXCIgcGFyYW1ldGVycz8gXCIpXCIgcmV0dXJuQmxvY2sgO1xuICAgIFxuICAgIHN0YXRlbWVudCAgICAgICAgICAgICAgIDo6PSAgdmFyaWFibGVBc3NpZ25tZW50c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBvYmplY3RBc3NpZ25tZW50XG4gICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgbGlzdEFzc2lnbm1lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOyAgXG4gICAgICBcbiAgICAgIFxuICAgIFxuICAgIHZhcmlhYmxlQXNzaWdubWVudHMgICAgIDo6PSAgdHlwZSB2YXJpYWJsZUFzc2lnbm1lbnQgKCBcIixcIiB2YXJpYWJsZUFzc2lnbm1lbnQgKSogXCI7XCIgO1xuICAgIFxuICAgIHZhcmlhYmxlQXNzaWdubWVudCAgICAgIDo6PSAgdmFyaWFibGUgXCI9XCIgZXhwcmVzc2lvbiA7XG4gICAgXG4gICAgb2JqZWN0QXNzaWdubWVudCAgICAgICAgOjo9ICBcIntcIiBuYW1lZEJpbmRpbmdzIFwifVwiIFwiPVwiIHZhcmlhYmxlIFwiO1wiIDtcbiAgICBcbiAgICBsaXN0QXNzaWdubWVudCAgICAgICAgIDo6PSAgXCJbXCIgYmluZGluZ3MgXCJdXCIgXCI9XCIgdmFyaWFibGUgXCI7XCIgO1xuICAgIFxuXG5cbiAgICBpbXBvcnRCaW5kaW5ncyAgICAgICAgICA6Oj0gIGltcG9ydEJpbmRpbmcgKCBcIixcIiBpbXBvcnRCaW5kaW5nICkqIDtcbiAgICBcbiAgICBuYW1lZEJpbmRpbmdzICAgICAgICAgICA6Oj0gIG5hbWVkQmluZGluZyAoIFwiLFwiIG5hbWVkQmluZGluZyApKiA7XG4gICAgXG4gICAgcGFyYW1ldGVycyAgICAgICAgICAgICAgOjo9ICBwYXJhbWV0ZXIgKCBcIixcIiBwYXJhbWV0ZXIgKSogO1xuICAgIFxuICAgIGJpbmRpbmdzICAgICAgICAgICAgICAgIDo6PSAgYmluZGluZyAoIFwiLFwiIGJpbmRpbmcgKSogO1xuICAgIFxuICAgIHZhbHVlcyAgICAgICAgICAgICAgICAgIDo6PSAgdmFsdWUgKCBcIixcIiB2YWx1ZSApKiA7XG4gICAgXG4gICAgdGVybXMgICAgICAgICAgICAgICAgICAgOjo9ICB0ZXJtICggXCIsXCIgdGVybSApKiA7XG4gICAgXG5cblxuICAgIGltcG9ydEJpbmRpbmcgICAgICAgICAgIDo6PSAgcmVmZXJlbmNlICggXCJhc1wiIGxhYmVsICk/IDsgICBcbiAgICBcbiAgICBuYW1lZEJpbmRpbmcgICAgICAgICAgICA6Oj0gIHR5cGUgW25hbWVdICggXCJhc1wiIFtuYW1lXSApPyA7ICAgXG4gICAgXG4gICAgcGFyYW1ldGVyICAgICAgICAgICAgICAgOjo9ICB0eXBlIFtuYW1lXSA7XG5cbiAgICBiaW5kaW5nICAgICAgICAgICAgICAgICA6Oj0gIHR5cGUgW25hbWVdXG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICDOtSBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDtcblxuXG4gICAgXG4gICAgcHJvY2VkdXJlQ2FsbCAgICAgICAgICAgOjo9ICByZWZlcmVuY2U8Tk9fV0hJVEVTUEFDRT5cIihcIiB2YWx1ZXM/IFwiKVwiIDtcbiAgICBcbiAgICByZXR1cm5CbG9jay4uICAgICAgICAgICA6Oj0gIFwie1wiICggc3RhdGVtZW50IHwgbm9uc2Vuc2UgKSogcmV0dXJuU3RhdGVtZW50IFwifVwiIDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICB0ZXJuYXJ5ICAgICAgICAgICAgICAgICA6Oj0gIFwiaWZcIiBcIihcIiB0ZXJtIFwiKVwiIGV4cHJlc3Npb24gXCJlbHNlXCIgZXhwcmVzc2lvbiA7XG4gICAgXG4gICAgcmVkdWNlICAgICAgICAgICAgICAgICAgOjo9ICBcInJlZHVjZVwiPE5PX1dISVRFU1BBQ0U+XCIoXCIgdmFyaWFibGUgXCIsXCIgYW5vbnltb3VzUHJvY2VkdXJlIFwiLFwiIHZhbHVlIFwiKVwiIDtcbiAgICBcbiAgICBldmVyeSAgICAgICAgICAgICAgICAgICA6Oj0gIFwiZXZlcnlcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiLFwiIGFub255bW91c1Byb2NlZHVyZSBcIilcIiA7XG4gICAgXG4gICAgc29tZSAgICAgICAgICAgICAgICAgICAgOjo9ICBcInNvbWVcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiLFwiIGFub255bW91c1Byb2NlZHVyZSBcIilcIiA7XG4gICAgXG4gICAgXG4gICAgXG4gICAgbm9kZXNRdWVyeSAgICAgICAgICAgICAgOjo9ICBcIm5vZGVzUXVlcnlcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiLFwiIFtzdHJpbmctbGl0ZXJhbF0gXCIpXCIgO1xuICAgIFxuICAgIG5vZGVRdWVyeSAgICAgICAgICAgICAgIDo6PSAgXCJub2RlUXVlcnlcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiLFwiIFtzdHJpbmctbGl0ZXJhbF0gXCIpXCIgO1xuICAgIFxuICAgIGxlbmd0aE9mICAgICAgICAgICAgICAgIDo6PSAgXCJsZW5ndGhPZlwiPE5PX1dISVRFU1BBQ0U+XCIoXCIgdmFyaWFibGUgXCIpXCIgO1xuICAgIFxuICAgIHRvSW50ZWdlciAgICAgICAgICAgICAgIDo6PSAgXCJ0b0ludGVnZXJcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiKVwiIDtcbiAgICBcbiAgICB0cnlJbnRlZ2VyICAgICAgICAgICAgICA6Oj0gIFwidHJ5SW50ZWdlclwiPE5PX1dISVRFU1BBQ0U+XCIoXCIgdmFyaWFibGUgXCIpXCIgO1xuICAgIFxuICAgIHN0YXJ0c1dpdGggICAgICAgICAgICAgIDo6PSAgXCJzdGFydHNXaXRoXCI8Tk9fV0hJVEVTUEFDRT5cIihcIiB2YXJpYWJsZSBcIixcIiBbc3RyaW5nLWxpdGVyYWxdIFwiKVwiIDtcbiAgICBcbiAgICBlbmRzV2l0aCAgICAgICAgICAgICAgICA6Oj0gIFwiZW5kc1dpdGhcIjxOT19XSElURVNQQUNFPlwiKFwiIHZhcmlhYmxlIFwiLFwiIFtzdHJpbmctbGl0ZXJhbF0gXCIpXCIgO1xuICAgIFxuICAgIGNvbnRhaW5zICAgICAgICAgICAgICAgIDo6PSAgXCJjb250YWluc1wiPE5PX1dISVRFU1BBQ0U+XCIoXCIgdmFyaWFibGUgXCIsXCIgW3N0cmluZy1saXRlcmFsXSBcIilcIiA7XG4gICAgXG4gICAgXG4gICAgXG4gICAgcmV0dXJuU3RhdGVtZW50ICAgICAgICAgOjo9ICBcInJldHVyblwiIHZhbHVlIFwiO1wiIDsgXG4gICAgXG4gICAgXG4gICAgXG4gICAgY29tcGFyaXNvblRlcm0gICAgICAgICAgOjo9ICB0ZXJtICggXCI9PVwiIHwgXCIhPVwiICkgdGVybSA7IFxuICAgIFxuICAgIGJyYWNrZXRlZFRlcm0gICAgICAgICAgIDo6PSAgXCIoXCIgdGVybSBcIilcIiA7IFxuICAgIFxuICAgIG5lZ2F0ZWRUZXJtICAgICAgICAgICAgIDo6PSAgXCIhXCI8Tk9fV0hJVEVTUEFDRT50ZXJtIDsgXG4gICAgXG4gICAgbG9naWNhbFRlcm0gICAgICAgICAgICAgOjo9ICB0ZXJtICggXCJ8fFwiIHwgXCImJlwiICkgdGVybSA7IFxuXG5cbiAgICBcbiAgICBleHByZXNzaW9uICAgICAgICAgICAgICA6Oj0gIHByb2NlZHVyZUNhbGxcbiAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICByZXR1cm5CbG9ja1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgdGVybmFyeVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICByZWR1Y2VcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIGV2ZXJ5XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBzb21lXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIG5vZGVzUXVlcnlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgbm9kZVF1ZXJ5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIGxlbmd0aE9mXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgdG9JbnRlZ2VyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgdHJ5SW50ZWdlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIHN0YXJ0c1dpdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgZW5kc1dpdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgY29udGFpbnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgdGVybVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7XG4gICAgXG4gICAgXG4gICAgXG4gICAgdGVybSAgICAgICAgICAgICAgICAgICAgOjo9ICBjb21wYXJpc29uVGVybSBcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIGJyYWNrZXRlZFRlcm0gXG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBsb2dpY2FsVGVybSBcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIG5lZ2F0ZWRUZXJtIFxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgcHJpbWl0aXZlIFxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgdmFyaWFibGUgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDtcblxuXG4gICAgXG4gICAgIHR5cGUgICAgICAgICAgICAgICAgICAgOjo9ICBcIkxpc3RcIjxOT19XSElURVNQQUNFPlwiPFwiICggXCJOb2RlXCIgfCBcIlN0cmluZ1wiIHwgXCJCb29sZWFuXCIgfCBcIkludGVnZXJcIiApIFwiPlwiXG4gICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgXCJOb2RlXCIgIFxuICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIFwiU3RyaW5nXCIgXG4gICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgXCJCb29sZWFuXCIgICBcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgXCJJbnRlZ2VyXCIgICBcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgO1xuXG5cbiAgICBcbiAgICB2YWx1ZSAgICAgICAgICAgICAgICAgICA6Oj0gIHByaW1pdGl2ZSBcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIHZhcmlhYmxlIFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7XG5cblxuICAgIFxuICAgIHByaW1pdGl2ZSAgICAgICAgICAgICAgIDo6PSAgW3N0cmluZy1saXRlcmFsXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICBbYm9vbGVhbl1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgW2ludGVnZXJdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIFtudWxsXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDtcblxuXG5cbiAgICByZWZlcmVuY2UuICAgICAgICAgICAgICA6Oj0gIFtuYW1lXSA7XG4gICAgXG4gICAgdmFyaWFibGUgICAgICAgICAgICAgICAgOjo9ICBbbmFtZV0gO1xuICAgIFxuICAgIGxhYmVsLiAgICAgICAgICAgICAgICAgIDo6PSAgW25hbWVdIDtcbiAgICBcbiAgICBcbiAgICBcbiAgICBub25zZW5zZS4gICAgICAgICAgICAgICA6Oj0gIFtzdHJpbmctbGl0ZXJhbF0gfCBbc2Vjb25kYXJ5LWtleXdvcmRdIHwgW2Z1bmN0aW9uLW5hbWVdIHwgW3R5cGVdIHwgW2Jvb2xlYW5dIHwgW2ludGVnZXJdIHwgW251bGxdIHwgW25hbWVdIHwgW3NwZWNpYWxdIHwgW3VuYXNzaWduZWRdIDtcblxuXG4gICAgXG4gICAgZXJyb3IuICAgICAgICAgICAgICAgICAgOjo9ICAuIDtcbiAgICBcbmA7XG5cbmV4cG9ydCBkZWZhdWx0IGJuZjtcbiJdLCJuYW1lcyI6WyJibmYiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWdOQTs7O2VBQUE7OztBQTlNQSxNQUFNQSxNQUFNLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQTRNYixDQUFDO01BRUQsV0FBZUEifQ==
|
|
@@ -46,4 +46,4 @@ const entries = [
|
|
|
46
46
|
];
|
|
47
47
|
const _default = entries;
|
|
48
48
|
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9leGFtcGxlL2Z1cnRsZS9lbnRyaWVzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xyXG5cclxuY29uc3QgTEFUSU4gPSBcIltcXFxccHtTY3JpcHQ9TGF0aW59XVwiLFxyXG4gICAgICBERUNJTUFMID0gXCJbMC05XVwiO1xyXG5cclxuY29uc3QgZW50cmllcyA9IFtcclxuICB7XHJcbiAgICBcImJyYWNrZXRcIjogXCJeKD86XFxcXHt8XFxcXH0pXCJcclxuICB9LFxyXG4gIHtcclxuICAgIFwicHJpbWFyeS1rZXl3b3JkXCI6IFwiXig/OmV4cG9ydHxpbXBvcnR8ZnJvbXxyZXR1cm4pXCJcclxuICB9LFxyXG4gIHtcclxuICAgIFwic2Vjb25kYXJ5LWtleXdvcmRcIjogXCJeKD86YXN8aWZ8ZWxzZSlcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgXCJmdW5jdGlvbi1uYW1lXCI6IFwiXig/Om5vZGVRdWVyeXxub2Rlc1F1ZXJ5fHJlZHVjZXxldmVyeXxzb21lfGxlbmd0aE9mfHRvSW50ZWdlcnx0cnlJbnRlZ2VyfHN0YXJ0c1dpdGh8ZW5kc1dpdGh8Y29udGFpbnMpXCJcclxuICB9LFxyXG4gIHtcclxuICAgIFwidHlwZVwiOiBcIl4oPzpMaXN0fE5vZGV8U3RyaW5nfEJvb2xlYW58SW50ZWdlcilcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgXCJib29sZWFuXCI6IFwiXig/OnRydWV8ZmFsc2UpXCJcclxuICB9LFxyXG4gIHtcclxuICAgIFwiaW50ZWdlclwiOiBcIl5bK1xcXFwtXT9cXFxcZCtcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgXCJudWxsXCI6IFwiXm51bGxcIlxyXG4gIH0sXHJcbiAge1xyXG4gICAgXCJuYW1lXCI6IGBeJHtMQVRJTn0rJHtERUNJTUFMfSpgLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgXCJzcGVjaWFsXCI6IFwiXig/Ojx8PnwhPXw9PXwhfD18LHw7fCYmfFxcXFx8XFxcXHx8XFxcXCh8XFxcXCl8XFxcXFt8XFxcXF0pXCJcclxuICB9LFxyXG4gIHtcclxuICAgIFwidW5hc3NpZ25lZFwiOiBcIl5bXlxcXFxzXStcIlxyXG4gIH1cclxuXTtcclxuXHJcbmV4cG9ydCBkZWZhdWx0IGVudHJpZXM7XHJcbiJdLCJuYW1lcyI6WyJMQVRJTiIsIkRFQ0lNQUwiLCJlbnRyaWVzIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkF5Q0E7OztlQUFBOzs7QUF2Q0EsTUFBTUEsUUFBUSx1QkFDUkMsVUFBVTtBQUVoQixNQUFNQyxVQUFVO0lBQ2Q7UUFDRSxXQUFXO0lBQ2I7SUFDQTtRQUNFLG1CQUFtQjtJQUNyQjtJQUNBO1FBQ0UscUJBQXFCO0lBQ3ZCO0lBQ0E7UUFDRSxpQkFBaUI7SUFDbkI7SUFDQTtRQUNFLFFBQVE7SUFDVjtJQUNBO1FBQ0UsV0FBVztJQUNiO0lBQ0E7UUFDRSxXQUFXO0lBQ2I7SUFDQTtRQUNFLFFBQVE7SUFDVjtJQUNBO1FBQ0UsUUFBUSxDQUFDLENBQUMsRUFBRUYsTUFBTSxDQUFDLEVBQUVDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pDO0lBQ0E7UUFDRSxXQUFXO0lBQ2I7SUFDQTtRQUNFLGNBQWM7SUFDaEI7Q0FDRDtNQUVELFdBQWVDIn0=
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return ImportBindingNode;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _occamlanguages = require("occam-languages");
|
|
12
|
+
const _ruleNames = require("../ruleNames");
|
|
13
|
+
class ImportBindingNode extends _occamlanguages.NonTerminalNode {
|
|
14
|
+
getLabelNode() {
|
|
15
|
+
const ruleName = _ruleNames.LABEL_RULE_NAME, labelNode = this.getNodeByRuleName(ruleName);
|
|
16
|
+
return labelNode;
|
|
17
|
+
}
|
|
18
|
+
getReferenceNode() {
|
|
19
|
+
const ruleName = _ruleNames.REFERENCE_RULE_NAME, referendeNode = this.getNodeByRuleName(ruleName);
|
|
20
|
+
return referendeNode;
|
|
21
|
+
}
|
|
22
|
+
static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) {
|
|
23
|
+
return _occamlanguages.NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(ImportBindingNode, ruleName, childNodes, opacity, precedence);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL2ltcG9ydEJpbmRpbmcuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IE5vblRlcm1pbmFsTm9kZSB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcblxuaW1wb3J0IHsgTEFCRUxfUlVMRV9OQU1FLCBSRUZFUkVOQ0VfUlVMRV9OQU1FIH0gZnJvbSBcIi4uL3J1bGVOYW1lc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBJbXBvcnRCaW5kaW5nTm9kZSBleHRlbmRzIE5vblRlcm1pbmFsTm9kZSB7XG4gIGdldExhYmVsTm9kZSgpIHtcbiAgICBjb25zdCBydWxlTmFtZSA9IExBQkVMX1JVTEVfTkFNRSxcbiAgICAgICAgICBsYWJlbE5vZGUgPSB0aGlzLmdldE5vZGVCeVJ1bGVOYW1lKHJ1bGVOYW1lKTtcblxuICAgIHJldHVybiBsYWJlbE5vZGU7XG4gIH1cblxuICBnZXRSZWZlcmVuY2VOb2RlKCkge1xuICAgIGNvbnN0IHJ1bGVOYW1lID0gUkVGRVJFTkNFX1JVTEVfTkFNRSxcbiAgICAgICAgICByZWZlcmVuZGVOb2RlID0gdGhpcy5nZXROb2RlQnlSdWxlTmFtZShydWxlTmFtZSk7XG5cbiAgICByZXR1cm4gcmVmZXJlbmRlTm9kZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UocnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpIHsgcmV0dXJuIE5vblRlcm1pbmFsTm9kZS5mcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UoSW1wb3J0QmluZGluZ05vZGUsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBwcmVjZWRlbmNlKTsgfVxufVxuIl0sIm5hbWVzIjpbIkltcG9ydEJpbmRpbmdOb2RlIiwiTm9uVGVybWluYWxOb2RlIiwiZ2V0TGFiZWxOb2RlIiwicnVsZU5hbWUiLCJMQUJFTF9SVUxFX05BTUUiLCJsYWJlbE5vZGUiLCJnZXROb2RlQnlSdWxlTmFtZSIsImdldFJlZmVyZW5jZU5vZGUiLCJSRUZFUkVOQ0VfUlVMRV9OQU1FIiwicmVmZXJlbmRlTm9kZSIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZSIsImNoaWxkTm9kZXMiLCJvcGFjaXR5IiwicHJlY2VkZW5jZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBTUE7OztlQUFxQkE7OztnQ0FKVzsyQkFFcUI7QUFFdEMsTUFBTUEsMEJBQTBCQywrQkFBZTtJQUM1REMsZUFBZTtRQUNiLE1BQU1DLFdBQVdDLDBCQUFlLEVBQzFCQyxZQUFZLElBQUksQ0FBQ0MsaUJBQWlCLENBQUNIO1FBRXpDLE9BQU9FO0lBQ1Q7SUFFQUUsbUJBQW1CO1FBQ2pCLE1BQU1KLFdBQVdLLDhCQUFtQixFQUM5QkMsZ0JBQWdCLElBQUksQ0FBQ0gsaUJBQWlCLENBQUNIO1FBRTdDLE9BQU9NO0lBQ1Q7SUFFQSxPQUFPQywyQ0FBMkNQLFFBQVEsRUFBRVEsVUFBVSxFQUFFQyxPQUFPLEVBQUVDLFVBQVUsRUFBRTtRQUFFLE9BQU9aLCtCQUFlLENBQUNTLDBDQUEwQyxDQUFDVixtQkFBbUJHLFVBQVVRLFlBQVlDLFNBQVNDO0lBQWE7QUFDbE8ifQ==
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return ImportBindingsNode;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _occamlanguages = require("occam-languages");
|
|
12
|
+
const _ruleNames = require("../ruleNames");
|
|
13
|
+
class ImportBindingsNode extends _occamlanguages.NonTerminalNode {
|
|
14
|
+
getImportBindingNodes() {
|
|
15
|
+
const ruleName = _ruleNames.IMPORT_BINDING_RULE_NAME, importBindingNodes = this.getNodesByRuleName(ruleName);
|
|
16
|
+
return importBindingNodes;
|
|
17
|
+
}
|
|
18
|
+
static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) {
|
|
19
|
+
return _occamlanguages.NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(ImportBindingsNode, ruleName, childNodes, opacity, precedence);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL2ltcG9ydEJpbmRpbmdzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBOb25UZXJtaW5hbE5vZGUgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCB7IElNUE9SVF9CSU5ESU5HX1JVTEVfTkFNRSB9IGZyb20gXCIuLi9ydWxlTmFtZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgSW1wb3J0QmluZGluZ3NOb2RlIGV4dGVuZHMgTm9uVGVybWluYWxOb2RlIHtcbiAgZ2V0SW1wb3J0QmluZGluZ05vZGVzKCkge1xuICAgIGNvbnN0IHJ1bGVOYW1lID0gSU1QT1JUX0JJTkRJTkdfUlVMRV9OQU1FLFxuICAgICAgICAgIGltcG9ydEJpbmRpbmdOb2RlcyA9IHRoaXMuZ2V0Tm9kZXNCeVJ1bGVOYW1lKHJ1bGVOYW1lKTtcblxuICAgIHJldHVybiBpbXBvcnRCaW5kaW5nTm9kZXM7XG4gIH1cblxuICBzdGF0aWMgZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlKHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBwcmVjZWRlbmNlKSB7IHJldHVybiBOb25UZXJtaW5hbE5vZGUuZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlKEltcG9ydEJpbmRpbmdzTm9kZSwgcnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpOyB9XG59XG4iXSwibmFtZXMiOlsiSW1wb3J0QmluZGluZ3NOb2RlIiwiTm9uVGVybWluYWxOb2RlIiwiZ2V0SW1wb3J0QmluZGluZ05vZGVzIiwicnVsZU5hbWUiLCJJTVBPUlRfQklORElOR19SVUxFX05BTUUiLCJpbXBvcnRCaW5kaW5nTm9kZXMiLCJnZXROb2Rlc0J5UnVsZU5hbWUiLCJmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UiLCJjaGlsZE5vZGVzIiwib3BhY2l0eSIsInByZWNlZGVuY2UiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQU1BOzs7ZUFBcUJBOzs7Z0NBSlc7MkJBRVM7QUFFMUIsTUFBTUEsMkJBQTJCQywrQkFBZTtJQUM3REMsd0JBQXdCO1FBQ3RCLE1BQU1DLFdBQVdDLG1DQUF3QixFQUNuQ0MscUJBQXFCLElBQUksQ0FBQ0Msa0JBQWtCLENBQUNIO1FBRW5ELE9BQU9FO0lBQ1Q7SUFFQSxPQUFPRSwyQ0FBMkNKLFFBQVEsRUFBRUssVUFBVSxFQUFFQyxPQUFPLEVBQUVDLFVBQVUsRUFBRTtRQUFFLE9BQU9ULCtCQUFlLENBQUNNLDBDQUEwQyxDQUFDUCxvQkFBb0JHLFVBQVVLLFlBQVlDLFNBQVNDO0lBQWE7QUFDbk8ifQ==
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "default", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return ImportStatementNode;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _occamlanguages = require("occam-languages");
|
|
12
|
+
const _constants = require("../constants");
|
|
13
|
+
const _ruleNames = require("../ruleNames");
|
|
14
|
+
const _tokenTypes = require("../tokenTypes");
|
|
15
|
+
class ImportStatementNode extends _occamlanguages.NonTerminalNode {
|
|
16
|
+
getReleaseName() {
|
|
17
|
+
let releaseName;
|
|
18
|
+
const tokenType = _tokenTypes.STRING_LITERAL_TOKEN_TYPE;
|
|
19
|
+
this.someTerminalNode((terminalNode)=>{
|
|
20
|
+
const content = terminalNode.getContent();
|
|
21
|
+
releaseName = trim(content); ///
|
|
22
|
+
return true;
|
|
23
|
+
}, tokenType);
|
|
24
|
+
return releaseName;
|
|
25
|
+
}
|
|
26
|
+
getImportBindingNodes() {
|
|
27
|
+
const importBindingsNode = this.getImportBindingsNode(), importBindingNodes = importBindingsNode.getImportBindingNodes();
|
|
28
|
+
return importBindingNodes;
|
|
29
|
+
}
|
|
30
|
+
getImportBindingsNode() {
|
|
31
|
+
const ruleName = _ruleNames.IMPORT_BINDINGS_RULE_NAME, importBindingsNode = this.getNodeByRuleName(ruleName);
|
|
32
|
+
return importBindingsNode;
|
|
33
|
+
}
|
|
34
|
+
static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) {
|
|
35
|
+
return _occamlanguages.NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(ImportStatementNode, ruleName, childNodes, opacity, precedence);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
function trim(content) {
|
|
39
|
+
return content.replace(/(^"|"$)/g, _constants.EMPTY_STRING);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL2ltcG9ydFN0YXRlbWVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgTm9uVGVybWluYWxOb2RlIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgeyBFTVBUWV9TVFJJTkcgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBJTVBPUlRfQklORElOR1NfUlVMRV9OQU1FIH0gZnJvbSBcIi4uL3J1bGVOYW1lc1wiO1xuaW1wb3J0IHsgU1RSSU5HX0xJVEVSQUxfVE9LRU5fVFlQRSB9IGZyb20gXCIuLi90b2tlblR5cGVzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEltcG9ydFN0YXRlbWVudE5vZGUgZXh0ZW5kcyBOb25UZXJtaW5hbE5vZGUge1xuICBnZXRSZWxlYXNlTmFtZSgpIHtcbiAgICBsZXQgcmVsZWFzZU5hbWU7XG5cbiAgICBjb25zdCB0b2tlblR5cGUgPSBTVFJJTkdfTElURVJBTF9UT0tFTl9UWVBFO1xuXG4gICAgdGhpcy5zb21lVGVybWluYWxOb2RlKCh0ZXJtaW5hbE5vZGUpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRlbnQgPSB0ZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpO1xuXG4gICAgICByZWxlYXNlTmFtZSA9IHRyaW0oY29udGVudCk7ICAvLy9cblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSwgdG9rZW5UeXBlKTtcblxuICAgIHJldHVybiByZWxlYXNlTmFtZTtcbiAgfVxuXG4gIGdldEltcG9ydEJpbmRpbmdOb2RlcygpIHtcbiAgICBjb25zdCBpbXBvcnRCaW5kaW5nc05vZGUgPSB0aGlzLmdldEltcG9ydEJpbmRpbmdzTm9kZSgpLFxuICAgICAgICAgIGltcG9ydEJpbmRpbmdOb2RlcyA9IGltcG9ydEJpbmRpbmdzTm9kZS5nZXRJbXBvcnRCaW5kaW5nTm9kZXMoKTtcblxuICAgIHJldHVybiBpbXBvcnRCaW5kaW5nTm9kZXM7XG4gIH1cblxuICBnZXRJbXBvcnRCaW5kaW5nc05vZGUoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBJTVBPUlRfQklORElOR1NfUlVMRV9OQU1FLFxuICAgICAgICAgIGltcG9ydEJpbmRpbmdzTm9kZSA9IHRoaXMuZ2V0Tm9kZUJ5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIGltcG9ydEJpbmRpbmdzTm9kZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UocnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpIHsgcmV0dXJuIE5vblRlcm1pbmFsTm9kZS5mcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UoSW1wb3J0U3RhdGVtZW50Tm9kZSwgcnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpOyB9XG59XG5cbmZ1bmN0aW9uIHRyaW0oY29udGVudCkge1xuICByZXR1cm4gY29udGVudC5yZXBsYWNlKC8oXlwifFwiJCkvZywgRU1QVFlfU1RSSU5HKTtcbn0iXSwibmFtZXMiOlsiSW1wb3J0U3RhdGVtZW50Tm9kZSIsIk5vblRlcm1pbmFsTm9kZSIsImdldFJlbGVhc2VOYW1lIiwicmVsZWFzZU5hbWUiLCJ0b2tlblR5cGUiLCJTVFJJTkdfTElURVJBTF9UT0tFTl9UWVBFIiwic29tZVRlcm1pbmFsTm9kZSIsInRlcm1pbmFsTm9kZSIsImNvbnRlbnQiLCJnZXRDb250ZW50IiwidHJpbSIsImdldEltcG9ydEJpbmRpbmdOb2RlcyIsImltcG9ydEJpbmRpbmdzTm9kZSIsImdldEltcG9ydEJpbmRpbmdzTm9kZSIsImltcG9ydEJpbmRpbmdOb2RlcyIsInJ1bGVOYW1lIiwiSU1QT1JUX0JJTkRJTkdTX1JVTEVfTkFNRSIsImdldE5vZGVCeVJ1bGVOYW1lIiwiZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlIiwiY2hpbGROb2RlcyIsIm9wYWNpdHkiLCJwcmVjZWRlbmNlIiwicmVwbGFjZSIsIkVNUFRZX1NUUklORyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBUUE7OztlQUFxQkE7OztnQ0FOVzsyQkFFSDsyQkFDYTs0QkFDQTtBQUUzQixNQUFNQSw0QkFBNEJDLCtCQUFlO0lBQzlEQyxpQkFBaUI7UUFDZixJQUFJQztRQUVKLE1BQU1DLFlBQVlDLHFDQUF5QjtRQUUzQyxJQUFJLENBQUNDLGdCQUFnQixDQUFDLENBQUNDO1lBQ3JCLE1BQU1DLFVBQVVELGFBQWFFLFVBQVU7WUFFdkNOLGNBQWNPLEtBQUtGLFVBQVcsR0FBRztZQUVqQyxPQUFPO1FBQ1QsR0FBR0o7UUFFSCxPQUFPRDtJQUNUO0lBRUFRLHdCQUF3QjtRQUN0QixNQUFNQyxxQkFBcUIsSUFBSSxDQUFDQyxxQkFBcUIsSUFDL0NDLHFCQUFxQkYsbUJBQW1CRCxxQkFBcUI7UUFFbkUsT0FBT0c7SUFDVDtJQUVBRCx3QkFBd0I7UUFDdEIsTUFBTUUsV0FBV0Msb0NBQXlCLEVBQ3BDSixxQkFBcUIsSUFBSSxDQUFDSyxpQkFBaUIsQ0FBQ0Y7UUFFbEQsT0FBT0g7SUFDVDtJQUVBLE9BQU9NLDJDQUEyQ0gsUUFBUSxFQUFFSSxVQUFVLEVBQUVDLE9BQU8sRUFBRUMsVUFBVSxFQUFFO1FBQUUsT0FBT3BCLCtCQUFlLENBQUNpQiwwQ0FBMEMsQ0FBQ2xCLHFCQUFxQmUsVUFBVUksWUFBWUMsU0FBU0M7SUFBYTtBQUNwTztBQUVBLFNBQVNYLEtBQUtGLE9BQU87SUFDbkIsT0FBT0EsUUFBUWMsT0FBTyxDQUFDLFlBQVlDLHVCQUFZO0FBQ2pEIn0=
|
package/lib/node/procedure.js
CHANGED
|
@@ -15,19 +15,14 @@ const _ruleNames = require("../ruleNames");
|
|
|
15
15
|
class ProcedureNode extends _occamlanguages.NonTerminalNode {
|
|
16
16
|
isExported() {
|
|
17
17
|
let exported = false;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
if (content === _constants.EXPORT) {
|
|
25
|
-
exported = true;
|
|
26
|
-
return true;
|
|
27
|
-
}
|
|
28
|
-
}
|
|
18
|
+
const tokenType = _tokenTypes.PRIMARY_KEYWORD_TOKEN_TYPE;
|
|
19
|
+
this.someTerminalNode((terminalNode)=>{
|
|
20
|
+
const content = terminalNode.getContent();
|
|
21
|
+
if (content === _constants.EXPORT) {
|
|
22
|
+
exported = true;
|
|
23
|
+
return true;
|
|
29
24
|
}
|
|
30
|
-
});
|
|
25
|
+
}, tokenType);
|
|
31
26
|
return exported;
|
|
32
27
|
}
|
|
33
28
|
getTypeNode() {
|
|
@@ -59,4 +54,4 @@ class ProcedureNode extends _occamlanguages.NonTerminalNode {
|
|
|
59
54
|
}
|
|
60
55
|
}
|
|
61
56
|
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL3Byb2NlZHVyZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgTm9uVGVybWluYWxOb2RlIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgeyBFWFBPUlQgfSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBQUklNQVJZX0tFWVdPUkRfVE9LRU5fVFlQRSB9IGZyb20gXCIuLi90b2tlblR5cGVzXCI7XG5pbXBvcnQgeyBUWVBFX1JVTEVfTkFNRSwgTEFCRUxfUlVMRV9OQU1FLCBQQVJBTUVURVJTX1JVTEVfTkFNRSwgUkVUVVJOX0JMT0NLX1JVTEVfTkFNRSB9IGZyb20gXCIuLi9ydWxlTmFtZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUHJvY2VkdXJlTm9kZSBleHRlbmRzIE5vblRlcm1pbmFsTm9kZSB7XG4gIGlzRXhwb3J0ZWQoKSB7XG4gICAgbGV0IGV4cG9ydGVkID0gZmFsc2U7XG5cbiAgICBjb25zdCB0b2tlblR5cGUgPSBQUklNQVJZX0tFWVdPUkRfVE9LRU5fVFlQRTtcblxuICAgIHRoaXMuc29tZVRlcm1pbmFsTm9kZSgodGVybWluYWxOb2RlKSA9PiB7XG4gICAgICBjb25zdCBjb250ZW50ID0gdGVybWluYWxOb2RlLmdldENvbnRlbnQoKTtcblxuICAgICAgaWYgKGNvbnRlbnQgPT09IEVYUE9SVCkge1xuICAgICAgICBleHBvcnRlZCA9IHRydWU7XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSwgdG9rZW5UeXBlKTtcblxuICAgIHJldHVybiBleHBvcnRlZDtcbiAgfTtcblxuICBnZXRUeXBlTm9kZSgpIHtcbiAgICBjb25zdCBydWxlTmFtZSA9IFRZUEVfUlVMRV9OQU1FLFxuICAgICAgICAgIGxhYmVsTm9kZSA9IHRoaXMuZ2V0Tm9kZUJ5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIGxhYmVsTm9kZTtcbiAgfVxuXG4gIGdldExhYmVsTm9kZSgpIHtcbiAgICBjb25zdCBydWxlTmFtZSA9IExBQkVMX1JVTEVfTkFNRSxcbiAgICAgICAgICBsYWJlbE5vZGUgPSB0aGlzLmdldE5vZGVCeVJ1bGVOYW1lKHJ1bGVOYW1lKTtcblxuICAgIHJldHVybiBsYWJlbE5vZGU7XG4gIH1cblxuICBnZXRQYXJhbWV0ZXJzTm9kZSgpIHtcbiAgICBjb25zdCBydWxlTmFtZSA9IFBBUkFNRVRFUlNfUlVMRV9OQU1FLFxuICAgICAgICAgIHBhcmFtZXRlcnNOb2RlID0gdGhpcy5nZXROb2RlQnlSdWxlTmFtZShydWxlTmFtZSk7XG5cbiAgICByZXR1cm4gcGFyYW1ldGVyc05vZGU7XG4gIH1cblxuICBnZXRSZXR1cm5CbG9ja05vZGUoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBSRVRVUk5fQkxPQ0tfUlVMRV9OQU1FLFxuICAgICAgICAgIHJldHVybkJsb2NrTm9kZSA9IHRoaXMuZ2V0Tm9kZUJ5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIHJldHVybkJsb2NrTm9kZTtcbiAgfVxuXG4gIG1hdGNoTGFiZWxOb2RlKGxhYmVsTm9kZSkge1xuICAgIGxldCBsYWJlbE5vZGVNYXRjaGVzO1xuXG4gICAgY29uc3QgbGFiZWxOb2RlQSA9IGxhYmVsTm9kZTsgLy8vXG5cbiAgICBsYWJlbE5vZGUgPSB0aGlzLmdldExhYmVsTm9kZSgpO1xuXG4gICAgY29uc3QgbGFiZWxOb2RlQiA9IGxhYmVsTm9kZTsgLy8vXG5cbiAgICBsYWJlbE5vZGVNYXRjaGVzID0gbGFiZWxOb2RlQS5tYXRjaChsYWJlbE5vZGVCKTsgIC8vL1xuXG4gICAgcmV0dXJuIGxhYmVsTm9kZU1hdGNoZXM7XG4gIH1cblxuICBzdGF0aWMgZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlKHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBwcmVjZWRlbmNlKSB7IHJldHVybiBOb25UZXJtaW5hbE5vZGUuZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlKFByb2NlZHVyZU5vZGUsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBwcmVjZWRlbmNlKTsgfVxufVxuIl0sIm5hbWVzIjpbIlByb2NlZHVyZU5vZGUiLCJOb25UZXJtaW5hbE5vZGUiLCJpc0V4cG9ydGVkIiwiZXhwb3J0ZWQiLCJ0b2tlblR5cGUiLCJQUklNQVJZX0tFWVdPUkRfVE9LRU5fVFlQRSIsInNvbWVUZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGUiLCJjb250ZW50IiwiZ2V0Q29udGVudCIsIkVYUE9SVCIsImdldFR5cGVOb2RlIiwicnVsZU5hbWUiLCJUWVBFX1JVTEVfTkFNRSIsImxhYmVsTm9kZSIsImdldE5vZGVCeVJ1bGVOYW1lIiwiZ2V0TGFiZWxOb2RlIiwiTEFCRUxfUlVMRV9OQU1FIiwiZ2V0UGFyYW1ldGVyc05vZGUiLCJQQVJBTUVURVJTX1JVTEVfTkFNRSIsInBhcmFtZXRlcnNOb2RlIiwiZ2V0UmV0dXJuQmxvY2tOb2RlIiwiUkVUVVJOX0JMT0NLX1JVTEVfTkFNRSIsInJldHVybkJsb2NrTm9kZSIsIm1hdGNoTGFiZWxOb2RlIiwibGFiZWxOb2RlTWF0Y2hlcyIsImxhYmVsTm9kZUEiLCJsYWJlbE5vZGVCIiwibWF0Y2giLCJmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UiLCJjaGlsZE5vZGVzIiwib3BhY2l0eSIsInByZWNlZGVuY2UiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVFBOzs7ZUFBcUJBOzs7Z0NBTlc7MkJBRVQ7NEJBQ29COzJCQUNtRDtBQUUvRSxNQUFNQSxzQkFBc0JDLCtCQUFlO0lBQ3hEQyxhQUFhO1FBQ1gsSUFBSUMsV0FBVztRQUVmLE1BQU1DLFlBQVlDLHNDQUEwQjtRQUU1QyxJQUFJLENBQUNDLGdCQUFnQixDQUFDLENBQUNDO1lBQ3JCLE1BQU1DLFVBQVVELGFBQWFFLFVBQVU7WUFFdkMsSUFBSUQsWUFBWUUsaUJBQU0sRUFBRTtnQkFDdEJQLFdBQVc7Z0JBRVgsT0FBTztZQUNUO1FBQ0YsR0FBR0M7UUFFSCxPQUFPRDtJQUNUO0lBRUFRLGNBQWM7UUFDWixNQUFNQyxXQUFXQyx5QkFBYyxFQUN6QkMsWUFBWSxJQUFJLENBQUNDLGlCQUFpQixDQUFDSDtRQUV6QyxPQUFPRTtJQUNUO0lBRUFFLGVBQWU7UUFDYixNQUFNSixXQUFXSywwQkFBZSxFQUMxQkgsWUFBWSxJQUFJLENBQUNDLGlCQUFpQixDQUFDSDtRQUV6QyxPQUFPRTtJQUNUO0lBRUFJLG9CQUFvQjtRQUNsQixNQUFNTixXQUFXTywrQkFBb0IsRUFDL0JDLGlCQUFpQixJQUFJLENBQUNMLGlCQUFpQixDQUFDSDtRQUU5QyxPQUFPUTtJQUNUO0lBRUFDLHFCQUFxQjtRQUNuQixNQUFNVCxXQUFXVSxpQ0FBc0IsRUFDakNDLGtCQUFrQixJQUFJLENBQUNSLGlCQUFpQixDQUFDSDtRQUUvQyxPQUFPVztJQUNUO0lBRUFDLGVBQWVWLFNBQVMsRUFBRTtRQUN4QixJQUFJVztRQUVKLE1BQU1DLGFBQWFaLFdBQVcsR0FBRztRQUVqQ0EsWUFBWSxJQUFJLENBQUNFLFlBQVk7UUFFN0IsTUFBTVcsYUFBYWIsV0FBVyxHQUFHO1FBRWpDVyxtQkFBbUJDLFdBQVdFLEtBQUssQ0FBQ0QsYUFBYyxHQUFHO1FBRXJELE9BQU9GO0lBQ1Q7SUFFQSxPQUFPSSwyQ0FBMkNqQixRQUFRLEVBQUVrQixVQUFVLEVBQUVDLE9BQU8sRUFBRUMsVUFBVSxFQUFFO1FBQUUsT0FBTy9CLCtCQUFlLENBQUM0QiwwQ0FBMEMsQ0FBQzdCLGVBQWVZLFVBQVVrQixZQUFZQyxTQUFTQztJQUFhO0FBQzlOIn0=
|