occam-furtle 2.0.82 → 2.0.86

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.
Files changed (45) hide show
  1. package/lib/dom/every.js +5 -5
  2. package/lib/dom/label.js +6 -2
  3. package/lib/dom/parameter/named.js +5 -3
  4. package/lib/dom/parameter.js +6 -2
  5. package/lib/dom/parameters.js +4 -12
  6. package/lib/dom/procedure/anonymous.js +8 -16
  7. package/lib/dom/procedure.js +4 -4
  8. package/lib/dom/procedureCall.js +6 -2
  9. package/lib/dom/reduce.js +4 -4
  10. package/lib/dom/reference.js +6 -2
  11. package/lib/dom/some.js +4 -4
  12. package/lib/dom/step.js +8 -12
  13. package/lib/dom/ternary.js +2 -2
  14. package/lib/dom/value.js +8 -28
  15. package/lib/dom/values.js +2 -9
  16. package/lib/dom/variable.js +10 -13
  17. package/lib/index.js +1 -4
  18. package/lib/nodeProperties.js +10 -3
  19. package/lib/nodeProperty.js +2 -2
  20. package/package.json +4 -4
  21. package/src/dom/every.js +8 -12
  22. package/src/dom/label.js +9 -3
  23. package/src/dom/parameter/named.js +7 -2
  24. package/src/dom/parameter.js +9 -2
  25. package/src/dom/parameters.js +1 -1
  26. package/src/dom/procedure/anonymous.js +16 -29
  27. package/src/dom/procedure.js +7 -10
  28. package/src/dom/procedureCall.js +10 -2
  29. package/src/dom/reduce.js +8 -11
  30. package/src/dom/reference.js +8 -2
  31. package/src/dom/some.js +7 -9
  32. package/src/dom/step.js +11 -13
  33. package/src/dom/ternary.js +4 -4
  34. package/src/dom/value.js +7 -32
  35. package/src/dom/values.js +1 -10
  36. package/src/dom/variable.js +12 -17
  37. package/src/index.js +0 -3
  38. package/src/nodeProperties.js +15 -1
  39. package/src/nodeProperty.js +3 -1
  40. package/lib/dom/block.js +0 -154
  41. package/lib/dom/conditionalBlocks.js +0 -176
  42. package/lib/dom/procedureCall/anonymous.js +0 -145
  43. package/src/dom/block.js +0 -73
  44. package/src/dom/conditionalBlocks.js +0 -106
  45. package/src/dom/procedureCall/anonymous.js +0 -68
@@ -10,7 +10,6 @@ Object.defineProperty(exports, "default", {
10
10
  });
11
11
  var _exception = /*#__PURE__*/ _interop_require_default(require("./exception"));
12
12
  var _nodeProperty = /*#__PURE__*/ _interop_require_default(require("./nodeProperty"));
13
- var _parameters = require("./dom/parameters");
14
13
  var _types = require("./types");
15
14
  var _parameterNames = require("./parameterNames");
16
15
  function _class_call_check(instance, Constructor) {
@@ -105,7 +104,7 @@ var NodeProperties = /*#__PURE__*/ function() {
105
104
  var context = null, array = names.map(function(name, index) {
106
105
  var type = types[index], nodeProperty = _nodeProperty.default.fromNameAndType(name, type, context);
107
106
  return nodeProperty;
108
- }), string = (0, _parameters.stringFromArray)(array, context), nodeProperties = new NodeProperties(string, array);
107
+ }), string = stringFromArray(array, context), nodeProperties = new NodeProperties(string, array);
109
108
  return nodeProperties;
110
109
  }
111
110
  }
@@ -114,5 +113,13 @@ var NodeProperties = /*#__PURE__*/ function() {
114
113
  }();
115
114
  var nodeProperties = NodeProperties.fromNothing();
116
115
  var _default = nodeProperties;
116
+ function stringFromArray(array, context) {
117
+ var nodePropertiesString = array.reduce(function(nodePropertiesString, nodeProperty) {
118
+ var nodePropertyString = nodeProperty.getString();
119
+ nodePropertiesString = nodePropertiesString === null ? nodePropertyString : "".concat(nodePropertiesString, ", ").concat(nodePropertyString);
120
+ return nodePropertiesString;
121
+ }, null), string = nodePropertiesString; ///
122
+ return string;
123
+ }
117
124
 
118
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ub2RlUHJvcGVydGllcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEV4Y2VwdGlvbiBmcm9tIFwiLi9leGNlcHRpb25cIjtcbmltcG9ydCBOb2RlUHJvcGVydHkgZnJvbSBcIi4vbm9kZVByb3BlcnR5XCI7XG5cbmltcG9ydCB7IHN0cmluZ0Zyb21BcnJheSB9IGZyb20gXCIuL2RvbS9wYXJhbWV0ZXJzXCI7XG5pbXBvcnQgeyBOT0RFU19UWVBFLCBTVFJJTkdfVFlQRSwgQk9PTEVBTl9UWVBFIH0gZnJvbSBcIi4vdHlwZXNcIjtcbmltcG9ydCB7IENPTlRFTlRfUEFSQU1FVEVSX05BTUUsIFRFUk1JTkFMX1BBUkFNRVRFUl9OQU1FLCBDSElMRF9OT0RFU19QQVJBTUVURVJfTkFNRSB9IGZyb20gXCIuL3BhcmFtZXRlck5hbWVzXCI7XG5cbmNvbnN0IHR5cGVzID0gW1xuICAgICAgICBTVFJJTkdfVFlQRSxcbiAgICAgICAgQk9PTEVBTl9UWVBFLFxuICAgICAgICBOT0RFU19UWVBFLFxuICAgICAgXSxcbiAgICAgIG5hbWVzID0gW1xuICAgICAgICBDT05URU5UX1BBUkFNRVRFUl9OQU1FLFxuICAgICAgICBURVJNSU5BTF9QQVJBTUVURVJfTkFNRSxcbiAgICAgICAgQ0hJTERfTk9ERVNfUEFSQU1FVEVSX05BTUVcbiAgICAgIF07XG5cbmNsYXNzIE5vZGVQcm9wZXJ0aWVzIHtcbiAgY29uc3RydWN0b3Ioc3RyaW5nLCBhcnJheSkge1xuICAgIHRoaXMuc3RyaW5nID0gc3RyaW5nO1xuICAgIHRoaXMuYXJyYXkgPSBhcnJheTtcbiAgfVxuXG4gIGdldFN0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy5zdHJpbmc7XG4gIH1cblxuICBnZXRBcnJheSgpIHtcbiAgICByZXR1cm4gdGhpcy5hcnJheTtcbiAgfVxuXG4gIHNvbWVOb2RlUHJvcGVydHkoY2FsbGJhY2spIHsgcmV0dXJuIHRoaXMuYXJyYXkuc29tZShjYWxsYmFjayk7IH1cblxuICBtYXRjaE5hbWVkUGFyYW1ldGVyKG5hbWVkUGFyYW1ldGVyLCBjb250ZXh0KSB7XG4gICAgY29uc3Qgbm9kZVByb3BlcnRpZXNTdHJpbmcgPSB0aGlzLnN0cmluZywgLy8vXG4gICAgICAgICAgbmFtZWRQYXJhbWV0ZXJTdHJpbmcgPSBuYW1lZFBhcmFtZXRlci5nZXRTdHJpbmcoKTtcblxuICAgIGNvbnRleHQudHJhY2UoYE1hdGNoaW5nIHRoZSAnJHtuYW1lZFBhcmFtZXRlclN0cmluZ30nIG5hbWVkIHBhcmFtZXRlciBhZ2FpbnN0IHRoZSAnJHtub2RlUHJvcGVydGllc1N0cmluZ30nIG5vZGUgcHJvcGVydGllcy4uLmApO1xuXG4gICAgY29uc3QgbmFtZWRQYXJhbWV0ZXJNYXRjaGVzID0gdGhpcy5zb21lTm9kZVByb3BlcnR5KChub2RlUHJvcGVydHkpID0+IHtcbiAgICAgIGNvbnN0IG5hbWVkUGFyYW1ldGVyTWF0Y2hlc05vZGVQcm9wZXJ0eSA9IG5vZGVQcm9wZXJ0eS5tYXRjaE5hbWVkUGFyYW1ldGVyKG5hbWVkUGFyYW1ldGVyLCBjb250ZXh0KTtcblxuICAgICAgaWYgKG5hbWVkUGFyYW1ldGVyTWF0Y2hlc05vZGVQcm9wZXJ0eSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGlmICghbmFtZWRQYXJhbWV0ZXJNYXRjaGVzKSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYFRoZSAnJHtuYW1lZFBhcmFtZXRlclN0cmluZ30nIG5hbWVkIHBhcmFtZXRlciBkb2VzIG5vdCBtYXRjaCBhbnkgb2YgdGhlICcke25vZGVQcm9wZXJ0aWVzU3RyaW5nfScgbm9kZSBwcm9wZXJ0aWVzLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5tYXRjaGVkIHRoZSAnJHtuYW1lZFBhcmFtZXRlclN0cmluZ30nIG5hbWVkIHBhcmFtZXRlciBhZ2FpbnN0IHRoZSAnJHtub2RlUHJvcGVydGllc1N0cmluZ30nIG5vZGUgcHJvcGVydGllcy5gKTtcbiAgfVxuXG4gIG1hdGNoTmFtZWRQYXJhbWV0ZXJzKG5hbWVkUGFyYW1ldGVycywgY29udGV4dCkge1xuICAgIG5hbWVkUGFyYW1ldGVycy5mb3JFYWNoTmFtZWRQYXJhbWV0ZXIoKG5hbWVkUGFyYW1ldGVyKSA9PiB7XG4gICAgICB0aGlzLm1hdGNoTmFtZWRQYXJhbWV0ZXIobmFtZWRQYXJhbWV0ZXIsIGNvbnRleHQpO1xuICAgIH0pO1xuICB9XG5cbiAgc3RhdGljIGZyb21Ob3RoaW5nKCkge1xuICAgIGNvbnN0IGNvbnRleHQgPSBudWxsLFxuICAgICAgICAgIGFycmF5ID0gbmFtZXMubWFwKChuYW1lLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdHlwZSA9IHR5cGVzW2luZGV4XSxcbiAgICAgICAgICAgICAgICAgIG5vZGVQcm9wZXJ0eSA9IE5vZGVQcm9wZXJ0eS5mcm9tTmFtZUFuZFR5cGUobmFtZSwgdHlwZSwgY29udGV4dCk7XG5cbiAgICAgICAgICAgIHJldHVybiBub2RlUHJvcGVydHk7XG4gICAgICAgICAgfSksXG4gICAgICAgICAgc3RyaW5nID0gc3RyaW5nRnJvbUFycmF5KGFycmF5LCBjb250ZXh0KSxcbiAgICAgICAgICBub2RlUHJvcGVydGllcyA9IG5ldyBOb2RlUHJvcGVydGllcyhzdHJpbmcsIGFycmF5KTtcblxuICAgIHJldHVybiBub2RlUHJvcGVydGllcztcbiAgfVxufVxuXG5jb25zdCBub2RlUHJvcGVydGllcyA9IE5vZGVQcm9wZXJ0aWVzLmZyb21Ob3RoaW5nKCk7XG5cbmV4cG9ydCBkZWZhdWx0IG5vZGVQcm9wZXJ0aWVzO1xuIl0sIm5hbWVzIjpbInR5cGVzIiwiU1RSSU5HX1RZUEUiLCJCT09MRUFOX1RZUEUiLCJOT0RFU19UWVBFIiwibmFtZXMiLCJDT05URU5UX1BBUkFNRVRFUl9OQU1FIiwiVEVSTUlOQUxfUEFSQU1FVEVSX05BTUUiLCJDSElMRF9OT0RFU19QQVJBTUVURVJfTkFNRSIsIk5vZGVQcm9wZXJ0aWVzIiwic3RyaW5nIiwiYXJyYXkiLCJnZXRTdHJpbmciLCJnZXRBcnJheSIsInNvbWVOb2RlUHJvcGVydHkiLCJjYWxsYmFjayIsInNvbWUiLCJtYXRjaE5hbWVkUGFyYW1ldGVyIiwibmFtZWRQYXJhbWV0ZXIiLCJjb250ZXh0Iiwibm9kZVByb3BlcnRpZXNTdHJpbmciLCJuYW1lZFBhcmFtZXRlclN0cmluZyIsInRyYWNlIiwibmFtZWRQYXJhbWV0ZXJNYXRjaGVzIiwibm9kZVByb3BlcnR5IiwibmFtZWRQYXJhbWV0ZXJNYXRjaGVzTm9kZVByb3BlcnR5IiwibWVzc2FnZSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwiZGVidWciLCJtYXRjaE5hbWVkUGFyYW1ldGVycyIsIm5hbWVkUGFyYW1ldGVycyIsImZvckVhY2hOYW1lZFBhcmFtZXRlciIsImZyb21Ob3RoaW5nIiwibWFwIiwibmFtZSIsImluZGV4IiwidHlwZSIsIk5vZGVQcm9wZXJ0eSIsImZyb21OYW1lQW5kVHlwZSIsInN0cmluZ0Zyb21BcnJheSIsIm5vZGVQcm9wZXJ0aWVzIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFtRkE7OztlQUFBOzs7Z0VBakZzQjttRUFDRzswQkFFTztxQkFDc0I7OEJBQ3NDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRTVGLElBQU1BLFFBQVE7SUFDTkMsa0JBQVc7SUFDWEMsbUJBQVk7SUFDWkMsaUJBQVU7Q0FDWCxFQUNEQyxRQUFRO0lBQ05DLHNDQUFzQjtJQUN0QkMsdUNBQXVCO0lBQ3ZCQywwQ0FBMEI7Q0FDM0I7QUFFUCxJQUFBLEFBQU1DLCtCQUFOO2FBQU1BLGVBQ1FDLE1BQU0sRUFBRUMsS0FBSztnQ0FEckJGO1FBRUYsSUFBSSxDQUFDQyxNQUFNLEdBQUdBO1FBQ2QsSUFBSSxDQUFDQyxLQUFLLEdBQUdBOztrQkFIWEY7O1lBTUpHLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0YsTUFBTTtZQUNwQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0YsS0FBSztZQUNuQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxpQkFBaUJDLFFBQVE7Z0JBQUksT0FBTyxJQUFJLENBQUNKLEtBQUssQ0FBQ0ssSUFBSSxDQUFDRDtZQUFXOzs7WUFFL0RFLEtBQUFBO21CQUFBQSxTQUFBQSxvQkFBb0JDLGNBQWMsRUFBRUMsT0FBTztnQkFDekMsSUFBTUMsdUJBQXVCLElBQUksQ0FBQ1YsTUFBTSxFQUNsQ1csdUJBQXVCSCxlQUFlTixTQUFTO2dCQUVyRE8sUUFBUUcsS0FBSyxDQUFDLEFBQUMsaUJBQXNFRixPQUF0REMsc0JBQXFCLG1DQUFzRCxPQUFyQkQsc0JBQXFCO2dCQUUxRyxJQUFNRyx3QkFBd0IsSUFBSSxDQUFDVCxnQkFBZ0IsQ0FBQyxTQUFDVTtvQkFDbkQsSUFBTUMsb0NBQW9DRCxhQUFhUCxtQkFBbUIsQ0FBQ0MsZ0JBQWdCQztvQkFFM0YsSUFBSU0sbUNBQW1DO3dCQUNyQyxPQUFPO29CQUNUO2dCQUNGO2dCQUVBLElBQUksQ0FBQ0YsdUJBQXVCO29CQUMxQixJQUFNRyxVQUFVLEFBQUMsUUFBMkVOLE9BQXBFQyxzQkFBcUIsaURBQW9FLE9BQXJCRCxzQkFBcUIsdUJBQzNHTyxZQUFZQyxrQkFBUyxDQUFDQyxXQUFXLENBQUNIO29CQUV4QyxNQUFNQztnQkFDUjtnQkFFQVIsUUFBUVcsS0FBSyxDQUFDLEFBQUMsbUJBQXdFVixPQUF0REMsc0JBQXFCLG1DQUFzRCxPQUFyQkQsc0JBQXFCO1lBQzlHOzs7WUFFQVcsS0FBQUE7bUJBQUFBLFNBQUFBLHFCQUFxQkMsZUFBZSxFQUFFYixPQUFPOztnQkFDM0NhLGdCQUFnQkMscUJBQXFCLENBQUMsU0FBQ2Y7b0JBQ3JDLE1BQUtELG1CQUFtQixDQUFDQyxnQkFBZ0JDO2dCQUMzQztZQUNGOzs7O1lBRU9lLEtBQUFBO21CQUFQLFNBQU9BO2dCQUNMLElBQU1mLFVBQVUsTUFDVlIsUUFBUU4sTUFBTThCLEdBQUcsQ0FBQyxTQUFDQyxNQUFNQztvQkFDdkIsSUFBTUMsT0FBT3JDLEtBQUssQ0FBQ29DLE1BQU0sRUFDbkJiLGVBQWVlLHFCQUFZLENBQUNDLGVBQWUsQ0FBQ0osTUFBTUUsTUFBTW5CO29CQUU5RCxPQUFPSztnQkFDVCxJQUNBZCxTQUFTK0IsSUFBQUEsMkJBQWUsRUFBQzlCLE9BQU9RLFVBQ2hDdUIsaUJBQWlCLElBdkRyQmpDLGVBdUR3Q0MsUUFBUUM7Z0JBRWxELE9BQU8rQjtZQUNUOzs7V0ExRElqQzs7QUE2RE4sSUFBTWlDLGlCQUFpQmpDLGVBQWV5QixXQUFXO0lBRWpELFdBQWVRIn0=
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ub2RlUHJvcGVydGllcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IEV4Y2VwdGlvbiBmcm9tIFwiLi9leGNlcHRpb25cIjtcbmltcG9ydCBOb2RlUHJvcGVydHkgZnJvbSBcIi4vbm9kZVByb3BlcnR5XCI7XG5cbmltcG9ydCB7IE5PREVTX1RZUEUsIFNUUklOR19UWVBFLCBCT09MRUFOX1RZUEUgfSBmcm9tIFwiLi90eXBlc1wiO1xuaW1wb3J0IHsgQ09OVEVOVF9QQVJBTUVURVJfTkFNRSwgVEVSTUlOQUxfUEFSQU1FVEVSX05BTUUsIENISUxEX05PREVTX1BBUkFNRVRFUl9OQU1FIH0gZnJvbSBcIi4vcGFyYW1ldGVyTmFtZXNcIjtcblxuY29uc3QgdHlwZXMgPSBbXG4gICAgICAgIFNUUklOR19UWVBFLFxuICAgICAgICBCT09MRUFOX1RZUEUsXG4gICAgICAgIE5PREVTX1RZUEUsXG4gICAgICBdLFxuICAgICAgbmFtZXMgPSBbXG4gICAgICAgIENPTlRFTlRfUEFSQU1FVEVSX05BTUUsXG4gICAgICAgIFRFUk1JTkFMX1BBUkFNRVRFUl9OQU1FLFxuICAgICAgICBDSElMRF9OT0RFU19QQVJBTUVURVJfTkFNRVxuICAgICAgXTtcblxuY2xhc3MgTm9kZVByb3BlcnRpZXMge1xuICBjb25zdHJ1Y3RvcihzdHJpbmcsIGFycmF5KSB7XG4gICAgdGhpcy5zdHJpbmcgPSBzdHJpbmc7XG4gICAgdGhpcy5hcnJheSA9IGFycmF5O1xuICB9XG5cbiAgZ2V0U3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnN0cmluZztcbiAgfVxuXG4gIGdldEFycmF5KCkge1xuICAgIHJldHVybiB0aGlzLmFycmF5O1xuICB9XG5cbiAgc29tZU5vZGVQcm9wZXJ0eShjYWxsYmFjaykgeyByZXR1cm4gdGhpcy5hcnJheS5zb21lKGNhbGxiYWNrKTsgfVxuXG4gIG1hdGNoTmFtZWRQYXJhbWV0ZXIobmFtZWRQYXJhbWV0ZXIsIGNvbnRleHQpIHtcbiAgICBjb25zdCBub2RlUHJvcGVydGllc1N0cmluZyA9IHRoaXMuc3RyaW5nLCAvLy9cbiAgICAgICAgICBuYW1lZFBhcmFtZXRlclN0cmluZyA9IG5hbWVkUGFyYW1ldGVyLmdldFN0cmluZygpO1xuXG4gICAgY29udGV4dC50cmFjZShgTWF0Y2hpbmcgdGhlICcke25hbWVkUGFyYW1ldGVyU3RyaW5nfScgbmFtZWQgcGFyYW1ldGVyIGFnYWluc3QgdGhlICcke25vZGVQcm9wZXJ0aWVzU3RyaW5nfScgbm9kZSBwcm9wZXJ0aWVzLi4uYCk7XG5cbiAgICBjb25zdCBuYW1lZFBhcmFtZXRlck1hdGNoZXMgPSB0aGlzLnNvbWVOb2RlUHJvcGVydHkoKG5vZGVQcm9wZXJ0eSkgPT4ge1xuICAgICAgY29uc3QgbmFtZWRQYXJhbWV0ZXJNYXRjaGVzTm9kZVByb3BlcnR5ID0gbm9kZVByb3BlcnR5Lm1hdGNoTmFtZWRQYXJhbWV0ZXIobmFtZWRQYXJhbWV0ZXIsIGNvbnRleHQpO1xuXG4gICAgICBpZiAobmFtZWRQYXJhbWV0ZXJNYXRjaGVzTm9kZVByb3BlcnR5KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKCFuYW1lZFBhcmFtZXRlck1hdGNoZXMpIHtcbiAgICAgIGNvbnN0IG1lc3NhZ2UgPSBgVGhlICcke25hbWVkUGFyYW1ldGVyU3RyaW5nfScgbmFtZWQgcGFyYW1ldGVyIGRvZXMgbm90IG1hdGNoIGFueSBvZiB0aGUgJyR7bm9kZVByb3BlcnRpZXNTdHJpbmd9JyBub2RlIHByb3BlcnRpZXMuYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgdGhyb3cgZXhjZXB0aW9uO1xuICAgIH1cblxuICAgIGNvbnRleHQuZGVidWcoYC4uLm1hdGNoZWQgdGhlICcke25hbWVkUGFyYW1ldGVyU3RyaW5nfScgbmFtZWQgcGFyYW1ldGVyIGFnYWluc3QgdGhlICcke25vZGVQcm9wZXJ0aWVzU3RyaW5nfScgbm9kZSBwcm9wZXJ0aWVzLmApO1xuICB9XG5cbiAgbWF0Y2hOYW1lZFBhcmFtZXRlcnMobmFtZWRQYXJhbWV0ZXJzLCBjb250ZXh0KSB7XG4gICAgbmFtZWRQYXJhbWV0ZXJzLmZvckVhY2hOYW1lZFBhcmFtZXRlcigobmFtZWRQYXJhbWV0ZXIpID0+IHtcbiAgICAgIHRoaXMubWF0Y2hOYW1lZFBhcmFtZXRlcihuYW1lZFBhcmFtZXRlciwgY29udGV4dCk7XG4gICAgfSk7XG4gIH1cblxuICBzdGF0aWMgZnJvbU5vdGhpbmcoKSB7XG4gICAgY29uc3QgY29udGV4dCA9IG51bGwsXG4gICAgICAgICAgYXJyYXkgPSBuYW1lcy5tYXAoKG5hbWUsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB0eXBlID0gdHlwZXNbaW5kZXhdLFxuICAgICAgICAgICAgICAgICAgbm9kZVByb3BlcnR5ID0gTm9kZVByb3BlcnR5LmZyb21OYW1lQW5kVHlwZShuYW1lLCB0eXBlLCBjb250ZXh0KTtcblxuICAgICAgICAgICAgcmV0dXJuIG5vZGVQcm9wZXJ0eTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBzdHJpbmcgPSBzdHJpbmdGcm9tQXJyYXkoYXJyYXksIGNvbnRleHQpLFxuICAgICAgICAgIG5vZGVQcm9wZXJ0aWVzID0gbmV3IE5vZGVQcm9wZXJ0aWVzKHN0cmluZywgYXJyYXkpO1xuXG4gICAgcmV0dXJuIG5vZGVQcm9wZXJ0aWVzO1xuICB9XG59XG5cbmNvbnN0IG5vZGVQcm9wZXJ0aWVzID0gTm9kZVByb3BlcnRpZXMuZnJvbU5vdGhpbmcoKTtcblxuZXhwb3J0IGRlZmF1bHQgbm9kZVByb3BlcnRpZXM7XG5cbmZ1bmN0aW9uIHN0cmluZ0Zyb21BcnJheShhcnJheSwgY29udGV4dCkge1xuICBjb25zdCBub2RlUHJvcGVydGllc1N0cmluZyA9IGFycmF5LnJlZHVjZSgobm9kZVByb3BlcnRpZXNTdHJpbmcsIG5vZGVQcm9wZXJ0eSkgPT4ge1xuICAgICAgICAgIGNvbnN0IG5vZGVQcm9wZXJ0eVN0cmluZyA9IG5vZGVQcm9wZXJ0eS5nZXRTdHJpbmcoKTtcblxuICAgICAgICAgIG5vZGVQcm9wZXJ0aWVzU3RyaW5nID0gKG5vZGVQcm9wZXJ0aWVzU3RyaW5nID09PSBudWxsKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vZGVQcm9wZXJ0eVN0cmluZyA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgJHtub2RlUHJvcGVydGllc1N0cmluZ30sICR7bm9kZVByb3BlcnR5U3RyaW5nfWA7XG5cbiAgICAgICAgICByZXR1cm4gbm9kZVByb3BlcnRpZXNTdHJpbmc7XG4gICAgICAgIH0sIG51bGwpLFxuICAgICAgICBzdHJpbmcgPSBub2RlUHJvcGVydGllc1N0cmluZzsgIC8vL1xuXG4gIHJldHVybiBzdHJpbmc7XG59XG4iXSwibmFtZXMiOlsidHlwZXMiLCJTVFJJTkdfVFlQRSIsIkJPT0xFQU5fVFlQRSIsIk5PREVTX1RZUEUiLCJuYW1lcyIsIkNPTlRFTlRfUEFSQU1FVEVSX05BTUUiLCJURVJNSU5BTF9QQVJBTUVURVJfTkFNRSIsIkNISUxEX05PREVTX1BBUkFNRVRFUl9OQU1FIiwiTm9kZVByb3BlcnRpZXMiLCJzdHJpbmciLCJhcnJheSIsImdldFN0cmluZyIsImdldEFycmF5Iiwic29tZU5vZGVQcm9wZXJ0eSIsImNhbGxiYWNrIiwic29tZSIsIm1hdGNoTmFtZWRQYXJhbWV0ZXIiLCJuYW1lZFBhcmFtZXRlciIsImNvbnRleHQiLCJub2RlUHJvcGVydGllc1N0cmluZyIsIm5hbWVkUGFyYW1ldGVyU3RyaW5nIiwidHJhY2UiLCJuYW1lZFBhcmFtZXRlck1hdGNoZXMiLCJub2RlUHJvcGVydHkiLCJuYW1lZFBhcmFtZXRlck1hdGNoZXNOb2RlUHJvcGVydHkiLCJtZXNzYWdlIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJkZWJ1ZyIsIm1hdGNoTmFtZWRQYXJhbWV0ZXJzIiwibmFtZWRQYXJhbWV0ZXJzIiwiZm9yRWFjaE5hbWVkUGFyYW1ldGVyIiwiZnJvbU5vdGhpbmciLCJtYXAiLCJuYW1lIiwiaW5kZXgiLCJ0eXBlIiwiTm9kZVByb3BlcnR5IiwiZnJvbU5hbWVBbmRUeXBlIiwic3RyaW5nRnJvbUFycmF5Iiwibm9kZVByb3BlcnRpZXMiLCJyZWR1Y2UiLCJub2RlUHJvcGVydHlTdHJpbmciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWtGQTs7O2VBQUE7OztnRUFoRnNCO21FQUNHO3FCQUU2Qjs4QkFDc0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFNUYsSUFBTUEsUUFBUTtJQUNOQyxrQkFBVztJQUNYQyxtQkFBWTtJQUNaQyxpQkFBVTtDQUNYLEVBQ0RDLFFBQVE7SUFDTkMsc0NBQXNCO0lBQ3RCQyx1Q0FBdUI7SUFDdkJDLDBDQUEwQjtDQUMzQjtBQUVQLElBQUEsQUFBTUMsK0JBQU47YUFBTUEsZUFDUUMsTUFBTSxFQUFFQyxLQUFLO2dDQURyQkY7UUFFRixJQUFJLENBQUNDLE1BQU0sR0FBR0E7UUFDZCxJQUFJLENBQUNDLEtBQUssR0FBR0E7O2tCQUhYRjs7WUFNSkcsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDRixNQUFNO1lBQ3BCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDRixLQUFLO1lBQ25COzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBLGlCQUFpQkMsUUFBUTtnQkFBSSxPQUFPLElBQUksQ0FBQ0osS0FBSyxDQUFDSyxJQUFJLENBQUNEO1lBQVc7OztZQUUvREUsS0FBQUE7bUJBQUFBLFNBQUFBLG9CQUFvQkMsY0FBYyxFQUFFQyxPQUFPO2dCQUN6QyxJQUFNQyx1QkFBdUIsSUFBSSxDQUFDVixNQUFNLEVBQ2xDVyx1QkFBdUJILGVBQWVOLFNBQVM7Z0JBRXJETyxRQUFRRyxLQUFLLENBQUMsQUFBQyxpQkFBc0VGLE9BQXREQyxzQkFBcUIsbUNBQXNELE9BQXJCRCxzQkFBcUI7Z0JBRTFHLElBQU1HLHdCQUF3QixJQUFJLENBQUNULGdCQUFnQixDQUFDLFNBQUNVO29CQUNuRCxJQUFNQyxvQ0FBb0NELGFBQWFQLG1CQUFtQixDQUFDQyxnQkFBZ0JDO29CQUUzRixJQUFJTSxtQ0FBbUM7d0JBQ3JDLE9BQU87b0JBQ1Q7Z0JBQ0Y7Z0JBRUEsSUFBSSxDQUFDRix1QkFBdUI7b0JBQzFCLElBQU1HLFVBQVUsQUFBQyxRQUEyRU4sT0FBcEVDLHNCQUFxQixpREFBb0UsT0FBckJELHNCQUFxQix1QkFDM0dPLFlBQVlDLGtCQUFTLENBQUNDLFdBQVcsQ0FBQ0g7b0JBRXhDLE1BQU1DO2dCQUNSO2dCQUVBUixRQUFRVyxLQUFLLENBQUMsQUFBQyxtQkFBd0VWLE9BQXREQyxzQkFBcUIsbUNBQXNELE9BQXJCRCxzQkFBcUI7WUFDOUc7OztZQUVBVyxLQUFBQTttQkFBQUEsU0FBQUEscUJBQXFCQyxlQUFlLEVBQUViLE9BQU87O2dCQUMzQ2EsZ0JBQWdCQyxxQkFBcUIsQ0FBQyxTQUFDZjtvQkFDckMsTUFBS0QsbUJBQW1CLENBQUNDLGdCQUFnQkM7Z0JBQzNDO1lBQ0Y7Ozs7WUFFT2UsS0FBQUE7bUJBQVAsU0FBT0E7Z0JBQ0wsSUFBTWYsVUFBVSxNQUNWUixRQUFRTixNQUFNOEIsR0FBRyxDQUFDLFNBQUNDLE1BQU1DO29CQUN2QixJQUFNQyxPQUFPckMsS0FBSyxDQUFDb0MsTUFBTSxFQUNuQmIsZUFBZWUscUJBQVksQ0FBQ0MsZUFBZSxDQUFDSixNQUFNRSxNQUFNbkI7b0JBRTlELE9BQU9LO2dCQUNULElBQ0FkLFNBQVMrQixnQkFBZ0I5QixPQUFPUSxVQUNoQ3VCLGlCQUFpQixJQXZEckJqQyxlQXVEd0NDLFFBQVFDO2dCQUVsRCxPQUFPK0I7WUFDVDs7O1dBMURJakM7O0FBNkROLElBQU1pQyxpQkFBaUJqQyxlQUFleUIsV0FBVztJQUVqRCxXQUFlUTtBQUVmLFNBQVNELGdCQUFnQjlCLEtBQUssRUFBRVEsT0FBTztJQUNyQyxJQUFNQyx1QkFBdUJULE1BQU1nQyxNQUFNLENBQUMsU0FBQ3ZCLHNCQUFzQkk7UUFDekQsSUFBTW9CLHFCQUFxQnBCLGFBQWFaLFNBQVM7UUFFakRRLHVCQUF1QixBQUFDQSx5QkFBeUIsT0FDeEJ3QixxQkFDQyxBQUFDLEdBQTJCQSxPQUF6QnhCLHNCQUFxQixNQUF1QixPQUFuQndCO1FBRXRELE9BQU94QjtJQUNULEdBQUcsT0FDSFYsU0FBU1Usc0JBQXVCLEdBQUc7SUFFekMsT0FBT1Y7QUFDVCJ9
@@ -93,8 +93,8 @@ var NodeProperty = /*#__PURE__*/ function() {
93
93
  }();
94
94
  _define_property(NodeProperty, "name", "Parameter");
95
95
  function stringFromNameAndType(name, type, context) {
96
- var string = "".concat(type, " ").concat(name);
96
+ var typeString = type, nameString = name, string = "".concat(typeString, " ").concat(nameString);
97
97
  return string;
98
98
  }
99
99
 
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ub2RlUHJvcGVydHkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5vZGVQcm9wZXJ0eSB7XG4gIGNvbnN0cnVjdG9yKHN0cmluZywgdHlwZSwgbmFtZSkge1xuICAgIHRoaXMuc3RyaW5nID0gc3RyaW5nO1xuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgfVxuXG4gIGdldFN0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy5zdHJpbmc7XG4gIH1cblxuICBnZXRUeXBlKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGU7XG4gIH1cblxuICBnZXROYW1lKCkge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cblxuICBtYXRjaE5hbWVkUGFyYW1ldGVyKG5hbWVkUGFyYW1ldGVyLCBjb250ZXh0KSB7XG4gICAgbGV0IG5hbWVkUGFyYW1ldGVyTWF0Y2hlcztcblxuICAgIGNvbnN0IG5vZGVQcm9wZXJ0eVN0cmluZyA9IHRoaXMuc3RyaW5nLCAvLy9cbiAgICAgICAgICBuYW1lZFBhcmFtZXRlclN0cmluZyA9IG5hbWVkUGFyYW1ldGVyLmdldFN0cmluZygpO1xuXG4gICAgY29udGV4dC50cmFjZShgTWF0Y2hpbmcgdGhlICcke25vZGVQcm9wZXJ0eVN0cmluZ30nIG5vZGUgcHJvcGVydHkgYWdhaW5zdCB0aGUgJyR7bmFtZWRQYXJhbWV0ZXJTdHJpbmd9JyBuYW1lZCBwYXJhbWV0ZXIuLi5gKTtcblxuICAgIGNvbnN0IG5hbWUgPSBuYW1lZFBhcmFtZXRlci5nZXROYW1lKCksXG4gICAgICAgICAgdHlwZSA9IG5hbWVkUGFyYW1ldGVyLmdldFR5cGUoKTtcblxuICAgIG5hbWVkUGFyYW1ldGVyTWF0Y2hlcyA9ICgodGhpcy5uYW1lID09PSBuYW1lKSAmJiAodGhpcy50eXBlID09PSB0eXBlKSk7XG5cbiAgICBpZiAobmFtZWRQYXJhbWV0ZXJNYXRjaGVzKSB7XG4gICAgICBjb250ZXh0LmRlYnVnKGAuLi5tYXRjaGVkIHRoZSAnJHtub2RlUHJvcGVydHlTdHJpbmd9JyBub2RlIHByb3BlcnR5IGFnYWluc3QgdGhlICcke25hbWVkUGFyYW1ldGVyU3RyaW5nfScgbmFtZWQgcGFyYW1ldGVyLmApO1xuICAgIH1cblxuICAgIHJldHVybiBuYW1lZFBhcmFtZXRlck1hdGNoZXM7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiUGFyYW1ldGVyXCI7XG5cbiAgc3RhdGljIGZyb21OYW1lQW5kVHlwZShuYW1lLCB0eXBlLCBjb250ZXh0KSB7XG4gICAgY29uc3Qgc3RyaW5nID0gc3RyaW5nRnJvbU5hbWVBbmRUeXBlKG5hbWUsIHR5cGUsIGNvbnRleHQpLFxuICAgICAgICAgIG5vZGVQcm9wZXJ0eSA9IG5ldyBOb2RlUHJvcGVydHkoc3RyaW5nLCB0eXBlLCBuYW1lKTtcblxuICAgIHJldHVybiBub2RlUHJvcGVydHk7XG4gIH1cbn07XG5cbmZ1bmN0aW9uIHN0cmluZ0Zyb21OYW1lQW5kVHlwZShuYW1lLCB0eXBlLCBjb250ZXh0KSB7XG4gIGNvbnN0IHN0cmluZyA9IGAke3R5cGV9ICR7bmFtZX1gO1xuXG4gIHJldHVybiBzdHJpbmc7XG59XG4iXSwibmFtZXMiOlsiTm9kZVByb3BlcnR5Iiwic3RyaW5nIiwidHlwZSIsIm5hbWUiLCJnZXRTdHJpbmciLCJnZXRUeXBlIiwiZ2V0TmFtZSIsIm1hdGNoTmFtZWRQYXJhbWV0ZXIiLCJuYW1lZFBhcmFtZXRlciIsImNvbnRleHQiLCJuYW1lZFBhcmFtZXRlck1hdGNoZXMiLCJub2RlUHJvcGVydHlTdHJpbmciLCJuYW1lZFBhcmFtZXRlclN0cmluZyIsInRyYWNlIiwiZGVidWciLCJmcm9tTmFtZUFuZFR5cGUiLCJzdHJpbmdGcm9tTmFtZUFuZFR5cGUiLCJub2RlUHJvcGVydHkiXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBRXFCQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBTixJQUFBLEFBQU1BLDZCQUFOO2FBQU1BLGFBQ1BDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxJQUFJO2dDQURYSDtRQUVqQixJQUFJLENBQUNDLE1BQU0sR0FBR0E7UUFDZCxJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLElBQUksR0FBR0E7O2tCQUpLSDs7WUFPbkJJLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0gsTUFBTTtZQUNwQjs7O1lBRUFJLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0gsSUFBSTtZQUNsQjs7O1lBRUFJLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0gsSUFBSTtZQUNsQjs7O1lBRUFJLEtBQUFBO21CQUFBQSxTQUFBQSxvQkFBb0JDLGNBQWMsRUFBRUMsT0FBTztnQkFDekMsSUFBSUM7Z0JBRUosSUFBTUMscUJBQXFCLElBQUksQ0FBQ1YsTUFBTSxFQUNoQ1csdUJBQXVCSixlQUFlSixTQUFTO2dCQUVyREssUUFBUUksS0FBSyxDQUFDLEFBQUMsaUJBQWtFRCxPQUFsREQsb0JBQW1CLGlDQUFvRCxPQUFyQkMsc0JBQXFCO2dCQUV0RyxJQUFNVCxPQUFPSyxlQUFlRixPQUFPLElBQzdCSixPQUFPTSxlQUFlSCxPQUFPO2dCQUVuQ0ssd0JBQXlCLEFBQUMsSUFBSSxDQUFDUCxJQUFJLEtBQUtBLFFBQVUsSUFBSSxDQUFDRCxJQUFJLEtBQUtBO2dCQUVoRSxJQUFJUSx1QkFBdUI7b0JBQ3pCRCxRQUFRSyxLQUFLLENBQUMsQUFBQyxtQkFBb0VGLE9BQWxERCxvQkFBbUIsaUNBQW9ELE9BQXJCQyxzQkFBcUI7Z0JBQzFHO2dCQUVBLE9BQU9GO1lBQ1Q7Ozs7WUFJT0ssS0FBQUE7bUJBQVAsU0FBT0EsZ0JBQWdCWixJQUFJLEVBQUVELElBQUksRUFBRU8sT0FBTztnQkFDeEMsSUFBTVIsU0FBU2Usc0JBQXNCYixNQUFNRCxNQUFNTyxVQUMzQ1EsZUFBZSxJQTNDSmpCLGFBMkNxQkMsUUFBUUMsTUFBTUM7Z0JBRXBELE9BQU9jO1lBQ1Q7OztXQTlDbUJqQjs7QUF1Q25CLGlCQXZDbUJBLGNBdUNaRyxRQUFPO0FBVWhCLFNBQVNhLHNCQUFzQmIsSUFBSSxFQUFFRCxJQUFJLEVBQUVPLE9BQU87SUFDaEQsSUFBTVIsU0FBUyxBQUFDLEdBQVVFLE9BQVJELE1BQUssS0FBUSxPQUFMQztJQUUxQixPQUFPRjtBQUNUIn0=
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ub2RlUHJvcGVydHkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5vZGVQcm9wZXJ0eSB7XG4gIGNvbnN0cnVjdG9yKHN0cmluZywgdHlwZSwgbmFtZSkge1xuICAgIHRoaXMuc3RyaW5nID0gc3RyaW5nO1xuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgfVxuXG4gIGdldFN0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy5zdHJpbmc7XG4gIH1cblxuICBnZXRUeXBlKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGU7XG4gIH1cblxuICBnZXROYW1lKCkge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cblxuICBtYXRjaE5hbWVkUGFyYW1ldGVyKG5hbWVkUGFyYW1ldGVyLCBjb250ZXh0KSB7XG4gICAgbGV0IG5hbWVkUGFyYW1ldGVyTWF0Y2hlcztcblxuICAgIGNvbnN0IG5vZGVQcm9wZXJ0eVN0cmluZyA9IHRoaXMuc3RyaW5nLCAvLy9cbiAgICAgICAgICBuYW1lZFBhcmFtZXRlclN0cmluZyA9IG5hbWVkUGFyYW1ldGVyLmdldFN0cmluZygpO1xuXG4gICAgY29udGV4dC50cmFjZShgTWF0Y2hpbmcgdGhlICcke25vZGVQcm9wZXJ0eVN0cmluZ30nIG5vZGUgcHJvcGVydHkgYWdhaW5zdCB0aGUgJyR7bmFtZWRQYXJhbWV0ZXJTdHJpbmd9JyBuYW1lZCBwYXJhbWV0ZXIuLi5gKTtcblxuICAgIGNvbnN0IG5hbWUgPSBuYW1lZFBhcmFtZXRlci5nZXROYW1lKCksXG4gICAgICAgICAgdHlwZSA9IG5hbWVkUGFyYW1ldGVyLmdldFR5cGUoKTtcblxuICAgIG5hbWVkUGFyYW1ldGVyTWF0Y2hlcyA9ICgodGhpcy5uYW1lID09PSBuYW1lKSAmJiAodGhpcy50eXBlID09PSB0eXBlKSk7XG5cbiAgICBpZiAobmFtZWRQYXJhbWV0ZXJNYXRjaGVzKSB7XG4gICAgICBjb250ZXh0LmRlYnVnKGAuLi5tYXRjaGVkIHRoZSAnJHtub2RlUHJvcGVydHlTdHJpbmd9JyBub2RlIHByb3BlcnR5IGFnYWluc3QgdGhlICcke25hbWVkUGFyYW1ldGVyU3RyaW5nfScgbmFtZWQgcGFyYW1ldGVyLmApO1xuICAgIH1cblxuICAgIHJldHVybiBuYW1lZFBhcmFtZXRlck1hdGNoZXM7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiUGFyYW1ldGVyXCI7XG5cbiAgc3RhdGljIGZyb21OYW1lQW5kVHlwZShuYW1lLCB0eXBlLCBjb250ZXh0KSB7XG4gICAgY29uc3Qgc3RyaW5nID0gc3RyaW5nRnJvbU5hbWVBbmRUeXBlKG5hbWUsIHR5cGUsIGNvbnRleHQpLFxuICAgICAgICAgIG5vZGVQcm9wZXJ0eSA9IG5ldyBOb2RlUHJvcGVydHkoc3RyaW5nLCB0eXBlLCBuYW1lKTtcblxuICAgIHJldHVybiBub2RlUHJvcGVydHk7XG4gIH1cbn07XG5cbmZ1bmN0aW9uIHN0cmluZ0Zyb21OYW1lQW5kVHlwZShuYW1lLCB0eXBlLCBjb250ZXh0KSB7XG4gIGNvbnN0IHR5cGVTdHJpbmcgPSB0eXBlLCAgLy8vXG4gICAgICAgIG5hbWVTdHJpbmcgPSBuYW1lLCAgLy8vXG4gICAgICAgIHN0cmluZyA9IGAke3R5cGVTdHJpbmd9ICR7bmFtZVN0cmluZ31gO1xuXG4gIHJldHVybiBzdHJpbmc7XG59XG4iXSwibmFtZXMiOlsiTm9kZVByb3BlcnR5Iiwic3RyaW5nIiwidHlwZSIsIm5hbWUiLCJnZXRTdHJpbmciLCJnZXRUeXBlIiwiZ2V0TmFtZSIsIm1hdGNoTmFtZWRQYXJhbWV0ZXIiLCJuYW1lZFBhcmFtZXRlciIsImNvbnRleHQiLCJuYW1lZFBhcmFtZXRlck1hdGNoZXMiLCJub2RlUHJvcGVydHlTdHJpbmciLCJuYW1lZFBhcmFtZXRlclN0cmluZyIsInRyYWNlIiwiZGVidWciLCJmcm9tTmFtZUFuZFR5cGUiLCJzdHJpbmdGcm9tTmFtZUFuZFR5cGUiLCJub2RlUHJvcGVydHkiLCJ0eXBlU3RyaW5nIiwibmFtZVN0cmluZyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFFcUJBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFOLElBQUEsQUFBTUEsNkJBQU47YUFBTUEsYUFDUEMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLElBQUk7Z0NBRFhIO1FBRWpCLElBQUksQ0FBQ0MsTUFBTSxHQUFHQTtRQUNkLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtRQUNaLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTs7a0JBSktIOztZQU9uQkksS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDSCxNQUFNO1lBQ3BCOzs7WUFFQUksS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDSCxJQUFJO1lBQ2xCOzs7WUFFQUksS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDSCxJQUFJO1lBQ2xCOzs7WUFFQUksS0FBQUE7bUJBQUFBLFNBQUFBLG9CQUFvQkMsY0FBYyxFQUFFQyxPQUFPO2dCQUN6QyxJQUFJQztnQkFFSixJQUFNQyxxQkFBcUIsSUFBSSxDQUFDVixNQUFNLEVBQ2hDVyx1QkFBdUJKLGVBQWVKLFNBQVM7Z0JBRXJESyxRQUFRSSxLQUFLLENBQUMsQUFBQyxpQkFBa0VELE9BQWxERCxvQkFBbUIsaUNBQW9ELE9BQXJCQyxzQkFBcUI7Z0JBRXRHLElBQU1ULE9BQU9LLGVBQWVGLE9BQU8sSUFDN0JKLE9BQU9NLGVBQWVILE9BQU87Z0JBRW5DSyx3QkFBeUIsQUFBQyxJQUFJLENBQUNQLElBQUksS0FBS0EsUUFBVSxJQUFJLENBQUNELElBQUksS0FBS0E7Z0JBRWhFLElBQUlRLHVCQUF1QjtvQkFDekJELFFBQVFLLEtBQUssQ0FBQyxBQUFDLG1CQUFvRUYsT0FBbERELG9CQUFtQixpQ0FBb0QsT0FBckJDLHNCQUFxQjtnQkFDMUc7Z0JBRUEsT0FBT0Y7WUFDVDs7OztZQUlPSyxLQUFBQTttQkFBUCxTQUFPQSxnQkFBZ0JaLElBQUksRUFBRUQsSUFBSSxFQUFFTyxPQUFPO2dCQUN4QyxJQUFNUixTQUFTZSxzQkFBc0JiLE1BQU1ELE1BQU1PLFVBQzNDUSxlQUFlLElBM0NKakIsYUEyQ3FCQyxRQUFRQyxNQUFNQztnQkFFcEQsT0FBT2M7WUFDVDs7O1dBOUNtQmpCOztBQXVDbkIsaUJBdkNtQkEsY0F1Q1pHLFFBQU87QUFVaEIsU0FBU2Esc0JBQXNCYixJQUFJLEVBQUVELElBQUksRUFBRU8sT0FBTztJQUNoRCxJQUFNUyxhQUFhaEIsTUFDYmlCLGFBQWFoQixNQUNiRixTQUFTLEFBQUMsR0FBZ0JrQixPQUFkRCxZQUFXLEtBQWMsT0FBWEM7SUFFaEMsT0FBT2xCO0FBQ1QifQ==
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-furtle",
3
3
  "author": "James Smith",
4
- "version": "2.0.82",
4
+ "version": "2.0.86",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-furtle",
7
7
  "description": "Occam's Furtle language.",
@@ -11,12 +11,12 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "necessary": "^14.3.2",
14
- "occam-grammars": "^1.3.179"
14
+ "occam-grammars": "^1.3.182"
15
15
  },
16
16
  "devDependencies": {
17
17
  "@swc/core": "^1.5.6",
18
- "occam-custom-grammars": "^5.0.1094",
19
- "occam-entities": "^1.0.303",
18
+ "occam-custom-grammars": "^5.0.1096",
19
+ "occam-entities": "^1.0.304",
20
20
  "occam-query": "^4.1.35",
21
21
  "watchful-cli": "^1.7.56"
22
22
  },
package/src/dom/every.js CHANGED
@@ -7,9 +7,7 @@ import { nodeQuery } from "../utilities/query";
7
7
  import { domAssigned } from "../dom";
8
8
  import { NODES_TYPE, BOOLEAN_TYPE } from "../types";
9
9
 
10
- const variableNodeQuery = nodeQuery("/every/variable"),
11
- valueEveryNodeQuery = nodeQuery("/value/every"),
12
- parametersNodeQuery = nodeQuery("/every/anonymousProcedure/parameters");
10
+ const valueEveryNodeQuery = nodeQuery("/value/every");
13
11
 
14
12
  export default domAssigned(class Every {
15
13
  constructor(string, variable, anonymousProcedure) {
@@ -95,9 +93,9 @@ export default domAssigned(class Every {
95
93
  if (valueEveryNode !== null) {
96
94
  const { Variable, AnonymousProcedure } = dom,
97
95
  everyNode = valueEveryNode, ///
98
- string = stringFromEveryNode(everyNode, context),
96
+ anonymousProcedure = AnonymousProcedure.fromEveryNode(everyNode, context),
99
97
  variable = Variable.fromEveryNode(everyNode, context),
100
- anonymousProcedure = AnonymousProcedure.fromEveryNode(everyNode, context);
98
+ string = stringFromVariableAndAnonymousProcedure(variable, anonymousProcedure, context);
101
99
 
102
100
  every = new Every(string, variable, anonymousProcedure);
103
101
  }
@@ -106,12 +104,10 @@ export default domAssigned(class Every {
106
104
  }
107
105
  });
108
106
 
109
- function stringFromEveryNode(everyNode, context) {
110
- const variableNode = variableNodeQuery(everyNode),
111
- parametersNode = parametersNodeQuery(everyNode),
112
- variableString = context.nodeAsString(variableNode),
113
- parametersString = context.nodeAsString(parametersNode),
114
- string = `Every(${variableString}, (${parametersString}) { ... })`;
107
+ function stringFromVariableAndAnonymousProcedure(variable, anonymousProcedure, context) {
108
+ const variableString = variable.getString(),
109
+ anonymousProcedureString = anonymousProcedure.getString(),
110
+ string = `Every(${variableString}, ${anonymousProcedureString}) `;
115
111
 
116
112
  return string;
117
- }
113
+ }
package/src/dom/label.js CHANGED
@@ -29,16 +29,22 @@ export default domAssigned(class Label {
29
29
  static name = "Label";
30
30
 
31
31
  static fromProcedureDeclarationNode(procedureDeclarationNode, context) {
32
- const node = procedureDeclarationNode, ///
33
- string = context.nodeAsString(node),
34
- labelNode = labelNodeQuery(procedureDeclarationNode),
32
+ const labelNode = labelNodeQuery(procedureDeclarationNode),
35
33
  name = nameFromLabelNode(labelNode, context),
34
+ string = stringFromName(name, context),
36
35
  label = new Label(string, name);
37
36
 
38
37
  return label;
39
38
  }
40
39
  });
41
40
 
41
+ function stringFromName(name, context) {
42
+ const nameString = name, ///
43
+ string = nameString; ///
44
+
45
+ return string;
46
+ }
47
+
42
48
  function nameFromLabelNode(labelNode, context) {
43
49
  const nameTerminalNode = nameTerminalNodeQuery(labelNode),
44
50
  nameTerminalNodeContent = nameTerminalNode.getContent(),
@@ -90,10 +90,15 @@ export default domAssigned(class NamedParameter {
90
90
  function stringFromTypeNameAndAsName(type, name, asName, context) {
91
91
  let string;
92
92
 
93
- string = `${type} ${name}`;
93
+ const typeString = type, ///
94
+ nameString = name; ///
95
+
96
+ string = `${typeString} ${nameString}`;
94
97
 
95
98
  if (asName !== null) {
96
- string = `${string} As ${asName}`;
99
+ const asNameString = asName; ///
100
+
101
+ string = `${string} As ${asNameString}`;
97
102
  }
98
103
 
99
104
  return string;
@@ -57,8 +57,7 @@ export default domAssigned(class Parameter {
57
57
  if (terminalNodesLength === 2) {
58
58
  const name = nameFromParameterNode(parameterNode, context),
59
59
  type = typeFromParameterNode(parameterNode, context),
60
- node = parameterNode, //
61
- string = context.nodeAsString(node);
60
+ string = stringFromNameAndType(name, type, context);
62
61
 
63
62
  parameter = new Parameter(string, type, name);
64
63
  }
@@ -67,6 +66,14 @@ export default domAssigned(class Parameter {
67
66
  }
68
67
  });
69
68
 
69
+ function stringFromNameAndType(name, type, context) {
70
+ const nameString = name, ///
71
+ typeString = type, ///
72
+ string = `${typeString} ${nameString}`;
73
+
74
+ return string;
75
+ }
76
+
70
77
  function nameFromParameterNode(parameterNode, context) {
71
78
  const nameTerminalNode = nameTerminalNodeQuery(parameterNode),
72
79
  nameTerminalNodeContent = nameTerminalNode.getContent(),
@@ -121,7 +121,7 @@ export default domAssigned(class Parameters {
121
121
  }
122
122
  });
123
123
 
124
- export function stringFromArray(array, context) {
124
+ function stringFromArray(array, context) {
125
125
  const parametersString = array.reduce((parametersString, parameter) => {
126
126
  const parameterString = parameter.getString();
127
127
 
@@ -7,12 +7,10 @@ import { nodeQuery } from "../../utilities/query";
7
7
  import { domAssigned } from "../../dom";
8
8
  import { variablesFromValuesAndParameters } from "../procedure";
9
9
 
10
- const parametersNodeQuery = nodeQuery("/anonymousProcedure/parameters"),
11
- typeTerminalNodeQuery = nodeQuery("/anonymousProcedure/@type"),
10
+ const typeTerminalNodeQuery = nodeQuery("/anonymousProcedure/@type"),
12
11
  someAnonymousProcedureNodeQuery = nodeQuery("/some/anonymousProcedure"),
13
12
  everyAnonymousProcedureNodeQuery = nodeQuery("/every/anonymousProcedure"),
14
- reduceAnonymousProcedureNodeQuery = nodeQuery("/reduce/anonymousProcedure"),
15
- anonymousProcedureCallAnonymousProcedureNodeQuery = nodeQuery("/anonymousProcedureCall/anonymousProcedure");
13
+ reduceAnonymousProcedureNodeQuery = nodeQuery("/reduce/anonymousProcedure");
16
14
 
17
15
  export default domAssigned(class AnonymousProcedure {
18
16
  constructor(string, type, parameters, returnBlock) {
@@ -45,9 +43,8 @@ export default domAssigned(class AnonymousProcedure {
45
43
 
46
44
  this.parameters.matchValues(values, context);
47
45
 
48
- const variables = variablesFromValuesAndParameters(values, this.parameters, context);
49
-
50
- const value = this.returnBlock.evaluate(variables, context),
46
+ const variables = variablesFromValuesAndParameters(values, this.parameters, context),
47
+ value = this.returnBlock.evaluate(variables, context),
51
48
  valueType = value.getType();
52
49
 
53
50
  if (this.type !== valueType) {
@@ -88,27 +85,28 @@ export default domAssigned(class AnonymousProcedure {
88
85
 
89
86
  return anonymousProcedure;
90
87
  }
91
-
92
- static fromAnonymousProcedureCallNode(anonymousProcedureCallNode, context) {
93
- const anonymousProcedureCallAnonymousProcedureNode = anonymousProcedureCallAnonymousProcedureNodeQuery(anonymousProcedureCallNode),
94
- anonymousProcedureNode = anonymousProcedureCallAnonymousProcedureNode, ///
95
- anonymousProcedure = anonymousProcedureFromAnonymousProcedureNode(anonymousProcedureNode, context);
96
-
97
- return anonymousProcedure;
98
- }
99
88
  });
100
89
 
101
90
  function anonymousProcedureFromAnonymousProcedureNode(anonymousProcedureNode, context) {
102
91
  const { Parameters, ReturnBlock, AnonymousProcedure } = dom,
103
- string = stringFromAnonymousProcedureNode(anonymousProcedureNode, context),
104
- type = typeFromProcedureAnonymousProcedureNode(anonymousProcedureNode, context),
105
- parameters = Parameters.fromAnonymousProcedureNode(anonymousProcedureNode, context),
106
92
  returnBlock = ReturnBlock.fromAnonymousProcedureNode(anonymousProcedureNode, context),
93
+ parameters = Parameters.fromAnonymousProcedureNode(anonymousProcedureNode, context),
94
+ type = typeFromProcedureAnonymousProcedureNode(anonymousProcedureNode, context),
95
+ string = stringFromTypeParametersAndReturnBlock(type, parameters, returnBlock, context),
107
96
  anonymousProcedure = new AnonymousProcedure(string, type, parameters, returnBlock);
108
97
 
109
98
  return anonymousProcedure;
110
99
  }
111
100
 
101
+ function stringFromTypeParametersAndReturnBlock(type, parameters, returnBlock, context) {
102
+ const typeString = type, ///
103
+ parametersString = parameters.getString(),
104
+ returnBlockString = returnBlock.getString(),
105
+ string = `${typeString} (${parametersString}) ${returnBlockString}`;
106
+
107
+ return string;
108
+ }
109
+
112
110
  function typeFromProcedureAnonymousProcedureNode(anonymousProcedureNode, context) {
113
111
  const typeTerminalNode = typeTerminalNodeQuery(anonymousProcedureNode),
114
112
  typeTerminalNodeContent = typeTerminalNode.getContent(),
@@ -116,14 +114,3 @@ function typeFromProcedureAnonymousProcedureNode(anonymousProcedureNode, context
116
114
 
117
115
  return type;
118
116
  }
119
-
120
- function stringFromAnonymousProcedureNode(anonymousProcedureNode, context) {
121
- const parametersNode = parametersNodeQuery(anonymousProcedureNode),
122
- typeTerminalNode = typeTerminalNodeQuery(anonymousProcedureNode),
123
- parametersString = context.nodeAsString(parametersNode),
124
- typeNode = typeTerminalNode, ///
125
- typeString = context.nodeAsString(typeNode),
126
- string = `${typeString} (${parametersString}) { ... }`;
127
-
128
- return string;
129
- }
@@ -83,11 +83,11 @@ export default domAssigned(class Procedure {
83
83
 
84
84
  static fromProcedureDeclarationNode(procedureDeclarationNode, context) {
85
85
  const { Label, ReturnBlock, Parameters } = dom,
86
- string = stringFromProcedureDeclarationNode(procedureDeclarationNode, context),
87
86
  type = typeFromProcedureDeclarationNode(procedureDeclarationNode, context),
88
87
  label = Label.fromProcedureDeclarationNode(procedureDeclarationNode, context),
89
88
  parameters = Parameters.fromProcedureDeclarationNode(procedureDeclarationNode, context),
90
89
  returnBlock = ReturnBlock.fromProcedureDeclarationNode(procedureDeclarationNode, context),
90
+ string = stringFromTypeLabelParametersAndReturnBlock(type, label, parameters, returnBlock),
91
91
  procedureDeclaration = new Procedure(string, type, label, parameters, returnBlock);
92
92
 
93
93
  return procedureDeclaration;
@@ -119,15 +119,12 @@ function typeFromProcedureDeclarationNode(procedureDeclarationNode, context) {
119
119
  return type;
120
120
  }
121
121
 
122
- function stringFromProcedureDeclarationNode(procedureDeclarationNode, context) {
123
- const labelNode = labelNodeQuery(procedureDeclarationNode),
124
- parametersNode = parametersNodeQuery(procedureDeclarationNode),
125
- typeTerminalNode = typeTerminalNodeQuery(procedureDeclarationNode),
126
- typeNode = typeTerminalNode, ///
127
- typeString = context.nodeAsString(typeNode),
128
- labelString = context.nodeAsString(labelNode),
129
- parametersString = context.nodeAsString(parametersNode),
130
- string = `${typeString} ${labelString}(${parametersString}) { ... }`;
122
+ function stringFromTypeLabelParametersAndReturnBlock(type, label, parameters, returnBlock) {
123
+ const typeString = type, ///
124
+ labelString = label.getString(),
125
+ parametersString = parameters.getString(),
126
+ returnBlockString = returnBlock.getString(),
127
+ string = `${typeString} ${labelString}(${parametersString}) ${returnBlockString}`;
131
128
 
132
129
  return string;
133
130
  }
@@ -61,9 +61,9 @@ export default domAssigned(class ProcedureCall {
61
61
  if (procedureCallNode !== null) {
62
62
  const { Values, Reference } = dom,
63
63
  node = procedureCallNode, ///
64
- string = context.nodeAsString(node),
65
64
  reference = Reference.fromValueNode(valueNode, context),
66
- values = Values.fromValueNode(valueNode, context);
65
+ values = Values.fromValueNode(valueNode, context),
66
+ string = stringFromValuesAndReference(values, reference, context);
67
67
 
68
68
  procedureCall = new ProcedureCall(string, reference, values);
69
69
  }
@@ -71,3 +71,11 @@ export default domAssigned(class ProcedureCall {
71
71
  return procedureCall;
72
72
  }
73
73
  });
74
+
75
+ function stringFromValuesAndReference(values, reference, context) {
76
+ const valuesString = values.getString(),
77
+ referenceString = reference.getString(),
78
+ string = `${referenceString}(${valuesString})`;
79
+
80
+ return string;
81
+ }
package/src/dom/reduce.js CHANGED
@@ -91,11 +91,11 @@ export default domAssigned(class Reduce {
91
91
  if (valueReduceNode !== null) {
92
92
  const { Value, Variable, AnonymousProcedure } = dom,
93
93
  reduceNode = valueReduceNode, ///
94
- string = stringFromReduceNode(reduceNode, context),
95
94
  value = Value.fromReduceNode(reduceNode, context),
96
95
  variable = Variable.fromReduceNode(reduceNode, context),
97
96
  initialValue = value, ///
98
- anonymousProcedure = AnonymousProcedure.fromReduceNode(reduceNode, context);
97
+ anonymousProcedure = AnonymousProcedure.fromReduceNode(reduceNode, context),
98
+ string = stringFromVariableInitialValueAndAnonymousProcedure(variable, initialValue, anonymousProcedure);
99
99
 
100
100
  reduce = new Reduce(string, variable, initialValue, anonymousProcedure);
101
101
  }
@@ -104,14 +104,11 @@ export default domAssigned(class Reduce {
104
104
  }
105
105
  });
106
106
 
107
- function stringFromReduceNode(reduceNode, context) {
108
- const variableNode = variableNodeQuery(reduceNode),
109
- parametersNode = parametersNodeQuery(reduceNode),
110
- initialValueNode = initialValueNodeQuery(reduceNode),
111
- variableString = context.nodeAsString(variableNode),
112
- parametersString = context.nodeAsString(parametersNode),
113
- initialValueString = context.nodeAsString(initialValueNode),
114
- string = `Reduce(${variableString}, (${parametersString}) { ... }, ${initialValueString})`;
107
+ function stringFromVariableInitialValueAndAnonymousProcedure(variable, initialValue, anonymousProcedure) {
108
+ const variableString = variable.getString(),
109
+ initialValueString = initialValue.getString(),
110
+ anonymousProcedureString = anonymousProcedure.getString(),
111
+ string = `Reduce(${variableString}, ${anonymousProcedureString}, ${initialValueString})`;
115
112
 
116
113
  return string;
117
- }
114
+ }
@@ -34,15 +34,21 @@ export default domAssigned(class Reference {
34
34
  static fromValueNode(valueNode, context) {
35
35
  const valueProcedureCallReferenceNod = valueProcedureCallReferenceNodeQuery(valueNode),
36
36
  referenceNode = valueProcedureCallReferenceNod,
37
- node = referenceNode, ///
38
- string = context.nodeAsString(node),
39
37
  name = nameFromReferenceNode(referenceNode, context),
38
+ string = stringFromName(name, context),
40
39
  reference = new Reference(string, name);
41
40
 
42
41
  return reference;
43
42
  }
44
43
  });
45
44
 
45
+ function stringFromName(name, context) {
46
+ const nameString = name, ///
47
+ string = nameString; ///
48
+
49
+ return string;
50
+ }
51
+
46
52
  function nameFromReferenceNode(referenceNode, context) {
47
53
  const referenceNameTerminalNode = referenceNameTerminalNodeQuery(referenceNode),
48
54
  referenceNameTerminalNodeContent = referenceNameTerminalNode.getContent(),
package/src/dom/some.js CHANGED
@@ -95,9 +95,9 @@ export default domAssigned(class Some {
95
95
  if (valueSomeNode !== null) {
96
96
  const { Variable, AnonymousProcedure } = dom,
97
97
  someNode = valueSomeNode, ///
98
- string = stringFromSomeNode(someNode, context),
98
+ anonymousProcedure = AnonymousProcedure.fromSomeNode(someNode, context),
99
99
  variable = Variable.fromSomeNode(someNode, context),
100
- anonymousProcedure = AnonymousProcedure.fromSomeNode(someNode, context);
100
+ string = stringFromVariableAndAnonymousProcedure(variable, anonymousProcedure, context);
101
101
 
102
102
  some = new Some(string, variable, anonymousProcedure);
103
103
  }
@@ -106,12 +106,10 @@ export default domAssigned(class Some {
106
106
  }
107
107
  });
108
108
 
109
- function stringFromSomeNode(someNode, context) {
110
- const variableNode = variableNodeQuery(someNode),
111
- parametersNode = parametersNodeQuery(someNode),
112
- variableString = context.nodeAsString(variableNode),
113
- parametersString = context.nodeAsString(parametersNode),
114
- string = `Some(${variableString}, (${parametersString}) { ... })`;
109
+ function stringFromVariableAndAnonymousProcedure(variable, anonymousProcedure, context) {
110
+ const variableString = variable.getString(),
111
+ anonymousProcedureString = anonymousProcedure.getString(),
112
+ string = `Some(${variableString}, ${anonymousProcedureString}) `;
115
113
 
116
114
  return string;
117
- }
115
+ }
package/src/dom/step.js CHANGED
@@ -3,13 +3,13 @@
3
3
  import dom from "../dom";
4
4
 
5
5
  import { domAssigned } from "../dom";
6
+ import { EMPTY_STRING } from "../constants";
6
7
 
7
8
  export default domAssigned(class Step {
8
- constructor(string, arrayAssignment, objectAssigment, conditionalBlocks, variablesDeclaration) {
9
+ constructor(string, arrayAssignment, objectAssigment, variablesDeclaration) {
9
10
  this.string = string;
10
11
  this.arrayAssignment = arrayAssignment;
11
12
  this.objectAssigment = objectAssigment;
12
- this.conditionalBlocks = conditionalBlocks;
13
13
  this.variablesDeclaration = variablesDeclaration;
14
14
  }
15
15
 
@@ -25,10 +25,6 @@ export default domAssigned(class Step {
25
25
  return this.objectAssigment;
26
26
  }
27
27
 
28
- getConditionalBlocks() {
29
- return this.conditionalBlocks;
30
- }
31
-
32
28
  getVariablesDeclaration() {
33
29
  return this.variablesDeclaration;
34
30
  }
@@ -40,8 +36,6 @@ export default domAssigned(class Step {
40
36
  this.arrayAssignment.evaluate(context);
41
37
  } else if (this.objectAssigment !== null) {
42
38
  this.objectAssigment.evaluate(context);
43
- } else if (this.conditionalBlocks !== null) {
44
- this.conditionalBlocks.evaluate(context);
45
39
  } else if (this.variablesDeclaration !== null) {
46
40
  this.variablesDeclaration.evaluate(context);
47
41
  }
@@ -50,15 +44,19 @@ export default domAssigned(class Step {
50
44
  static name = "Step";
51
45
 
52
46
  static fromStepNode(stepNode, context) {
53
- const { ArrayAssignment, ObjectAssigment, ConditionalBlocks, VariableAssignments } = dom,
54
- node = stepNode, ///
55
- string = context.nodeAsString(node),
47
+ const { ArrayAssignment, ObjectAssigment, VariableAssignments } = dom,
48
+ string = stringFromNothing(context),
56
49
  arrayAssignment = ArrayAssignment.fromStepNode(stepNode, context),
57
50
  objectAssigment = ObjectAssigment.fromStepNode(stepNode, context),
58
- conditionalBlocks = ConditionalBlocks.fromStepNode(stepNode, context),
59
51
  variablesDeclaration = VariableAssignments.fromStepNode(stepNode, context),
60
- step = new Step(string, arrayAssignment, objectAssigment, conditionalBlocks, variablesDeclaration);
52
+ step = new Step(string, arrayAssignment, objectAssigment, variablesDeclaration);
61
53
 
62
54
  return step;
63
55
  }
64
56
  });
57
+
58
+ function stringFromNothing(context) {
59
+ const string = EMPTY_STRING;
60
+
61
+ return string;
62
+ }
@@ -89,10 +89,10 @@ export default domAssigned(class Ternary {
89
89
  });
90
90
 
91
91
  function stringFromValueIfValueAndElseValue(value, ifValue, elseValue, context) {
92
- const valueString = value.getString(),
93
- ifValueString = ifValue.getString(),
94
- elseValueString = elseValue.getString(),
95
- string = `If (${valueString}) ${ifValueString} ${elseValueString}`;
92
+ const valueString = value.asString(context),
93
+ ifValueString = ifValue.asString(context),
94
+ elseValueString = elseValue.asString(context),
95
+ string = `If (${valueString}) ${ifValueString} Else ${elseValueString};`;
96
96
 
97
97
  return string;
98
98
  }