occam-furtle 3.0.366 → 3.0.368

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.
@@ -153,4 +153,4 @@ class FurtleFileContext extends _occamlanguages.FileContext {
153
153
  }
154
154
  }
155
155
 
156
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250ZXh0L2ZpbGUvZnVydGxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBGaWxlQ29udGV4dCwgZnVydGxlVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgRnVydGxlTGV4ZXIgZnJvbSBcIi4uLy4uL2Z1cnRsZS9sZXhlclwiO1xuaW1wb3J0IEZ1cnRsZVBhcnNlciBmcm9tIFwiLi4vLi4vZnVydGxlL3BhcnNlclwiO1xuXG5pbXBvcnQgeyB2ZXJpZnlGaWxlIH0gZnJvbSBcIi4uLy4uL3Byb2Nlc3MvdmVyaWZ5XCI7XG5pbXBvcnQgeyBwcm9jZWR1cmVzRnJvbUpTT04sIHByb2NlZHVyZXNUb1Byb2NlZHVyZXNKU09OIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9qc29uXCI7XG5cbmNvbnN0IHsgZnVydGxlTGV4ZXJGcm9tTm90aGluZywgZnVydGxlUGFyc2VyRnJvbU5vdGhpbmcgfSA9IGZ1cnRsZVV0aWxpdGllcztcblxuY29uc3QgZnVydGxlTGV4ZXIgPSBmdXJ0bGVMZXhlckZyb21Ob3RoaW5nKEZ1cnRsZUxleGVyKSxcbiAgICAgIGZ1cnRsZVBhcnNlciA9IGZ1cnRsZVBhcnNlckZyb21Ob3RoaW5nKEZ1cnRsZVBhcnNlcik7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEZ1cnRsZUZpbGVDb250ZXh0IGV4dGVuZHMgRmlsZUNvbnRleHQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBmaWxlQ29udGVudCwgZmlsZVBhdGgsIHRva2Vucywgbm9kZSwganNvbiwgbGV4ZXIsIHBhcnNlciwgcHJvY2VkdXJlcykge1xuICAgIHN1cGVyKGNvbnRleHQsIGZpbGVDb250ZW50LCBmaWxlUGF0aCwgdG9rZW5zLCBub2RlLCBqc29uKTtcblxuICAgIHRoaXMubGV4ZXIgPSBsZXhlcjtcbiAgICB0aGlzLnBhcnNlciA9IHBhcnNlcjtcbiAgICB0aGlzLnByb2NlZHVyZXMgPSBwcm9jZWR1cmVzO1xuICB9XG5cbiAgZ2V0TGV4ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMubGV4ZXI7XG4gIH1cblxuICBnZXRQYXJzZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyc2VyO1xuICB9XG5cbiAgZ2V0TGFiZWxzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGxhYmVscyA9IFtdO1xuXG4gICAgcmV0dXJuIGxhYmVscztcbiAgfVxuXG4gIGdldFR5cGVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHR5cGVzID0gW107XG5cbiAgICByZXR1cm4gdHlwZXM7XG4gIH1cblxuICBnZXRSdWxlcyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBydWxlcyA9IFtdXG5cbiAgICByZXR1cm4gcnVsZXM7XG4gIH1cblxuICBnZXRBeGlvbXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgYXhpb21zID0gW107XG5cbiAgICByZXR1cm4gYXhpb21zO1xuICB9XG5cbiAgZ2V0TGVtbWFzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGxlbW1hcyA9IFtdO1xuXG4gICAgcmV0dXJuIGxlbW1hcztcbiAgfVxuXG4gIGdldFRoZW9yZW1zKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHRoZW9yZW1zID0gW107XG5cbiAgICByZXR1cm4gdGhlb3JlbXM7XG4gIH1cblxuICBnZXRNZXRhTGVtbWFzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IG1ldGFMZW1tYXMgPSBbXTtcblxuICAgIHJldHVybiBtZXRhTGVtbWFzO1xuICB9XG5cbiAgZ2V0R2VuZXJhdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBnZW5lcmF0b3JzID0gW107XG5cbiAgICByZXR1cm4gZ2VuZXJhdG9ycztcbiAgfVxuXG4gIGdldENvbmplY3R1cmVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGNvbmplY3R1cmVzID0gW107XG5cbiAgICByZXR1cm4gY29uamVjdHVyZXM7XG4gIH1cblxuICBnZXRDb21iaW5hdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBjb21iaW5hdG9ycyA9IFtdO1xuXG4gICAgcmV0dXJuIGNvbWJpbmF0b3JzO1xuICB9XG5cbiAgZ2V0VHlwZVByZWZpeGVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHR5cGVQcmVmaXhlcyA9IFtdO1xuXG4gICAgcmV0dXJuIHR5cGVQcmVmaXhlcztcbiAgfVxuXG4gIGdldENvbnN0cnVjdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBjb25zdHJ1Y3RvcnMgPSBbXTtcblxuICAgIHJldHVybiBjb25zdHJ1Y3RvcnM7XG4gIH1cblxuICBnZXRNZXRhdGhlb3JlbXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgbWV0YXRoZW9yZW1zID0gW107XG5cbiAgICByZXR1cm4gbWV0YXRoZW9yZW1zO1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlcyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBtZXRhdmFyaWFibGVzID0gW107XG5cbiAgICByZXR1cm4gbWV0YXZhcmlhYmxlcztcbiAgfVxuXG4gIGdldFByb2NlZHVyZXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgcHJvY2VkdXJlcyA9IGluY2x1ZGVSZWxlYXNlID9cbiAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRleHQuZ2V0UHJvY2VkdXJlcygpIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucHJvY2VkdXJlcztcblxuICAgIHJldHVybiBwcm9jZWR1cmVzO1xuICB9XG5cbiAgZ2V0VmFyaWFibGVzKG5lc3RlZCA9IHRydWUpIHtcbiAgICBjb25zdCB2YXJpYWJsZXMgPSBbXTtcblxuICAgIHJldHVybiB2YXJpYWJsZXM7XG4gIH1cblxuICBhZGRQcm9jZWR1cmUocHJvY2VkdXJlKSB7XG4gICAgY29uc3QgcHJvY2VkdXJlU3RyaW5nID0gcHJvY2VkdXJlLmdldFN0cmluZygpO1xuXG4gICAgdGhpcy5wcm9jZWR1cmVzLnB1c2gocHJvY2VkdXJlKTtcblxuICAgIGNvbnN0IGZpbGVQYXRoID0gdGhpcy5nZXRGaWxlUGF0aCgpO1xuXG4gICAgdGhpcy5kZWJ1ZyhgQWRkZWQgdGhlICcke3Byb2NlZHVyZVN0cmluZ30nIGZ1bmN0aW9uIHRvIHRoZSAnJHtmaWxlUGF0aH0nIGZpbGUgY29udGV4dC5gKTtcbiAgfVxuXG4gIGZpbmRQcm9jZWR1cmVCeVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSkge1xuICAgIGNvbnN0IHByb2NlZHVyZXMgPSB0aGlzLmdldFByb2NlZHVyZXMoKSxcbiAgICAgICAgICBwcm9jZWR1cmUgPSBwcm9jZWR1cmVzLmZpbmQoKHByb2NlZHVyZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcHJvY2VkdXJlQ29tcGFyZXNUb1Byb2NlZHVyZU5hbWUgPSBwcm9jZWR1cmUuY29tcGFyZVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSk7XG5cbiAgICAgICAgICAgIGlmIChwcm9jZWR1cmVDb21wYXJlc1RvUHJvY2VkdXJlTmFtZSkge1xuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIHByb2NlZHVyZTtcbiAgfVxuXG4gIGlzUHJvY2VkdXJlUHJlc2VudEJ5UHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKSB7XG4gICAgY29uc3QgcHJvY2VkdXJlID0gdGhpcy5maW5kUHJvY2VkdXJlQnlQcm9jZWR1cmVOYW1lKHByb2NlZHVyZU5hbWUpLFxuICAgICAgICAgIHByb2NlZHVyZVByZXNlbnQgPSAocHJvY2VkdXJlICE9PSBudWxsKTtcblxuICAgIHJldHVybiBwcm9jZWR1cmVQcmVzZW50O1xuICB9XG5cbiAgY2xlYXIoKSB7XG4gICAgdGhpcy5wcm9jZWR1cmVzID0gW107XG4gIH1cblxuICBjb21wbGV0ZSgpIHtcbiAgICAvLy9cbiAgfVxuXG4gIGluaXRpYWxpc2UoKSB7XG4gICAgY29uc3QganNvbiA9IHRoaXMuZ2V0SlNPTigpO1xuXG4gICAgaWYgKGpzb24gPT09IG51bGwpIHtcbiAgICAgIHN1cGVyLmluaXRpYWxpc2UoKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGZpbGVDb250ZXh0ID0gdGhpczsgLy8vXG5cbiAgICB0aGlzLnByb2NlZHVyZXMgPSBwcm9jZWR1cmVzRnJvbUpTT04oanNvbiwgZmlsZUNvbnRleHQpO1xuICB9XG5cbiAgYXN5bmMgdmVyaWZ5RmlsZSgpIHtcbiAgICBjb25zdCBub2RlID0gdGhpcy5nZXROb2RlKCksXG4gICAgICAgICAgY29udGV4dCA9IHRoaXMsIC8vL1xuICAgICAgICAgIGZpbGVOb2RlID0gbm9kZSwgIC8vL1xuICAgICAgICAgIGZpbGVWZXJpZmllcyA9IHZlcmlmeUZpbGUoZmlsZU5vZGUsIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIGZpbGVWZXJpZmllcztcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCBwcm9jZWR1cmVzSlNPTiA9IHByb2NlZHVyZXNUb1Byb2NlZHVyZXNKU09OKHRoaXMucHJvY2VkdXJlcyksXG4gICAgICAgICAgZmlsZUNvbnRlbnQgPSB0aGlzLmdldEZpbGVDb250ZW50KCksXG4gICAgICAgICAgZmlsZVBhdGggPSB0aGlzLmdldEZpbGVQYXRoKCksXG4gICAgICAgICAgcHJvY2VkdXJlcyA9IHByb2NlZHVyZXNKU09OLCAgLy8vXG4gICAgICAgICAganNvbiA9IHtcbiAgICAgICAgICAgIGZpbGVDb250ZW50LFxuICAgICAgICAgICAgZmlsZVBhdGgsXG4gICAgICAgICAgICBwcm9jZWR1cmVzXG4gICAgICAgICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cblxuICBzdGF0aWMgZnJvbUZpbGUoZmlsZSwgY29udGV4dCkge1xuICAgIGNvbnN0IGxleGVyID0gZnVydGxlTGV4ZXIsICAvLy9cbiAgICAgICAgICBwYXJzZXIgPSBmdXJ0bGVQYXJzZXIsICAvLy9cbiAgICAgICAgICBwcm9jZWR1cmVzID0gW10sXG4gICAgICAgICAgZnVydGxlRmlsZUNvbnRleHQgPSBGaWxlQ29udGV4dC5mcm9tRmlsZShGdXJ0bGVGaWxlQ29udGV4dCwgZmlsZSwgbGV4ZXIsIHBhcnNlciwgcHJvY2VkdXJlcywgY29udGV4dCk7XG5cbiAgICByZXR1cm4gZnVydGxlRmlsZUNvbnRleHQ7XG4gIH1cblxuICBzdGF0aWMgZnJvbUpTT04oanNvbiwgY29udGV4dCkge1xuICAgIGNvbnN0IGxleGVyID0gZnVydGxlTGV4ZXIsICAvLy9cbiAgICAgICAgICBwYXJzZXIgPSBmdXJ0bGVQYXJzZXIsICAvLy9cbiAgICAgICAgICBwcm9jZWR1cmVzID0gbnVsbCxcbiAgICAgICAgICBmdXJ0bGVGaWxlQ29udGV4dCA9IEZpbGVDb250ZXh0LmZyb21KU09OKEZ1cnRsZUZpbGVDb250ZXh0LCBqc29uLCBsZXhlciwgcGFyc2VyLCBwcm9jZWR1cmVzLCBjb250ZXh0KTtcblxuICAgIHJldHVybiBmdXJ0bGVGaWxlQ29udGV4dDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIkZ1cnRsZUZpbGVDb250ZXh0IiwiZnVydGxlTGV4ZXJGcm9tTm90aGluZyIsImZ1cnRsZVBhcnNlckZyb21Ob3RoaW5nIiwiZnVydGxlVXRpbGl0aWVzIiwiZnVydGxlTGV4ZXIiLCJGdXJ0bGVMZXhlciIsImZ1cnRsZVBhcnNlciIsIkZ1cnRsZVBhcnNlciIsIkZpbGVDb250ZXh0IiwiY29udGV4dCIsImZpbGVDb250ZW50IiwiZmlsZVBhdGgiLCJ0b2tlbnMiLCJub2RlIiwianNvbiIsImxleGVyIiwicGFyc2VyIiwicHJvY2VkdXJlcyIsImdldExleGVyIiwiZ2V0UGFyc2VyIiwiZ2V0TGFiZWxzIiwiaW5jbHVkZVJlbGVhc2UiLCJsYWJlbHMiLCJnZXRUeXBlcyIsInR5cGVzIiwiZ2V0UnVsZXMiLCJydWxlcyIsImdldEF4aW9tcyIsImF4aW9tcyIsImdldExlbW1hcyIsImxlbW1hcyIsImdldFRoZW9yZW1zIiwidGhlb3JlbXMiLCJnZXRNZXRhTGVtbWFzIiwibWV0YUxlbW1hcyIsImdldEdlbmVyYXRvcnMiLCJnZW5lcmF0b3JzIiwiZ2V0Q29uamVjdHVyZXMiLCJjb25qZWN0dXJlcyIsImdldENvbWJpbmF0b3JzIiwiY29tYmluYXRvcnMiLCJnZXRUeXBlUHJlZml4ZXMiLCJ0eXBlUHJlZml4ZXMiLCJnZXRDb25zdHJ1Y3RvcnMiLCJjb25zdHJ1Y3RvcnMiLCJnZXRNZXRhdGhlb3JlbXMiLCJtZXRhdGhlb3JlbXMiLCJnZXRNZXRhdmFyaWFibGVzIiwibWV0YXZhcmlhYmxlcyIsImdldFByb2NlZHVyZXMiLCJnZXRWYXJpYWJsZXMiLCJuZXN0ZWQiLCJ2YXJpYWJsZXMiLCJhZGRQcm9jZWR1cmUiLCJwcm9jZWR1cmUiLCJwcm9jZWR1cmVTdHJpbmciLCJnZXRTdHJpbmciLCJwdXNoIiwiZ2V0RmlsZVBhdGgiLCJkZWJ1ZyIsImZpbmRQcm9jZWR1cmVCeVByb2NlZHVyZU5hbWUiLCJwcm9jZWR1cmVOYW1lIiwiZmluZCIsInByb2NlZHVyZUNvbXBhcmVzVG9Qcm9jZWR1cmVOYW1lIiwiY29tcGFyZVByb2NlZHVyZU5hbWUiLCJpc1Byb2NlZHVyZVByZXNlbnRCeVByb2NlZHVyZU5hbWUiLCJwcm9jZWR1cmVQcmVzZW50IiwiY2xlYXIiLCJjb21wbGV0ZSIsImluaXRpYWxpc2UiLCJnZXRKU09OIiwiZmlsZUNvbnRleHQiLCJwcm9jZWR1cmVzRnJvbUpTT04iLCJ2ZXJpZnlGaWxlIiwiZ2V0Tm9kZSIsImZpbGVOb2RlIiwiZmlsZVZlcmlmaWVzIiwidG9KU09OIiwicHJvY2VkdXJlc0pTT04iLCJwcm9jZWR1cmVzVG9Qcm9jZWR1cmVzSlNPTiIsImdldEZpbGVDb250ZW50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
156
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250ZXh0L2ZpbGUvZnVydGxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBGaWxlQ29udGV4dCwgZnVydGxlVXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgRnVydGxlTGV4ZXIgZnJvbSBcIi4uLy4uL2Z1cnRsZS9sZXhlclwiO1xuaW1wb3J0IEZ1cnRsZVBhcnNlciBmcm9tIFwiLi4vLi4vZnVydGxlL3BhcnNlclwiO1xuXG5pbXBvcnQgeyB2ZXJpZnlGaWxlIH0gZnJvbSBcIi4uLy4uL3Byb2Nlc3MvdmVyaWZ5XCI7XG5pbXBvcnQgeyBwcm9jZWR1cmVzRnJvbUpTT04sIHByb2NlZHVyZXNUb1Byb2NlZHVyZXNKU09OIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9qc29uXCI7XG5cbmNvbnN0IHsgZnVydGxlTGV4ZXJGcm9tTm90aGluZywgZnVydGxlUGFyc2VyRnJvbU5vdGhpbmcgfSA9IGZ1cnRsZVV0aWxpdGllcztcblxuY29uc3QgZnVydGxlTGV4ZXIgPSBmdXJ0bGVMZXhlckZyb21Ob3RoaW5nKEZ1cnRsZUxleGVyKSxcbiAgICAgIGZ1cnRsZVBhcnNlciA9IGZ1cnRsZVBhcnNlckZyb21Ob3RoaW5nKEZ1cnRsZVBhcnNlcik7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEZ1cnRsZUZpbGVDb250ZXh0IGV4dGVuZHMgRmlsZUNvbnRleHQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBmaWxlQ29udGVudCwgZmlsZVBhdGgsIHRva2Vucywgbm9kZSwganNvbiwgbGV4ZXIsIHBhcnNlciwgcHJvY2VkdXJlcykge1xuICAgIHN1cGVyKGNvbnRleHQsIGZpbGVDb250ZW50LCBmaWxlUGF0aCwgdG9rZW5zLCBub2RlLCBqc29uKTtcblxuICAgIHRoaXMubGV4ZXIgPSBsZXhlcjtcbiAgICB0aGlzLnBhcnNlciA9IHBhcnNlcjtcbiAgICB0aGlzLnByb2NlZHVyZXMgPSBwcm9jZWR1cmVzO1xuICB9XG5cbiAgZ2V0TGV4ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMubGV4ZXI7XG4gIH1cblxuICBnZXRQYXJzZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyc2VyO1xuICB9XG5cbiAgZ2V0TGFiZWxzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGxhYmVscyA9IFtdO1xuXG4gICAgcmV0dXJuIGxhYmVscztcbiAgfVxuXG4gIGdldFR5cGVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHR5cGVzID0gW107XG5cbiAgICByZXR1cm4gdHlwZXM7XG4gIH1cblxuICBnZXRSdWxlcyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBydWxlcyA9IFtdXG5cbiAgICByZXR1cm4gcnVsZXM7XG4gIH1cblxuICBnZXRBeGlvbXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgYXhpb21zID0gW107XG5cbiAgICByZXR1cm4gYXhpb21zO1xuICB9XG5cbiAgZ2V0TGVtbWFzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGxlbW1hcyA9IFtdO1xuXG4gICAgcmV0dXJuIGxlbW1hcztcbiAgfVxuXG4gIGdldFRoZW9yZW1zKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHRoZW9yZW1zID0gW107XG5cbiAgICByZXR1cm4gdGhlb3JlbXM7XG4gIH1cblxuICBnZXRNZXRhTGVtbWFzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IG1ldGFMZW1tYXMgPSBbXTtcblxuICAgIHJldHVybiBtZXRhTGVtbWFzO1xuICB9XG5cbiAgZ2V0R2VuZXJhdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBnZW5lcmF0b3JzID0gW107XG5cbiAgICByZXR1cm4gZ2VuZXJhdG9ycztcbiAgfVxuXG4gIGdldENvbmplY3R1cmVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IGNvbmplY3R1cmVzID0gW107XG5cbiAgICByZXR1cm4gY29uamVjdHVyZXM7XG4gIH1cblxuICBnZXRDb21iaW5hdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBjb21iaW5hdG9ycyA9IFtdO1xuXG4gICAgcmV0dXJuIGNvbWJpbmF0b3JzO1xuICB9XG5cbiAgZ2V0VHlwZVByZWZpeGVzKGluY2x1ZGVSZWxlYXNlID0gdHJ1ZSkge1xuICAgIGNvbnN0IHR5cGVQcmVmaXhlcyA9IFtdO1xuXG4gICAgcmV0dXJuIHR5cGVQcmVmaXhlcztcbiAgfVxuXG4gIGdldENvbnN0cnVjdG9ycyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBjb25zdHJ1Y3RvcnMgPSBbXTtcblxuICAgIHJldHVybiBjb25zdHJ1Y3RvcnM7XG4gIH1cblxuICBnZXRNZXRhdGhlb3JlbXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgbWV0YXRoZW9yZW1zID0gW107XG5cbiAgICByZXR1cm4gbWV0YXRoZW9yZW1zO1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlcyhpbmNsdWRlUmVsZWFzZSA9IHRydWUpIHtcbiAgICBjb25zdCBtZXRhdmFyaWFibGVzID0gW107XG5cbiAgICByZXR1cm4gbWV0YXZhcmlhYmxlcztcbiAgfVxuXG4gIGdldFByb2NlZHVyZXMoaW5jbHVkZVJlbGVhc2UgPSB0cnVlKSB7XG4gICAgY29uc3QgcHJvY2VkdXJlcyA9IGluY2x1ZGVSZWxlYXNlID9cbiAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRleHQuZ2V0UHJvY2VkdXJlcygpIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucHJvY2VkdXJlcztcblxuICAgIHJldHVybiBwcm9jZWR1cmVzO1xuICB9XG5cbiAgZ2V0VmFyaWFibGVzKG5lc3RlZCA9IHRydWUpIHtcbiAgICBjb25zdCB2YXJpYWJsZXMgPSBbXTtcblxuICAgIHJldHVybiB2YXJpYWJsZXM7XG4gIH1cblxuICBhZGRQcm9jZWR1cmUocHJvY2VkdXJlKSB7XG4gICAgY29uc3QgcHJvY2VkdXJlU3RyaW5nID0gcHJvY2VkdXJlLmdldFN0cmluZygpO1xuXG4gICAgdGhpcy5wcm9jZWR1cmVzLnB1c2gocHJvY2VkdXJlKTtcblxuICAgIGNvbnN0IGZpbGVQYXRoID0gdGhpcy5nZXRGaWxlUGF0aCgpO1xuXG4gICAgdGhpcy5kZWJ1ZyhgQWRkZWQgdGhlICcke3Byb2NlZHVyZVN0cmluZ30nIGZ1bmN0aW9uIHRvIHRoZSAnJHtmaWxlUGF0aH0nIGZpbGUgY29udGV4dC5gKTtcbiAgfVxuXG4gIGZpbmRQcm9jZWR1cmVCeVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSkge1xuICAgIGNvbnN0IHByb2NlZHVyZXMgPSB0aGlzLmdldFByb2NlZHVyZXMoKSxcbiAgICAgICAgICBwcm9jZWR1cmUgPSBwcm9jZWR1cmVzLmZpbmQoKHByb2NlZHVyZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcHJvY2VkdXJlQ29tcGFyZXNUb1Byb2NlZHVyZU5hbWUgPSBwcm9jZWR1cmUuY29tcGFyZVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSk7XG5cbiAgICAgICAgICAgIGlmIChwcm9jZWR1cmVDb21wYXJlc1RvUHJvY2VkdXJlTmFtZSkge1xuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIHByb2NlZHVyZTtcbiAgfVxuXG4gIGlzUHJvY2VkdXJlUHJlc2VudEJ5UHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKSB7XG4gICAgY29uc3QgcHJvY2VkdXJlID0gdGhpcy5maW5kUHJvY2VkdXJlQnlQcm9jZWR1cmVOYW1lKHByb2NlZHVyZU5hbWUpLFxuICAgICAgICAgIHByb2NlZHVyZVByZXNlbnQgPSAocHJvY2VkdXJlICE9PSBudWxsKTtcblxuICAgIHJldHVybiBwcm9jZWR1cmVQcmVzZW50O1xuICB9XG5cbiAgY2xlYXIoKSB7XG4gICAgdGhpcy5wcm9jZWR1cmVzID0gW107XG4gIH1cblxuICBjb21wbGV0ZSgpIHtcbiAgICAvLy9cbiAgfVxuXG4gIGluaXRpYWxpc2UoKSB7XG4gICAgY29uc3QganNvbiA9IHRoaXMuZ2V0SlNPTigpO1xuXG4gICAgaWYgKGpzb24gPT09IG51bGwpIHtcbiAgICAgIHN1cGVyLmluaXRpYWxpc2UoKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGZpbGVDb250ZXh0ID0gdGhpczsgLy8vXG5cbiAgICB0aGlzLnByb2NlZHVyZXMgPSBwcm9jZWR1cmVzRnJvbUpTT04oanNvbiwgZmlsZUNvbnRleHQpO1xuICB9XG5cbiAgYXN5bmMgdmVyaWZ5RmlsZSgpIHtcbiAgICBjb25zdCBub2RlID0gdGhpcy5nZXROb2RlKCksXG4gICAgICAgICAgY29udGV4dCA9IHRoaXMsIC8vL1xuICAgICAgICAgIGZpbGVOb2RlID0gbm9kZSwgIC8vL1xuICAgICAgICAgIGZpbGVWZXJpZmllcyA9IHZlcmlmeUZpbGUoZmlsZU5vZGUsIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIGZpbGVWZXJpZmllcztcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCBwcm9jZWR1cmVzSlNPTiA9IHByb2NlZHVyZXNUb1Byb2NlZHVyZXNKU09OKHRoaXMucHJvY2VkdXJlcyksXG4gICAgICAgICAgZmlsZUNvbnRlbnQgPSB0aGlzLmdldEZpbGVDb250ZW50KCksXG4gICAgICAgICAgZmlsZVBhdGggPSB0aGlzLmdldEZpbGVQYXRoKCksXG4gICAgICAgICAgcHJvY2VkdXJlcyA9IHByb2NlZHVyZXNKU09OLCAgLy8vXG4gICAgICAgICAganNvbiA9IHtcbiAgICAgICAgICAgIGZpbGVDb250ZW50LFxuICAgICAgICAgICAgZmlsZVBhdGgsXG4gICAgICAgICAgICBwcm9jZWR1cmVzXG4gICAgICAgICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgc3RhdGljIGZyb21GaWxlKGZpbGUsIGNvbnRleHQpIHtcbiAgICBjb25zdCBsZXhlciA9IGZ1cnRsZUxleGVyLCAgLy8vXG4gICAgICAgICAgcGFyc2VyID0gZnVydGxlUGFyc2VyLCAgLy8vXG4gICAgICAgICAgcHJvY2VkdXJlcyA9IFtdLFxuICAgICAgICAgIGZ1cnRsZUZpbGVDb250ZXh0ID0gRmlsZUNvbnRleHQuZnJvbUZpbGUoRnVydGxlRmlsZUNvbnRleHQsIGZpbGUsIGxleGVyLCBwYXJzZXIsIHByb2NlZHVyZXMsIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIGZ1cnRsZUZpbGVDb250ZXh0O1xuICB9XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24sIGNvbnRleHQpIHtcbiAgICBjb25zdCBsZXhlciA9IGZ1cnRsZUxleGVyLCAgLy8vXG4gICAgICAgICAgcGFyc2VyID0gZnVydGxlUGFyc2VyLCAgLy8vXG4gICAgICAgICAgcHJvY2VkdXJlcyA9IG51bGwsXG4gICAgICAgICAgZnVydGxlRmlsZUNvbnRleHQgPSBGaWxlQ29udGV4dC5mcm9tSlNPTihGdXJ0bGVGaWxlQ29udGV4dCwganNvbiwgbGV4ZXIsIHBhcnNlciwgcHJvY2VkdXJlcywgY29udGV4dCk7XG5cbiAgICByZXR1cm4gZnVydGxlRmlsZUNvbnRleHQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJGdXJ0bGVGaWxlQ29udGV4dCIsImZ1cnRsZUxleGVyRnJvbU5vdGhpbmciLCJmdXJ0bGVQYXJzZXJGcm9tTm90aGluZyIsImZ1cnRsZVV0aWxpdGllcyIsImZ1cnRsZUxleGVyIiwiRnVydGxlTGV4ZXIiLCJmdXJ0bGVQYXJzZXIiLCJGdXJ0bGVQYXJzZXIiLCJGaWxlQ29udGV4dCIsImNvbnRleHQiLCJmaWxlQ29udGVudCIsImZpbGVQYXRoIiwidG9rZW5zIiwibm9kZSIsImpzb24iLCJsZXhlciIsInBhcnNlciIsInByb2NlZHVyZXMiLCJnZXRMZXhlciIsImdldFBhcnNlciIsImdldExhYmVscyIsImluY2x1ZGVSZWxlYXNlIiwibGFiZWxzIiwiZ2V0VHlwZXMiLCJ0eXBlcyIsImdldFJ1bGVzIiwicnVsZXMiLCJnZXRBeGlvbXMiLCJheGlvbXMiLCJnZXRMZW1tYXMiLCJsZW1tYXMiLCJnZXRUaGVvcmVtcyIsInRoZW9yZW1zIiwiZ2V0TWV0YUxlbW1hcyIsIm1ldGFMZW1tYXMiLCJnZXRHZW5lcmF0b3JzIiwiZ2VuZXJhdG9ycyIsImdldENvbmplY3R1cmVzIiwiY29uamVjdHVyZXMiLCJnZXRDb21iaW5hdG9ycyIsImNvbWJpbmF0b3JzIiwiZ2V0VHlwZVByZWZpeGVzIiwidHlwZVByZWZpeGVzIiwiZ2V0Q29uc3RydWN0b3JzIiwiY29uc3RydWN0b3JzIiwiZ2V0TWV0YXRoZW9yZW1zIiwibWV0YXRoZW9yZW1zIiwiZ2V0TWV0YXZhcmlhYmxlcyIsIm1ldGF2YXJpYWJsZXMiLCJnZXRQcm9jZWR1cmVzIiwiZ2V0VmFyaWFibGVzIiwibmVzdGVkIiwidmFyaWFibGVzIiwiYWRkUHJvY2VkdXJlIiwicHJvY2VkdXJlIiwicHJvY2VkdXJlU3RyaW5nIiwiZ2V0U3RyaW5nIiwicHVzaCIsImdldEZpbGVQYXRoIiwiZGVidWciLCJmaW5kUHJvY2VkdXJlQnlQcm9jZWR1cmVOYW1lIiwicHJvY2VkdXJlTmFtZSIsImZpbmQiLCJwcm9jZWR1cmVDb21wYXJlc1RvUHJvY2VkdXJlTmFtZSIsImNvbXBhcmVQcm9jZWR1cmVOYW1lIiwiaXNQcm9jZWR1cmVQcmVzZW50QnlQcm9jZWR1cmVOYW1lIiwicHJvY2VkdXJlUHJlc2VudCIsImNsZWFyIiwiY29tcGxldGUiLCJpbml0aWFsaXNlIiwiZ2V0SlNPTiIsImZpbGVDb250ZXh0IiwicHJvY2VkdXJlc0Zyb21KU09OIiwidmVyaWZ5RmlsZSIsImdldE5vZGUiLCJmaWxlTm9kZSIsImZpbGVWZXJpZmllcyIsInRvSlNPTiIsInByb2NlZHVyZXNKU09OIiwicHJvY2VkdXJlc1RvUHJvY2VkdXJlc0pTT04iLCJnZXRGaWxlQ29udGVudCIs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
@@ -10,6 +10,7 @@ Object.defineProperty(exports, "default", {
10
10
  });
11
11
  const _occamlanguages = require("occam-languages");
12
12
  const _elements = require("../elements");
13
+ const { breakPointToBreakPointJSON } = _occamlanguages.breakPointUtilities;
13
14
  const _default = (0, _elements.define)(class Label extends _occamlanguages.Element {
14
15
  constructor(context, string, node, breakPoint, name){
15
16
  super(context, string, node, breakPoint);
@@ -22,7 +23,19 @@ const _default = (0, _elements.define)(class Label extends _occamlanguages.Eleme
22
23
  const procedureNameCompares = this.name === procedureName;
23
24
  return procedureNameCompares;
24
25
  }
26
+ toJSON() {
27
+ const string = this.getString();
28
+ let breakPoint;
29
+ breakPoint = this.getBreakPoint();
30
+ const breakPointJSON = breakPointToBreakPointJSON(breakPoint);
31
+ breakPoint = breakPointJSON; ///
32
+ const json = {
33
+ string,
34
+ breakPoint
35
+ };
36
+ return json;
37
+ }
25
38
  static name = "Label";
26
39
  });
27
40
 
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L2xhYmVsLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIExhYmVsIGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgbmFtZSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG5cbiAgY29tcGFyZVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSkge1xuICAgIGNvbnN0IHByb2NlZHVyZU5hbWVDb21wYXJlcyA9ICh0aGlzLm5hbWUgPT09IHByb2NlZHVyZU5hbWUpO1xuXG4gICAgcmV0dXJuIHByb2NlZHVyZU5hbWVDb21wYXJlcztcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJMYWJlbFwiO1xufSk7XG4iXSwibmFtZXMiOlsiZGVmaW5lIiwiTGFiZWwiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwibmFtZSIsImdldE5hbWUiLCJjb21wYXJlUHJvY2VkdXJlTmFtZSIsInByb2NlZHVyZU5hbWUiLCJwcm9jZWR1cmVOYW1lQ29tcGFyZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQU1BOzs7ZUFBQTs7O2dDQUp3QjswQkFFRDtNQUV2QixXQUFlQSxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLGNBQWNDLHVCQUFPO0lBQy9DLFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsSUFBSSxDQUFFO1FBQ25ELEtBQUssQ0FBQ0osU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxJQUFJLEdBQUdBO0lBQ2Q7SUFFQUMsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDRCxJQUFJO0lBQ2xCO0lBRUFFLHFCQUFxQkMsYUFBYSxFQUFFO1FBQ2xDLE1BQU1DLHdCQUF5QixJQUFJLENBQUNKLElBQUksS0FBS0c7UUFFN0MsT0FBT0M7SUFDVDtJQUVBLE9BQU9KLE9BQU8sUUFBUTtBQUN4QiJ9
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L2xhYmVsLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50LCBicmVha1BvaW50VXRpbGl0aWVzIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcblxuY29uc3QgeyBicmVha1BvaW50VG9CcmVha1BvaW50SlNPTiB9ID0gYnJlYWtQb2ludFV0aWxpdGllcztcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIExhYmVsIGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgbmFtZSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG5cbiAgY29tcGFyZVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSkge1xuICAgIGNvbnN0IHByb2NlZHVyZU5hbWVDb21wYXJlcyA9ICh0aGlzLm5hbWUgPT09IHByb2NlZHVyZU5hbWUpO1xuXG4gICAgcmV0dXJuIHByb2NlZHVyZU5hbWVDb21wYXJlcztcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCBzdHJpbmcgPSB0aGlzLmdldFN0cmluZygpO1xuXG4gICAgbGV0IGJyZWFrUG9pbnQ7XG5cbiAgICBicmVha1BvaW50ID0gdGhpcy5nZXRCcmVha1BvaW50KCk7XG5cbiAgICBjb25zdCBicmVha1BvaW50SlNPTiA9IGJyZWFrUG9pbnRUb0JyZWFrUG9pbnRKU09OKGJyZWFrUG9pbnQpO1xuXG4gICAgYnJlYWtQb2ludCA9IGJyZWFrUG9pbnRKU09OOyAgLy8vXG5cbiAgICBjb25zdCBqc29uID0ge1xuICAgICAgc3RyaW5nLFxuICAgICAgYnJlYWtQb2ludFxuICAgIH07XG5cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJMYWJlbFwiO1xufSk7XG4iXSwibmFtZXMiOlsiYnJlYWtQb2ludFRvQnJlYWtQb2ludEpTT04iLCJicmVha1BvaW50VXRpbGl0aWVzIiwiZGVmaW5lIiwiTGFiZWwiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwibmFtZSIsImdldE5hbWUiLCJjb21wYXJlUHJvY2VkdXJlTmFtZSIsInByb2NlZHVyZU5hbWUiLCJwcm9jZWR1cmVOYW1lQ29tcGFyZXMiLCJ0b0pTT04iLCJnZXRTdHJpbmciLCJnZXRCcmVha1BvaW50IiwiYnJlYWtQb2ludEpTT04iLCJqc29uIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFRQTs7O2VBQUE7OztnQ0FONkM7MEJBRXRCO0FBRXZCLE1BQU0sRUFBRUEsMEJBQTBCLEVBQUUsR0FBR0MsbUNBQW1CO01BRTFELFdBQWVDLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsY0FBY0MsdUJBQU87SUFDL0MsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxJQUFJLENBQUU7UUFDbkQsS0FBSyxDQUFDSixTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLElBQUksR0FBR0E7SUFDZDtJQUVBQyxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUNELElBQUk7SUFDbEI7SUFFQUUscUJBQXFCQyxhQUFhLEVBQUU7UUFDbEMsTUFBTUMsd0JBQXlCLElBQUksQ0FBQ0osSUFBSSxLQUFLRztRQUU3QyxPQUFPQztJQUNUO0lBRUFDLFNBQVM7UUFDUCxNQUFNUixTQUFTLElBQUksQ0FBQ1MsU0FBUztRQUU3QixJQUFJUDtRQUVKQSxhQUFhLElBQUksQ0FBQ1EsYUFBYTtRQUUvQixNQUFNQyxpQkFBaUJqQiwyQkFBMkJRO1FBRWxEQSxhQUFhUyxnQkFBaUIsR0FBRztRQUVqQyxNQUFNQyxPQUFPO1lBQ1haO1lBQ0FFO1FBQ0Y7UUFFQSxPQUFPVTtJQUNUO0lBRUEsT0FBT1QsT0FBTyxRQUFRO0FBQ3hCIn0=
@@ -16,6 +16,7 @@ function _interop_require_default(obj) {
16
16
  default: obj
17
17
  };
18
18
  }
19
+ const { breakPointToBreakPointJSON } = _occamlanguages.breakPointUtilities;
19
20
  const _default = (0, _elements.define)(class Parameters extends _occamlanguages.Element {
20
21
  constructor(context, string, node, breakPoint, array){
21
22
  super(context, string, node, breakPoint);
@@ -51,7 +52,19 @@ const _default = (0, _elements.define)(class Parameters extends _occamlanguages.
51
52
  });
52
53
  context.debug(`...compared the '${valuesString}' values against the '${parametersString}' parameters.`);
53
54
  }
55
+ toJSON() {
56
+ const string = this.getString();
57
+ let breakPoint;
58
+ breakPoint = this.getBreakPoint();
59
+ const breakPointJSON = breakPointToBreakPointJSON(breakPoint);
60
+ breakPoint = breakPointJSON; ///
61
+ const json = {
62
+ string,
63
+ breakPoint
64
+ };
65
+ return json;
66
+ }
54
67
  static name = "Parameters";
55
68
  });
56
69
 
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3BhcmFtZXRlcnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIFBhcmFtZXRlcnMgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBhcnJheSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLmFycmF5ID0gYXJyYXk7XG4gIH1cblxuICBnZXRBcnJheSgpIHtcbiAgICByZXR1cm4gdGhpcy5hcnJheTtcbiAgfVxuXG4gIGdldExlbmd0aCgpIHtcbiAgICBjb25zdCBsZW5ndGggPSB0aGlzLmFycmF5Lmxlbmd0aDtcblxuICAgIHJldHVybiBsZW5ndGg7XG4gIH1cblxuICBnZXRQYXJhbWV0ZXIoaW5kZXgpIHtcbiAgICBjb25zdCBwYXJhbWV0ZXIgPSB0aGlzLmFycmF5W2luZGV4XSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIHBhcmFtZXRlcjtcbiAgfVxuXG4gIGZvckVhY2hQYXJhbWV0ZXIoY2FsbGJhY2spIHsgdGhpcy5hcnJheS5mb3JFYWNoKGNhbGxiYWNrKTsgfVxuXG4gIGNvbXBhcmVWYWx1ZXModmFsdWVzLCBjb250ZXh0KSB7XG4gICAgY29uc3QgdmFsdWVzU3RyaW5nID0gdmFsdWVzLmdldFN0cmluZygpLFxuICAgICAgICAgIHBhcmFtZXRlcnNTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpOyAvLy9cblxuICAgIGNvbnRleHQudHJhY2UoYENvbXBhcmluZyB0aGUgJyR7dmFsdWVzU3RyaW5nfScgdmFsdWVzIGFnYWluc3QgdGhlICcke3BhcmFtZXRlcnNTdHJpbmd9JyBwYXJhbWV0ZXJzLi4uYCk7XG5cbiAgICBjb25zdCB2YWx1ZXNMZW5ndGggPSB2YWx1ZXMuZ2V0TGVuZ3RoKCksXG4gICAgICAgICAgcGFyYW1ldGVyc0xlbmd0aCA9IHRoaXMuZ2V0TGVuZ3RoKCk7XG5cbiAgICBpZiAodmFsdWVzTGVuZ3RoICE9PSBwYXJhbWV0ZXJzTGVuZ3RoKSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYFRoZSAnJHt2YWx1ZXNTdHJpbmd9JyBleHByZXNzaW9ucyBhbmQgJyR7cGFyYW1ldGVyc1N0cmluZ30nIHBhcmFtZXRlcnMgYXJlIG5vdCBvZiB0aGUgc2FtZSBsZW5ndGguYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgdGhyb3cgZXhjZXB0aW9uO1xuICAgIH1cblxuICAgIHRoaXMuZm9yRWFjaFBhcmFtZXRlcigocGFyYW1ldGVyLCBpbmRleCkgPT4ge1xuICAgICAgaWYgKHBhcmFtZXRlciAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHZhbHVlcy5nZXRWYWx1ZShpbmRleCk7XG5cbiAgICAgICAgcGFyYW1ldGVyLmNvbXBhcmVWYWx1ZSh2YWx1ZSwgY29udGV4dCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5jb21wYXJlZCB0aGUgJyR7dmFsdWVzU3RyaW5nfScgdmFsdWVzIGFnYWluc3QgdGhlICcke3BhcmFtZXRlcnNTdHJpbmd9JyBwYXJhbWV0ZXJzLmApO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlBhcmFtZXRlcnNcIjtcbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIlBhcmFtZXRlcnMiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwiYXJyYXkiLCJnZXRBcnJheSIsImdldExlbmd0aCIsImxlbmd0aCIsImdldFBhcmFtZXRlciIsImluZGV4IiwicGFyYW1ldGVyIiwiZm9yRWFjaFBhcmFtZXRlciIsImNhbGxiYWNrIiwiZm9yRWFjaCIsImNvbXBhcmVWYWx1ZXMiLCJ2YWx1ZXMiLCJ2YWx1ZXNTdHJpbmciLCJnZXRTdHJpbmciLCJwYXJhbWV0ZXJzU3RyaW5nIiwidHJhY2UiLCJ2YWx1ZXNMZW5ndGgiLCJwYXJhbWV0ZXJzTGVuZ3RoIiwibWVzc2FnZSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwidmFsdWUiLCJnZXRWYWx1ZSIsImNvbXBhcmVWYWx1ZSIsImRlYnVnIiwibmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBUUE7OztlQUFBOzs7Z0NBTndCO2tFQUVGOzBCQUVDOzs7Ozs7TUFFdkIsV0FBZUEsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyxtQkFBbUJDLHVCQUFPO0lBQ3BELFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsS0FBSyxDQUFFO1FBQ3BELEtBQUssQ0FBQ0osU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxLQUFLLEdBQUdBO0lBQ2Y7SUFFQUMsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDRCxLQUFLO0lBQ25CO0lBRUFFLFlBQVk7UUFDVixNQUFNQyxTQUFTLElBQUksQ0FBQ0gsS0FBSyxDQUFDRyxNQUFNO1FBRWhDLE9BQU9BO0lBQ1Q7SUFFQUMsYUFBYUMsS0FBSyxFQUFFO1FBQ2xCLE1BQU1DLFlBQVksSUFBSSxDQUFDTixLQUFLLENBQUNLLE1BQU0sSUFBSTtRQUV2QyxPQUFPQztJQUNUO0lBRUFDLGlCQUFpQkMsUUFBUSxFQUFFO1FBQUUsSUFBSSxDQUFDUixLQUFLLENBQUNTLE9BQU8sQ0FBQ0Q7SUFBVztJQUUzREUsY0FBY0MsTUFBTSxFQUFFZixPQUFPLEVBQUU7UUFDN0IsTUFBTWdCLGVBQWVELE9BQU9FLFNBQVMsSUFDL0JDLG1CQUFtQixJQUFJLENBQUNELFNBQVMsSUFBSSxHQUFHO1FBRTlDakIsUUFBUW1CLEtBQUssQ0FBQyxDQUFDLGVBQWUsRUFBRUgsYUFBYSxzQkFBc0IsRUFBRUUsaUJBQWlCLGVBQWUsQ0FBQztRQUV0RyxNQUFNRSxlQUFlTCxPQUFPVCxTQUFTLElBQy9CZSxtQkFBbUIsSUFBSSxDQUFDZixTQUFTO1FBRXZDLElBQUljLGlCQUFpQkMsa0JBQWtCO1lBQ3JDLE1BQU1DLFVBQVUsQ0FBQyxLQUFLLEVBQUVOLGFBQWEsbUJBQW1CLEVBQUVFLGlCQUFpQix3Q0FBd0MsQ0FBQyxFQUM5R0ssWUFBWUMsa0JBQVMsQ0FBQ0MsV0FBVyxDQUFDSDtZQUV4QyxNQUFNQztRQUNSO1FBRUEsSUFBSSxDQUFDWixnQkFBZ0IsQ0FBQyxDQUFDRCxXQUFXRDtZQUNoQyxJQUFJQyxjQUFjLE1BQU07Z0JBQ3RCLE1BQU1nQixRQUFRWCxPQUFPWSxRQUFRLENBQUNsQjtnQkFFOUJDLFVBQVVrQixZQUFZLENBQUNGLE9BQU8xQjtZQUNoQztRQUNGO1FBRUFBLFFBQVE2QixLQUFLLENBQUMsQ0FBQyxpQkFBaUIsRUFBRWIsYUFBYSxzQkFBc0IsRUFBRUUsaUJBQWlCLGFBQWEsQ0FBQztJQUN4RztJQUVBLE9BQU9ZLE9BQU8sYUFBYTtBQUM3QiJ9
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3BhcmFtZXRlcnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQsIGJyZWFrUG9pbnRVdGlsaXRpZXMgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcblxuY29uc3QgeyBicmVha1BvaW50VG9CcmVha1BvaW50SlNPTiB9ID0gYnJlYWtQb2ludFV0aWxpdGllcztcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIFBhcmFtZXRlcnMgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBhcnJheSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLmFycmF5ID0gYXJyYXk7XG4gIH1cblxuICBnZXRBcnJheSgpIHtcbiAgICByZXR1cm4gdGhpcy5hcnJheTtcbiAgfVxuXG4gIGdldExlbmd0aCgpIHtcbiAgICBjb25zdCBsZW5ndGggPSB0aGlzLmFycmF5Lmxlbmd0aDtcblxuICAgIHJldHVybiBsZW5ndGg7XG4gIH1cblxuICBnZXRQYXJhbWV0ZXIoaW5kZXgpIHtcbiAgICBjb25zdCBwYXJhbWV0ZXIgPSB0aGlzLmFycmF5W2luZGV4XSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIHBhcmFtZXRlcjtcbiAgfVxuXG4gIGZvckVhY2hQYXJhbWV0ZXIoY2FsbGJhY2spIHsgdGhpcy5hcnJheS5mb3JFYWNoKGNhbGxiYWNrKTsgfVxuXG4gIGNvbXBhcmVWYWx1ZXModmFsdWVzLCBjb250ZXh0KSB7XG4gICAgY29uc3QgdmFsdWVzU3RyaW5nID0gdmFsdWVzLmdldFN0cmluZygpLFxuICAgICAgICAgIHBhcmFtZXRlcnNTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpOyAvLy9cblxuICAgIGNvbnRleHQudHJhY2UoYENvbXBhcmluZyB0aGUgJyR7dmFsdWVzU3RyaW5nfScgdmFsdWVzIGFnYWluc3QgdGhlICcke3BhcmFtZXRlcnNTdHJpbmd9JyBwYXJhbWV0ZXJzLi4uYCk7XG5cbiAgICBjb25zdCB2YWx1ZXNMZW5ndGggPSB2YWx1ZXMuZ2V0TGVuZ3RoKCksXG4gICAgICAgICAgcGFyYW1ldGVyc0xlbmd0aCA9IHRoaXMuZ2V0TGVuZ3RoKCk7XG5cbiAgICBpZiAodmFsdWVzTGVuZ3RoICE9PSBwYXJhbWV0ZXJzTGVuZ3RoKSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYFRoZSAnJHt2YWx1ZXNTdHJpbmd9JyBleHByZXNzaW9ucyBhbmQgJyR7cGFyYW1ldGVyc1N0cmluZ30nIHBhcmFtZXRlcnMgYXJlIG5vdCBvZiB0aGUgc2FtZSBsZW5ndGguYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgdGhyb3cgZXhjZXB0aW9uO1xuICAgIH1cblxuICAgIHRoaXMuZm9yRWFjaFBhcmFtZXRlcigocGFyYW1ldGVyLCBpbmRleCkgPT4ge1xuICAgICAgaWYgKHBhcmFtZXRlciAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHZhbHVlcy5nZXRWYWx1ZShpbmRleCk7XG5cbiAgICAgICAgcGFyYW1ldGVyLmNvbXBhcmVWYWx1ZSh2YWx1ZSwgY29udGV4dCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5jb21wYXJlZCB0aGUgJyR7dmFsdWVzU3RyaW5nfScgdmFsdWVzIGFnYWluc3QgdGhlICcke3BhcmFtZXRlcnNTdHJpbmd9JyBwYXJhbWV0ZXJzLmApO1xuICB9XG5cbiAgdG9KU09OKCkge1xuICAgIGNvbnN0IHN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7XG5cbiAgICBsZXQgYnJlYWtQb2ludDtcblxuICAgIGJyZWFrUG9pbnQgPSB0aGlzLmdldEJyZWFrUG9pbnQoKTtcblxuICAgIGNvbnN0IGJyZWFrUG9pbnRKU09OID0gYnJlYWtQb2ludFRvQnJlYWtQb2ludEpTT04oYnJlYWtQb2ludCk7XG5cbiAgICBicmVha1BvaW50ID0gYnJlYWtQb2ludEpTT047ICAvLy9cblxuICAgIGNvbnN0IGpzb24gPSB7XG4gICAgICBzdHJpbmcsXG4gICAgICBicmVha1BvaW50XG4gICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlBhcmFtZXRlcnNcIjtcbn0pO1xuIl0sIm5hbWVzIjpbImJyZWFrUG9pbnRUb0JyZWFrUG9pbnRKU09OIiwiYnJlYWtQb2ludFV0aWxpdGllcyIsImRlZmluZSIsIlBhcmFtZXRlcnMiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwiYXJyYXkiLCJnZXRBcnJheSIsImdldExlbmd0aCIsImxlbmd0aCIsImdldFBhcmFtZXRlciIsImluZGV4IiwicGFyYW1ldGVyIiwiZm9yRWFjaFBhcmFtZXRlciIsImNhbGxiYWNrIiwiZm9yRWFjaCIsImNvbXBhcmVWYWx1ZXMiLCJ2YWx1ZXMiLCJ2YWx1ZXNTdHJpbmciLCJnZXRTdHJpbmciLCJwYXJhbWV0ZXJzU3RyaW5nIiwidHJhY2UiLCJ2YWx1ZXNMZW5ndGgiLCJwYXJhbWV0ZXJzTGVuZ3RoIiwibWVzc2FnZSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwidmFsdWUiLCJnZXRWYWx1ZSIsImNvbXBhcmVWYWx1ZSIsImRlYnVnIiwidG9KU09OIiwiZ2V0QnJlYWtQb2ludCIsImJyZWFrUG9pbnRKU09OIiwianNvbiIsIm5hbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVVBOzs7ZUFBQTs7O2dDQVI2QztrRUFFdkI7MEJBRUM7Ozs7OztBQUV2QixNQUFNLEVBQUVBLDBCQUEwQixFQUFFLEdBQUdDLG1DQUFtQjtNQUUxRCxXQUFlQyxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLG1CQUFtQkMsdUJBQU87SUFDcEQsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxLQUFLLENBQUU7UUFDcEQsS0FBSyxDQUFDSixTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLEtBQUssR0FBR0E7SUFDZjtJQUVBQyxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUNELEtBQUs7SUFDbkI7SUFFQUUsWUFBWTtRQUNWLE1BQU1DLFNBQVMsSUFBSSxDQUFDSCxLQUFLLENBQUNHLE1BQU07UUFFaEMsT0FBT0E7SUFDVDtJQUVBQyxhQUFhQyxLQUFLLEVBQUU7UUFDbEIsTUFBTUMsWUFBWSxJQUFJLENBQUNOLEtBQUssQ0FBQ0ssTUFBTSxJQUFJO1FBRXZDLE9BQU9DO0lBQ1Q7SUFFQUMsaUJBQWlCQyxRQUFRLEVBQUU7UUFBRSxJQUFJLENBQUNSLEtBQUssQ0FBQ1MsT0FBTyxDQUFDRDtJQUFXO0lBRTNERSxjQUFjQyxNQUFNLEVBQUVmLE9BQU8sRUFBRTtRQUM3QixNQUFNZ0IsZUFBZUQsT0FBT0UsU0FBUyxJQUMvQkMsbUJBQW1CLElBQUksQ0FBQ0QsU0FBUyxJQUFJLEdBQUc7UUFFOUNqQixRQUFRbUIsS0FBSyxDQUFDLENBQUMsZUFBZSxFQUFFSCxhQUFhLHNCQUFzQixFQUFFRSxpQkFBaUIsZUFBZSxDQUFDO1FBRXRHLE1BQU1FLGVBQWVMLE9BQU9ULFNBQVMsSUFDL0JlLG1CQUFtQixJQUFJLENBQUNmLFNBQVM7UUFFdkMsSUFBSWMsaUJBQWlCQyxrQkFBa0I7WUFDckMsTUFBTUMsVUFBVSxDQUFDLEtBQUssRUFBRU4sYUFBYSxtQkFBbUIsRUFBRUUsaUJBQWlCLHdDQUF3QyxDQUFDLEVBQzlHSyxZQUFZQyxrQkFBUyxDQUFDQyxXQUFXLENBQUNIO1lBRXhDLE1BQU1DO1FBQ1I7UUFFQSxJQUFJLENBQUNaLGdCQUFnQixDQUFDLENBQUNELFdBQVdEO1lBQ2hDLElBQUlDLGNBQWMsTUFBTTtnQkFDdEIsTUFBTWdCLFFBQVFYLE9BQU9ZLFFBQVEsQ0FBQ2xCO2dCQUU5QkMsVUFBVWtCLFlBQVksQ0FBQ0YsT0FBTzFCO1lBQ2hDO1FBQ0Y7UUFFQUEsUUFBUTZCLEtBQUssQ0FBQyxDQUFDLGlCQUFpQixFQUFFYixhQUFhLHNCQUFzQixFQUFFRSxpQkFBaUIsYUFBYSxDQUFDO0lBQ3hHO0lBRUFZLFNBQVM7UUFDUCxNQUFNN0IsU0FBUyxJQUFJLENBQUNnQixTQUFTO1FBRTdCLElBQUlkO1FBRUpBLGFBQWEsSUFBSSxDQUFDNEIsYUFBYTtRQUUvQixNQUFNQyxpQkFBaUJyQywyQkFBMkJRO1FBRWxEQSxhQUFhNkIsZ0JBQWlCLEdBQUc7UUFFakMsTUFBTUMsT0FBTztZQUNYaEM7WUFDQUU7UUFDRjtRQUVBLE9BQU84QjtJQUNUO0lBRUEsT0FBT0MsT0FBTyxhQUFhO0FBQzdCIn0=
@@ -0,0 +1,104 @@
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 _exception = /*#__PURE__*/ _interop_require_default(require("../exception"));
13
+ const _elements = require("../elements");
14
+ const _values = require("../utilities/values");
15
+ const _parameters = require("../utilities/parameters");
16
+ const _json = require("../utilities/json");
17
+ function _interop_require_default(obj) {
18
+ return obj && obj.__esModule ? obj : {
19
+ default: obj
20
+ };
21
+ }
22
+ const { breakPointFromJSON, breakPointToBreakPointJSON } = _occamlanguages.breakPointUtilities;
23
+ const _default = (0, _elements.define)(class Procedure extends _occamlanguages.Element {
24
+ constructor(context, string, node, breakPoint, type, label, parameters, returnBlock){
25
+ super(context, string, node, breakPoint);
26
+ this.type = type;
27
+ this.label = label;
28
+ this.parameters = parameters;
29
+ this.returnBlock = returnBlock;
30
+ }
31
+ getType() {
32
+ return this.type;
33
+ }
34
+ getLabel() {
35
+ return this.label;
36
+ }
37
+ getParameters() {
38
+ return this.parameters;
39
+ }
40
+ getReturnBlock() {
41
+ return this.returnBlock;
42
+ }
43
+ getName() {
44
+ return this.label.getName();
45
+ }
46
+ isBoolean() {
47
+ const type = this.getType(), booleanType = type.isBooleanType(), boolean = booleanType; ///
48
+ return boolean;
49
+ }
50
+ getReturnStatement() {
51
+ return this.returnBlock.getReturnStatement();
52
+ }
53
+ compareProcedureName(procedureName) {
54
+ return this.label.compareProcedureName(procedureName);
55
+ }
56
+ async call(values, context) {
57
+ await this.break(context);
58
+ const procedureString = this.getString(); ///
59
+ context.trace(`Calling the '${procedureString}' procedure...`);
60
+ this.parameters.compareValues(values, context);
61
+ const variables = (0, _parameters.variablesFromValuesAndParameters)(values, this.parameters, context), value = await this.returnBlock.evaluate(variables, context), valueType = value.getType(), typeEqualToValueType = this.type.isEqualTo(valueType);
62
+ if (!typeEqualToValueType) {
63
+ const valueString = value.getString(), typeString = this.type.getString(), message = `The '${valueString}' value's '${typeString}' type is not equal to the '${procedureString}' procedure's '${typeString}' type.`, exception = _exception.default.fromMessage(message);
64
+ throw exception;
65
+ }
66
+ context.debug(`...called the '${procedureString}' procedure.`);
67
+ return value;
68
+ }
69
+ async callNominally(nominalValues) {
70
+ const context = this.getContext();
71
+ await this.break(context);
72
+ const procedureString = this.getString(); ///
73
+ context.trace(`Calling the '${procedureString}' function nominally...`);
74
+ const values = (0, _values.valuesFromNominalValues)(nominalValues, context), term = await this.call(values, context);
75
+ context.debug(`...called the '${procedureString}' function nominally.`);
76
+ return term;
77
+ }
78
+ toJSON() {
79
+ const typeJSON = (0, _json.typeToTypeJSON)(this.type), labelJSON = (0, _json.labelToLabelJSON)(this.label), parametersJSON = (0, _json.parametersToParametersJSON)(this.parameters), string = this.getString();
80
+ let breakPoint;
81
+ breakPoint = this.getBreakPoint();
82
+ const breakPointJSON = breakPointToBreakPointJSON(breakPoint);
83
+ breakPoint = breakPointJSON; ///
84
+ const type = typeJSON, label = labelJSON, parameters = parametersJSON, json = {
85
+ string,
86
+ breakPoint,
87
+ type,
88
+ label,
89
+ parameters
90
+ };
91
+ return json;
92
+ }
93
+ static name = "Procedure";
94
+ static fromJSON(json, context) {
95
+ return instantiate((context)=>{
96
+ const { string } = json, procedureNode = instantiatePrpcedure(string, context), node = procedureNode, breakPoint = breakPointFromJSON(json), frame = frameFromPrpcedureNode(procedureNode, context), goal = goalFromPrpcedureNode(procedureNode, context);
97
+ context = null;
98
+ const procedure = new Prpcedure(context, string, node, breakPoint, frame, goal);
99
+ return procedure;
100
+ }, context);
101
+ }
102
+ });
103
+
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Byb2NlZHVyZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCwgYnJlYWtQb2ludFV0aWxpdGllcyB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcblxuaW1wb3J0IEV4Y2VwdGlvbiBmcm9tIFwiLi4vZXhjZXB0aW9uXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgdmFsdWVzRnJvbU5vbWluYWxWYWx1ZXMgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3ZhbHVlc1wiO1xuaW1wb3J0IHsgdmFyaWFibGVzRnJvbVZhbHVlc0FuZFBhcmFtZXRlcnMgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3BhcmFtZXRlcnNcIjtcbmltcG9ydCB7IHR5cGVUb1R5cGVKU09OLCBsYWJlbFRvTGFiZWxKU09OLCBwYXJhbWV0ZXJzVG9QYXJhbWV0ZXJzSlNPTiB9IGZyb20gXCIuLi91dGlsaXRpZXMvanNvblwiO1xuXG5jb25zdCB7IGJyZWFrUG9pbnRGcm9tSlNPTiwgYnJlYWtQb2ludFRvQnJlYWtQb2ludEpTT04gfSA9IGJyZWFrUG9pbnRVdGlsaXRpZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBQcm9jZWR1cmUgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB0eXBlLCBsYWJlbCwgcGFyYW1ldGVycywgcmV0dXJuQmxvY2spIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLmxhYmVsID0gbGFiZWw7XG4gICAgdGhpcy5wYXJhbWV0ZXJzID0gcGFyYW1ldGVycztcbiAgICB0aGlzLnJldHVybkJsb2NrID0gcmV0dXJuQmxvY2s7XG4gIH1cblxuICBnZXRUeXBlKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGU7XG4gIH1cblxuICBnZXRMYWJlbCgpIHtcbiAgICByZXR1cm4gdGhpcy5sYWJlbDtcbiAgfVxuXG4gIGdldFBhcmFtZXRlcnMoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyYW1ldGVycztcbiAgfVxuXG4gIGdldFJldHVybkJsb2NrKCkge1xuICAgIHJldHVybiB0aGlzLnJldHVybkJsb2NrO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHsgcmV0dXJuIHRoaXMubGFiZWwuZ2V0TmFtZSgpOyB9XG5cbiAgaXNCb29sZWFuKCkge1xuICAgIGNvbnN0IHR5cGUgPSB0aGlzLmdldFR5cGUoKSxcbiAgICAgICAgICBib29sZWFuVHlwZSA9IHR5cGUuaXNCb29sZWFuVHlwZSgpLFxuICAgICAgICAgIGJvb2xlYW4gPSBib29sZWFuVHlwZTsgIC8vL1xuXG4gICAgcmV0dXJuIGJvb2xlYW47XG4gIH1cblxuICBnZXRSZXR1cm5TdGF0ZW1lbnQoKSB7IHJldHVybiB0aGlzLnJldHVybkJsb2NrLmdldFJldHVyblN0YXRlbWVudCgpOyB9XG5cbiAgY29tcGFyZVByb2NlZHVyZU5hbWUocHJvY2VkdXJlTmFtZSkgeyByZXR1cm4gdGhpcy5sYWJlbC5jb21wYXJlUHJvY2VkdXJlTmFtZShwcm9jZWR1cmVOYW1lKTsgfVxuXG4gIGFzeW5jIGNhbGwodmFsdWVzLCBjb250ZXh0KSB7XG4gICAgYXdhaXQgdGhpcy5icmVhayhjb250ZXh0KTtcblxuICAgIGNvbnN0IHByb2NlZHVyZVN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7ICAvLy9cblxuICAgIGNvbnRleHQudHJhY2UoYENhbGxpbmcgdGhlICcke3Byb2NlZHVyZVN0cmluZ30nIHByb2NlZHVyZS4uLmApO1xuXG4gICAgdGhpcy5wYXJhbWV0ZXJzLmNvbXBhcmVWYWx1ZXModmFsdWVzLCBjb250ZXh0KTtcblxuICAgIGNvbnN0IHZhcmlhYmxlcyA9IHZhcmlhYmxlc0Zyb21WYWx1ZXNBbmRQYXJhbWV0ZXJzKHZhbHVlcywgdGhpcy5wYXJhbWV0ZXJzLCBjb250ZXh0KSxcbiAgICAgICAgICB2YWx1ZSA9IGF3YWl0IHRoaXMucmV0dXJuQmxvY2suZXZhbHVhdGUodmFyaWFibGVzLCBjb250ZXh0KSxcbiAgICAgICAgICB2YWx1ZVR5cGUgPSB2YWx1ZS5nZXRUeXBlKCksXG4gICAgICAgICAgdHlwZUVxdWFsVG9WYWx1ZVR5cGUgPSB0aGlzLnR5cGUuaXNFcXVhbFRvKHZhbHVlVHlwZSk7XG5cbiAgICBpZiAoIXR5cGVFcXVhbFRvVmFsdWVUeXBlKSB7XG4gICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICAgICAgdHlwZVN0cmluZyA9IHRoaXMudHlwZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgIG1lc3NhZ2UgPSBgVGhlICcke3ZhbHVlU3RyaW5nfScgdmFsdWUncyAnJHt0eXBlU3RyaW5nfScgdHlwZSBpcyBub3QgZXF1YWwgdG8gdGhlICcke3Byb2NlZHVyZVN0cmluZ30nIHByb2NlZHVyZSdzICcke3R5cGVTdHJpbmd9JyB0eXBlLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5jYWxsZWQgdGhlICcke3Byb2NlZHVyZVN0cmluZ30nIHByb2NlZHVyZS5gKTtcblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIGFzeW5jIGNhbGxOb21pbmFsbHkobm9taW5hbFZhbHVlcykge1xuICAgIGNvbnN0IGNvbnRleHQgPSB0aGlzLmdldENvbnRleHQoKTtcblxuICAgIGF3YWl0IHRoaXMuYnJlYWsoY29udGV4dCk7XG5cbiAgICBjb25zdCBwcm9jZWR1cmVTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpOyAgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBDYWxsaW5nIHRoZSAnJHtwcm9jZWR1cmVTdHJpbmd9JyBmdW5jdGlvbiBub21pbmFsbHkuLi5gKTtcblxuICAgIGNvbnN0IHZhbHVlcyA9IHZhbHVlc0Zyb21Ob21pbmFsVmFsdWVzKG5vbWluYWxWYWx1ZXMsIGNvbnRleHQpLFxuICAgICAgICAgIHRlcm0gPSBhd2FpdCB0aGlzLmNhbGwodmFsdWVzLCBjb250ZXh0KTtcblxuICAgIGNvbnRleHQuZGVidWcoYC4uLmNhbGxlZCB0aGUgJyR7cHJvY2VkdXJlU3RyaW5nfScgZnVuY3Rpb24gbm9taW5hbGx5LmApO1xuXG4gICAgcmV0dXJuIHRlcm07XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgY29uc3QgdHlwZUpTT04gPSB0eXBlVG9UeXBlSlNPTih0aGlzLnR5cGUpLFxuICAgICAgICAgIGxhYmVsSlNPTiA9IGxhYmVsVG9MYWJlbEpTT04odGhpcy5sYWJlbCksXG4gICAgICAgICAgcGFyYW1ldGVyc0pTT04gPSBwYXJhbWV0ZXJzVG9QYXJhbWV0ZXJzSlNPTih0aGlzLnBhcmFtZXRlcnMpLFxuICAgICAgICAgIHN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7XG5cbiAgICBsZXQgYnJlYWtQb2ludDtcblxuICAgIGJyZWFrUG9pbnQgPSB0aGlzLmdldEJyZWFrUG9pbnQoKTtcblxuICAgIGNvbnN0IGJyZWFrUG9pbnRKU09OID0gYnJlYWtQb2ludFRvQnJlYWtQb2ludEpTT04oYnJlYWtQb2ludCk7XG5cbiAgICBicmVha1BvaW50ID0gYnJlYWtQb2ludEpTT047ICAvLy9cblxuICAgIGNvbnN0IHR5cGUgPSB0eXBlSlNPTiwgIC8vL1xuICAgICAgICAgIGxhYmVsID0gbGFiZWxKU09OLCAgLy8vXG4gICAgICAgICAgcGFyYW1ldGVycyA9IHBhcmFtZXRlcnNKU09OLCAgLy8vXG4gICAgICAgICAganNvbiA9IHtcbiAgICAgICAgICAgIHN0cmluZyxcbiAgICAgICAgICAgIGJyZWFrUG9pbnQsXG4gICAgICAgICAgICB0eXBlLFxuICAgICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgICBwYXJhbWV0ZXJzXG4gICAgICAgICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlByb2NlZHVyZVwiO1xuXG4gIHN0YXRpYyBmcm9tSlNPTihqc29uLCBjb250ZXh0KSB7XG4gICAgcmV0dXJuIGluc3RhbnRpYXRlKChjb250ZXh0KSA9PiB7XG4gICAgICBjb25zdCB7IHN0cmluZyB9ID0ganNvbixcbiAgICAgICAgICAgIHByb2NlZHVyZU5vZGUgPSBpbnN0YW50aWF0ZVBycGNlZHVyZShzdHJpbmcsIGNvbnRleHQpLFxuICAgICAgICAgICAgbm9kZSA9IHByb2NlZHVyZU5vZGUsICAvLy9cbiAgICAgICAgICAgIGJyZWFrUG9pbnQgPSBicmVha1BvaW50RnJvbUpTT04oanNvbiksXG4gICAgICAgICAgICBmcmFtZSA9IGZyYW1lRnJvbVBycGNlZHVyZU5vZGUocHJvY2VkdXJlTm9kZSwgY29udGV4dCksXG4gICAgICAgICAgICBnb2FsID0gZ29hbEZyb21QcnBjZWR1cmVOb2RlKHByb2NlZHVyZU5vZGUsIGNvbnRleHQpO1xuXG4gICAgICBjb250ZXh0ID0gbnVsbDtcblxuICAgICAgY29uc3QgcHJvY2VkdXJlID0gbmV3IFBycGNlZHVyZShjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIGZyYW1lLCBnb2FsKTtcblxuICAgICAgcmV0dXJuIHByb2NlZHVyZTtcbiAgICB9LCBjb250ZXh0KTtcbiAgfVxufSk7XG4iXSwibmFtZXMiOlsiYnJlYWtQb2ludEZyb21KU09OIiwiYnJlYWtQb2ludFRvQnJlYWtQb2ludEpTT04iLCJicmVha1BvaW50VXRpbGl0aWVzIiwiZGVmaW5lIiwiUHJvY2VkdXJlIiwiRWxlbWVudCIsImNvbnRleHQiLCJzdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsInR5cGUiLCJsYWJlbCIsInBhcmFtZXRlcnMiLCJyZXR1cm5CbG9jayIsImdldFR5cGUiLCJnZXRMYWJlbCIsImdldFBhcmFtZXRlcnMiLCJnZXRSZXR1cm5CbG9jayIsImdldE5hbWUiLCJpc0Jvb2xlYW4iLCJib29sZWFuVHlwZSIsImlzQm9vbGVhblR5cGUiLCJib29sZWFuIiwiZ2V0UmV0dXJuU3RhdGVtZW50IiwiY29tcGFyZVByb2NlZHVyZU5hbWUiLCJwcm9jZWR1cmVOYW1lIiwiY2FsbCIsInZhbHVlcyIsImJyZWFrIiwicHJvY2VkdXJlU3RyaW5nIiwiZ2V0U3RyaW5nIiwidHJhY2UiLCJjb21wYXJlVmFsdWVzIiwidmFyaWFibGVzIiwidmFyaWFibGVzRnJvbVZhbHVlc0FuZFBhcmFtZXRlcnMiLCJ2YWx1ZSIsImV2YWx1YXRlIiwidmFsdWVUeXBlIiwidHlwZUVxdWFsVG9WYWx1ZVR5cGUiLCJpc0VxdWFsVG8iLCJ2YWx1ZVN0cmluZyIsInR5cGVTdHJpbmciLCJtZXNzYWdlIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJkZWJ1ZyIsImNhbGxOb21pbmFsbHkiLCJub21pbmFsVmFsdWVzIiwiZ2V0Q29udGV4dCIsInZhbHVlc0Zyb21Ob21pbmFsVmFsdWVzIiwidGVybSIsInRvSlNPTiIsInR5cGVKU09OIiwidHlwZVRvVHlwZUpTT04iLCJsYWJlbEpTT04iLCJsYWJlbFRvTGFiZWxKU09OIiwicGFyYW1ldGVyc0pTT04iLCJwYXJhbWV0ZXJzVG9QYXJhbWV0ZXJzSlNPTiIsImdldEJyZWFrUG9pbnQiLCJicmVha1BvaW50SlNPTiIsImpzb24iLCJuYW1lIiwiZnJvbUpTT04iLCJpbnN0YW50aWF0ZSIsInByb2NlZHVyZU5vZGUiLCJpbnN0YW50aWF0ZVBycGNlZHVyZSIsImZyYW1lIiwiZnJhbWVGcm9tUHJwY2VkdXJlTm9kZSIsImdvYWwiLCJnb2FsRnJvbVBycGNlZHVyZU5vZGUiLCJwcm9jZWR1cmUiLCJQcnBjZWR1cmUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWFBOzs7ZUFBQTs7O2dDQVg2QztrRUFFdkI7MEJBRUM7d0JBQ2lCOzRCQUNTO3NCQUM0Qjs7Ozs7O0FBRTdFLE1BQU0sRUFBRUEsa0JB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
@@ -12,6 +12,7 @@ const _occamlanguages = require("occam-languages");
12
12
  const _elements = require("../elements");
13
13
  const _string = require("../utilities/string");
14
14
  const _typeNames = require("../typeNames");
15
+ const { breakPointToBreakPointJSON } = _occamlanguages.breakPointUtilities;
15
16
  const _default = (0, _elements.define)(class Type extends _occamlanguages.Element {
16
17
  constructor(context, string, node, breakPoint, name, argumentType){
17
18
  super(context, string, node, breakPoint);
@@ -76,6 +77,18 @@ const _default = (0, _elements.define)(class Type extends _occamlanguages.Elemen
76
77
  }
77
78
  return equalTo;
78
79
  }
80
+ toJSON() {
81
+ const string = this.getString();
82
+ let breakPoint;
83
+ breakPoint = this.getBreakPoint();
84
+ const breakPointJSON = breakPointToBreakPointJSON(breakPoint);
85
+ breakPoint = breakPointJSON; ///
86
+ const json = {
87
+ string,
88
+ breakPoint
89
+ };
90
+ return json;
91
+ }
79
92
  static name = "Type";
80
93
  static fromTypeName(typeName, context) {
81
94
  let type = null;
@@ -94,4 +107,4 @@ const _default = (0, _elements.define)(class Type extends _occamlanguages.Elemen
94
107
  }
95
108
  });
96
109
 
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3R5cGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuXG5pbXBvcnQgeyB0eXBlU3RyaW5nRnJvbVR5cGVOYW1lQW5kQXJndW1lbnRUeXBlTmFtZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5pbXBvcnQgeyBMSVNUX1RZUEVfTkFNRSwgU1RSSU5HX1RZUEVfTkFNRSwgQk9PTEVBTl9UWVBFX05BTUUsIElOVEVHRVJfVFlQRV9OQU1FLCBOT01JTkFMX1ZBTFVFX1RZUEVfTkFNRSB9IGZyb20gXCIuLi90eXBlTmFtZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIFR5cGUgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBuYW1lLCBhcmd1bWVudFR5cGUpIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgICB0aGlzLmFyZ3VtZW50VHlwZSA9IGFyZ3VtZW50VHlwZTtcbiAgfVxuXG4gIGdldE5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMubmFtZTtcbiAgfVxuXG4gIGdldEFyZ3VtZW50VHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy5hcmd1bWVudFR5cGU7XG4gIH1cblxuICBpc0xpc3RUeXBlKCkge1xuICAgIGNvbnN0IGxpc3RUeXBlID0gKHRoaXMubmFtZSA9PT0gTElTVF9UWVBFX05BTUUpO1xuXG4gICAgcmV0dXJuIGxpc3RUeXBlO1xuICB9XG5cbiAgaXNTdHJpbmdUeXBlKCkge1xuICAgIGNvbnN0IGJvb2xlYW5UeXBlID0gKHRoaXMubmFtZSA9PT0gU1RSSU5HX1RZUEVfTkFNRSk7XG5cbiAgICByZXR1cm4gYm9vbGVhblR5cGU7XG4gIH1cblxuICBpc0Jvb2xlYW5UeXBlKCkge1xuICAgIGNvbnN0IGJvb2xlYW5UeXBlID0gKHRoaXMubmFtZSA9PT0gQk9PTEVBTl9UWVBFX05BTUUpO1xuXG4gICAgcmV0dXJuIGJvb2xlYW5UeXBlO1xuICB9XG5cbiAgaXNJbnRlZ2VyVHlwZSgpIHtcbiAgICBjb25zdCBpbnRlZ2VyVHlwZSA9ICh0aGlzLm5hbWUgPT09IElOVEVHRVJfVFlQRV9OQU1FKTtcblxuICAgIHJldHVybiBpbnRlZ2VyVHlwZTtcbiAgfVxuXG4gIGlzTm9taW5hbFZhbHVlVHlwZSgpIHtcbiAgICBjb25zdCBsaXN0VHlwZSA9ICh0aGlzLm5hbWUgPT09IE5PTUlOQUxfVkFMVUVfVFlQRV9OQU1FKTtcblxuICAgIHJldHVybiBsaXN0VHlwZTtcbiAgfVxuXG4gIGlzRXF1YWxUbyh0eXBlKSB7XG4gICAgbGV0IGVxdWFsVG8gPSBmYWxzZTtcblxuICAgIGNvbnN0IHR5cGVOYW1lID0gdHlwZS5nZXROYW1lKCk7XG5cbiAgICBpZiAodGhpcy5uYW1lID09PSB0eXBlTmFtZSkge1xuICAgICAgc3dpdGNoICh0aGlzLm5hbWUpIHtcbiAgICAgICAgY2FzZSBMSVNUX1RZUEVfTkFNRToge1xuICAgICAgICAgIGNvbnN0IHR5cGVBcmd1bWVudFR5cGUgPSB0eXBlLmdldEFyZ3VtZW50VHlwZSgpO1xuXG4gICAgICAgICAgaWYgKCh0aGlzLmFyZ3VtZW50VHlwZSA9PT0gbnVsbCkgfHwgKHR5cGVBcmd1bWVudFR5cGUgPT09IG51bGwpKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5hcmd1bWVudFR5cGUgPT09IHR5cGVBcmd1bWVudFR5cGUpIHtcbiAgICAgICAgICAgICAgZXF1YWxUbyA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IGFyZ3VlbW50VHlwZUVxdWFsVG9UeXBlQXJndW1lbnRUeXBlID0gdGhpcy5hcmd1bWVudFR5cGUuaXNFcXVhbFRvKHR5cGVBcmd1bWVudFR5cGUpO1xuXG4gICAgICAgICAgICBpZiAoYXJndWVtbnRUeXBlRXF1YWxUb1R5cGVBcmd1bWVudFR5cGUpIHtcbiAgICAgICAgICAgICAgZXF1YWxUbyA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cblxuICAgICAgICBjYXNlIFNUUklOR19UWVBFX05BTUU6XG4gICAgICAgIGNhc2UgQk9PTEVBTl9UWVBFX05BTUU6XG4gICAgICAgIGNhc2UgSU5URUdFUl9UWVBFX05BTUU6XG4gICAgICAgIGNhc2UgTk9NSU5BTF9WQUxVRV9UWVBFX05BTUU6IHtcbiAgICAgICAgICBlcXVhbFRvID0gdHJ1ZTtcblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGVxdWFsVG87XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiVHlwZVwiO1xuXG4gIHN0YXRpYyBmcm9tVHlwZU5hbWUodHlwZU5hbWUsIGNvbnRleHQpIHtcbiAgICBsZXQgdHlwZSA9IG51bGw7XG5cbiAgICBpZiAodHlwZU5hbWUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG5vZGUgPSBudWxsLCAgLy8vXG4gICAgICAgICAgICBuYW1lID0gdHlwZU5hbWUsICAvLy9cbiAgICAgICAgICAgIGFyZ3VtZW50VHlwZSA9IG51bGwsXG4gICAgICAgICAgICB0eXBlU3RyaW5nID0gdHlwZU5hbWUsICAvLy9cbiAgICAgICAgICAgIHN0cmluZyA9IHR5cGVTdHJpbmcsICAvLy9cbiAgICAgICAgICAgIGJyZWFrUG9pbnQgPSBudWxsO1xuXG4gICAgICBjb250ZXh0ID0gbnVsbDtcblxuICAgICAgdHlwZSA9IG5ldyBUeXBlKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgbmFtZSwgYXJndW1lbnRUeXBlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHlwZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tVHlwZU5hbWVBbmRBcmd1bWVudFR5cGVOYW1lKHR5cGVOYW1lLCBhcmd1bWVudFR5cGVOYW1lLCBjb250ZXh0KSB7XG4gICAgY29uc3Qgbm9kZSA9IG51bGwsICAvLy9cbiAgICAgICAgICBuYW1lID0gdHlwZU5hbWUsICAvLy9cbiAgICAgICAgICBhcmd1bWVudFR5cGUgPSBUeXBlLmZyb21UeXBlTmFtZShhcmd1bWVudFR5cGVOYW1lLCBjb250ZXh0KSxcbiAgICAgICAgICB0eXBlU3RyaW5nID0gdHlwZVN0cmluZ0Zyb21UeXBlTmFtZUFuZEFyZ3VtZW50VHlwZU5hbWUodHlwZU5hbWUsIGFyZ3VtZW50VHlwZU5hbWUpLFxuICAgICAgICAgIHN0cmluZyA9IHR5cGVTdHJpbmcsICAvLy9cbiAgICAgICAgICBicmVha1BvaW50ID0gbnVsbDtcblxuICAgIGNvbnRleHQgPSBudWxsO1xuXG4gICAgY29uc3QgdHlwZSA9IG5ldyBUeXBlKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgbmFtZSwgYXJndW1lbnRUeXBlKTtcblxuICAgIHJldHVybiB0eXBlO1xuICB9XG5cbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIlR5cGUiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwibmFtZSIsImFyZ3VtZW50VHlwZSIsImdldE5hbWUiLCJnZXRBcmd1bWVudFR5cGUiLCJpc0xpc3RUeXBlIiwibGlzdFR5cGUiLCJMSVNUX1RZUEVfTkFNRSIsImlzU3RyaW5nVHlwZSIsImJvb2xlYW5UeXBlIiwiU1RSSU5HX1RZUEVfTkFNRSIsImlzQm9vbGVhblR5cGUiLCJCT09MRUFOX1RZUEVfTkFNRSIsImlzSW50ZWdlclR5cGUiLCJpbnRlZ2VyVHlwZSIsIklOVEVHRVJfVFlQRV9OQU1FIiwiaXNOb21pbmFsVmFsdWVUeXBlIiwiTk9NSU5BTF9WQUxVRV9UWVBFX05BTUUiLCJpc0VxdWFsVG8iLCJ0eXBlIiwiZXF1YWxUbyIsInR5cGVOYW1lIiwidHlwZUFyZ3VtZW50VHlwZSIsImFyZ3VlbW50VHlwZUVxdWFsVG9UeXBlQXJndW1lbnRUeXBlIiwiZnJvbVR5cGVOYW1lIiwidHlwZVN0cmluZyIsImZyb21UeXBlTmFtZUFuZEFyZ3VtZW50VHlwZU5hbWUiLCJhcmd1bWVudFR5cGVOYW1lIiwidHlwZVN0cmluZ0Zyb21UeXBlTmFtZUFuZEFyZ3VtZW50VHlwZU5hbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVNBOzs7ZUFBQTs7O2dDQVB3QjswQkFFRDt3QkFFbUM7MkJBQ3NEO01BRWhILFdBQWVBLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsYUFBYUMsdUJBQU87SUFDOUMsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxJQUFJLEVBQUVDLFlBQVksQ0FBRTtRQUNqRSxLQUFLLENBQUNMLFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtRQUNaLElBQUksQ0FBQ0MsWUFBWSxHQUFHQTtJQUN0QjtJQUVBQyxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUNGLElBQUk7SUFDbEI7SUFFQUcsa0JBQWtCO1FBQ2hCLE9BQU8sSUFBSSxDQUFDRixZQUFZO0lBQzFCO0lBRUFHLGFBQWE7UUFDWCxNQUFNQyxXQUFZLElBQUksQ0FBQ0wsSUFBSSxLQUFLTSx5QkFBYztRQUU5QyxPQUFPRDtJQUNUO0lBRUFFLGVBQWU7UUFDYixNQUFNQyxjQUFlLElBQUksQ0FBQ1IsSUFBSSxLQUFLUywyQkFBZ0I7UUFFbkQsT0FBT0Q7SUFDVDtJQUVBRSxnQkFBZ0I7UUFDZCxNQUFNRixjQUFlLElBQUksQ0FBQ1IsSUFBSSxLQUFLVyw0QkFBaUI7UUFFcEQsT0FBT0g7SUFDVDtJQUVBSSxnQkFBZ0I7UUFDZCxNQUFNQyxjQUFlLElBQUksQ0FBQ2IsSUFBSSxLQUFLYyw0QkFBaUI7UUFFcEQsT0FBT0Q7SUFDVDtJQUVBRSxxQkFBcUI7UUFDbkIsTUFBTVYsV0FBWSxJQUFJLENBQUNMLElBQUksS0FBS2dCLGtDQUF1QjtRQUV2RCxPQUFPWDtJQUNUO0lBRUFZLFVBQVVDLElBQUksRUFBRTtRQUNkLElBQUlDLFVBQVU7UUFFZCxNQUFNQyxXQUFXRixLQUFLaEIsT0FBTztRQUU3QixJQUFJLElBQUksQ0FBQ0YsSUFBSSxLQUFLb0IsVUFBVTtZQUMxQixPQUFRLElBQUksQ0FBQ3BCLElBQUk7Z0JBQ2YsS0FBS00seUJBQWM7b0JBQUU7d0JBQ25CLE1BQU1lLG1CQUFtQkgsS0FBS2YsZUFBZTt3QkFFN0MsSUFBSSxBQUFDLElBQUksQ0FBQ0YsWUFBWSxLQUFLLFFBQVVvQixxQkFBcUIsTUFBTzs0QkFDL0QsSUFBSSxJQUFJLENBQUNwQixZQUFZLEtBQUtvQixrQkFBa0I7Z0NBQzFDRixVQUFVOzRCQUNaO3dCQUNGLE9BQU87NEJBQ0wsTUFBTUcsc0NBQXNDLElBQUksQ0FBQ3JCLFlBQVksQ0FBQ2dCLFNBQVMsQ0FBQ0k7NEJBRXhFLElBQUlDLHFDQUFxQztnQ0FDdkNILFVBQVU7NEJBQ1o7d0JBQ0Y7d0JBRUE7b0JBQ0Y7Z0JBRUEsS0FBS1YsMkJBQWdCO2dCQUNyQixLQUFLRSw0QkFBaUI7Z0JBQ3RCLEtBQUtHLDRCQUFpQjtnQkFDdEIsS0FBS0Usa0NBQXVCO29CQUFFO3dCQUM1QkcsVUFBVTt3QkFFVjtvQkFDRjtZQUNGO1FBQ0Y7UUFFQSxPQUFPQTtJQUNUO0lBRUEsT0FBT25CLE9BQU8sT0FBTztJQUVyQixPQUFPdUIsYUFBYUgsUUFBUSxFQUFFeEIsT0FBTyxFQUFFO1FBQ3JDLElBQUlzQixPQUFPO1FBRVgsSUFBSUUsYUFBYSxNQUFNO1lBQ3JCLE1BQU10QixPQUFPLE1BQ1BFLE9BQU9vQixVQUNQbkIsZUFBZSxNQUNmdUIsYUFBYUosVUFDYnZCLFNBQVMyQixZQUNUekIsYUFBYTtZQUVuQkgsVUFBVTtZQUVWc0IsT0FBTyxJQUFJeEIsS0FBS0UsU0FBU0MsUUFBUUMsTUFBTUMsWUFBWUMsTUFBTUM7UUFDM0Q7UUFFQSxPQUFPaUI7SUFDVDtJQUVBLE9BQU9PLGdDQUFnQ0wsUUFBUSxFQUFFTSxnQkFBZ0IsRUFBRTlCLE9BQU8sRUFBRTtRQUMxRSxNQUFNRSxPQUFPLE1BQ1BFLE9BQU9vQixVQUNQbkIsZUFBZVAsS0FBSzZCLFlBQVksQ0FBQ0csa0JBQWtCOUIsVUFDbkQ0QixhQUFhRyxJQUFBQSxpREFBeUMsRUFBQ1AsVUFBVU0sbUJBQ2pFN0IsU0FBUzJCLFlBQ1R6QixhQUFhO1FBRW5CSCxVQUFVO1FBRVYsTUFBTXNCLE9BQU8sSUFBSXhCLEtBQUtFLFNBQVNDLFFBQVFDLE1BQU1DLFlBQVlDLE1BQU1DO1FBRS9ELE9BQU9pQjtJQUNUO0FBRUYifQ==
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3R5cGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQsIGJyZWFrUG9pbnRVdGlsaXRpZXMgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuXG5pbXBvcnQgeyB0eXBlU3RyaW5nRnJvbVR5cGVOYW1lQW5kQXJndW1lbnRUeXBlTmFtZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5pbXBvcnQgeyBMSVNUX1RZUEVfTkFNRSwgU1RSSU5HX1RZUEVfTkFNRSwgQk9PTEVBTl9UWVBFX05BTUUsIElOVEVHRVJfVFlQRV9OQU1FLCBOT01JTkFMX1ZBTFVFX1RZUEVfTkFNRSB9IGZyb20gXCIuLi90eXBlTmFtZXNcIjtcblxuY29uc3QgeyBicmVha1BvaW50VG9CcmVha1BvaW50SlNPTiB9ID0gYnJlYWtQb2ludFV0aWxpdGllcztcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIFR5cGUgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBuYW1lLCBhcmd1bWVudFR5cGUpIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgICB0aGlzLmFyZ3VtZW50VHlwZSA9IGFyZ3VtZW50VHlwZTtcbiAgfVxuXG4gIGdldE5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMubmFtZTtcbiAgfVxuXG4gIGdldEFyZ3VtZW50VHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy5hcmd1bWVudFR5cGU7XG4gIH1cblxuICBpc0xpc3RUeXBlKCkge1xuICAgIGNvbnN0IGxpc3RUeXBlID0gKHRoaXMubmFtZSA9PT0gTElTVF9UWVBFX05BTUUpO1xuXG4gICAgcmV0dXJuIGxpc3RUeXBlO1xuICB9XG5cbiAgaXNTdHJpbmdUeXBlKCkge1xuICAgIGNvbnN0IGJvb2xlYW5UeXBlID0gKHRoaXMubmFtZSA9PT0gU1RSSU5HX1RZUEVfTkFNRSk7XG5cbiAgICByZXR1cm4gYm9vbGVhblR5cGU7XG4gIH1cblxuICBpc0Jvb2xlYW5UeXBlKCkge1xuICAgIGNvbnN0IGJvb2xlYW5UeXBlID0gKHRoaXMubmFtZSA9PT0gQk9PTEVBTl9UWVBFX05BTUUpO1xuXG4gICAgcmV0dXJuIGJvb2xlYW5UeXBlO1xuICB9XG5cbiAgaXNJbnRlZ2VyVHlwZSgpIHtcbiAgICBjb25zdCBpbnRlZ2VyVHlwZSA9ICh0aGlzLm5hbWUgPT09IElOVEVHRVJfVFlQRV9OQU1FKTtcblxuICAgIHJldHVybiBpbnRlZ2VyVHlwZTtcbiAgfVxuXG4gIGlzTm9taW5hbFZhbHVlVHlwZSgpIHtcbiAgICBjb25zdCBsaXN0VHlwZSA9ICh0aGlzLm5hbWUgPT09IE5PTUlOQUxfVkFMVUVfVFlQRV9OQU1FKTtcblxuICAgIHJldHVybiBsaXN0VHlwZTtcbiAgfVxuXG4gIGlzRXF1YWxUbyh0eXBlKSB7XG4gICAgbGV0IGVxdWFsVG8gPSBmYWxzZTtcblxuICAgIGNvbnN0IHR5cGVOYW1lID0gdHlwZS5nZXROYW1lKCk7XG5cbiAgICBpZiAodGhpcy5uYW1lID09PSB0eXBlTmFtZSkge1xuICAgICAgc3dpdGNoICh0aGlzLm5hbWUpIHtcbiAgICAgICAgY2FzZSBMSVNUX1RZUEVfTkFNRToge1xuICAgICAgICAgIGNvbnN0IHR5cGVBcmd1bWVudFR5cGUgPSB0eXBlLmdldEFyZ3VtZW50VHlwZSgpO1xuXG4gICAgICAgICAgaWYgKCh0aGlzLmFyZ3VtZW50VHlwZSA9PT0gbnVsbCkgfHwgKHR5cGVBcmd1bWVudFR5cGUgPT09IG51bGwpKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5hcmd1bWVudFR5cGUgPT09IHR5cGVBcmd1bWVudFR5cGUpIHtcbiAgICAgICAgICAgICAgZXF1YWxUbyA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IGFyZ3VlbW50VHlwZUVxdWFsVG9UeXBlQXJndW1lbnRUeXBlID0gdGhpcy5hcmd1bWVudFR5cGUuaXNFcXVhbFRvKHR5cGVBcmd1bWVudFR5cGUpO1xuXG4gICAgICAgICAgICBpZiAoYXJndWVtbnRUeXBlRXF1YWxUb1R5cGVBcmd1bWVudFR5cGUpIHtcbiAgICAgICAgICAgICAgZXF1YWxUbyA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cblxuICAgICAgICBjYXNlIFNUUklOR19UWVBFX05BTUU6XG4gICAgICAgIGNhc2UgQk9PTEVBTl9UWVBFX05BTUU6XG4gICAgICAgIGNhc2UgSU5URUdFUl9UWVBFX05BTUU6XG4gICAgICAgIGNhc2UgTk9NSU5BTF9WQUxVRV9UWVBFX05BTUU6IHtcbiAgICAgICAgICBlcXVhbFRvID0gdHJ1ZTtcblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGVxdWFsVG87XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgY29uc3Qgc3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTtcblxuICAgIGxldCBicmVha1BvaW50O1xuXG4gICAgYnJlYWtQb2ludCA9IHRoaXMuZ2V0QnJlYWtQb2ludCgpO1xuXG4gICAgY29uc3QgYnJlYWtQb2ludEpTT04gPSBicmVha1BvaW50VG9CcmVha1BvaW50SlNPTihicmVha1BvaW50KTtcblxuICAgIGJyZWFrUG9pbnQgPSBicmVha1BvaW50SlNPTjsgIC8vL1xuXG4gICAgY29uc3QganNvbiA9IHtcbiAgICAgIHN0cmluZyxcbiAgICAgIGJyZWFrUG9pbnRcbiAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiVHlwZVwiO1xuXG4gIHN0YXRpYyBmcm9tVHlwZU5hbWUodHlwZU5hbWUsIGNvbnRleHQpIHtcbiAgICBsZXQgdHlwZSA9IG51bGw7XG5cbiAgICBpZiAodHlwZU5hbWUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG5vZGUgPSBudWxsLCAgLy8vXG4gICAgICAgICAgICBuYW1lID0gdHlwZU5hbWUsICAvLy9cbiAgICAgICAgICAgIGFyZ3VtZW50VHlwZSA9IG51bGwsXG4gICAgICAgICAgICB0eXBlU3RyaW5nID0gdHlwZU5hbWUsICAvLy9cbiAgICAgICAgICAgIHN0cmluZyA9IHR5cGVTdHJpbmcsICAvLy9cbiAgICAgICAgICAgIGJyZWFrUG9pbnQgPSBudWxsO1xuXG4gICAgICBjb250ZXh0ID0gbnVsbDtcblxuICAgICAgdHlwZSA9IG5ldyBUeXBlKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgbmFtZSwgYXJndW1lbnRUeXBlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHlwZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tVHlwZU5hbWVBbmRBcmd1bWVudFR5cGVOYW1lKHR5cGVOYW1lLCBhcmd1bWVudFR5cGVOYW1lLCBjb250ZXh0KSB7XG4gICAgY29uc3Qgbm9kZSA9IG51bGwsICAvLy9cbiAgICAgICAgICBuYW1lID0gdHlwZU5hbWUsICAvLy9cbiAgICAgICAgICBhcmd1bWVudFR5cGUgPSBUeXBlLmZyb21UeXBlTmFtZShhcmd1bWVudFR5cGVOYW1lLCBjb250ZXh0KSxcbiAgICAgICAgICB0eXBlU3RyaW5nID0gdHlwZVN0cmluZ0Zyb21UeXBlTmFtZUFuZEFyZ3VtZW50VHlwZU5hbWUodHlwZU5hbWUsIGFyZ3VtZW50VHlwZU5hbWUpLFxuICAgICAgICAgIHN0cmluZyA9IHR5cGVTdHJpbmcsICAvLy9cbiAgICAgICAgICBicmVha1BvaW50ID0gbnVsbDtcblxuICAgIGNvbnRleHQgPSBudWxsO1xuXG4gICAgY29uc3QgdHlwZSA9IG5ldyBUeXBlKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgbmFtZSwgYXJndW1lbnRUeXBlKTtcblxuICAgIHJldHVybiB0eXBlO1xuICB9XG5cbn0pO1xuIl0sIm5hbWVzIjpbImJyZWFrUG9pbnRUb0JyZWFrUG9pbnRKU09OIiwiYnJlYWtQb2ludFV0aWxpdGllcyIsImRlZmluZSIsIlR5cGUiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwibmFtZSIsImFyZ3VtZW50VHlwZSIsImdldE5hbWUiLCJnZXRBcmd1bWVudFR5cGUiLCJpc0xpc3RUeXBlIiwibGlzdFR5cGUiLCJMSVNUX1RZUEVfTkFNRSIsImlzU3RyaW5nVHlwZSIsImJvb2xlYW5UeXBlIiwiU1RSSU5HX1RZUEVfTkFNRSIsImlzQm9vbGVhblR5cGUiLCJCT09MRUFOX1RZUEVfTkFNRSIsImlzSW50ZWdlclR5cGUiLCJpbnRlZ2VyVHlwZSIsIklOVEVHRVJfVFlQRV9OQU1FIiwiaXNOb21pbmFsVmFsdWVUeXBlIiwiTk9NSU5BTF9WQUxVRV9UWVBFX05BTUUiLCJpc0VxdWFsVG8iLCJ0eXBlIiwiZXF1YWxUbyIsInR5cGVOYW1lIiwidHlwZUFyZ3VtZW50VHlwZSIsImFyZ3VlbW50VHlwZUVxdWFsVG9UeXBlQXJndW1lbnRUeXBlIiwidG9KU09OIiwiZ2V0U3RyaW5nIiwiZ2V0QnJlYWtQb2ludCIsImJyZWFrUG9pbnRKU09OIiwianNvbiIsImZyb21UeXBlTmFtZSIsInR5cGVTdHJpbmciLCJmcm9tVHlwZU5hbWVBbmRBcmd1bWVudFR5cGVOYW1lIiwiYXJndW1lbnRUeXBlTmFtZSIsInR5cGVTdHJpbmdGcm9tVHlwZU5hbWVBbmRBcmd1bWVudFR5cGVOYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFXQTs7O2VBQUE7OztnQ0FUNkM7MEJBRXRCO3dCQUVtQzsyQkFDc0Q7QUFFaEgsTUFBTSxFQUFFQSwwQkFBMEIsRUFBRSxHQUFHQyxtQ0FBbUI7TUFFMUQsV0FBZUMsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyxhQUFhQyx1QkFBTztJQUM5QyxZ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
@@ -9,11 +9,20 @@ function _export(target, all) {
9
9
  });
10
10
  }
11
11
  _export(exports, {
12
+ get labelToLabelJSON () {
13
+ return labelToLabelJSON;
14
+ },
15
+ get parametersToParametersJSON () {
16
+ return parametersToParametersJSON;
17
+ },
12
18
  get proceduresFromJSON () {
13
19
  return proceduresFromJSON;
14
20
  },
15
21
  get proceduresToProceduresJSON () {
16
22
  return proceduresToProceduresJSON;
23
+ },
24
+ get typeToTypeJSON () {
25
+ return typeToTypeJSON;
17
26
  }
18
27
  });
19
28
  const _elements = /*#__PURE__*/ _interop_require_default(require("../elements"));
@@ -22,6 +31,25 @@ function _interop_require_default(obj) {
22
31
  default: obj
23
32
  };
24
33
  }
34
+ function typeToTypeJSON(type) {
35
+ const typeJSON = type.toJSON();
36
+ return typeJSON;
37
+ }
38
+ function labelToLabelJSON(label) {
39
+ const labelJSON = label.toJSON();
40
+ return labelJSON;
41
+ }
42
+ function proceduresToProceduresJSON(procedures) {
43
+ const proceduresJSON = procedures.map((procedure)=>{
44
+ const procedureJSON = procedure.toJSON();
45
+ return procedureJSON;
46
+ });
47
+ return proceduresJSON;
48
+ }
49
+ function parametersToParametersJSON(parameters) {
50
+ const parameterJSON = parameters.toJSON();
51
+ return parameterJSON;
52
+ }
25
53
  function proceduresFromJSON(json, context) {
26
54
  let { procedures } = json;
27
55
  const { Procedure } = _elements.default, proceduresJSON = procedures; ///
@@ -31,12 +59,5 @@ function proceduresFromJSON(json, context) {
31
59
  });
32
60
  return procedures;
33
61
  }
34
- function proceduresToProceduresJSON(procedures) {
35
- const proceduresJSON = procedures.map((procedure)=>{
36
- const procedureJSON = procedure.toJSON();
37
- return procedureJSON;
38
- });
39
- return proceduresJSON;
40
- }
41
62
 
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvanNvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGVsZW1lbnRzIGZyb20gXCIuLi9lbGVtZW50c1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gcHJvY2VkdXJlc0Zyb21KU09OKGpzb24sIGNvbnRleHQpIHtcbiAgbGV0IHsgcHJvY2VkdXJlcyB9ID0ganNvbjtcblxuICBjb25zdCB7IFByb2NlZHVyZSB9ID0gZWxlbWVudHMsXG4gICAgICAgIHByb2NlZHVyZXNKU09OID0gcHJvY2VkdXJlczsgLy8vXG5cbiAgcHJvY2VkdXJlcyA9IHByb2NlZHVyZXNKU09OLm1hcCgocHJvY2VkdXJlSlNPTikgPT4ge1xuICAgIGNvbnN0IGpzb24gPSBwcm9jZWR1cmVKU09OLCAgLy8vXG4gICAgICAgICAgcHJvY2VkdXJlID0gUHJvY2VkdXJlLmZyb21KU09OKGpzb24sIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIHByb2NlZHVyZTtcbiAgfSk7XG5cbiAgcmV0dXJuIHByb2NlZHVyZXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm9jZWR1cmVzVG9Qcm9jZWR1cmVzSlNPTihwcm9jZWR1cmVzKSB7XG4gIGNvbnN0IHByb2NlZHVyZXNKU09OID0gcHJvY2VkdXJlcy5tYXAoKHByb2NlZHVyZSkgPT4ge1xuICAgIGNvbnN0IHByb2NlZHVyZUpTT04gPSBwcm9jZWR1cmUudG9KU09OKCk7XG5cbiAgICByZXR1cm4gcHJvY2VkdXJlSlNPTjtcbiAgfSk7XG5cbiAgcmV0dXJuIHByb2NlZHVyZXNKU09OO1xufVxuIl0sIm5hbWVzIjpbInByb2NlZHVyZXNGcm9tSlNPTiIsInByb2NlZHVyZXNUb1Byb2NlZHVyZXNKU09OIiwianNvbiIsImNvbnRleHQiLCJwcm9jZWR1cmVzIiwiUHJvY2VkdXJlIiwiZWxlbWVudHMiLCJwcm9jZWR1cmVzSlNPTiIsIm1hcCIsInByb2NlZHVyZUpTT04iLCJwcm9jZWR1cmUiLCJmcm9tSlNPTiIsInRvSlNPTiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBSWdCQTtlQUFBQTs7UUFnQkFDO2VBQUFBOzs7aUVBbEJLOzs7Ozs7QUFFZCxTQUFTRCxtQkFBbUJFLElBQUksRUFBRUMsT0FBTztJQUM5QyxJQUFJLEVBQUVDLFVBQVUsRUFBRSxHQUFHRjtJQUVyQixNQUFNLEVBQUVHLFNBQVMsRUFBRSxHQUFHQyxpQkFBUSxFQUN4QkMsaUJBQWlCSCxZQUFZLEdBQUc7SUFFdENBLGFBQWFHLGVBQWVDLEdBQUcsQ0FBQyxDQUFDQztRQUMvQixNQUFNUCxPQUFPTyxlQUNQQyxZQUFZTCxVQUFVTSxRQUFRLENBQUNULE1BQU1DO1FBRTNDLE9BQU9PO0lBQ1Q7SUFFQSxPQUFPTjtBQUNUO0FBRU8sU0FBU0gsMkJBQTJCRyxVQUFVO0lBQ25ELE1BQU1HLGlCQUFpQkgsV0FBV0ksR0FBRyxDQUFDLENBQUNFO1FBQ3JDLE1BQU1ELGdCQUFnQkMsVUFBVUUsTUFBTTtRQUV0QyxPQUFPSDtJQUNUO0lBRUEsT0FBT0Y7QUFDVCJ9
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvanNvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGVsZW1lbnRzIGZyb20gXCIuLi9lbGVtZW50c1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gdHlwZVRvVHlwZUpTT04odHlwZSkge1xuICBjb25zdCB0eXBlSlNPTiA9IHR5cGUudG9KU09OKCk7XG5cbiAgcmV0dXJuIHR5cGVKU09OO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbGFiZWxUb0xhYmVsSlNPTihsYWJlbCkge1xuICBjb25zdCBsYWJlbEpTT04gPSBsYWJlbC50b0pTT04oKTtcblxuICByZXR1cm4gbGFiZWxKU09OO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJvY2VkdXJlc1RvUHJvY2VkdXJlc0pTT04ocHJvY2VkdXJlcykge1xuICBjb25zdCBwcm9jZWR1cmVzSlNPTiA9IHByb2NlZHVyZXMubWFwKChwcm9jZWR1cmUpID0+IHtcbiAgICBjb25zdCBwcm9jZWR1cmVKU09OID0gcHJvY2VkdXJlLnRvSlNPTigpO1xuXG4gICAgcmV0dXJuIHByb2NlZHVyZUpTT047XG4gIH0pO1xuXG4gIHJldHVybiBwcm9jZWR1cmVzSlNPTjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBhcmFtZXRlcnNUb1BhcmFtZXRlcnNKU09OKHBhcmFtZXRlcnMpIHtcbiAgY29uc3QgcGFyYW1ldGVySlNPTiA9IHBhcmFtZXRlcnMudG9KU09OKCk7XG5cbiAgcmV0dXJuIHBhcmFtZXRlckpTT047XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm9jZWR1cmVzRnJvbUpTT04oanNvbiwgY29udGV4dCkge1xuICBsZXQgeyBwcm9jZWR1cmVzIH0gPSBqc29uO1xuXG4gIGNvbnN0IHsgUHJvY2VkdXJlIH0gPSBlbGVtZW50cyxcbiAgICAgICAgcHJvY2VkdXJlc0pTT04gPSBwcm9jZWR1cmVzOyAvLy9cblxuICBwcm9jZWR1cmVzID0gcHJvY2VkdXJlc0pTT04ubWFwKChwcm9jZWR1cmVKU09OKSA9PiB7XG4gICAgY29uc3QganNvbiA9IHByb2NlZHVyZUpTT04sICAvLy9cbiAgICAgICAgICBwcm9jZWR1cmUgPSBQcm9jZWR1cmUuZnJvbUpTT04oanNvbiwgY29udGV4dCk7XG5cbiAgICByZXR1cm4gcHJvY2VkdXJlO1xuICB9KTtcblxuICByZXR1cm4gcHJvY2VkdXJlcztcbn1cbiJdLCJuYW1lcyI6WyJsYWJlbFRvTGFiZWxKU09OIiwicGFyYW1ldGVyc1RvUGFyYW1ldGVyc0pTT04iLCJwcm9jZWR1cmVzRnJvbUpTT04iLCJwcm9jZWR1cmVzVG9Qcm9jZWR1cmVzSlNPTiIsInR5cGVUb1R5cGVKU09OIiwidHlwZSIsInR5cGVKU09OIiwidG9KU09OIiwibGFiZWwiLCJsYWJlbEpTT04iLCJwcm9jZWR1cmVzIiwicHJvY2VkdXJlc0pTT04iLCJtYXAiLCJwcm9jZWR1cmUiLCJwcm9jZWR1cmVKU09OIiwicGFyYW1ldGVycyIsInBhcmFtZXRlckpTT04iLCJqc29uIiwiY29udGV4dCIsIlByb2NlZHVyZSIsImVsZW1lbnRzIiwiZnJvbUpTT04iXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztRQVVnQkE7ZUFBQUE7O1FBZ0JBQztlQUFBQTs7UUFNQUM7ZUFBQUE7O1FBaEJBQztlQUFBQTs7UUFaQUM7ZUFBQUE7OztpRUFGSzs7Ozs7O0FBRWQsU0FBU0EsZUFBZUMsSUFBSTtJQUNqQyxNQUFNQyxXQUFXRCxLQUFLRSxNQUFNO0lBRTVCLE9BQU9EO0FBQ1Q7QUFFTyxTQUFTTixpQkFBaUJRLEtBQUs7SUFDcEMsTUFBTUMsWUFBWUQsTUFBTUQsTUFBTTtJQUU5QixPQUFPRTtBQUNUO0FBRU8sU0FBU04sMkJBQTJCTyxVQUFVO0lBQ25ELE1BQU1DLGlCQUFpQkQsV0FBV0UsR0FBRyxDQUFDLENBQUNDO1FBQ3JDLE1BQU1DLGdCQUFnQkQsVUFBVU4sTUFBTTtRQUV0QyxPQUFPTztJQUNUO0lBRUEsT0FBT0g7QUFDVDtBQUVPLFNBQVNWLDJCQUEyQmMsVUFBVTtJQUNuRCxNQUFNQyxnQkFBZ0JELFdBQVdSLE1BQU07SUFFdkMsT0FBT1M7QUFDVDtBQUVPLFNBQVNkLG1CQUFtQmUsSUFBSSxFQUFFQyxPQUFPO0lBQzlDLElBQUksRUFBRVIsVUFBVSxFQUFFLEdBQUdPO0lBRXJCLE1BQU0sRUFBRUUsU0FBUyxFQUFFLEdBQUdDLGlCQUFRLEVBQ3hCVCxpQkFBaUJELFlBQVksR0FBRztJQUV0Q0EsYUFBYUMsZUFBZUMsR0FBRyxDQUFDLENBQUNFO1FBQy9CLE1BQU1HLE9BQU9ILGVBQ1BELFlBQVlNLFVBQVVFLFFBQVEsQ0FBQ0osTUFBTUM7UUFFM0MsT0FBT0w7SUFDVDtJQUVBLE9BQU9IO0FBQ1QifQ==
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-furtle",
3
3
  "author": "James Smith",
4
- "version": "3.0.366",
4
+ "version": "3.0.368",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-furtle",
7
7
  "description": "Occam's Furtle language.",
@@ -11,8 +11,8 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "necessary": "^17.5.2",
14
- "occam-grammars": "^1.3.626",
15
- "occam-languages": "^1.0.25",
14
+ "occam-grammars": "^1.3.628",
15
+ "occam-languages": "^1.0.26",
16
16
  "occam-lexers": "^23.2.2",
17
17
  "occam-parsers": "^23.2.4",
18
18
  "occam-query": "^4.1.198"
@@ -28,8 +28,8 @@
28
28
  "juxtapose": "^4.0.143",
29
29
  "lively-cli": "^3.0.3",
30
30
  "occam-grammar-utilities": "^8.1.17",
31
- "occam-model": "^1.0.558",
32
- "occam-server": "^7.0.58",
31
+ "occam-model": "^1.0.559",
32
+ "occam-server": "^7.0.59",
33
33
  "watchful-cli": "^1.7.102"
34
34
  },
35
35
  "scripts": {
@@ -203,7 +203,6 @@ export default class FurtleFileContext extends FileContext {
203
203
  return json;
204
204
  }
205
205
 
206
-
207
206
  static fromFile(file, context) {
208
207
  const lexer = furtleLexer, ///
209
208
  parser = furtleParser, ///
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
 
3
- import { Element } from "occam-languages";
3
+ import { Element, breakPointUtilities } from "occam-languages";
4
4
 
5
5
  import { define } from "../elements";
6
6
 
7
+ const { breakPointToBreakPointJSON } = breakPointUtilities;
8
+
7
9
  export default define(class Label extends Element {
8
10
  constructor(context, string, node, breakPoint, name) {
9
11
  super(context, string, node, breakPoint);
@@ -21,5 +23,24 @@ export default define(class Label extends Element {
21
23
  return procedureNameCompares;
22
24
  }
23
25
 
26
+ toJSON() {
27
+ const string = this.getString();
28
+
29
+ let breakPoint;
30
+
31
+ breakPoint = this.getBreakPoint();
32
+
33
+ const breakPointJSON = breakPointToBreakPointJSON(breakPoint);
34
+
35
+ breakPoint = breakPointJSON; ///
36
+
37
+ const json = {
38
+ string,
39
+ breakPoint
40
+ };
41
+
42
+ return json;
43
+ }
44
+
24
45
  static name = "Label";
25
46
  });
@@ -1,11 +1,13 @@
1
1
  "use strict";
2
2
 
3
- import { Element } from "occam-languages";
3
+ import { Element, breakPointUtilities } from "occam-languages";
4
4
 
5
5
  import Exception from "../exception";
6
6
 
7
7
  import { define } from "../elements";
8
8
 
9
+ const { breakPointToBreakPointJSON } = breakPointUtilities;
10
+
9
11
  export default define(class Parameters extends Element {
10
12
  constructor(context, string, node, breakPoint, array) {
11
13
  super(context, string, node, breakPoint);
@@ -58,5 +60,24 @@ export default define(class Parameters extends Element {
58
60
  context.debug(`...compared the '${valuesString}' values against the '${parametersString}' parameters.`);
59
61
  }
60
62
 
63
+ toJSON() {
64
+ const string = this.getString();
65
+
66
+ let breakPoint;
67
+
68
+ breakPoint = this.getBreakPoint();
69
+
70
+ const breakPointJSON = breakPointToBreakPointJSON(breakPoint);
71
+
72
+ breakPoint = breakPointJSON; ///
73
+
74
+ const json = {
75
+ string,
76
+ breakPoint
77
+ };
78
+
79
+ return json;
80
+ }
81
+
61
82
  static name = "Parameters";
62
83
  });
@@ -1,12 +1,15 @@
1
1
  "use strict";
2
2
 
3
- import { Element } from "occam-languages";
3
+ import { Element, breakPointUtilities } from "occam-languages";
4
4
 
5
5
  import Exception from "../exception";
6
6
 
7
7
  import { define } from "../elements";
8
8
  import { valuesFromNominalValues } from "../utilities/values";
9
9
  import { variablesFromValuesAndParameters } from "../utilities/parameters";
10
+ import { typeToTypeJSON, labelToLabelJSON, parametersToParametersJSON } from "../utilities/json";
11
+
12
+ const { breakPointFromJSON, breakPointToBreakPointJSON } = breakPointUtilities;
10
13
 
11
14
  export default define(class Procedure extends Element {
12
15
  constructor(context, string, node, breakPoint, type, label, parameters, returnBlock) {
@@ -94,13 +97,49 @@ export default define(class Procedure extends Element {
94
97
  }
95
98
 
96
99
  toJSON() {
97
- const typeJSON =
100
+ const typeJSON = typeToTypeJSON(this.type),
101
+ labelJSON = labelToLabelJSON(this.label),
102
+ parametersJSON = parametersToParametersJSON(this.parameters),
103
+ string = this.getString();
104
+
105
+ let breakPoint;
106
+
107
+ breakPoint = this.getBreakPoint();
108
+
109
+ const breakPointJSON = breakPointToBreakPointJSON(breakPoint);
98
110
 
111
+ breakPoint = breakPointJSON; ///
112
+
113
+ const type = typeJSON, ///
114
+ label = labelJSON, ///
115
+ parameters = parametersJSON, ///
116
+ json = {
117
+ string,
118
+ breakPoint,
119
+ type,
120
+ label,
121
+ parameters
122
+ };
123
+
124
+ return json;
99
125
  }
100
126
 
101
127
  static name = "Procedure";
102
128
 
103
129
  static fromJSON(json, context) {
130
+ return instantiate((context) => {
131
+ const { string } = json,
132
+ procedureNode = instantiatePrpcedure(string, context),
133
+ node = procedureNode, ///
134
+ breakPoint = breakPointFromJSON(json),
135
+ frame = frameFromPrpcedureNode(procedureNode, context),
136
+ goal = goalFromPrpcedureNode(procedureNode, context);
137
+
138
+ context = null;
139
+
140
+ const procedure = new Prpcedure(context, string, node, breakPoint, frame, goal);
104
141
 
142
+ return procedure;
143
+ }, context);
105
144
  }
106
145
  });
@@ -1,12 +1,14 @@
1
1
  "use strict";
2
2
 
3
- import { Element } from "occam-languages";
3
+ import { Element, breakPointUtilities } from "occam-languages";
4
4
 
5
5
  import { define } from "../elements";
6
6
 
7
7
  import { typeStringFromTypeNameAndArgumentTypeName } from "../utilities/string";
8
8
  import { LIST_TYPE_NAME, STRING_TYPE_NAME, BOOLEAN_TYPE_NAME, INTEGER_TYPE_NAME, NOMINAL_VALUE_TYPE_NAME } from "../typeNames";
9
9
 
10
+ const { breakPointToBreakPointJSON } = breakPointUtilities;
11
+
10
12
  export default define(class Type extends Element {
11
13
  constructor(context, string, node, breakPoint, name, argumentType) {
12
14
  super(context, string, node, breakPoint);
@@ -92,6 +94,25 @@ export default define(class Type extends Element {
92
94
  return equalTo;
93
95
  }
94
96
 
97
+ toJSON() {
98
+ const string = this.getString();
99
+
100
+ let breakPoint;
101
+
102
+ breakPoint = this.getBreakPoint();
103
+
104
+ const breakPointJSON = breakPointToBreakPointJSON(breakPoint);
105
+
106
+ breakPoint = breakPointJSON; ///
107
+
108
+ const json = {
109
+ string,
110
+ breakPoint
111
+ };
112
+
113
+ return json;
114
+ }
115
+
95
116
  static name = "Type";
96
117
 
97
118
  static fromTypeName(typeName, context) {
@@ -2,6 +2,34 @@
2
2
 
3
3
  import elements from "../elements";
4
4
 
5
+ export function typeToTypeJSON(type) {
6
+ const typeJSON = type.toJSON();
7
+
8
+ return typeJSON;
9
+ }
10
+
11
+ export function labelToLabelJSON(label) {
12
+ const labelJSON = label.toJSON();
13
+
14
+ return labelJSON;
15
+ }
16
+
17
+ export function proceduresToProceduresJSON(procedures) {
18
+ const proceduresJSON = procedures.map((procedure) => {
19
+ const procedureJSON = procedure.toJSON();
20
+
21
+ return procedureJSON;
22
+ });
23
+
24
+ return proceduresJSON;
25
+ }
26
+
27
+ export function parametersToParametersJSON(parameters) {
28
+ const parameterJSON = parameters.toJSON();
29
+
30
+ return parameterJSON;
31
+ }
32
+
5
33
  export function proceduresFromJSON(json, context) {
6
34
  let { procedures } = json;
7
35
 
@@ -17,13 +45,3 @@ export function proceduresFromJSON(json, context) {
17
45
 
18
46
  return procedures;
19
47
  }
20
-
21
- export function proceduresToProceduresJSON(procedures) {
22
- const proceduresJSON = procedures.map((procedure) => {
23
- const procedureJSON = procedure.toJSON();
24
-
25
- return procedureJSON;
26
- });
27
-
28
- return proceduresJSON;
29
- }