occam-furtle 3.0.516 → 3.0.519
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/file/furtle.js +8 -3
- package/lib/element/importBinding.js +58 -0
- package/lib/element/importBindings.js +17 -0
- package/lib/element/importStatement.js +66 -0
- package/lib/element/label.js +3 -2
- package/lib/element/parameters.js +3 -2
- package/lib/element/procedure.js +9 -5
- package/lib/element/reference.js +20 -1
- package/lib/element/type.js +4 -2
- 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/file/furtle.js +13 -8
- package/src/element/importBinding.js +81 -0
- package/src/element/importBindings.js +9 -0
- package/src/element/importStatement.js +87 -0
- package/src/element/label.js +3 -1
- package/src/element/parameters.js +3 -1
- package/src/element/procedure.js +19 -16
- package/src/element/reference.js +31 -0
- package/src/element/type.js +7 -4
- 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
|
@@ -121,6 +121,9 @@ class FurtleFileContext extends _occamlanguages.FileContext {
|
|
|
121
121
|
const procedure = this.findProcedureByProcedureName(procedureName), procedurePresent = procedure !== null;
|
|
122
122
|
return procedurePresent;
|
|
123
123
|
}
|
|
124
|
+
compareReleaseName(releaseName) {
|
|
125
|
+
return this.context.compareReleaseName(releaseName);
|
|
126
|
+
}
|
|
124
127
|
clear() {
|
|
125
128
|
this.procedures = [];
|
|
126
129
|
}
|
|
@@ -142,9 +145,11 @@ class FurtleFileContext extends _occamlanguages.FileContext {
|
|
|
142
145
|
}, forward, back);
|
|
143
146
|
}
|
|
144
147
|
toJSON() {
|
|
145
|
-
|
|
146
|
-
|
|
148
|
+
let json;
|
|
149
|
+
const filePath = this.getFilePath(), fileContent = this.getFileContent(), proceduresJSON = (0, _json.proceduresToProceduresJSON)(this.procedures), procedures = proceduresJSON; ///
|
|
150
|
+
json = {
|
|
147
151
|
filePath,
|
|
152
|
+
fileContent,
|
|
148
153
|
procedures
|
|
149
154
|
};
|
|
150
155
|
return json;
|
|
@@ -159,4 +164,4 @@ class FurtleFileContext extends _occamlanguages.FileContext {
|
|
|
159
164
|
}
|
|
160
165
|
}
|
|
161
166
|
|
|
162
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250ZXh0L2ZpbGUvZnVydGxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBGaWxlQ29udGV4dCB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcbmltcG9ydCB7IHF1ZXJ5VXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLXF1ZXJ5XCI7XG5cbmltcG9ydCB7IGlzb2xhdGUgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL2NvbnRleHRcIjtcbmltcG9ydCB7IHZlcmlmeUZpbGUgfSBmcm9tIFwiLi4vLi4vcHJvY2Vzcy92ZXJpZnlcIjtcbmltcG9ydCB7IGZ1cnRsZUxleGVyLCBmdXJ0bGVQYXJzZXIgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL2Z1cnRsZVwiO1xuaW1wb3J0IHsgcHJvY2VkdXJlc0Zyb21KU09OLCBwcm9jZWR1cmVzVG9Qcm9jZWR1cmVzSlNPTiB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvanNvblwiO1xuXG5jb25zdCB7IG5vZGVzUXVlcnkgfSA9IHF1ZXJ5VXRpbGl0aWVzO1xuXG5jb25zdCBwcm9jZWR1cmVOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9kb2N1bWVudC9wcm9jZWR1cmVcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEZ1cnRsZUZpbGVDb250ZXh0IGV4dGVuZHMgRmlsZUNvbnRleHQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBmaWxlQ29udGVudCwgZmlsZVBhdGgsIHRva2Vucywgbm9kZSwganNvbiwgbGV4ZXIsIHBhcnNlciwgcHJvY2VkdXJlcykge1xuICAgIHN1cGVyKGNvbnRleHQsIGZpbGVDb250ZW50LCBmaWxlUGF0aCwgdG9rZW5zLCBub2RlLCBqc29uKTtcblxuICAgIHRoaXMubGV4ZXIgPSBsZXhlcjtcbiAgICB0aGlzLnBhcnNlciA9IHBhcnNlcjtcbiAgICB0aGlzLnByb2NlZHVyZXMgPSBwcm9jZWR1cmVzO1xuICB9XG5cbiAgZ2V0TGV4ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMubGV4ZXI7XG4gIH1cblxuICBnZXRQYXJzZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyc2VyO1xuICB9XG5cbiAgZ2V0TGFiZWxzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGxhYmVscyA9IFtdO1xuXG4gICAgcmV0dXJuIGxhYmVscztcbiAgfVxuXG4gIGdldFR5cGVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHR5cGVzID0gW107XG5cbiAgICByZXR1cm4gdHlwZXM7XG4gIH1cblxuICBnZXRSdWxlcyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBydWxlcyA9IFtdXG5cbiAgICByZXR1cm4gcnVsZXM7XG4gIH1cblxuICBnZXRBeGlvbXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgYXhpb21zID0gW107XG5cbiAgICByZXR1cm4gYXhpb21zO1xuICB9XG5cbiAgZ2V0TGVtbWFzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGxlbW1hcyA9IFtdO1xuXG4gICAgcmV0dXJuIGxlbW1hcztcbiAgfVxuXG4gIGdldFRoZW9yZW1zKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHRoZW9yZW1zID0gW107XG5cbiAgICByZXR1cm4gdGhlb3JlbXM7XG4gIH1cblxuICBnZXRNZXRhTGVtbWFzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IG1ldGFMZW1tYXMgPSBbXTtcblxuICAgIHJldHVybiBtZXRhTGVtbWFzO1xuICB9XG5cbiAgZ2V0R2VuZXJhdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBnZW5lcmF0b3JzID0gW107XG5cbiAgICByZXR1cm4gZ2VuZXJhdG9ycztcbiAgfVxuXG4gIGdldENvbmplY3R1cmVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGNvbmplY3R1cmVzID0gW107XG5cbiAgICByZXR1cm4gY29uamVjdHVyZXM7XG4gIH1cblxuICBnZXRDb21iaW5hdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBjb21iaW5hdG9ycyA9IFtdO1xuXG4gICAgcmV0dXJuIGNvbWJpbmF0b3JzO1xuICB9XG5cbiAgZ2V0VHlwZVByZWZpeGVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHR5cGVQcmVmaXhlcyA9IFtdO1xuXG4gICAgcmV0dXJuIHR5cGVQcmVmaXhlcztcbiAgfVxuXG4gIGdldENvbnN0cnVjdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBjb25zdHJ1Y3RvcnMgPSBbXTtcblxuICAgIHJldHVybiBjb25zdHJ1Y3RvcnM7XG4gIH1cblxuICBnZXRNZXRhdGhlb3JlbXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgbWV0YXRoZW9yZW1zID0gW107XG5cbiAgICByZXR1cm4gbWV0YXRoZW9yZW1zO1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlcyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBtZXRhdmFyaWFibGVzID0gW107XG5cbiAgICByZXR1cm4gbWV0YXZhcmlhYmxlcztcbiAgfVxuXG4gIGdldFByb2NlZHVyZXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgcHJvY2VkdXJlcyA9IGluY2x1ZGVSZWxlYXNlID9cbiAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRleHQuZ2V0UHJvY2VkdXJlcygpIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucHJvY2VkdXJlcztcblxuICAgIHJldHVybiBwcm9jZWR1cmVzO1xuICB9XG5cbiAgZ2V0VmFyaWFibGVzKG5lc3RlZCA9IHRydWUpIHtcbiAgICBjb25zdCB2YXJpYWJsZXMgPSBbXTtcblxuICAgIHJldHVybiB2YXJpYWJsZXM7XG4gIH1cblxuICBhZGRQcm9jZWR1cmUocHJvY2VkdXJlKSB7XG4gICAgY29uc3QgcHJvY2VkdXJlU3RyaW5nID0gcHJvY2VkdXJlLmdldFN0cmluZygpO1xuXG4gICAgdGhpcy5wcm9jZWR1cmVzLnB1c2gocHJvY2VkdXJlKTtcblxuICAgIGNvbnN0IGZpbGVQYXRoID0gdGhpcy5nZXRGaWxlUGF0aCgpO1xuXG4gICAgdGhpcy5kZWJ1ZyhgQWRkZWQgdGhlICcke3Byb2NlZHVyZVN0cmluZ30nIGZ1bmN0aW9uIHRvIHRoZSAnJHtmaWxlUGF0aH0nIGZpbGUgY29udGV4dC5gKTtcbiAgfVxuXG4gIGZpbmRQcm9jZWR1cmVOb2RlKGxhYmVsKSB7XG4gICAgY29uc3Qgbm9kZSA9IHRoaXMuZ2V0Tm9kZSgpLFxuICAgICAgICAgIGxhYmVsTm9kZSA9IGxhYmVsLmdldE5vZGUoKSxcbiAgICAgICAgICBkb2N1bWVudE5vZGUgPSBub2RlLCAgLy8vXG4gICAgICAgICAgcHJvY2VkdXJlTm9kZXMgPSBwcm9jZWR1cmVOb2Rlc1F1ZXJ5KGRvY3VtZW50Tm9kZSksXG4gICAgICAgICAgcHJvY2VkdXJlTm9kZSA9IHByb2NlZHVyZU5vZGVzLmZpbmQoKHByb2NlZHVyZU5vZGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGxhYmVsTWF0Y2hlcyA9IHByb2NlZHVyZU5vZGUubWF0Y2hMYWJlbE5vZGUobGFiZWxOb2RlKTtcblxuICAgICAgICAgICAgaWYgKGxhYmVsTWF0Y2hlcykge1xuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIHByb2NlZHVyZU5vZGU7XG4gIH1cblxuICBmaW5kUHJvY2VkdXJlQnlQcm9jZWR1cmVOYW1lKHByb2NlZHVyZU5hbWUpIHtcbiAgICBjb25zdCBwcm9jZWR1cmVzID0gdGhpcy5nZXRQcm9jZWR1cmVzKCksXG4gICAgICAgICAgcHJvY2VkdXJlID0gcHJvY2VkdXJlcy5maW5kKChwcm9jZWR1cmUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHByb2NlZHVyZUNvbXBhcmVzVG9Qcm9jZWR1cmVOYW1lID0gcHJvY2VkdXJlLmNvbXBhcmVQcm9jZWR1cmVOYW1lKHByb2NlZHVyZU5hbWUpO1xuXG4gICAgICAgICAgICBpZiAocHJvY2VkdXJlQ29tcGFyZXNUb1Byb2NlZHVyZU5hbWUpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSkgfHwgbnVsbDtcblxuICAgIHJldHVybiBwcm9jZWR1cmU7XG4gIH1cblxuICBpc1Byb2NlZHVyZVByZXNlbnRCeVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSkge1xuICAgIGNvbnN0IHByb2NlZHVyZSA9IHRoaXMuZmluZFByb2NlZHVyZUJ5UHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKSxcbiAgICAgICAgICBwcm9jZWR1cmVQcmVzZW50ID0gKHByb2NlZHVyZSAhPT0gbnVsbCk7XG5cbiAgICByZXR1cm4gcHJvY2VkdXJlUHJlc2VudDtcbiAgfVxuXG4gIGNsZWFyKCkge1xuICAgIHRoaXMucHJvY2VkdXJlcyA9IFtdO1xuICB9XG5cbiAgY29tcGxldGUoKSB7XG4gICAgLy8vXG4gIH1cblxuICBpbml0aWFsaXNlKCkge1xuICAgIHN1cGVyLmluaXRpYWxpc2UoKTsgLy8vXG5cbiAgICBjb25zdCBqc29uID0gdGhpcy5nZXRKU09OKCk7XG5cbiAgICBpZiAoanNvbiAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgZmlsZUNvbnRleHQgPSB0aGlzOyAvLy9cblxuICAgICAgdGhpcy5wcm9jZWR1cmVzID0gcHJvY2VkdXJlc0Zyb21KU09OKGpzb24sIGZpbGVDb250ZXh0KTtcbiAgICB9XG4gIH1cblxuICB2ZXJpZnlGaWxlKGZvcndhcmQsIGJhY2spIHtcbiAgICByZXR1cm4gaXNvbGF0ZSgoZm9yd2FyZCwgYmFjaykgPT4ge1xuICAgICAgY29uc3Qgbm9kZSA9IHRoaXMuZ2V0Tm9kZSgpLFxuICAgICAgICAgICAgY29udGV4dCA9IHRoaXMsIC8vL1xuICAgICAgICAgICAgZmlsZU5vZGUgPSBub2RlOyAgLy8vXG5cbiAgICAgIHJldHVybiB2ZXJpZnlGaWxlKGZpbGVOb2RlLCBjb250ZXh0LCBmb3J3YXJkLCBiYWNrKTtcbiAgICB9LCBmb3J3YXJkLCBiYWNrKTtcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCBwcm9jZWR1cmVzSlNPTiA9IHByb2NlZHVyZXNUb1Byb2NlZHVyZXNKU09OKHRoaXMucHJvY2VkdXJlcyksXG4gICAgICAgICAgZmlsZUNvbnRlbnQgPSB0aGlzLmdldEZpbGVDb250ZW50KCksXG4gICAgICAgICAgZmlsZVBhdGggPSB0aGlzLmdldEZpbGVQYXRoKCksXG4gICAgICAgICAgcHJvY2VkdXJlcyA9IHByb2NlZHVyZXNKU09OLCAgLy8vXG4gICAgICAgICAganNvbiA9IHtcbiAgICAgICAgICAgIGZpbGVDb250ZW50LFxuICAgICAgICAgICAgZmlsZVBhdGgsXG4gICAgICAgICAgICBwcm9jZWR1cmVzXG4gICAgICAgICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgc3RhdGljIGZyb21GaWxlKGZpbGUsIGNvbnRleHQpIHtcbiAgICBjb25zdCBsZXhlciA9IGZ1cnRsZUxleGVyLCAgLy8vXG4gICAgICAgICAgcGFyc2VyID0gZnVydGxlUGFyc2VyLCAgLy8vXG4gICAgICAgICAgcHJvY2VkdXJlcyA9IFtdLFxuICAgICAgICAgIGZ1cnRsZUZpbGVDb250ZXh0ID0gRmlsZUNvbnRleHQuZnJvbUZpbGUoRnVydGxlRmlsZUNvbnRleHQsIGZpbGUsIGxleGVyLCBwYXJzZXIsIHByb2NlZHVyZXMsIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIGZ1cnRsZUZpbGVDb250ZXh0O1xuICB9XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24sIGNvbnRleHQpIHtcbiAgICBjb25zdCBsZXhlciA9IGZ1cnRsZUxleGVyLCAgLy8vXG4gICAgICAgICAgcGFyc2VyID0gZnVydGxlUGFyc2VyLCAgLy8vXG4gICAgICAgICAgcHJvY2VkdXJlcyA9IG51bGwsXG4gICAgICAgICAgZnVydGxlRmlsZUNvbnRleHQgPSBGaWxlQ29udGV4dC5mcm9tSlNPTihGdXJ0bGVGaWxlQ29udGV4dCwganNvbiwgbGV4ZXIsIHBhcnNlciwgcHJvY2VkdXJlcywgY29udGV4dCk7XG5cbiAgICByZXR1cm4gZnVydGxlRmlsZUNvbnRleHQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJGdXJ0bGVGaWxlQ29udGV4dCIsIm5vZGVzUXVlcnkiLCJxdWVyeVV0aWxpdGllcyIsInByb2NlZHVyZU5vZGVzUXVlcnkiLCJGaWxlQ29udGV4dCIsImNvbnRleHQiLCJmaWxlQ29udGVudCIsImZpbGVQYXRoIiwidG9rZW5zIiwibm9kZSIsImpzb24iLCJsZXhlciIsInBhcnNlciIsInByb2NlZHVyZXMiLCJnZXRMZXhlciIsImdldFBhcnNlciIsImdldExhYmVscyIsImluY2x1ZGVSZWxlYXNlIiwibGFiZWxzIiwiZ2V0VHlwZXMiLCJ0eXBlcyIsImdldFJ1bGVzIiwicnVsZXMiLCJnZXRBeGlvbXMiLCJheGlvbXMiLCJnZXRMZW1tYXMiLCJsZW1tYXMiLCJnZXRUaGVvcmVtcyIsInRoZW9yZW1zIiwiZ2V0TWV0YUxlbW1hcyIsIm1ldGFMZW1tYXMiLCJnZXRHZW5lcmF0b3JzIiwiZ2VuZXJhdG9ycyIsImdldENvbmplY3R1cmVzIiwiY29uamVjdHVyZXMiLCJnZXRDb21iaW5hdG9ycyIsImNvbWJpbmF0b3JzIiwiZ2V0VHlwZVByZWZpeGVzIiwidHlwZVByZWZpeGVzIiwiZ2V0Q29uc3RydWN0b3JzIiwiY29uc3RydWN0b3JzIiwiZ2V0TWV0YXRoZW9yZW1zIiwibWV0YXRoZW9yZW1zIiwiZ2V0TWV0YXZhcmlhYmxlcyIsIm1ldGF2YXJpYWJsZXMiLCJnZXRQcm9jZWR1cmVzIiwiZ2V0VmFyaWFibGVzIiwibmVzdGVkIiwidmFyaWFibGVzIiwiYWRkUHJvY2VkdXJlIiwicHJvY2VkdXJlIiwicHJvY2VkdXJlU3RyaW5nIiwiZ2V0U3RyaW5nIiwicHVzaCIsImdldEZpbGVQYXRoIiwiZGVidWciLCJmaW5kUHJvY2VkdXJlTm9kZSIsImxhYmVsIiwiZ2V0Tm9kZSIsImxhYmVsTm9kZSIsImRvY3VtZW50Tm9kZSIsInByb2NlZHVyZU5vZGVzIiwicHJvY2VkdXJlTm9kZSIsImZpbmQiLCJsYWJlbE1hdGNoZXMiLCJtYXRjaExhYmVsTm9kZSIsImZpbmRQcm9jZWR1cmVCeVByb2NlZHVyZU5hbWUiLCJwcm9jZWR1cmVOYW1lIiwicHJvY2VkdXJlQ29tcGFyZXNUb1Byb2NlZHVyZU5hbWUiLCJjb21wYXJlUHJvY2VkdXJlTmFtZSIsImlzUHJvY2VkdXJlUHJlc2VudEJ5UHJvY2VkdXJlTmFtZSIsInByb2NlZHVyZVByZXNlbnQiLCJjbGVhciIsImNvbXBsZXRlIiwiaW5pdGlhbGlzZSIsImdldEpTT04iLCJmaWxlQ29udGV4dCIsInByb2NlZHVyZXNGcm9tSlNPTiIsInZlcmlmeUZpbGUiLCJmb3J3YXJkIiwiYmFjayIsImlzb2xhdGUiLCJmaWxlTm9kZSIsInRvSlNPTiIsInByb2NlZHVyZXNKU09OIiwicHJvY2VkdXJlc1RvUHJvY2VkdXJlc0pTT04iLCJnZXRGaWxlQ29udGVudCIsImZyb21GaWxlIiwiZmlsZSIsImZ1cnRsZUxleGVyIiwiZnVydGxlUGFyc2VyIiwiZnVydGxlRmlsZUNvbnRleHQiLCJmcm9tSlNPTiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBY0E7OztlQUFxQkE7OztnQ0FaTzs0QkFDRzt5QkFFUDt3QkFDRzt3QkFDZTtzQkFDcUI7QUFFL0QsTUFBTSxFQUFFQyxVQUFVLEVBQUUsR0FBR0MsMEJBQWM7QUFFckMsTUFBTUMsc0JBQXNCRixXQUFXO0FBRXhCLE1BQU1ELDBCQUEwQkksMkJBQVc7SUFDeEQsWUFBWUMsT0FBTyxFQUFFQyxXQUFXLEVBQUVDLFFBQVEsRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLElBQUksRUFBRUMsS0FBSyxFQUFFQyxNQUFNLEVBQUVDLFVBQVUsQ0FB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
|
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250ZXh0L2ZpbGUvZnVydGxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBGaWxlQ29udGV4dCB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcbmltcG9ydCB7IHF1ZXJ5VXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLXF1ZXJ5XCI7XG5cbmltcG9ydCB7IGlzb2xhdGUgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL2NvbnRleHRcIjtcbmltcG9ydCB7IHZlcmlmeUZpbGUgfSBmcm9tIFwiLi4vLi4vcHJvY2Vzcy92ZXJpZnlcIjtcbmltcG9ydCB7IGZ1cnRsZUxleGVyLCBmdXJ0bGVQYXJzZXIgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL2Z1cnRsZVwiO1xuaW1wb3J0IHsgcHJvY2VkdXJlc0Zyb21KU09OLCBwcm9jZWR1cmVzVG9Qcm9jZWR1cmVzSlNPTiB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvanNvblwiO1xuXG5jb25zdCB7IG5vZGVzUXVlcnkgfSA9IHF1ZXJ5VXRpbGl0aWVzO1xuXG5jb25zdCBwcm9jZWR1cmVOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9kb2N1bWVudC9wcm9jZWR1cmVcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEZ1cnRsZUZpbGVDb250ZXh0IGV4dGVuZHMgRmlsZUNvbnRleHQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBmaWxlQ29udGVudCwgZmlsZVBhdGgsIHRva2Vucywgbm9kZSwganNvbiwgbGV4ZXIsIHBhcnNlciwgcHJvY2VkdXJlcykge1xuICAgIHN1cGVyKGNvbnRleHQsIGZpbGVDb250ZW50LCBmaWxlUGF0aCwgdG9rZW5zLCBub2RlLCBqc29uKTtcblxuICAgIHRoaXMubGV4ZXIgPSBsZXhlcjtcbiAgICB0aGlzLnBhcnNlciA9IHBhcnNlcjtcbiAgICB0aGlzLnByb2NlZHVyZXMgPSBwcm9jZWR1cmVzO1xuICB9XG5cbiAgZ2V0TGV4ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMubGV4ZXI7XG4gIH1cblxuICBnZXRQYXJzZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyc2VyO1xuICB9XG5cbiAgZ2V0TGFiZWxzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGxhYmVscyA9IFtdO1xuXG4gICAgcmV0dXJuIGxhYmVscztcbiAgfVxuXG4gIGdldFR5cGVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHR5cGVzID0gW107XG5cbiAgICByZXR1cm4gdHlwZXM7XG4gIH1cblxuICBnZXRSdWxlcyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBydWxlcyA9IFtdXG5cbiAgICByZXR1cm4gcnVsZXM7XG4gIH1cblxuICBnZXRBeGlvbXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgYXhpb21zID0gW107XG5cbiAgICByZXR1cm4gYXhpb21zO1xuICB9XG5cbiAgZ2V0TGVtbWFzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGxlbW1hcyA9IFtdO1xuXG4gICAgcmV0dXJuIGxlbW1hcztcbiAgfVxuXG4gIGdldFRoZW9yZW1zKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHRoZW9yZW1zID0gW107XG5cbiAgICByZXR1cm4gdGhlb3JlbXM7XG4gIH1cblxuICBnZXRNZXRhTGVtbWFzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IG1ldGFMZW1tYXMgPSBbXTtcblxuICAgIHJldHVybiBtZXRhTGVtbWFzO1xuICB9XG5cbiAgZ2V0R2VuZXJhdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBnZW5lcmF0b3JzID0gW107XG5cbiAgICByZXR1cm4gZ2VuZXJhdG9ycztcbiAgfVxuXG4gIGdldENvbmplY3R1cmVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGNvbmplY3R1cmVzID0gW107XG5cbiAgICByZXR1cm4gY29uamVjdHVyZXM7XG4gIH1cblxuICBnZXRDb21iaW5hdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBjb21iaW5hdG9ycyA9IFtdO1xuXG4gICAgcmV0dXJuIGNvbWJpbmF0b3JzO1xuICB9XG5cbiAgZ2V0VHlwZVByZWZpeGVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHR5cGVQcmVmaXhlcyA9IFtdO1xuXG4gICAgcmV0dXJuIHR5cGVQcmVmaXhlcztcbiAgfVxuXG4gIGdldENvbnN0cnVjdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBjb25zdHJ1Y3RvcnMgPSBbXTtcblxuICAgIHJldHVybiBjb25zdHJ1Y3RvcnM7XG4gIH1cblxuICBnZXRNZXRhdGhlb3JlbXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgbWV0YXRoZW9yZW1zID0gW107XG5cbiAgICByZXR1cm4gbWV0YXRoZW9yZW1zO1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlcyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBtZXRhdmFyaWFibGVzID0gW107XG5cbiAgICByZXR1cm4gbWV0YXZhcmlhYmxlcztcbiAgfVxuXG4gIGdldFByb2NlZHVyZXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgcHJvY2VkdXJlcyA9IGluY2x1ZGVSZWxlYXNlID9cbiAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRleHQuZ2V0UHJvY2VkdXJlcygpIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucHJvY2VkdXJlcztcblxuICAgIHJldHVybiBwcm9jZWR1cmVzO1xuICB9XG5cbiAgZ2V0VmFyaWFibGVzKG5lc3RlZCA9IHRydWUpIHtcbiAgICBjb25zdCB2YXJpYWJsZXMgPSBbXTtcblxuICAgIHJldHVybiB2YXJpYWJsZXM7XG4gIH1cblxuICBhZGRQcm9jZWR1cmUocHJvY2VkdXJlKSB7XG4gICAgY29uc3QgcHJvY2VkdXJlU3RyaW5nID0gcHJvY2VkdXJlLmdldFN0cmluZygpO1xuXG4gICAgdGhpcy5wcm9jZWR1cmVzLnB1c2gocHJvY2VkdXJlKTtcblxuICAgIGNvbnN0IGZpbGVQYXRoID0gdGhpcy5nZXRGaWxlUGF0aCgpO1xuXG4gICAgdGhpcy5kZWJ1ZyhgQWRkZWQgdGhlICcke3Byb2NlZHVyZVN0cmluZ30nIGZ1bmN0aW9uIHRvIHRoZSAnJHtmaWxlUGF0aH0nIGZpbGUgY29udGV4dC5gKTtcbiAgfVxuXG4gIGZpbmRQcm9jZWR1cmVOb2RlKGxhYmVsKSB7XG4gICAgY29uc3Qgbm9kZSA9IHRoaXMuZ2V0Tm9kZSgpLFxuICAgICAgICAgIGxhYmVsTm9kZSA9IGxhYmVsLmdldE5vZGUoKSxcbiAgICAgICAgICBkb2N1bWVudE5vZGUgPSBub2RlLCAgLy8vXG4gICAgICAgICAgcHJvY2VkdXJlTm9kZXMgPSBwcm9jZWR1cmVOb2Rlc1F1ZXJ5KGRvY3VtZW50Tm9kZSksXG4gICAgICAgICAgcHJvY2VkdXJlTm9kZSA9IHByb2NlZHVyZU5vZGVzLmZpbmQoKHByb2NlZHVyZU5vZGUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGxhYmVsTWF0Y2hlcyA9IHByb2NlZHVyZU5vZGUubWF0Y2hMYWJlbE5vZGUobGFiZWxOb2RlKTtcblxuICAgICAgICAgICAgaWYgKGxhYmVsTWF0Y2hlcykge1xuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIHByb2NlZHVyZU5vZGU7XG4gIH1cblxuICBmaW5kUHJvY2VkdXJlQnlQcm9jZWR1cmVOYW1lKHByb2NlZHVyZU5hbWUpIHtcbiAgICBjb25zdCBwcm9jZWR1cmVzID0gdGhpcy5nZXRQcm9jZWR1cmVzKCksXG4gICAgICAgICAgcHJvY2VkdXJlID0gcHJvY2VkdXJlcy5maW5kKChwcm9jZWR1cmUpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHByb2NlZHVyZUNvbXBhcmVzVG9Qcm9jZWR1cmVOYW1lID0gcHJvY2VkdXJlLmNvbXBhcmVQcm9jZWR1cmVOYW1lKHByb2NlZHVyZU5hbWUpO1xuXG4gICAgICAgICAgICBpZiAocHJvY2VkdXJlQ29tcGFyZXNUb1Byb2NlZHVyZU5hbWUpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSkgfHwgbnVsbDtcblxuICAgIHJldHVybiBwcm9jZWR1cmU7XG4gIH1cblxuICBpc1Byb2NlZHVyZVByZXNlbnRCeVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSkge1xuICAgIGNvbnN0IHByb2NlZHVyZSA9IHRoaXMuZmluZFByb2NlZHVyZUJ5UHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKSxcbiAgICAgICAgICBwcm9jZWR1cmVQcmVzZW50ID0gKHByb2NlZHVyZSAhPT0gbnVsbCk7XG5cbiAgICByZXR1cm4gcHJvY2VkdXJlUHJlc2VudDtcbiAgfVxuXG4gIGNvbXBhcmVSZWxlYXNlTmFtZShyZWxlYXNlTmFtZSkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmNvbXBhcmVSZWxlYXNlTmFtZShyZWxlYXNlTmFtZSk7IH1cblxuICBjbGVhcigpIHtcbiAgICB0aGlzLnByb2NlZHVyZXMgPSBbXTtcbiAgfVxuXG4gIGNvbXBsZXRlKCkge1xuICAgIC8vL1xuICB9XG5cbiAgaW5pdGlhbGlzZSgpIHtcbiAgICBzdXBlci5pbml0aWFsaXNlKCk7IC8vL1xuXG4gICAgY29uc3QganNvbiA9IHRoaXMuZ2V0SlNPTigpO1xuXG4gICAgaWYgKGpzb24gIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IGZpbGVDb250ZXh0ID0gdGhpczsgLy8vXG5cbiAgICAgIHRoaXMucHJvY2VkdXJlcyA9IHByb2NlZHVyZXNGcm9tSlNPTihqc29uLCBmaWxlQ29udGV4dCk7XG4gICAgfVxuICB9XG5cbiAgdmVyaWZ5RmlsZShmb3J3YXJkLCBiYWNrKSB7XG4gICAgcmV0dXJuIGlzb2xhdGUoKGZvcndhcmQsIGJhY2spID0+IHtcbiAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLmdldE5vZGUoKSxcbiAgICAgICAgICAgIGNvbnRleHQgPSB0aGlzLCAvLy9cbiAgICAgICAgICAgIGZpbGVOb2RlID0gbm9kZTsgIC8vL1xuXG4gICAgICByZXR1cm4gdmVyaWZ5RmlsZShmaWxlTm9kZSwgY29udGV4dCwgZm9yd2FyZCwgYmFjayk7XG4gICAgfSwgZm9yd2FyZCwgYmFjayk7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgbGV0IGpzb247XG5cbiAgICBjb25zdCBmaWxlUGF0aCA9IHRoaXMuZ2V0RmlsZVBhdGgoKSxcbiAgICAgICAgICBmaWxlQ29udGVudCA9IHRoaXMuZ2V0RmlsZUNvbnRlbnQoKSxcbiAgICAgICAgICBwcm9jZWR1cmVzSlNPTiA9IHByb2NlZHVyZXNUb1Byb2NlZHVyZXNKU09OKHRoaXMucHJvY2VkdXJlcyksXG4gICAgICAgICAgcHJvY2VkdXJlcyA9IHByb2NlZHVyZXNKU09OOyAgLy8vXG5cbiAgICBqc29uID0ge1xuICAgICAgZmlsZVBhdGgsXG4gICAgICBmaWxlQ29udGVudCxcbiAgICAgIHByb2NlZHVyZXNcbiAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgZnJvbUZpbGUoZmlsZSwgY29udGV4dCkge1xuICAgIGNvbnN0IGxleGVyID0gZnVydGxlTGV4ZXIsICAvLy9cbiAgICAgICAgICBwYXJzZXIgPSBmdXJ0bGVQYXJzZXIsICAvLy9cbiAgICAgICAgICBwcm9jZWR1cmVzID0gW10sXG4gICAgICAgICAgZnVydGxlRmlsZUNvbnRleHQgPSBGaWxlQ29udGV4dC5mcm9tRmlsZShGdXJ0bGVGaWxlQ29udGV4dCwgZmlsZSwgbGV4ZXIsIHBhcnNlciwgcHJvY2VkdXJlcywgY29udGV4dCk7XG5cbiAgICByZXR1cm4gZnVydGxlRmlsZUNvbnRleHQ7XG4gIH1cblxuICBzdGF0aWMgZnJvbUpTT04oanNvbiwgY29udGV4dCkge1xuICAgIGNvbnN0IGxleGVyID0gZnVydGxlTGV4ZXIsICAvLy9cbiAgICAgICAgICBwYXJzZXIgPSBmdXJ0bGVQYXJzZXIsICAvLy9cbiAgICAgICAgICBwcm9jZWR1cmVzID0gbnVsbCxcbiAgICAgICAgICBmdXJ0bGVGaWxlQ29udGV4dCA9IEZpbGVDb250ZXh0LmZyb21KU09OKEZ1cnRsZUZpbGVDb250ZXh0LCBqc29uLCBsZXhlciwgcGFyc2VyLCBwcm9jZWR1cmVzLCBjb250ZXh0KTtcblxuICAgIHJldHVybiBmdXJ0bGVGaWxlQ29udGV4dDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIkZ1cnRsZUZpbGVDb250ZXh0Iiwibm9kZXNRdWVyeSIsInF1ZXJ5VXRpbGl0aWVzIiwicHJvY2VkdXJlTm9kZXNRdWVyeSIsIkZpbGVDb250ZXh0IiwiY29udGV4dCIsImZpbGVDb250ZW50IiwiZmlsZVBhdGgiLCJ0b2tlbnMiLCJub2RlIiwianNvbiIsImxleGVyIiwicGFyc2VyIiwicHJvY2VkdXJlcyIsImdldExleGVyIiwiZ2V0UGFyc2VyIiwiZ2V0TGFiZWxzIiwiaW5jbHVkZVJlbGVhc2UiLCJsYWJlbHMiLCJnZXRUeXBlcyIsInR5cGVzIiwiZ2V0UnVsZXMiLCJydWxlcyIsImdldEF4aW9tcyIsImF4aW9tcyIsImdldExlbW1hcyIsImxlbW1hcyIsImdldFRoZW9yZW1zIiwidGhlb3JlbXMiLCJnZXRNZXRhTGVtbWFzIiwibWV0YUxlbW1hcyIsImdldEdlbmVyYXRvcnMiLCJnZW5lcmF0b3JzIiwiZ2V0Q29uamVjdHVyZXMiLCJjb25qZWN0dXJlcyIsImdldENvbWJpbmF0b3JzIiwiY29tYmluYXRvcnMiLCJnZXRUeXBlUHJlZml4ZXMiLCJ0eXBlUHJlZml4ZXMiLCJnZXRDb25zdHJ1Y3RvcnMiLCJjb25zdHJ1Y3RvcnMiLCJnZXRNZXRhdGhlb3JlbXMiLCJtZXRhdGhlb3JlbXMiLCJnZXRNZXRhdmFyaWFibGVzIiwibWV0YXZhcmlhYmxlcyIsImdldFByb2NlZHVyZXMiLCJnZXRWYXJpYWJsZXMiLCJuZXN0ZWQiLCJ2YXJpYWJsZXMiLCJhZGRQcm9jZWR1cmUiLCJwcm9jZWR1cmUiLCJwcm9jZWR1cmVTdHJpbmciLCJnZXRTdHJpbmciLCJwdXNoIiwiZ2V0RmlsZVBhdGgiLCJkZWJ1ZyIsImZpbmRQcm9jZWR1cmVOb2RlIiwibGFiZWwiLCJnZXROb2RlIiwibGFiZWxOb2RlIiwiZG9jdW1lbnROb2RlIiwicHJvY2VkdXJlTm9kZXMiLCJwcm9jZWR1cmVOb2RlIiwiZmluZCIsImxhYmVsTWF0Y2hlcyIsIm1hdGNoTGFiZWxOb2RlIiwiZmluZFByb2NlZHVyZUJ5UHJvY2VkdXJlTmFtZSIsInByb2NlZHVyZU5hbWUiLCJwcm9jZWR1cmVDb21wYXJlc1RvUHJvY2VkdXJlTmFtZSIsImNvbXBhcmVQcm9jZWR1cmVOYW1lIiwiaXNQcm9jZWR1cmVQcmVzZW50QnlQcm9jZWR1cmVOYW1lIiwicHJvY2VkdXJlUHJlc2VudCIsImNvbXBhcmVSZWxlYXNlTmFtZSIsInJlbGVhc2VOYW1lIiwiY2xlYXIiLCJjb21wbGV0ZSIsImluaXRpYWxpc2UiLCJnZXRKU09OIiwiZmlsZUNvbnRleHQiLCJwcm9jZWR1cmVzRnJvbUpTT04iLCJ2ZXJpZnlGaWxlIiwiZm9yd2FyZCIsImJhY2siLCJpc29sYXRlIiwiZmlsZU5vZGUiLCJ0b0pTT04iLCJnZXRGaWxlQ29udGVudCIsInByb2NlZHVyZXNKU09OIiwicHJvY2VkdXJlc1RvUHJvY2VkdXJlc0pTT04iLCJmcm9tRmlsZSIsImZpbGUiLCJmdXJ0bGVMZXhlciIsImZ1cnRsZVBhcnNlciIsImZ1cnRsZUZpbGVDb250ZXh0IiwiZnJvbUpTT04iXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWNBOzs7ZUFBcUJBOzs7Z0NBWk87NEJBQ0c7eUJBRVA7d0JBQ0c7d0JBQ2U7c0JBQ3FCO0FBRS9ELE1BQU0sRUFBRUMsVUFBVSxFQUFFLEdBQUdDLDBCQUFjO0FBRXJDLE1BQU1DLHNCQUFzQkYsV0FBVztBQUV4QixNQUFNRCwwQkFB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
|
|
@@ -0,0 +1,58 @@
|
|
|
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 _default;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _occamlanguages = require("occam-languages");
|
|
12
|
+
const _elements = require("../elements");
|
|
13
|
+
const _instantiate = require("../process/instantiate");
|
|
14
|
+
const _json = require("../utilities/json");
|
|
15
|
+
const _default = (0, _elements.define)(class ImportBinding extends _occamlanguages.Element {
|
|
16
|
+
constructor(context, string, node, breakPoint, label, reference){
|
|
17
|
+
super(context, string, node, breakPoint);
|
|
18
|
+
this.label = label;
|
|
19
|
+
this.reference = reference;
|
|
20
|
+
}
|
|
21
|
+
getLabel() {
|
|
22
|
+
return this.label;
|
|
23
|
+
}
|
|
24
|
+
getReference() {
|
|
25
|
+
return this.reference;
|
|
26
|
+
}
|
|
27
|
+
getProcedureName() {
|
|
28
|
+
const referenceName = this.reference.getName(), procedureName = referenceName; ///
|
|
29
|
+
return procedureName;
|
|
30
|
+
}
|
|
31
|
+
verify(releaseName, context, forward, back) {
|
|
32
|
+
const importBindingString = this.getString(); ///
|
|
33
|
+
context.trace(`Verifying the '${importBindingString}' import binding...`);
|
|
34
|
+
const procedureName = this.getProcedureName(), procedure = context.findProcedureByProcedureName(procedureName);
|
|
35
|
+
if (procedure === null) {
|
|
36
|
+
context.trace(`The '${procedureName}' procedure is not present.`);
|
|
37
|
+
return back();
|
|
38
|
+
}
|
|
39
|
+
const releaseNameCompares = procedure.compareReleaseName(releaseName);
|
|
40
|
+
}
|
|
41
|
+
toJSON() {
|
|
42
|
+
let json;
|
|
43
|
+
const string = this.getString(), labelJSON = (0, _json.labelToLabelJSON)(this.label), referenceJJSON = (0, _json.referenceToReferenceJSON)(this.reference), label = labelJSON, reference = referenceJJSON; ///
|
|
44
|
+
json = {
|
|
45
|
+
string,
|
|
46
|
+
label,
|
|
47
|
+
reference
|
|
48
|
+
};
|
|
49
|
+
return json;
|
|
50
|
+
}
|
|
51
|
+
static name = "ImportBinding";
|
|
52
|
+
static fromJSON(json, context) {
|
|
53
|
+
const { string } = json, breakPoint = null, importBindingNode = (0, _instantiate.instantiateImportBinding)(string, context), label = (0, _json.labelFromJSON)(json, context), reference = (0, _json.referenceFromJSON)(json, context), node = importBindingNode, importBinding = new ImportBinding(context, string, node, breakPoint, label, reference);
|
|
54
|
+
return importBinding;
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L2ltcG9ydEJpbmRpbmcuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgaW5zdGFudGlhdGVJbXBvcnRCaW5kaW5nIH0gZnJvbSBcIi4uL3Byb2Nlc3MvaW5zdGFudGlhdGVcIjtcbmltcG9ydCB7IGxhYmVsRnJvbUpTT04sIGxhYmVsVG9MYWJlbEpTT04sIHJlZmVyZW5jZUZyb21KU09OLCByZWZlcmVuY2VUb1JlZmVyZW5jZUpTT04gfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2pzb25cIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIEltcG9ydEJpbmRpbmcgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBsYWJlbCwgcmVmZXJlbmNlKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMubGFiZWwgPSBsYWJlbDtcbiAgICB0aGlzLnJlZmVyZW5jZSA9IHJlZmVyZW5jZTtcbiAgfVxuXG4gIGdldExhYmVsKCkge1xuICAgIHJldHVybiB0aGlzLmxhYmVsO1xuICB9XG5cbiAgZ2V0UmVmZXJlbmNlKCkge1xuICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZTtcbiAgfVxuXG4gIGdldFByb2NlZHVyZU5hbWUoKSB7XG4gICAgY29uc3QgcmVmZXJlbmNlTmFtZSA9IHRoaXMucmVmZXJlbmNlLmdldE5hbWUoKSxcbiAgICAgICAgICBwcm9jZWR1cmVOYW1lID0gcmVmZXJlbmNlTmFtZTsgIC8vL1xuXG4gICAgcmV0dXJuIHByb2NlZHVyZU5hbWU7XG4gIH1cblxuICB2ZXJpZnkocmVsZWFzZU5hbWUsIGNvbnRleHQsIGZvcndhcmQsIGJhY2spIHtcbiAgICBjb25zdCBpbXBvcnRCaW5kaW5nU3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTsgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2ltcG9ydEJpbmRpbmdTdHJpbmd9JyBpbXBvcnQgYmluZGluZy4uLmApO1xuXG4gICAgY29uc3QgcHJvY2VkdXJlTmFtZSA9IHRoaXMuZ2V0UHJvY2VkdXJlTmFtZSgpLFxuICAgICAgICAgIHByb2NlZHVyZSA9IGNvbnRleHQuZmluZFByb2NlZHVyZUJ5UHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKTtcblxuICAgIGlmIChwcm9jZWR1cmUgPT09IG51bGwpIHtcbiAgICAgIGNvbnRleHQudHJhY2UoYFRoZSAnJHtwcm9jZWR1cmVOYW1lfScgcHJvY2VkdXJlIGlzIG5vdCBwcmVzZW50LmApO1xuXG4gICAgICByZXR1cm4gYmFjaygpO1xuICAgIH1cblxuICAgIGNvbnN0IHJlbGVhc2VOYW1lQ29tcGFyZXMgPSBwcm9jZWR1cmUuY29tcGFyZVJlbGVhc2VOYW1lKHJlbGVhc2VOYW1lKTtcblxuICB9XG5cbiAgdG9KU09OKCkge1xuICAgIGxldCBqc29uO1xuXG4gICAgY29uc3Qgc3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKSxcbiAgICAgICAgICBsYWJlbEpTT04gPSBsYWJlbFRvTGFiZWxKU09OKHRoaXMubGFiZWwpLFxuICAgICAgICAgIHJlZmVyZW5jZUpKU09OID0gcmVmZXJlbmNlVG9SZWZlcmVuY2VKU09OKHRoaXMucmVmZXJlbmNlKSxcbiAgICAgICAgICBsYWJlbCA9IGxhYmVsSlNPTiwgIC8vL1xuICAgICAgICAgIHJlZmVyZW5jZSA9IHJlZmVyZW5jZUpKU09OOyAgLy8vXG5cbiAgICBqc29uID0ge1xuICAgICAgc3RyaW5nLFxuICAgICAgbGFiZWwsXG4gICAgICByZWZlcmVuY2VcbiAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiSW1wb3J0QmluZGluZ1wiO1xuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uLCBjb250ZXh0KSB7XG4gICAgY29uc3QgeyBzdHJpbmcgfSA9IGpzb24sXG4gICAgICAgICAgYnJlYWtQb2ludCA9IG51bGwsXG4gICAgICAgICAgaW1wb3J0QmluZGluZ05vZGUgPSBpbnN0YW50aWF0ZUltcG9ydEJpbmRpbmcoc3RyaW5nLCBjb250ZXh0KSxcbiAgICAgICAgICBsYWJlbCA9IGxhYmVsRnJvbUpTT04oanNvbiwgY29udGV4dCksXG4gICAgICAgICAgcmVmZXJlbmNlID0gcmVmZXJlbmNlRnJvbUpTT04oanNvbiwgY29udGV4dCksXG4gICAgICAgICAgbm9kZSA9IGltcG9ydEJpbmRpbmdOb2RlLCAvLy9cbiAgICAgICAgICBpbXBvcnRCaW5kaW5nID0gbmV3IEltcG9ydEJpbmRpbmcoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBsYWJlbCwgcmVmZXJlbmNlKTtcblxuICAgIHJldHVybiBpbXBvcnRCaW5kaW5nO1xuICB9XG59KTtcbiJdLCJuYW1lcyI6WyJkZWZpbmUiLCJJbXBvcnRCaW5kaW5nIiwiRWxlbWVudCIsImNvbnRleHQiLCJzdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsImxhYmVsIiwicmVmZXJlbmNlIiwiZ2V0TGFiZWwiLCJnZXRSZWZlcmVuY2UiLCJnZXRQcm9jZWR1cmVOYW1lIiwicmVmZXJlbmNlTmFtZSIsImdldE5hbWUiLCJwcm9jZWR1cmVOYW1lIiwidmVyaWZ5IiwicmVsZWFzZU5hbWUiLCJmb3J3YXJkIiwiYmFjayIsImltcG9ydEJpbmRpbmdTdHJpbmciLCJnZXRTdHJpbmciLCJ0cmFjZSIsInByb2NlZHVyZSIsImZpbmRQcm9jZWR1cmVCeVByb2NlZHVyZU5hbWUiLCJyZWxlYXNlTmFtZUNvbXBhcmVzIiwiY29tcGFyZVJlbGVhc2VOYW1lIiwidG9KU09OIiwianNvbiIsImxhYmVsSlNPTiIsImxhYmVsVG9MYWJlbEpTT04iLCJyZWZlcmVuY2VKSlNPTiIsInJlZmVyZW5jZVRvUmVmZXJlbmNlSlNPTiIsIm5hbWUiLCJmcm9tSlNPTiIsImltcG9ydEJpbmRpbmdOb2RlIiwiaW5zdGFudGlhdGVJbXBvcnRCaW5kaW5nIiwibGFiZWxGcm9tSlNPTiIsInJlZmVyZW5jZUZyb21KU09OIiwiaW1wb3J0QmluZGluZyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBUUE7OztlQUFBOzs7Z0NBTndCOzBCQUVEOzZCQUNrQjtzQkFDb0Q7TUFFN0YsV0FBZUEsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyxzQkFBc0JDLHVCQUFPO0lBQ3ZELFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsS0FBSyxFQUFFQyxTQUFTLENBQUU7UUFDL0QsS0FBSyxDQUFDTCxTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLEtBQUssR0FBR0E7UUFDYixJQUFJLENBQUNDLFNBQVMsR0FBR0E7SUFDbkI7SUFFQUMsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDRixLQUFLO0lBQ25CO0lBRUFHLGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQ0YsU0FBUztJQUN2QjtJQUVBRyxtQkFBbUI7UUFDakIsTUFBTUMsZ0JBQWdCLElBQUksQ0FBQ0osU0FBUyxDQUFDSyxPQUFPLElBQ3RDQyxnQkFBZ0JGLGVBQWdCLEdBQUc7UUFFekMsT0FBT0U7SUFDVDtJQUVBQyxPQUFPQyxXQUFXLEVBQUViLE9BQU8sRUFBRWMsT0FBTyxFQUFFQyxJQUFJLEVBQUU7UUFDMUMsTUFBTUMsc0JBQXNCLElBQUksQ0FBQ0MsU0FBUyxJQUFJLEdBQUc7UUFFakRqQixRQUFRa0IsS0FBSyxDQUFDLENBQUMsZUFBZSxFQUFFRixvQkFBb0IsbUJBQW1CLENBQUM7UUFFeEUsTUFBTUwsZ0JBQWdCLElBQUksQ0FBQ0gsZ0JBQWdCLElBQ3JDVyxZQUFZbkIsUUFBUW9CLDRCQUE0QixDQUFDVDtRQUV2RCxJQUFJUSxjQUFjLE1BQU07WUFDdEJuQixRQUFRa0IsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFUCxjQUFjLDJCQUEyQixDQUFDO1lBRWhFLE9BQU9JO1FBQ1Q7UUFFQSxNQUFNTSxzQkFBc0JGLFVBQVVHLGtCQUFrQixDQUFDVDtJQUUzRDtJQUVBVSxTQUFTO1FBQ1AsSUFBSUM7UUFFSixNQUFNdkIsU0FBUyxJQUFJLENBQUNnQixTQUFTLElBQ3ZCUSxZQUFZQyxJQUFBQSxzQkFBZ0IsRUFBQyxJQUFJLENBQUN0QixLQUFLLEdBQ3ZDdUIsaUJBQWlCQyxJQUFBQSw4QkFBd0IsRUFBQyxJQUFJLENBQUN2QixTQUFTLEdBQ3hERCxRQUFRcUIsV0FDUnBCLFlBQVlzQixnQkFBaUIsR0FBRztRQUV0Q0gsT0FBTztZQUNMdkI7WUFDQUc7WUFDQUM7UUFDRjtRQUVBLE9BQU9tQjtJQUNUO0lBRUEsT0FBT0ssT0FBTyxnQkFBZ0I7SUFFOUIsT0FBT0MsU0FBU04sSUFBSSxFQUFFeEIsT0FBTyxFQUFFO1FBQzdCLE1BQU0sRUFBRUMsTUFBTSxFQUFFLEdBQUd1QixNQUNickIsYUFBYSxNQUNiNEIsb0JBQW9CQyxJQUFBQSxxQ0FBd0IsRUFBQy9CLFFBQVFELFVBQ3JESSxRQUFRNkIsSUFBQUEsbUJBQWEsRUFBQ1QsTUFBTXhCLFVBQzVCSyxZQUFZNkIsSUFBQUEsdUJBQWlCLEVBQUNWLE1BQU14QixVQUNwQ0UsT0FBTzZCLG1CQUNQSSxnQkFBZ0IsSUFBSXJDLGNBQWNFLFNBQVNDLFFBQVFDLE1BQU1DLFlBQVlDLE9BQU9DO1FBRWxGLE9BQU84QjtJQUNUO0FBQ0YifQ==
|
|
@@ -0,0 +1,17 @@
|
|
|
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 _default;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _occamlanguages = require("occam-languages");
|
|
12
|
+
const _elements = require("../elements");
|
|
13
|
+
const _default = (0, _elements.define)(class ImportBindings extends _occamlanguages.Element {
|
|
14
|
+
static name = "ImportBindings";
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L2ltcG9ydEJpbmRpbmdzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIEltcG9ydEJpbmRpbmdzIGV4dGVuZHMgRWxlbWVudCB7XG4gIHN0YXRpYyBuYW1lID0gXCJJbXBvcnRCaW5kaW5nc1wiO1xufSk7XG4iXSwibmFtZXMiOlsiZGVmaW5lIiwiSW1wb3J0QmluZGluZ3MiLCJFbGVtZW50IiwibmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBTUE7OztlQUFBOzs7Z0NBSndCOzBCQUVEO01BRXZCLFdBQWVBLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsdUJBQXVCQyx1QkFBTztJQUN4RCxPQUFPQyxPQUFPLGlCQUFpQjtBQUNqQyJ9
|
|
@@ -0,0 +1,66 @@
|
|
|
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 _default;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _occamlanguages = require("occam-languages");
|
|
12
|
+
const _elements = require("../elements");
|
|
13
|
+
const _context = require("../utilities/context");
|
|
14
|
+
const _instantiate = require("../process/instantiate");
|
|
15
|
+
const _json = require("../utilities/json");
|
|
16
|
+
const { every } = _occamlanguages.continuationUtilities, { unbreakable } = _occamlanguages.breakPointUtilities;
|
|
17
|
+
const _default = (0, _elements.define)(class ImportStatement extends _occamlanguages.Element {
|
|
18
|
+
constructor(context, string, node, breakPoint, releaseName, importBindings){
|
|
19
|
+
super(context, string, node, breakPoint);
|
|
20
|
+
this.releaseName = releaseName;
|
|
21
|
+
this.importBindings = importBindings;
|
|
22
|
+
}
|
|
23
|
+
getReleaseName() {
|
|
24
|
+
return this.releaseName;
|
|
25
|
+
}
|
|
26
|
+
getImportBindings() {
|
|
27
|
+
return this.importBindings;
|
|
28
|
+
}
|
|
29
|
+
toJSON() {
|
|
30
|
+
let json;
|
|
31
|
+
const string = this.getString(), releaseNameJSON = (0, _json.releaseNameToReleaseNameJSON)(this.releaseName), importBindingsJSON = (0, _json.importBindingsToImportBindingsJSON)(this.importBindings), releaseName = releaseNameJSON, importBindings = importBindingsJSON; ///
|
|
32
|
+
json = {
|
|
33
|
+
string,
|
|
34
|
+
releaseName,
|
|
35
|
+
importBindings
|
|
36
|
+
};
|
|
37
|
+
return json;
|
|
38
|
+
}
|
|
39
|
+
verify = unbreakable(function(context, forward, back) {
|
|
40
|
+
const importStatementString = this.getString(); ///
|
|
41
|
+
context.trace(`Verifying the '${importStatementString}' import statement...`);
|
|
42
|
+
return every(this.importBindings, (importBinding, context, forward, back)=>{
|
|
43
|
+
return importBinding.verify(this.releaseName, context, forward, back);
|
|
44
|
+
}, context, (context, back)=>{
|
|
45
|
+
context.debug(`...verified the '${importStatementString}' import statement.`);
|
|
46
|
+
return forward(context, back);
|
|
47
|
+
}, (exception)=>{
|
|
48
|
+
if (exception) {
|
|
49
|
+
return back(exception);
|
|
50
|
+
}
|
|
51
|
+
context.trace(`Unable to verify the '${importStatementString}' import statement.`);
|
|
52
|
+
return back();
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
static name = "ImportStatement";
|
|
56
|
+
static fromJSON(json, context) {
|
|
57
|
+
return (0, _context.instantiate)((context)=>{
|
|
58
|
+
const { string } = json, importStatementNode = (0, _instantiate.instantiateImportStatement)(string, context), node = importStatementNode, breakPoint = null, releaseName = (0, _json.releaseNameFromJSON)(json, context), importBindings = (0, _json.importBindingsFromJSON)(json, context);
|
|
59
|
+
context = null;
|
|
60
|
+
const importStatement = new ImportStatement(context, string, node, breakPoint, releaseName, importBindings);
|
|
61
|
+
return importStatement;
|
|
62
|
+
}, context);
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L2ltcG9ydFN0YXRlbWVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCwgYnJlYWtQb2ludFV0aWxpdGllcywgY29udGludWF0aW9uVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IGluc3RhbnRpYXRlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9jb250ZXh0XCI7XG5pbXBvcnQgeyBpbnN0YW50aWF0ZUltcG9ydFN0YXRlbWVudCB9IGZyb20gXCIuLi9wcm9jZXNzL2luc3RhbnRpYXRlXCI7XG5pbXBvcnQgeyByZWxlYXNlTmFtZUZyb21KU09OLCBpbXBvcnRCaW5kaW5nc0Zyb21KU09OLCByZWxlYXNlTmFtZVRvUmVsZWFzZU5hbWVKU09OLCBpbXBvcnRCaW5kaW5nc1RvSW1wb3J0QmluZGluZ3NKU09OIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9qc29uXCI7XG5cbmNvbnN0IHsgZXZlcnkgfSA9IGNvbnRpbnVhdGlvblV0aWxpdGllcyxcbiAgICAgIHsgdW5icmVha2FibGUgfSA9IGJyZWFrUG9pbnRVdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBJbXBvcnRTdGF0ZW1lbnQgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCByZWxlYXNlTmFtZSwgaW1wb3J0QmluZGluZ3MpIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy5yZWxlYXNlTmFtZSA9IHJlbGVhc2VOYW1lO1xuICAgIHRoaXMuaW1wb3J0QmluZGluZ3MgPSBpbXBvcnRCaW5kaW5ncztcbiAgfVxuXG4gIGdldFJlbGVhc2VOYW1lKCkge1xuICAgIHJldHVybiB0aGlzLnJlbGVhc2VOYW1lO1xuICB9XG5cbiAgZ2V0SW1wb3J0QmluZGluZ3MoKSB7XG4gICAgcmV0dXJuIHRoaXMuaW1wb3J0QmluZGluZ3M7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgbGV0IGpzb247XG5cbiAgICBjb25zdCBzdHJpbmcgPSB0aGlzLmdldFN0cmluZygpLFxuICAgICAgICAgIHJlbGVhc2VOYW1lSlNPTiA9IHJlbGVhc2VOYW1lVG9SZWxlYXNlTmFtZUpTT04odGhpcy5yZWxlYXNlTmFtZSksXG4gICAgICAgICAgaW1wb3J0QmluZGluZ3NKU09OID0gaW1wb3J0QmluZGluZ3NUb0ltcG9ydEJpbmRpbmdzSlNPTih0aGlzLmltcG9ydEJpbmRpbmdzKSxcbiAgICAgICAgICByZWxlYXNlTmFtZSA9IHJlbGVhc2VOYW1lSlNPTiwgIC8vL1xuICAgICAgICAgIGltcG9ydEJpbmRpbmdzID0gaW1wb3J0QmluZGluZ3NKU09OOyAgLy8vXG5cbiAgICBqc29uID0ge1xuICAgICAgc3RyaW5nLFxuICAgICAgcmVsZWFzZU5hbWUsXG4gICAgICBpbXBvcnRCaW5kaW5nc1xuICAgIH07XG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHZlcmlmeSA9IHVuYnJlYWthYmxlKGZ1bmN0aW9uIChjb250ZXh0LCBmb3J3YXJkLCBiYWNrKSB7XG4gICAgY29uc3QgaW1wb3J0U3RhdGVtZW50U3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTsgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2ltcG9ydFN0YXRlbWVudFN0cmluZ30nIGltcG9ydCBzdGF0ZW1lbnQuLi5gKTtcblxuICAgIHJldHVybiBldmVyeSh0aGlzLmltcG9ydEJpbmRpbmdzLCAoaW1wb3J0QmluZGluZywgY29udGV4dCwgZm9yd2FyZCwgYmFjaykgPT4ge1xuICAgICAgcmV0dXJuIGltcG9ydEJpbmRpbmcudmVyaWZ5KHRoaXMucmVsZWFzZU5hbWUsIGNvbnRleHQsIGZvcndhcmQsIGJhY2spO1xuICAgIH0sIGNvbnRleHQsIChjb250ZXh0LCBiYWNrKSA9PiB7XG4gICAgICBjb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7aW1wb3J0U3RhdGVtZW50U3RyaW5nfScgaW1wb3J0IHN0YXRlbWVudC5gKTtcblxuICAgICAgcmV0dXJuIGZvcndhcmQoY29udGV4dCwgYmFjayk7XG4gICAgfSwgKGV4Y2VwdGlvbikgPT4ge1xuICAgICAgaWYgKGV4Y2VwdGlvbikge1xuICAgICAgICByZXR1cm4gYmFjayhleGNlcHRpb24pO1xuICAgICAgfVxuXG4gICAgICBjb250ZXh0LnRyYWNlKGBVbmFibGUgdG8gdmVyaWZ5IHRoZSAnJHtpbXBvcnRTdGF0ZW1lbnRTdHJpbmd9JyBpbXBvcnQgc3RhdGVtZW50LmApO1xuXG4gICAgICByZXR1cm4gYmFjaygpO1xuICAgIH0pO1xuICB9KTtcblxuICBzdGF0aWMgbmFtZSA9IFwiSW1wb3J0U3RhdGVtZW50XCI7XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24sIGNvbnRleHQpIHtcbiAgICByZXR1cm4gaW5zdGFudGlhdGUoKGNvbnRleHQpID0+IHtcbiAgICAgIGNvbnN0IHsgc3RyaW5nIH0gPSBqc29uLFxuICAgICAgICAgICAgaW1wb3J0U3RhdGVtZW50Tm9kZSA9IGluc3RhbnRpYXRlSW1wb3J0U3RhdGVtZW50KHN0cmluZywgY29udGV4dCksXG4gICAgICAgICAgICBub2RlID0gaW1wb3J0U3RhdGVtZW50Tm9kZSwgIC8vL1xuICAgICAgICAgICAgYnJlYWtQb2ludCA9IG51bGwsXG4gICAgICAgICAgICByZWxlYXNlTmFtZSA9IHJlbGVhc2VOYW1lRnJvbUpTT04oanNvbiwgY29udGV4dCksXG4gICAgICAgICAgICBpbXBvcnRCaW5kaW5ncyA9IGltcG9ydEJpbmRpbmdzRnJvbUpTT04oanNvbiwgY29udGV4dCk7XG5cbiAgICAgIGNvbnRleHQgPSBudWxsO1xuXG4gICAgICBjb25zdCBpbXBvcnRTdGF0ZW1lbnQgPSBuZXcgSW1wb3J0U3RhdGVtZW50KGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgcmVsZWFzZU5hbWUsIGltcG9ydEJpbmRpbmdzKTtcblxuICAgICAgcmV0dXJuIGltcG9ydFN0YXRlbWVudDtcbiAgICB9LCBjb250ZXh0KTtcbiAgfVxufSk7XG4iXSwibmFtZXMiOlsiZXZlcnkiLCJjb250aW51YXRpb25VdGlsaXRpZXMiLCJ1bmJyZWFrYWJsZSIsImJyZWFrUG9pbnRVdGlsaXRpZXMiLCJkZWZpbmUiLCJJbXBvcnRTdGF0ZW1lbnQiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwicmVsZWFzZU5hbWUiLCJpbXBvcnRCaW5kaW5ncyIsImdldFJlbGVhc2VOYW1lIiwiZ2V0SW1wb3J0QmluZGluZ3MiLCJ0b0pTT04iLCJqc29uIiwiZ2V0U3RyaW5nIiwicmVsZWFzZU5hbWVKU09OIiwicmVsZWFzZU5hbWVUb1JlbGVhc2VOYW1lSlNPTiIsImltcG9ydEJpbmRpbmdzSlNPTiIsImltcG9ydEJpbmRpbmdzVG9JbXBvcnRCaW5kaW5nc0pTT04iLCJ2ZXJpZnkiLCJmb3J3YXJkIiwiYmFjayIsImltcG9ydFN0YXRlbWVudFN0cmluZyIsInRyYWNlIiwiaW1wb3J0QmluZGluZyIsImRlYnVnIiwiZXhjZXB0aW9uIiwibmFtZSIsImZyb21KU09OIiwiaW5zdGFudGlhdGUiLCJpbXBvcnRTdGF0ZW1lbnROb2RlIiwiaW5zdGFudGlhdGVJbXBvcnRTdGF0ZW1lbnQiLCJyZWxlYXNlTmFtZUZyb21KU09OIiwiaW1wb3J0QmluZGluZ3NGcm9tSlNPTiIsImltcG9ydFN0YXRlbWVudCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBWUE7OztlQUFBOzs7Z0NBVm9FOzBCQUU3Qzt5QkFDSzs2QkFDZTtzQkFDbUY7QUFFOUgsTUFBTSxFQUFFQSxLQUFLLEVBQUUsR0FBR0MscUNBQXFCLEVBQ2pDLEVBQUVDLFdBQVcsRUFBRSxHQUFHQyxtQ0FBbUI7TUFFM0MsV0FBZUMsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyx3QkFBd0JDLHVCQUFPO0lBQ3pELFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsV0FBVyxFQUFFQyxjQUFjLENBQUU7UUFDMUUsS0FBSyxDQUFDTCxTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLFdBQVcsR0FBR0E7UUFDbkIsSUFBSSxDQUFDQyxjQUFjLEdBQUdBO0lBQ3hCO0lBRUFDLGlCQUFpQjtRQUNmLE9BQU8sSUFBSSxDQUFDRixXQUFXO0lBQ3pCO0lBRUFHLG9CQUFvQjtRQUNsQixPQUFPLElBQUksQ0FBQ0YsY0FBYztJQUM1QjtJQUVBRyxTQUFTO1FBQ1AsSUFBSUM7UUFFSixNQUFNUixTQUFTLElBQUksQ0FBQ1MsU0FBUyxJQUN2QkMsa0JBQWtCQyxJQUFBQSxrQ0FBNEIsRUFBQyxJQUFJLENBQUNSLFdBQVcsR0FDL0RTLHFCQUFxQkMsSUFBQUEsd0NBQWtDLEVBQUMsSUFBSSxDQUFDVCxjQUFjLEdBQzNFRCxjQUFjTyxpQkFDZE4saUJBQWlCUSxvQkFBcUIsR0FBRztRQUUvQ0osT0FBTztZQUNMUjtZQUNBRztZQUNBQztRQUNGO1FBRUEsT0FBT0k7SUFDVDtJQUVBTSxTQUFTcEIsWUFBWSxTQUFVSyxPQUFPLEVBQUVnQixPQUFPLEVBQUVDLElBQUk7UUFDbkQsTUFBTUMsd0JBQXdCLElBQUksQ0FBQ1IsU0FBUyxJQUFJLEdBQUc7UUFFbkRWLFFBQVFtQixLQUFLLENBQUMsQ0FBQyxlQUFlLEVBQUVELHNCQUFzQixxQkFBcUIsQ0FBQztRQUU1RSxPQUFPekIsTUFBTSxJQUFJLENBQUNZLGNBQWMsRUFBRSxDQUFDZSxlQUFlcEIsU0FBU2dCLFNBQVNDO1lBQ2xFLE9BQU9HLGNBQWNMLE1BQU0sQ0FBQyxJQUFJLENBQUNYLFdBQVcsRUFBRUosU0FBU2dCLFNBQVNDO1FBQ2xFLEdBQUdqQixTQUFTLENBQUNBLFNBQVNpQjtZQUNwQmpCLFFBQVFxQixLQUFLLENBQUMsQ0FBQyxpQkFBaUIsRUFBRUgsc0JBQXNCLG1CQUFtQixDQUFDO1lBRTVFLE9BQU9GLFFBQVFoQixTQUFTaUI7UUFDMUIsR0FBRyxDQUFDSztZQUNGLElBQUlBLFdBQVc7Z0JBQ2IsT0FBT0wsS0FBS0s7WUFDZDtZQUVBdEIsUUFBUW1CLEtBQUssQ0FBQyxDQUFDLHNCQUFzQixFQUFFRCxzQkFBc0IsbUJBQW1CLENBQUM7WUFFakYsT0FBT0Q7UUFDVDtJQUNGLEdBQUc7SUFFSCxPQUFPTSxPQUFPLGtCQUFrQjtJQUVoQyxPQUFPQyxTQUFTZixJQUFJLEVBQUVULE9BQU8sRUFBRTtRQUM3QixPQUFPeUIsSUFBQUEsb0JBQVcsRUFBQyxDQUFDekI7WUFDbEIsTUFBTSxFQUFFQyxNQUFNLEVBQUUsR0FBR1EsTUFDYmlCLHNCQUFzQkMsSUFBQUEsdUNBQTBCLEVBQUMxQixRQUFRRCxVQUN6REUsT0FBT3dCLHFCQUNQdkIsYUFBYSxNQUNiQyxjQUFjd0IsSUFBQUEseUJBQW1CLEVBQUNuQixNQUFNVCxVQUN4Q0ssaUJBQWlCd0IsSUFBQUEsNEJBQXNCLEVBQUNwQixNQUFNVDtZQUVwREEsVUFBVTtZQUVWLE1BQU04QixrQkFBa0IsSUFBSWhDLGdCQUFnQkUsU0FBU0MsUUFBUUMsTUFBTUMsWUFBWUMsYUFBYUM7WUFFNUYsT0FBT3lCO1FBQ1QsR0FBRzlCO0lBQ0w7QUFDRiJ9
|
package/lib/element/label.js
CHANGED
|
@@ -26,8 +26,9 @@ const _default = (0, _elements.define)(class Label extends _occamlanguages.Eleme
|
|
|
26
26
|
return procedureNameCompares;
|
|
27
27
|
}
|
|
28
28
|
toJSON() {
|
|
29
|
+
let json;
|
|
29
30
|
const string = this.getString();
|
|
30
|
-
|
|
31
|
+
json = {
|
|
31
32
|
string
|
|
32
33
|
};
|
|
33
34
|
return json;
|
|
@@ -43,4 +44,4 @@ const _default = (0, _elements.define)(class Label extends _occamlanguages.Eleme
|
|
|
43
44
|
}
|
|
44
45
|
});
|
|
45
46
|
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L2xhYmVsLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IGluc3RhbnRpYXRlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9jb250ZXh0XCI7XG5pbXBvcnQgeyBpbnN0YW50aWF0ZUxhYmVsIH0gZnJvbSBcIi4uL3Byb2Nlc3MvaW5zdGFudGlhdGVcIjtcbmltcG9ydCB7IG5hbWVGcm9tTGFiZWxOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9lbGVtZW50XCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBMYWJlbCBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIG5hbWUpIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgfVxuXG4gIGdldE5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMubmFtZTtcbiAgfVxuXG4gIGNvbXBhcmVQcm9jZWR1cmVOYW1lKHByb2NlZHVyZU5hbWUpIHtcbiAgICBjb25zdCBwcm9jZWR1cmVOYW1lQ29tcGFyZXMgPSAodGhpcy5uYW1lID09PSBwcm9jZWR1cmVOYW1lKTtcblxuICAgIHJldHVybiBwcm9jZWR1cmVOYW1lQ29tcGFyZXM7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgbGV0IGpzb247XG5cbiAgICBjb25zdCBzdHJpbmcgPSB0aGlzLmdldFN0cmluZygpO1xuXG4gICAganNvbiA9IHtcbiAgICAgIHN0cmluZ1xuICAgIH07XG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJMYWJlbFwiO1xuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uLCBjb250ZXh0KSB7XG4gICAgcmV0dXJuIGluc3RhbnRpYXRlKChjb250ZXh0KSA9PiB7XG4gICAgICBjb25zdCB7IHN0cmluZyB9ID0ganNvbixcbiAgICAgICAgICAgIGxhYmVsTm9kZSA9IGluc3RhbnRpYXRlTGFiZWwoc3RyaW5nLCBjb250ZXh0KSxcbiAgICAgICAgICAgIG5vZGUgPSBsYWJlbE5vZGUsICAvLy9cbiAgICAgICAgICAgIGJyZWFrUG9pbnQgPSBudWxsLFxuICAgICAgICAgICAgbmFtZSA9IG5hbWVGcm9tTGFiZWxOb2RlKGxhYmVsTm9kZSwgY29udGV4dCk7XG5cbiAgICAgIGNvbnRleHQgPSBudWxsO1xuXG4gICAgICBjb25zdCBsYWJlbCA9IG5ldyBMYWJlbChjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIG5hbWUpO1xuXG4gICAgICByZXR1cm4gbGFiZWw7XG4gICAgfSwgY29udGV4dCk7XG4gIH1cbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIkxhYmVsIiwiRWxlbWVudCIsImNvbnRleHQiLCJzdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsIm5hbWUiLCJnZXROYW1lIiwiY29tcGFyZVByb2NlZHVyZU5hbWUiLCJwcm9jZWR1cmVOYW1lIiwicHJvY2VkdXJlTmFtZUNvbXBhcmVzIiwidG9KU09OIiwianNvbiIsImdldFN0cmluZyIsImZyb21KU09OIiwiaW5zdGFudGlhdGUiLCJsYWJlbE5vZGUiLCJpbnN0YW50aWF0ZUxhYmVsIiwibmFtZUZyb21MYWJlbE5vZGUiLCJsYWJlbCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBU0E7OztlQUFBOzs7Z0NBUHdCOzBCQUVEO3lCQUNLOzZCQUNLO3lCQUNDO01BRWxDLFdBQWVBLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsY0FBY0MsdUJBQU87SUFDL0MsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxJQUFJLENBQUU7UUFDbkQsS0FBSyxDQUFDSixTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLElBQUksR0FBR0E7SUFDZDtJQUVBQyxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUNELElBQUk7SUFDbEI7SUFFQUUscUJBQXFCQyxhQUFhLEVBQUU7UUFDbEMsTUFBTUMsd0JBQXlCLElBQUksQ0FBQ0osSUFBSSxLQUFLRztRQUU3QyxPQUFPQztJQUNUO0lBRUFDLFNBQVM7UUFDUCxJQUFJQztRQUVKLE1BQU1ULFNBQVMsSUFBSSxDQUFDVSxTQUFTO1FBRTdCRCxPQUFPO1lBQ0xUO1FBQ0Y7UUFFQSxPQUFPUztJQUNUO0lBRUEsT0FBT04sT0FBTyxRQUFRO0lBRXRCLE9BQU9RLFNBQVNGLElBQUksRUFBRVYsT0FBTyxFQUFFO1FBQzdCLE9BQU9hLElBQUFBLG9CQUFXLEVBQUMsQ0FBQ2I7WUFDbEIsTUFBTSxFQUFFQyxNQUFNLEVBQUUsR0FBR1MsTUFDYkksWUFBWUMsSUFBQUEsNkJBQWdCLEVBQUNkLFFBQVFELFVBQ3JDRSxPQUFPWSxXQUNQWCxhQUFhLE1BQ2JDLE9BQU9ZLElBQUFBLDBCQUFpQixFQUFDRixXQUFXZDtZQUUxQ0EsVUFBVTtZQUVWLE1BQU1pQixRQUFRLElBQUluQixNQUFNRSxTQUFTQyxRQUFRQyxNQUFNQyxZQUFZQztZQUUzRCxPQUFPYTtRQUNULEdBQUdqQjtJQUNMO0FBQ0YifQ==
|
|
@@ -59,8 +59,9 @@ const _default = (0, _elements.define)(class Parameters extends _occamlanguages.
|
|
|
59
59
|
}, back);
|
|
60
60
|
}
|
|
61
61
|
toJSON() {
|
|
62
|
+
let json;
|
|
62
63
|
const string = this.getString();
|
|
63
|
-
|
|
64
|
+
json = {
|
|
64
65
|
string
|
|
65
66
|
};
|
|
66
67
|
return json;
|
|
@@ -76,4 +77,4 @@ const _default = (0, _elements.define)(class Parameters extends _occamlanguages.
|
|
|
76
77
|
}
|
|
77
78
|
});
|
|
78
79
|
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3BhcmFtZXRlcnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQsIGNvbnRpbnVhdGlvblV0aWxpdGllcyB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcblxuaW1wb3J0IEV4Y2VwdGlvbiBmcm9tIFwiLi4vZXhjZXB0aW9uXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgaW5zdGFudGlhdGUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2NvbnRleHRcIjtcbmltcG9ydCB7IGluc3RhbnRpYXRlUGFyYW1ldGVycyB9IGZyb20gXCIuLi9wcm9jZXNzL2luc3RhbnRpYXRlXCI7XG5pbXBvcnQgeyBwYXJhbWV0ZXJzQXJyYXlGcm9tUGFyYW1ldGVyc05vZGUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2VsZW1lbnRcIjtcblxuY29uc3QgeyBmb3JFYWNoIH0gPSBjb250aW51YXRpb25VdGlsaXRpZXNcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIFBhcmFtZXRlcnMgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBhcnJheSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLmFycmF5ID0gYXJyYXk7XG4gIH1cblxuICBnZXRBcnJheSgpIHtcbiAgICByZXR1cm4gdGhpcy5hcnJheTtcbiAgfVxuXG4gIGdldExlbmd0aCgpIHtcbiAgICBjb25zdCBsZW5ndGggPSB0aGlzLmFycmF5Lmxlbmd0aDtcblxuICAgIHJldHVybiBsZW5ndGg7XG4gIH1cblxuICBnZXRQYXJhbWV0ZXIoaW5kZXgpIHtcbiAgICBjb25zdCBwYXJhbWV0ZXIgPSB0aGlzLmFycmF5W2luZGV4XSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIHBhcmFtZXRlcjtcbiAgfVxuXG4gIGZvckVhY2hQYXJhbWV0ZXIoY2FsbGJhY2ssIGZvcndhcmQsIGJhY2spIHtcbiAgICByZXR1cm4gZm9yRWFjaCh0aGlzLmFycmF5LCBjYWxsYmFjaywgZm9yd2FyZCwgYmFjayk7XG4gIH1cblxuICBjb21wYXJlVmFsdWVzKHZhbHVlcywgY29udGV4dCwgZm9yd2FyZCwgYmFjaykge1xuICAgIGNvbnN0IHZhbHVlc1N0cmluZyA9IHZhbHVlcy5nZXRTdHJpbmcoKSxcbiAgICAgICAgICBwYXJhbWV0ZXJzU3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTsgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBDb21wYXJpbmcgdGhlICcke3ZhbHVlc1N0cmluZ30nIHZhbHVlcyBhZ2FpbnN0IHRoZSAnJHtwYXJhbWV0ZXJzU3RyaW5nfScgcGFyYW1ldGVycy4uLmApO1xuXG4gICAgY29uc3QgdmFsdWVzTGVuZ3RoID0gdmFsdWVzLmdldExlbmd0aCgpLFxuICAgICAgICAgIHBhcmFtZXRlcnNMZW5ndGggPSB0aGlzLmdldExlbmd0aCgpO1xuXG4gICAgaWYgKHZhbHVlc0xlbmd0aCAhPT0gcGFyYW1ldGVyc0xlbmd0aCkge1xuICAgICAgY29uc3QgbWVzc2FnZSA9IGBUaGUgJyR7dmFsdWVzU3RyaW5nfScgZXhwcmVzc2lvbnMgYW5kICcke3BhcmFtZXRlcnNTdHJpbmd9JyBwYXJhbWV0ZXJzIGFyZSBub3Qgb2YgdGhlIHNhbWUgbGVuZ3RoLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHJldHVybiBiYWNrKGV4Y2VwdGlvbik7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZm9yRWFjaFBhcmFtZXRlcigocGFyYW1ldGVyLCBmb3J3YXJkLCBiYWNrLCBpbmRleCkgPT4ge1xuICAgICAgaWYgKHBhcmFtZXRlciA9PT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gZm9yd2FyZChiYWNrKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgdmFsdWUgPSB2YWx1ZXMuZ2V0VmFsdWUoaW5kZXgpO1xuXG4gICAgICByZXR1cm4gcGFyYW1ldGVyLmNvbXBhcmVWYWx1ZSh2YWx1ZSwgY29udGV4dCwgZm9yd2FyZCwgYmFjayk7XG4gICAgfSwgKGJhY2spID0+
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3BhcmFtZXRlcnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQsIGNvbnRpbnVhdGlvblV0aWxpdGllcyB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcblxuaW1wb3J0IEV4Y2VwdGlvbiBmcm9tIFwiLi4vZXhjZXB0aW9uXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgaW5zdGFudGlhdGUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2NvbnRleHRcIjtcbmltcG9ydCB7IGluc3RhbnRpYXRlUGFyYW1ldGVycyB9IGZyb20gXCIuLi9wcm9jZXNzL2luc3RhbnRpYXRlXCI7XG5pbXBvcnQgeyBwYXJhbWV0ZXJzQXJyYXlGcm9tUGFyYW1ldGVyc05vZGUgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2VsZW1lbnRcIjtcblxuY29uc3QgeyBmb3JFYWNoIH0gPSBjb250aW51YXRpb25VdGlsaXRpZXNcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIFBhcmFtZXRlcnMgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBhcnJheSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLmFycmF5ID0gYXJyYXk7XG4gIH1cblxuICBnZXRBcnJheSgpIHtcbiAgICByZXR1cm4gdGhpcy5hcnJheTtcbiAgfVxuXG4gIGdldExlbmd0aCgpIHtcbiAgICBjb25zdCBsZW5ndGggPSB0aGlzLmFycmF5Lmxlbmd0aDtcblxuICAgIHJldHVybiBsZW5ndGg7XG4gIH1cblxuICBnZXRQYXJhbWV0ZXIoaW5kZXgpIHtcbiAgICBjb25zdCBwYXJhbWV0ZXIgPSB0aGlzLmFycmF5W2luZGV4XSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIHBhcmFtZXRlcjtcbiAgfVxuXG4gIGZvckVhY2hQYXJhbWV0ZXIoY2FsbGJhY2ssIGZvcndhcmQsIGJhY2spIHtcbiAgICByZXR1cm4gZm9yRWFjaCh0aGlzLmFycmF5LCBjYWxsYmFjaywgZm9yd2FyZCwgYmFjayk7XG4gIH1cblxuICBjb21wYXJlVmFsdWVzKHZhbHVlcywgY29udGV4dCwgZm9yd2FyZCwgYmFjaykge1xuICAgIGNvbnN0IHZhbHVlc1N0cmluZyA9IHZhbHVlcy5nZXRTdHJpbmcoKSxcbiAgICAgICAgICBwYXJhbWV0ZXJzU3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTsgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBDb21wYXJpbmcgdGhlICcke3ZhbHVlc1N0cmluZ30nIHZhbHVlcyBhZ2FpbnN0IHRoZSAnJHtwYXJhbWV0ZXJzU3RyaW5nfScgcGFyYW1ldGVycy4uLmApO1xuXG4gICAgY29uc3QgdmFsdWVzTGVuZ3RoID0gdmFsdWVzLmdldExlbmd0aCgpLFxuICAgICAgICAgIHBhcmFtZXRlcnNMZW5ndGggPSB0aGlzLmdldExlbmd0aCgpO1xuXG4gICAgaWYgKHZhbHVlc0xlbmd0aCAhPT0gcGFyYW1ldGVyc0xlbmd0aCkge1xuICAgICAgY29uc3QgbWVzc2FnZSA9IGBUaGUgJyR7dmFsdWVzU3RyaW5nfScgZXhwcmVzc2lvbnMgYW5kICcke3BhcmFtZXRlcnNTdHJpbmd9JyBwYXJhbWV0ZXJzIGFyZSBub3Qgb2YgdGhlIHNhbWUgbGVuZ3RoLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHJldHVybiBiYWNrKGV4Y2VwdGlvbik7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZm9yRWFjaFBhcmFtZXRlcigocGFyYW1ldGVyLCBmb3J3YXJkLCBiYWNrLCBpbmRleCkgPT4ge1xuICAgICAgaWYgKHBhcmFtZXRlciA9PT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gZm9yd2FyZChiYWNrKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgdmFsdWUgPSB2YWx1ZXMuZ2V0VmFsdWUoaW5kZXgpO1xuXG4gICAgICByZXR1cm4gcGFyYW1ldGVyLmNvbXBhcmVWYWx1ZSh2YWx1ZSwgY29udGV4dCwgZm9yd2FyZCwgYmFjayk7XG4gICAgfSwgKGJhY2spID0+IHtcbiAgICAgIGNvbnRleHQuZGVidWcoYC4uLmNvbXBhcmVkIHRoZSAnJHt2YWx1ZXNTdHJpbmd9JyB2YWx1ZXMgYWdhaW5zdCB0aGUgJyR7cGFyYW1ldGVyc1N0cmluZ30nIHBhcmFtZXRlcnMuYCk7XG5cbiAgICAgIHJldHVybiBmb3J3YXJkKGJhY2spO1xuICAgIH0sIGJhY2spO1xuICB9XG5cbiAgdG9KU09OKCkge1xuICAgIGxldCBqc29uO1xuXG4gICAgY29uc3Qgc3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTtcblxuICAgIGpzb24gPSB7XG4gICAgICBzdHJpbmdcbiAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiUGFyYW1ldGVyc1wiO1xuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uLCBjb250ZXh0KSB7XG4gICAgcmV0dXJuIGluc3RhbnRpYXRlKChjb250ZXh0KSA9PiB7XG4gICAgICBjb25zdCB7IHN0cmluZyB9ID0ganNvbixcbiAgICAgICAgICAgIHBhcmFtZXRlcnNOb2RlID0gaW5zdGFudGlhdGVQYXJhbWV0ZXJzKHN0cmluZywgY29udGV4dCksXG4gICAgICAgICAgICBub2RlID0gcGFyYW1ldGVyc05vZGUsICAvLy9cbiAgICAgICAgICAgIGJyZWFrUG9pbnQgPSBudWxsLFxuICAgICAgICAgICAgcGFyYW1ldGVyc0FycmF5ID0gcGFyYW1ldGVyc0FycmF5RnJvbVBhcmFtZXRlcnNOb2RlKHBhcmFtZXRlcnNOb2RlLCBjb250ZXh0KSxcbiAgICAgICAgICAgIGFycmF5ID0gcGFyYW1ldGVyc0FycmF5OyAvLy9cblxuICAgICAgY29udGV4dCA9IG51bGw7XG5cbiAgICAgIGNvbnN0IHBhcmFtZXRlcnMgPSBuZXcgUGFyYW1ldGVycyhjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIGFycmF5KTtcblxuICAgICAgcmV0dXJuIHBhcmFtZXRlcnM7XG4gICAgfSwgY29udGV4dCk7XG4gIH1cbn0pO1xuIl0sIm5hbWVzIjpbImZvckVhY2giLCJjb250aW51YXRpb25VdGlsaXRpZXMiLCJkZWZpbmUiLCJQYXJhbWV0ZXJzIiwiRWxlbWVudCIsImNvbnRleHQiLCJzdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsImFycmF5IiwiZ2V0QXJyYXkiLCJnZXRMZW5ndGgiLCJsZW5ndGgiLCJnZXRQYXJhbWV0ZXIiLCJpbmRleCIsInBhcmFtZXRlciIsImZvckVhY2hQYXJhbWV0ZXIiLCJjYWxsYmFjayIsImZvcndhcmQiLCJiYWNrIiwiY29tcGFyZVZhbHVlcyIsInZhbHVlcyIsInZhbHVlc1N0cmluZyIsImdldFN0cmluZyIsInBhcmFtZXRlcnNTdHJpbmciLCJ0cmFjZSIsInZhbHVlc0xlbmd0aCIsInBhcmFtZXRlcnNMZW5ndGgiLCJtZXNzYWdlIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJ2YWx1ZSIsImdldFZhbHVlIiwiY29tcGFyZVZhbHVlIiwiZGVidWciLCJ0b0pTT04iLCJqc29uIiwibmFtZSIsImZyb21KU09OIiwiaW5zdGFudGlhdGUiLCJwYXJhbWV0ZXJzTm9kZSIsImluc3RhbnRpYXRlUGFyYW1ldGVycyIsInBhcmFtZXRlcnNBcnJheSIsInBhcmFtZXRlcnNBcnJheUZyb21QYXJhbWV0ZXJzTm9kZSIsInBhcmFtZXRlcnMiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWFBOzs7ZUFBQTs7O2dDQVgrQztrRUFFekI7MEJBRUM7eUJBQ0s7NkJBQ1U7eUJBQ1k7Ozs7OztBQUVsRCxNQUFNLEVBQUVBLE9BQU8sRUFBRSxHQUFHQyxxQ0FBcUI7TUFFekMsV0FBZUMsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyxtQkFB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
|
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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
|
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,23 @@ 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
|
+
return (0, _context.instantiate)((context)=>{
|
|
39
|
+
const { string } = json, referencelNode = (0, _instantiate.instantiateReference)(string, context), node = referencelNode, breakPoint = null, name = (0, _element.nameFromReferenceNode)(referencelNode, context);
|
|
40
|
+
context = null;
|
|
41
|
+
const referencel = new Reference(context, string, node, breakPoint, name);
|
|
42
|
+
return referencel;
|
|
43
|
+
}, context);
|
|
44
|
+
}
|
|
26
45
|
});
|
|
27
46
|
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3JlZmVyZW5jZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcblxuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgeyBpbnN0YW50aWF0ZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvY29udGV4dFwiO1xuaW1wb3J0IHsgaW5zdGFudGlhdGVSZWZlcmVuY2UgfSBmcm9tIFwiLi4vcHJvY2Vzcy9pbnN0YW50aWF0ZVwiO1xuaW1wb3J0IHsgbmFtZUZyb21SZWZlcmVuY2VOb2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9lbGVtZW50XCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBSZWZlcmVuY2UgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBuYW1lKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gIH1cblxuICBnZXROYW1lKCkge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cblxuICBnZXRQcm9jZWR1cmVOYW1lKCkge1xuICAgIGNvbnN0IHByb2NlZHVyZU5hbWUgPSB0aGlzLm5hbWU7ICAvLy9cblxuICAgIHJldHVybiBwcm9jZWR1cmVOYW1lO1xuICB9XG5cbiAgdG9KU09OKCkge1xuICAgIGxldCBqc29uO1xuXG4gICAgY29uc3Qgc3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTtcblxuICAgIGpzb24gPSB7XG4gICAgICBzdHJpbmdcbiAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiUmVmZXJlbmNlXCI7XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24sIGNvbnRleHQpIHtcbiAgICByZXR1cm4gaW5zdGFudGlhdGUoKGNvbnRleHQpID0+IHtcbiAgICAgIGNvbnN0IHsgc3RyaW5nIH0gPSBqc29uLFxuICAgICAgICAgICAgcmVmZXJlbmNlbE5vZGUgPSBpbnN0YW50aWF0ZVJlZmVyZW5jZShzdHJpbmcsIGNvbnRleHQpLFxuICAgICAgICAgICAgbm9kZSA9IHJlZmVyZW5jZWxOb2RlLCAgLy8vXG4gICAgICAgICAgICBicmVha1BvaW50ID0gbnVsbCxcbiAgICAgICAgICAgIG5hbWUgPSBuYW1lRnJvbVJlZmVyZW5jZU5vZGUocmVmZXJlbmNlbE5vZGUsIGNvbnRleHQpO1xuXG4gICAgICBjb250ZXh0ID0gbnVsbDtcblxuICAgICAgY29uc3QgcmVmZXJlbmNlbCA9IG5ldyBSZWZlcmVuY2UoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBuYW1lKTtcblxuICAgICAgcmV0dXJuIHJlZmVyZW5jZWw7XG4gICAgfSwgY29udGV4dCk7XG4gIH1cbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIlJlZmVyZW5jZSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJuYW1lIiwiZ2V0TmFtZSIsImdldFByb2NlZHVyZU5hbWUiLCJwcm9jZWR1cmVOYW1lIiwidG9KU09OIiwianNvbiIsImdldFN0cmluZyIsImZyb21KU09OIiwiaW5zdGFudGlhdGUiLCJyZWZlcmVuY2VsTm9kZSIsImluc3RhbnRpYXRlUmVmZXJlbmNlIiwibmFtZUZyb21SZWZlcmVuY2VOb2RlIiwicmVmZXJlbmNlbCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBU0E7OztlQUFBOzs7Z0NBUHdCOzBCQUVEO3lCQUNLOzZCQUNTO3lCQUNDO01BRXRDLFdBQWVBLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsa0JBQWtCQyx1QkFBTztJQUNuRCxZQUFZQyxPQUFPLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxVQUFVLEVBQUVDLElBQUksQ0FBRTtRQUNuRCxLQUFLLENBQUNKLFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtJQUNkO0lBRUFDLFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQ0QsSUFBSTtJQUNsQjtJQUVBRSxtQkFBbUI7UUFDakIsTUFBTUMsZ0JBQWdCLElBQUksQ0FBQ0gsSUFBSSxFQUFHLEdBQUc7UUFFckMsT0FBT0c7SUFDVDtJQUVBQyxTQUFTO1FBQ1AsSUFBSUM7UUFFSixNQUFNUixTQUFTLElBQUksQ0FBQ1MsU0FBUztRQUU3QkQsT0FBTztZQUNMUjtRQUNGO1FBRUEsT0FBT1E7SUFDVDtJQUVBLE9BQU9MLE9BQU8sWUFBWTtJQUUxQixPQUFPTyxTQUFTRixJQUFJLEVBQUVULE9BQU8sRUFBRTtRQUM3QixPQUFPWSxJQUFBQSxvQkFBVyxFQUFDLENBQUNaO1lBQ2xCLE1BQU0sRUFBRUMsTUFBTSxFQUFFLEdBQUdRLE1BQ2JJLGlCQUFpQkMsSUFBQUEsaUNBQW9CLEVBQUNiLFFBQVFELFVBQzlDRSxPQUFPVyxnQkFDUFYsYUFBYSxNQUNiQyxPQUFPVyxJQUFBQSw4QkFBcUIsRUFBQ0YsZ0JBQWdCYjtZQUVuREEsVUFBVTtZQUVWLE1BQU1nQixhQUFhLElBQUlsQixVQUFVRSxTQUFTQyxRQUFRQyxNQUFNQyxZQUFZQztZQUVwRSxPQUFPWTtRQUNULEdBQUdoQjtJQUNMO0FBQ0YifQ==
|
package/lib/element/type.js
CHANGED
|
@@ -80,7 +80,9 @@ 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;
|
|
@@ -111,4 +113,4 @@ const _default = (0, _elements.define)(class Type extends _occamlanguages.Elemen
|
|
|
111
113
|
}
|
|
112
114
|
});
|
|
113
115
|
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3R5cGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuXG5pbXBvcnQgeyBpbnN0YW50aWF0ZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvY29udGV4dFwiO1xuaW1wb3J0IHsgaW5zdGFudGlhdGVUeXBlIH0gZnJvbSBcIi4uL3Byb2Nlc3MvaW5zdGFudGlhdGVcIjtcbmltcG9ydCB7IHR5cGVTdHJpbmdGcm9tVHlwZU5hbWVBbmRBcmd1bWVudFR5cGVOYW1lIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9zdHJpbmdcIjtcbmltcG9ydCB7IG5hbWVGcm9tVHlwZU5vZGUsIGFyZ3VtZW50VHlwZUZyb21UeXBlTm9kZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvZWxlbWVudFwiO1xuaW1wb3J0IHsgTElTVF9UWVBFX05BTUUsIFNUUklOR19UWVBFX05BTUUsIEJPT0xFQU5fVFlQRV9OQU1FLCBJTlRFR0VSX1RZUEVfTkFNRSwgTk9NSU5BTF9WQUxVRV9UWVBFX05BTUUgfSBmcm9tIFwiLi4vdHlwZU5hbWVzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBUeXBlIGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgbmFtZSwgYXJndW1lbnRUeXBlKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgdGhpcy5hcmd1bWVudFR5cGUgPSBhcmd1bWVudFR5cGU7XG4gIH1cblxuICBnZXROYW1lKCkge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cblxuICBnZXRBcmd1bWVudFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuYXJndW1lbnRUeXBlO1xuICB9XG5cbiAgaXNMaXN0VHlwZSgpIHtcbiAgICBjb25zdCBsaXN0VHlwZSA9ICh0aGlzLm5hbWUgPT09IExJU1RfVFlQRV9OQU1FKTtcblxuICAgIHJldHVybiBsaXN0VHlwZTtcbiAgfVxuXG4gIGlzU3RyaW5nVHlwZSgpIHtcbiAgICBjb25zdCBib29sZWFuVHlwZSA9ICh0aGlzLm5hbWUgPT09IFNUUklOR19UWVBFX05BTUUpO1xuXG4gICAgcmV0dXJuIGJvb2xlYW5UeXBlO1xuICB9XG5cbiAgaXNCb29sZWFuVHlwZSgpIHtcbiAgICBjb25zdCBib29sZWFuVHlwZSA9ICh0aGlzLm5hbWUgPT09IEJPT0xFQU5fVFlQRV9OQU1FKTtcblxuICAgIHJldHVybiBib29sZWFuVHlwZTtcbiAgfVxuXG4gIGlzSW50ZWdlclR5cGUoKSB7XG4gICAgY29uc3QgaW50ZWdlclR5cGUgPSAodGhpcy5uYW1lID09PSBJTlRFR0VSX1RZUEVfTkFNRSk7XG5cbiAgICByZXR1cm4gaW50ZWdlclR5cGU7XG4gIH1cblxuICBpc05vbWluYWxWYWx1ZVR5cGUoKSB7XG4gICAgY29uc3QgbGlzdFR5cGUgPSAodGhpcy5uYW1lID09PSBOT01JTkFMX1ZBTFVFX1RZUEVfTkFNRSk7XG5cbiAgICByZXR1cm4gbGlzdFR5cGU7XG4gIH1cblxuICBpc0VxdWFsVG8odHlwZSkge1xuICAgIGxldCBlcXVhbFRvID0gZmFsc2U7XG5cbiAgICBjb25zdCB0eXBlTmFtZSA9IHR5cGUuZ2V0TmFtZSgpO1xuXG4gICAgaWYgKHRoaXMubmFtZSA9PT0gdHlwZU5hbWUpIHtcbiAgICAgIHN3aXRjaCAodGhpcy5uYW1lKSB7XG4gICAgICAgIGNhc2UgTElTVF9UWVBFX05BTUU6IHtcbiAgICAgICAgICBjb25zdCB0eXBlQXJndW1lbnRUeXBlID0gdHlwZS5nZXRBcmd1bWVudFR5cGUoKTtcblxuICAgICAgICAgIGlmICgodGhpcy5hcmd1bWVudFR5cGUgPT09IG51bGwpIHx8ICh0eXBlQXJndW1lbnRUeXBlID09PSBudWxsKSkge1xuICAgICAgICAgICAgaWYgKHRoaXMuYXJndW1lbnRUeXBlID09PSB0eXBlQXJndW1lbnRUeXBlKSB7XG4gICAgICAgICAgICAgIGVxdWFsVG8gPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBhcmd1ZW1udFR5cGVFcXVhbFRvVHlwZUFyZ3VtZW50VHlwZSA9IHRoaXMuYXJndW1lbnRUeXBlLmlzRXF1YWxUbyh0eXBlQXJndW1lbnRUeXBlKTtcblxuICAgICAgICAgICAgaWYgKGFyZ3VlbW50VHlwZUVxdWFsVG9UeXBlQXJndW1lbnRUeXBlKSB7XG4gICAgICAgICAgICAgIGVxdWFsVG8gPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgY2FzZSBTVFJJTkdfVFlQRV9OQU1FOlxuICAgICAgICBjYXNlIEJPT0xFQU5fVFlQRV9OQU1FOlxuICAgICAgICBjYXNlIElOVEVHRVJfVFlQRV9OQU1FOlxuICAgICAgICBjYXNlIE5PTUlOQUxfVkFMVUVfVFlQRV9OQU1FOiB7XG4gICAgICAgICAgZXF1YWxUbyA9IHRydWU7XG5cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBlcXVhbFRvO1xuICB9XG5cbiAgdG9KU09OKCkge1xuICAgIGxldCBqc29uO1xuXG4gICAgY29uc3Qgc3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTtcblxuICAgIGpzb24gPSB7XG4gICAgICBzdHJpbmdcbiAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiVHlwZVwiO1xuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uLCBjb250ZXh0KSB7XG4gICAgcmV0dXJuIGluc3RhbnRpYXRlKChjb250ZXh0KSA9PiB7XG4gICAgICBjb25zdCB7IHN0cmluZyB9ID0ganNvbixcbiAgICAgICAgICAgIHR5cGVOb2RlID0gaW5zdGFudGlhdGVUeXBlKHN0cmluZywgY29udGV4dCksXG4gICAgICAgICAgICBub2RlID0gdHlwZU5vZGUsICAvLy9cbiAgICAgICAgICAgIGJyZWFrUG9pbnQgPSBudWxsLFxuICAgICAgICAgICAgbmFtZSA9IG5hbWVGcm9tVHlwZU5vZGUodHlwZU5vZGUsIGNvbnRleHQpLFxuICAgICAgICAgICAgYXJndW1lbnRUeXBlID0gYXJndW1lbnRUeXBlRnJvbVR5cGVOb2RlKHR5cGVOb2RlLCBjb250ZXh0KTtcblxuICAgICAgY29udGV4dCA9IG51bGw7XG5cbiAgICAgIGNvbnN0IHR5cGUgPSBuZXcgVHlwZShjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIG5hbWUsIGFyZ3VtZW50VHlwZSk7XG5cbiAgICAgIHJldHVybiB0eXBlO1xuICAgIH0sIGNvbnRleHQpO1xuICB9XG5cbiAgc3RhdGljIGZyb21UeXBlTmFtZSh0eXBlTmFtZSwgY29udGV4dCkge1xuICAgIGxldCB0eXBlID0gbnVsbDtcblxuICAgIGlmICh0eXBlTmFtZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgbm9kZSA9IG51bGwsICAvLy9cbiAgICAgICAgICAgIG5hbWUgPSB0eXBlTmFtZSwgIC8vL1xuICAgICAgICAgICAgYXJndW1lbnRUeXBlID0gbnVsbCxcbiAgICAgICAgICAgIHR5cGVTdHJpbmcgPSB0eXBlTmFtZSwgIC8vL1xuICAgICAgICAgICAgc3RyaW5nID0gdHlwZVN0cmluZywgIC8vL1xuICAgICAgICAgICAgYnJlYWtQb2ludCA9IG51bGw7XG5cbiAgICAgIGNvbnRleHQgPSBudWxsO1xuXG4gICAgICB0eXBlID0gbmV3IFR5cGUoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBuYW1lLCBhcmd1bWVudFR5cGUpO1xuICAgIH1cblxuICAgIHJldHVybiB0eXBlO1xuICB9XG5cbiAgc3RhdGljIGZyb21UeXBlTmFtZUFuZEFyZ3VtZW50VHlwZU5hbWUodHlwZU5hbWUsIGFyZ3VtZW50VHlwZU5hbWUsIGNvbnRleHQpIHtcbiAgICBjb25zdCBub2RlID0gbnVsbCwgIC8vL1xuICAgICAgICAgIG5hbWUgPSB0eXBlTmFtZSwgIC8vL1xuICAgICAgICAgIGFyZ3VtZW50VHlwZSA9IFR5cGUuZnJvbVR5cGVOYW1lKGFyZ3VtZW50VHlwZU5hbWUsIGNvbnRleHQpLFxuICAgICAgICAgIHR5cGVTdHJpbmcgPSB0eXBlU3RyaW5nRnJvbVR5cGVOYW1lQW5kQXJndW1lbnRUeXBlTmFtZSh0eXBlTmFtZSwgYXJndW1lbnRUeXBlTmFtZSksXG4gICAgICAgICAgc3RyaW5nID0gdHlwZVN0cmluZywgIC8vL1xuICAgICAgICAgIGJyZWFrUG9pbnQgPSBudWxsO1xuXG4gICAgY29udGV4dCA9IG51bGw7XG5cbiAgICBjb25zdCB0eXBlID0gbmV3IFR5cGUoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBuYW1lLCBhcmd1bWVudFR5cGUpO1xuXG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxufSk7XG4iXSwibmFtZXMiOlsiZGVmaW5lIiwiVHlwZSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJuYW1lIiwiYXJndW1lbnRUeXBlIiwiZ2V0TmFtZSIsImdldEFyZ3VtZW50VHlwZSIsImlzTGlzdFR5cGUiLCJsaXN0VHlwZSIsIkxJU1RfVFlQRV9OQU1FIiwiaXNTdHJpbmdUeXBlIiwiYm9vbGVhblR5cGUiLCJTVFJJTkdfVFlQRV9OQU1FIiwiaXNCb29sZWFuVHlwZSIsIkJPT0xFQU5fVFlQRV9OQU1FIiwiaXNJbnRlZ2VyVHlwZSIsImludGVnZXJUeXBlIiwiSU5URUdFUl9UWVBFX05BTUUiLCJpc05vbWluYWxWYWx1ZVR5cGUiLCJOT01JTkFMX1ZBTFVFX1RZUEVfTkFNRSIsImlzRXF1YWxUbyIsInR5cGUiLCJlcXVhbFRvIiwidHlwZU5hbWUiLCJ0eXBlQXJndW1lbnRUeXBlIiwiYXJndWVtbnRUeXBlRXF1YWxUb1R5cGVBcmd1bWVudFR5cGUiLCJ0b0pTT04iLCJqc29uIiwiZ2V0U3RyaW5nIiwiZnJvbUpTT04iLCJpbnN0YW50aWF0ZSIsInR5cGVOb2RlIiwiaW5zdGFudGlhdGVUeXBlIiwibmFtZUZyb21UeXBlTm9kZSIsImFyZ3VtZW50VHlwZUZyb21UeXBlTm9kZSIsImZyb21UeXBlTmFtZSIsInR5cGVTdHJpbmciLCJmcm9tVHlwZU5hbWVBbmRBcmd1bWVudFR5cGVOYW1lIiwiYXJndW1lbnRUeXBlTmFtZSIsInR5cGVTdHJpbmdGcm9tVHlwZU5hbWVBbmRBcmd1bWVudFR5cGVOYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFZQTs7O2VBQUE7OztnQ0FWd0I7MEJBRUQ7eUJBRUs7NkJBQ0k7d0JBQzBCO3lCQUNDOzJCQUNxRDtNQUVoSCxXQUFlQSxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLGFBQWFDLHVCQUFPO0lBQzlDLFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsSUFBSSxFQUFFQyxZQUFZLENBQUU7UUFDakUsS0FBSyxDQUFDTCxTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLFlBQVksR0FBR0E7SUFDdEI7SUFFQUMsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDRixJQUFJO0lBQ2xCO0lBRUFHLGtCQUFrQjtRQUNoQixPQUFPLElBQUksQ0FBQ0YsWUFBWTtJQUMxQjtJQUVBRyxhQUFhO1FBQ1gsTUFBTUMsV0FBWSxJQUFJLENBQUNMLElBQUksS0FBS00seUJBQWM7UUFFOUMsT0FBT0Q7SUFDVDtJQUVBRSxlQUFlO1FBQ2IsTUFBTUMsY0FBZSxJQUFJLENBQUNSLElBQUksS0FBS1MsMkJBQWdCO1FBRW5ELE9BQU9EO0lBQ1Q7SUFFQUUsZ0JBQWdCO1FBQ2QsTUFBTUYsY0FBZSxJQUFJLENBQUNSLElBQUksS0FBS1csNEJB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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=
|