occam-furtle 3.0.305 → 3.0.310

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 (87) hide show
  1. package/lib/element/assignment/array.js +20 -20
  2. package/lib/element/assignment/object.js +17 -14
  3. package/lib/element/binding/named.js +6 -6
  4. package/lib/element/binding.js +4 -4
  5. package/lib/element/every.js +8 -8
  6. package/lib/element/nodeQuery.js +5 -5
  7. package/lib/element/nodesQuery.js +5 -5
  8. package/lib/element/parameter.js +4 -4
  9. package/lib/element/primitive.js +42 -23
  10. package/lib/element/procedure/anonymous.js +4 -4
  11. package/lib/element/procedure.js +8 -10
  12. package/lib/element/reduce.js +6 -6
  13. package/lib/element/some.js +8 -8
  14. package/lib/element/term/comparison.js +4 -4
  15. package/lib/element/term/logical.js +7 -7
  16. package/lib/element/term/negated.js +5 -5
  17. package/lib/element/term.js +3 -3
  18. package/lib/element/ternary.js +5 -5
  19. package/lib/element/type.js +94 -0
  20. package/lib/element/value.js +56 -5
  21. package/lib/element/variable.js +4 -4
  22. package/lib/node/assignments/variable.js +4 -10
  23. package/lib/node/binding/named.js +2 -2
  24. package/lib/node/binding.js +16 -23
  25. package/lib/node/declaration/procedure.js +4 -10
  26. package/lib/node/parameter.js +5 -10
  27. package/lib/node/primitive.js +9 -9
  28. package/lib/node/procedure/anoymous.js +4 -10
  29. package/lib/node/type.js +41 -0
  30. package/lib/nominalValueProperties.js +86 -0
  31. package/lib/nominalValueProperty.js +45 -0
  32. package/lib/nonTerminalNodeMap.js +3 -1
  33. package/lib/preamble.js +2 -1
  34. package/lib/ruleNames.js +5 -1
  35. package/lib/typeNames.js +34 -0
  36. package/lib/utilities/element.js +50 -18
  37. package/lib/utilities/primitive.js +13 -9
  38. package/lib/utilities/string.js +35 -22
  39. package/lib/utilities/value.js +9 -20
  40. package/lib/utilities/values.js +3 -3
  41. package/package.json +2 -2
  42. package/src/element/assignment/array.js +31 -26
  43. package/src/element/assignment/object.js +20 -13
  44. package/src/element/binding/named.js +10 -6
  45. package/src/element/binding.js +5 -3
  46. package/src/element/every.js +9 -7
  47. package/src/element/nodeQuery.js +5 -4
  48. package/src/element/nodesQuery.js +5 -4
  49. package/src/element/parameter.js +5 -3
  50. package/src/element/primitive.js +56 -26
  51. package/src/element/procedure/anonymous.js +5 -3
  52. package/src/element/procedure.js +8 -12
  53. package/src/element/reduce.js +6 -5
  54. package/src/element/some.js +9 -7
  55. package/src/element/term/comparison.js +6 -3
  56. package/src/element/term/logical.js +8 -6
  57. package/src/element/term/negated.js +5 -4
  58. package/src/element/term.js +3 -2
  59. package/src/element/ternary.js +5 -4
  60. package/src/element/type.js +128 -0
  61. package/src/element/value.js +27 -3
  62. package/src/element/variable.js +5 -3
  63. package/src/node/assignments/variable.js +5 -13
  64. package/src/node/binding/named.js +1 -1
  65. package/src/node/binding.js +19 -30
  66. package/src/node/declaration/procedure.js +5 -13
  67. package/src/node/parameter.js +6 -14
  68. package/src/node/primitive.js +8 -8
  69. package/src/node/procedure/anoymous.js +5 -13
  70. package/src/node/type.js +43 -0
  71. package/src/nominalValueProperties.js +103 -0
  72. package/src/nominalValueProperty.js +55 -0
  73. package/src/nonTerminalNodeMap.js +3 -0
  74. package/src/preamble.js +1 -0
  75. package/src/ruleNames.js +1 -0
  76. package/src/typeNames.js +7 -0
  77. package/src/utilities/element.js +67 -19
  78. package/src/utilities/primitive.js +31 -22
  79. package/src/utilities/string.js +42 -24
  80. package/src/utilities/value.js +18 -31
  81. package/src/utilities/values.js +1 -2
  82. package/lib/nodeProperties.js +0 -78
  83. package/lib/nodeProperty.js +0 -45
  84. package/lib/types.js +0 -34
  85. package/src/nodeProperties.js +0 -89
  86. package/src/nodeProperty.js +0 -53
  87. package/src/types.js +0 -7
@@ -10,7 +10,7 @@ Object.defineProperty(exports, "default", {
10
10
  });
11
11
  const _occamlanguages = require("occam-languages");
12
12
  const _elements = require("../elements");
13
- const _types = require("../types");
13
+ const _typeNames = require("../typeNames");
14
14
  const _default = (0, _elements.define)(class Term extends _occamlanguages.Element {
15
15
  constructor(context, string, node, breakPoint, variable, primitive, negatedTerm, logicalTerm, bracketedTerm, comparisonTerm){
16
16
  super(context, string, node, breakPoint);
@@ -63,7 +63,7 @@ const _default = (0, _elements.define)(class Term extends _occamlanguages.Elemen
63
63
  return type;
64
64
  }
65
65
  isBoolean() {
66
- const type = this.getType(), boolean = type === _types.BOOLEAN_TYPE;
66
+ const type = this.getType(), booleanType = type.isBooleanType(), boolean = booleanType; ///
67
67
  return boolean;
68
68
  }
69
69
  evaluate(context) {
@@ -111,4 +111,4 @@ const _default = (0, _elements.define)(class Term extends _occamlanguages.Elemen
111
111
  }
112
112
  });
113
113
 
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Rlcm0uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgQk9PTEVBTl9UWVBFIH0gZnJvbSBcIi4uL3R5cGVzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBUZXJtIGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdmFyaWFibGUsIHByaW1pdGl2ZSwgbmVnYXRlZFRlcm0sIGxvZ2ljYWxUZXJtLCBicmFja2V0ZWRUZXJtLCBjb21wYXJpc29uVGVybSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLnZhcmlhYmxlID0gdmFyaWFibGU7XG4gICAgdGhpcy5wcmltaXRpdmUgPSBwcmltaXRpdmU7XG4gICAgdGhpcy5uZWdhdGVkVGVybSA9IG5lZ2F0ZWRUZXJtO1xuICAgIHRoaXMubG9naWNhbFRlcm0gPSBsb2dpY2FsVGVybTtcbiAgICB0aGlzLmJyYWNrZXRlZFRlcm0gPSBicmFja2V0ZWRUZXJtO1xuICAgIHRoaXMuY29tcGFyaXNvblRlcm0gPSBjb21wYXJpc29uVGVybTtcbiAgfVxuXG4gIGdldFZhcmlhYmxlKCkge1xuICAgIHJldHVybiB0aGlzLnZhcmlhYmxlO1xuICB9XG5cbiAgZ2V0UHJpbWl0aXZlKCkge1xuICAgIHJldHVybiB0aGlzLnByaW1pdGl2ZTtcbiAgfVxuXG4gIGdldE5lZ2F0ZWRUZXJtKCkge1xuICAgIHJldHVybiB0aGlzLm5lZ2F0ZWRUZXJtO1xuICB9XG5cbiAgZ2V0TG9naWNhbFRlcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMubG9naWNhbFRlcm07XG4gIH1cblxuICBnZXRCcmVlZGluZ1Rlcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMuYnJhY2tldGVkVGVybTtcbiAgfVxuXG4gIGdldENvbXBhcmlzb25UZXJtKCkge1xuICAgIHJldHVybiB0aGlzLmNvbXBhcmlzb25UZXJtO1xuICB9XG5cbiAgZ2V0UHJpbWl0aXZlVmFsdWUoKSB7XG4gICAgY29uc3QgcHJpbWl0aXZlVmFsdWUgPSB0aGlzLnByaW1pdGl2ZS5nZXRWYWx1ZSgpO1xuXG4gICAgcmV0dXJuIHByaW1pdGl2ZVZhbHVlO1xuICB9XG5cbiAgZ2V0VHlwZSgpIHtcbiAgICBsZXQgdHlwZTtcblxuICAgIGlmIChmYWxzZSkge1xuICAgICAgLy8vXG4gICAgfSBlbHNlIGlmICh0aGlzLnZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgICB0eXBlID0gdGhpcy52YXJpYWJsZS5nZXRUeXBlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnByaW1pdGl2ZSAhPT0gbnVsbCkge1xuICAgICAgdHlwZSA9IHRoaXMucHJpbWl0aXZlLmdldFR5cGUoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMubmVnYXRlZFRlcm0gIT09IG51bGwpIHtcbiAgICAgIHR5cGUgPSB0aGlzLm5lZ2F0ZWRUZXJtLmdldFR5cGUoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMubG9naWNhbFRlcm0gIT09IG51bGwpIHtcbiAgICAgIHR5cGUgPSB0aGlzLmxvZ2ljYWxUZXJtLmdldFR5cGUoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuYnJhY2tldGVkVGVybSAhPT0gbnVsbCkge1xuICAgICAgdHlwZSA9IHRoaXMuYnJhY2tldGVkVGVybS5nZXRUeXBlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmNvbXBhcmlzb25UZXJtICE9PSBudWxsKSB7XG4gICAgICB0eXBlID0gdGhpcy5jb21wYXJpc29uVGVybS5nZXRUeXBlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxuICBpc0Jvb2xlYW4oKSB7XG4gICAgY29uc3QgdHlwZSA9IHRoaXMuZ2V0VHlwZSgpLFxuICAgICAgICAgIGJvb2xlYW4gPSAodHlwZSA9PT0gQk9PTEVBTl9UWVBFKTtcblxuICAgIHJldHVybiBib29sZWFuO1xuICB9XG5cbiAgZXZhbHVhdGUoY29udGV4dCkge1xuICAgIGxldCB2YWx1ZTtcblxuICAgIGlmIChmYWxzZSkge1xuICAgICAgLy8vXG4gICAgfSBlbHNlIGlmICh0aGlzLnZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgICB2YWx1ZSA9IHRoaXMudmFyaWFibGUuZXZhbHVhdGUoY29udGV4dCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnByaW1pdGl2ZSAhPT0gbnVsbCkge1xuICAgICAgdmFsdWUgPSB0aGlzLnByaW1pdGl2ZS5ldmFsdWF0ZShjb250ZXh0KTtcbiAgICB9IGVsc2UgaWYgKHRoaXMubmVnYXRlZFRlcm0gIT09IG51bGwpIHtcbiAgICAgIHZhbHVlID0gdGhpcy5uZWdhdGVkVGVybS5ldmFsdWF0ZShjb250ZXh0KTtcbiAgICB9IGVsc2UgaWYgKHRoaXMubG9naWNhbFRlcm0gIT09IG51bGwpIHtcbiAgICAgIHZhbHVlID0gdGhpcy5sb2dpY2FsVGVybS5ldmFsdWF0ZShjb250ZXh0KTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuYnJhY2tldGVkVGVybSAhPT0gbnVsbCkge1xuICAgICAgdmFsdWUgPSB0aGlzLmJyYWNrZXRlZFRlcm0uZXZhbHVhdGUoY29udGV4dCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmNvbXBhcmlzb25UZXJtICE9PSBudWxsKSB7XG4gICAgICB2YWx1ZSA9IHRoaXMuY29tcGFyaXNvblRlcm0uZXZhbHVhdGUoY29udGV4dCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgaXNFcXVhbFRvKHRlcm0pIHtcbiAgICBsZXQgZXF1YWxUbyA9IGZhbHNlO1xuXG4gICAgaWYgKGZhbHNlKSB7XG4gICAgICAvLy9cbiAgICB9IGVsc2UgaWYgKHRoaXMudmFyaWFibGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHZhcmlhYmxlID0gdGVybS5nZXRWYXJpYWJsZSgpO1xuXG4gICAgICBpZiAodmFyaWFibGUgIT09IG51bGwpIHtcbiAgICAgICAgZXF1YWxUbyA9IHRoaXMudmFyaWFibGUuaXNFcXVhbFRvKHZhcmlhYmxlKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRoaXMucHJpbWl0aXZlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBwcmltaXRpdmUgPSB0ZXJtLmdldFByaW1pdGl2ZSgpO1xuXG4gICAgICBpZiAocHJpbWl0aXZlICE9PSBudWxsKSB7XG4gICAgICAgIGVxdWFsVG8gPSB0aGlzLnByaW1pdGl2ZS5pc0VxdWFsVG8ocHJpbWl0aXZlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZXF1YWxUbztcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJUZXJtXCI7XG5cbiAgc3RhdGljIGZyb21QcmltaXRpdmUocHJpbWl0aXZlLCBjb250ZXh0KSB7XG4gICAgY29uc3QgcHJpbWl0aXZlU3RyaW5nID0gcHJpbWl0aXZlLmdldFN0cmluZygpLFxuICAgICAgICAgIHN0cmluZyA9IHByaW1pdGl2ZVN0cmluZywgLy8vXG4gICAgICAgICAgbm9kZSA9IG51bGwsXG4gICAgICAgICAgYnJlYWtQb2ludCA9IG51bGwsXG4gICAgICAgICAgdmFyaWFibGUgPSBudWxsLFxuICAgICAgICAgIG5lZ2F0ZWRUZXJtID0gbnVsbCxcbiAgICAgICAgICBsb2dpY2FsVGVybSA9IG51bGwsXG4gICAgICAgICAgYnJhY2tldGVkVGVybSA9IG51bGwsXG4gICAgICAgICAgY29tcGFyaXNvblRlcm0gPSBudWxsO1xuXG4gICAgY29udGV4dCA9IG51bGw7XG5cbiAgICBjb25zdCB0ZXJtID0gbmV3IFRlcm0oY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB2YXJpYWJsZSwgcHJpbWl0aXZlLCBuZWdhdGVkVGVybSwgbG9naWNhbFRlcm0sIGJyYWNrZXRlZFRlcm0sIGNvbXBhcmlzb25UZXJtKTtcblxuICAgIHJldHVybiB0ZXJtO1xuICB9XG59KTtcbiJdLCJuYW1lcyI6WyJkZWZpbmUiLCJUZXJtIiwiRWxlbWVudCIsImNvbnRleHQiLCJzdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsInZhcmlhYmxlIiwicHJpbWl0aXZlIiwibmVnYXRlZFRlcm0iLCJsb2dpY2FsVGVybSIsImJyYWNrZXRlZFRlcm0iLCJjb21wYXJpc29uVGVybSIsImdldFZhcmlhYmxlIiwiZ2V0UHJpbWl0aXZlIiwiZ2V0TmVnYXRlZFRlcm0iLCJnZXRMb2dpY2FsVGVybSIsImdldEJyZWVkaW5nVGVybSIsImdldENvbXBhcmlzb25UZXJtIiwiZ2V0UHJpbWl0aXZlVmFsdWUiLCJwcmltaXRpdmVWYWx1ZSIsImdldFZhbHVlIiwiZ2V0VHlwZSIsInR5cGUiLCJpc0Jvb2xlYW4iLCJib29sZWFuIiwiQk9PTEVBTl9UWVBFIiwiZXZhbHVhdGUiLCJ2YWx1ZSIsImlzRXF1YWxUbyIsInRlcm0iLCJlcXVhbFRvIiwibmFtZSIsImZyb21QcmltaXRpdmUiLCJwcmltaXRpdmVTdHJpbmciLCJnZXRTdHJpbmciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQU9BOzs7ZUFBQTs7O2dDQUx3QjswQkFFRDt1QkFDTTtNQUU3QixXQUFlQSxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLGFBQWFDLHVCQUFPO0lBQzlDLFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsUUFBUSxFQUFFQyxTQUFTLEVBQUVDLFdBQVcsRUFBRUMsV0FBVyxFQUFFQyxhQUFhLEVBQUVDLGNBQWMsQ0FBRTtRQUMzSCxLQUFLLENBQUNULFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0MsUUFBUSxHQUFHQTtRQUNoQixJQUFJLENBQUNDLFNBQVMsR0FBR0E7UUFDakIsSUFBSSxDQUFDQyxXQUFXLEdBQUdBO1FBQ25CLElBQUksQ0FBQ0MsV0FBVyxHQUFHQTtRQUNuQixJQUFJLENBQUNDLGFBQWEs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
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Rlcm0uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgQk9PTEVBTl9UWVBFX05BTUUgfSBmcm9tIFwiLi4vdHlwZU5hbWVzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBUZXJtIGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdmFyaWFibGUsIHByaW1pdGl2ZSwgbmVnYXRlZFRlcm0sIGxvZ2ljYWxUZXJtLCBicmFja2V0ZWRUZXJtLCBjb21wYXJpc29uVGVybSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLnZhcmlhYmxlID0gdmFyaWFibGU7XG4gICAgdGhpcy5wcmltaXRpdmUgPSBwcmltaXRpdmU7XG4gICAgdGhpcy5uZWdhdGVkVGVybSA9IG5lZ2F0ZWRUZXJtO1xuICAgIHRoaXMubG9naWNhbFRlcm0gPSBsb2dpY2FsVGVybTtcbiAgICB0aGlzLmJyYWNrZXRlZFRlcm0gPSBicmFja2V0ZWRUZXJtO1xuICAgIHRoaXMuY29tcGFyaXNvblRlcm0gPSBjb21wYXJpc29uVGVybTtcbiAgfVxuXG4gIGdldFZhcmlhYmxlKCkge1xuICAgIHJldHVybiB0aGlzLnZhcmlhYmxlO1xuICB9XG5cbiAgZ2V0UHJpbWl0aXZlKCkge1xuICAgIHJldHVybiB0aGlzLnByaW1pdGl2ZTtcbiAgfVxuXG4gIGdldE5lZ2F0ZWRUZXJtKCkge1xuICAgIHJldHVybiB0aGlzLm5lZ2F0ZWRUZXJtO1xuICB9XG5cbiAgZ2V0TG9naWNhbFRlcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMubG9naWNhbFRlcm07XG4gIH1cblxuICBnZXRCcmVlZGluZ1Rlcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMuYnJhY2tldGVkVGVybTtcbiAgfVxuXG4gIGdldENvbXBhcmlzb25UZXJtKCkge1xuICAgIHJldHVybiB0aGlzLmNvbXBhcmlzb25UZXJtO1xuICB9XG5cbiAgZ2V0UHJpbWl0aXZlVmFsdWUoKSB7XG4gICAgY29uc3QgcHJpbWl0aXZlVmFsdWUgPSB0aGlzLnByaW1pdGl2ZS5nZXRWYWx1ZSgpO1xuXG4gICAgcmV0dXJuIHByaW1pdGl2ZVZhbHVlO1xuICB9XG5cbiAgZ2V0VHlwZSgpIHtcbiAgICBsZXQgdHlwZTtcblxuICAgIGlmIChmYWxzZSkge1xuICAgICAgLy8vXG4gICAgfSBlbHNlIGlmICh0aGlzLnZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgICB0eXBlID0gdGhpcy52YXJpYWJsZS5nZXRUeXBlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnByaW1pdGl2ZSAhPT0gbnVsbCkge1xuICAgICAgdHlwZSA9IHRoaXMucHJpbWl0aXZlLmdldFR5cGUoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMubmVnYXRlZFRlcm0gIT09IG51bGwpIHtcbiAgICAgIHR5cGUgPSB0aGlzLm5lZ2F0ZWRUZXJtLmdldFR5cGUoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMubG9naWNhbFRlcm0gIT09IG51bGwpIHtcbiAgICAgIHR5cGUgPSB0aGlzLmxvZ2ljYWxUZXJtLmdldFR5cGUoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuYnJhY2tldGVkVGVybSAhPT0gbnVsbCkge1xuICAgICAgdHlwZSA9IHRoaXMuYnJhY2tldGVkVGVybS5nZXRUeXBlKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmNvbXBhcmlzb25UZXJtICE9PSBudWxsKSB7XG4gICAgICB0eXBlID0gdGhpcy5jb21wYXJpc29uVGVybS5nZXRUeXBlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxuICBpc0Jvb2xlYW4oKSB7XG4gICAgY29uc3QgdHlwZSA9IHRoaXMuZ2V0VHlwZSgpLFxuICAgICAgICAgIGJvb2xlYW5UeXBlID0gdHlwZS5pc0Jvb2xlYW5UeXBlKCksXG4gICAgICAgICAgYm9vbGVhbiA9IGJvb2xlYW5UeXBlOyAgLy8vXG5cbiAgICByZXR1cm4gYm9vbGVhbjtcbiAgfVxuXG4gIGV2YWx1YXRlKGNvbnRleHQpIHtcbiAgICBsZXQgdmFsdWU7XG5cbiAgICBpZiAoZmFsc2UpIHtcbiAgICAgIC8vL1xuICAgIH0gZWxzZSBpZiAodGhpcy52YXJpYWJsZSAhPT0gbnVsbCkge1xuICAgICAgdmFsdWUgPSB0aGlzLnZhcmlhYmxlLmV2YWx1YXRlKGNvbnRleHQpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5wcmltaXRpdmUgIT09IG51bGwpIHtcbiAgICAgIHZhbHVlID0gdGhpcy5wcmltaXRpdmUuZXZhbHVhdGUoY29udGV4dCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLm5lZ2F0ZWRUZXJtICE9PSBudWxsKSB7XG4gICAgICB2YWx1ZSA9IHRoaXMubmVnYXRlZFRlcm0uZXZhbHVhdGUoY29udGV4dCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmxvZ2ljYWxUZXJtICE9PSBudWxsKSB7XG4gICAgICB2YWx1ZSA9IHRoaXMubG9naWNhbFRlcm0uZXZhbHVhdGUoY29udGV4dCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmJyYWNrZXRlZFRlcm0gIT09IG51bGwpIHtcbiAgICAgIHZhbHVlID0gdGhpcy5icmFja2V0ZWRUZXJtLmV2YWx1YXRlKGNvbnRleHQpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5jb21wYXJpc29uVGVybSAhPT0gbnVsbCkge1xuICAgICAgdmFsdWUgPSB0aGlzLmNvbXBhcmlzb25UZXJtLmV2YWx1YXRlKGNvbnRleHQpO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIGlzRXF1YWxUbyh0ZXJtKSB7XG4gICAgbGV0IGVxdWFsVG8gPSBmYWxzZTtcblxuICAgIGlmIChmYWxzZSkge1xuICAgICAgLy8vXG4gICAgfSBlbHNlIGlmICh0aGlzLnZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCB2YXJpYWJsZSA9IHRlcm0uZ2V0VmFyaWFibGUoKTtcblxuICAgICAgaWYgKHZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgICAgIGVxdWFsVG8gPSB0aGlzLnZhcmlhYmxlLmlzRXF1YWxUbyh2YXJpYWJsZSk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh0aGlzLnByaW1pdGl2ZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgcHJpbWl0aXZlID0gdGVybS5nZXRQcmltaXRpdmUoKTtcblxuICAgICAgaWYgKHByaW1pdGl2ZSAhPT0gbnVsbCkge1xuICAgICAgICBlcXVhbFRvID0gdGhpcy5wcmltaXRpdmUuaXNFcXVhbFRvKHByaW1pdGl2ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGVxdWFsVG87XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiVGVybVwiO1xuXG4gIHN0YXRpYyBmcm9tUHJpbWl0aXZlKHByaW1pdGl2ZSwgY29udGV4dCkge1xuICAgIGNvbnN0IHByaW1pdGl2ZVN0cmluZyA9IHByaW1pdGl2ZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICBzdHJpbmcgPSBwcmltaXRpdmVTdHJpbmcsIC8vL1xuICAgICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICAgIGJyZWFrUG9pbnQgPSBudWxsLFxuICAgICAgICAgIHZhcmlhYmxlID0gbnVsbCxcbiAgICAgICAgICBuZWdhdGVkVGVybSA9IG51bGwsXG4gICAgICAgICAgbG9naWNhbFRlcm0gPSBudWxsLFxuICAgICAgICAgIGJyYWNrZXRlZFRlcm0gPSBudWxsLFxuICAgICAgICAgIGNvbXBhcmlzb25UZXJtID0gbnVsbDtcblxuICAgIGNvbnRleHQgPSBudWxsO1xuXG4gICAgY29uc3QgdGVybSA9IG5ldyBUZXJtKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdmFyaWFibGUsIHByaW1pdGl2ZSwgbmVnYXRlZFRlcm0sIGxvZ2ljYWxUZXJtLCBicmFja2V0ZWRUZXJtLCBjb21wYXJpc29uVGVybSk7XG5cbiAgICByZXR1cm4gdGVybTtcbiAgfVxufSk7XG4iXSwibmFtZXMiOlsiZGVmaW5lIiwiVGVybSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ2YXJpYWJsZSIsInByaW1pdGl2ZSIsIm5lZ2F0ZWRUZXJtIiwibG9naWNhbFRlcm0iLCJicmFja2V0ZWRUZXJtIiwiY29tcGFyaXNvblRlcm0iLCJnZXRWYXJpYWJsZSIsImdldFByaW1pdGl2ZSIsImdldE5lZ2F0ZWRUZXJtIiwiZ2V0TG9naWNhbFRlcm0iLCJnZXRCcmVlZGluZ1Rlcm0iLCJnZXRDb21wYXJpc29uVGVybSIsImdldFByaW1pdGl2ZVZhbHVlIiwicHJpbWl0aXZlVmFsdWUiLCJnZXRWYWx1ZSIsImdldFR5cGUiLCJ0eXBlIiwiaXNCb29sZWFuIiwiYm9vbGVhblR5cGUiLCJpc0Jvb2xlYW5UeXBlIiwiYm9vbGVhbiIsImV2YWx1YXRlIiwidmFsdWUiLCJpc0VxdWFsVG8iLCJ0ZXJtIiwiZXF1YWxUbyIsIm5hbWUiLCJmcm9tUHJpbWl0aXZlIiwicHJpbWl0aXZlU3RyaW5nIiwiZ2V0U3RyaW5nIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFPQTs7O2VBQUE7OztnQ0FMd0I7MEJBRUQ7MkJBQ1c7TUFFbEMsV0FBZUEsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyxhQUFhQyx1QkFBTztJQUM5QyxZQUFZQyxPQUFPLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxVQUFVLEVBQUVDLFFBQVEsRUFBRUMsU0FBUyxFQUFFQyxXQUFXLEVBQUVDLFdBQVcsRUFBRUMsYUFBYSxFQUFFQyxjQUFjLENBQUU7UUFDM0gsS0FBSyxDQUFDVCxTQUFTQyxRQUFRQyxNQUFNQztRQUU3QixJQUFJLENBQUNDLFFBQVEsR0FBR0E7UUFDaEIsSUFBSSxDQUFDQyxTQUFTLEdBQUdBO1FBQ2pCLElBQUksQ0FB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
@@ -11,7 +11,7 @@ Object.defineProperty(exports, "default", {
11
11
  const _occamlanguages = require("occam-languages");
12
12
  const _exception = /*#__PURE__*/ _interop_require_default(require("../exception"));
13
13
  const _elements = require("../elements");
14
- const _types = require("../types");
14
+ const _typeNames = require("../typeNames");
15
15
  function _interop_require_default(obj) {
16
16
  return obj && obj.__esModule ? obj : {
17
17
  default: obj
@@ -38,9 +38,9 @@ const _default = (0, _elements.define)(class Ternary extends _occamlanguages.Ele
38
38
  const ternaryString = this.getString(); ///
39
39
  context.trace(`Evaluating the '${ternaryString}' ternary...`);
40
40
  value = this.term.evaluate(context);
41
- const valueType = value.getType();
42
- if (valueType !== _types.BOOLEAN_TYPE) {
43
- const valueString = value.getString(), message = `The '${valueString}' value's type is '${valueType}' when it should be of type '${_types.BOOLEAN_TYPE}'.`, exception = _exception.default.fromMessage(message);
41
+ const valueType = value.getType(), valueTypeBooleanType = valueType.isBooleanType();
42
+ if (!valueTypeBooleanType) {
43
+ const valueString = value.getString(), message = `The '${valueString}' value's type is '${valueType}' when it should be of type '${_typeNames.BOOLEAN_TYPE_NAME}'.`, exception = _exception.default.fromMessage(message);
44
44
  throw exception;
45
45
  }
46
46
  const primitiveValue = value.getPrimitiveValue(), boolean = primitiveValue; ///
@@ -52,4 +52,4 @@ const _default = (0, _elements.define)(class Ternary extends _occamlanguages.Ele
52
52
  static name = "Ternary";
53
53
  });
54
54
 
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Rlcm5hcnkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IEJPT0xFQU5fVFlQRSB9IGZyb20gXCIuLi90eXBlc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgVGVybmFyeSBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIHRlcm0sIGlmRXhwcmVzc2lvbiwgZWxzZUV4cHJlc3Npb24pIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy50ZXJtID0gdGVybTtcbiAgICB0aGlzLmlmRXhwcmVzc2lvbiA9IGlmRXhwcmVzc2lvbjtcbiAgICB0aGlzLmVsc2VFeHByZXNzaW9uID0gZWxzZUV4cHJlc3Npb247XG4gIH1cblxuICBnZXRUZXJtKCkge1xuICAgIHJldHVybiB0aGlzLnRlcm07XG4gIH1cblxuICBnZXRJZkJsb2NrKCkge1xuICAgIHJldHVybiB0aGlzLmlmRXhwcmVzc2lvbjtcbiAgfVxuXG4gIGdldEVsc2VCbG9jaygpIHtcbiAgICByZXR1cm4gdGhpcy5lbHNlRXhwcmVzc2lvbjtcbiAgfVxuXG4gIGFzeW5jIGV2YWx1YXRlKGNvbnRleHQpIHtcbiAgICBsZXQgdmFsdWU7XG5cbiAgICBjb25zdCB0ZXJuYXJ5U3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTsgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBFdmFsdWF0aW5nIHRoZSAnJHt0ZXJuYXJ5U3RyaW5nfScgdGVybmFyeS4uLmApO1xuXG4gICAgdmFsdWUgPSB0aGlzLnRlcm0uZXZhbHVhdGUoY29udGV4dCk7XG5cbiAgICBjb25zdCB2YWx1ZVR5cGUgPSB2YWx1ZS5nZXRUeXBlKCk7XG5cbiAgICBpZiAodmFsdWVUeXBlICE9PSBCT09MRUFOX1RZUEUpIHtcbiAgICAgIGNvbnN0IHZhbHVlU3RyaW5nID0gdmFsdWUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICBtZXNzYWdlID0gYFRoZSAnJHt2YWx1ZVN0cmluZ30nIHZhbHVlJ3MgdHlwZSBpcyAnJHt2YWx1ZVR5cGV9JyB3aGVuIGl0IHNob3VsZCBiZSBvZiB0eXBlICcke0JPT0xFQU5fVFlQRX0nLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBjb25zdCBwcmltaXRpdmVWYWx1ZSA9IHZhbHVlLmdldFByaW1pdGl2ZVZhbHVlKCksXG4gICAgICAgICAgYm9vbGVhbiA9IHByaW1pdGl2ZVZhbHVlOyAvLy9cblxuICAgIHZhbHVlID0gYm9vbGVhbiA/XG4gICAgICAgICAgICAgIGF3YWl0IHRoaXMuaWZFeHByZXNzaW9uLmV2YWx1YXRlKGNvbnRleHQpIDpcbiAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLmVsc2VFeHByZXNzaW9uLmV2YWx1YXRlKGNvbnRleHQpO1xuXG4gICAgY29uc3QgdmFsdWVTdHJpbmcgPSB2YWx1ZS5nZXRTdHJpbmcoKTtcblxuICAgIGNvbnRleHQuZGVidWcoYC4uLmV2YWx1YXRlZCB0aGUgJyR7dGVybmFyeVN0cmluZ30nIHRlcm5hcnkgYXMgJyR7dmFsdWVTdHJpbmd9Jy5gKTtcblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJUZXJuYXJ5XCI7XG59KTtcbiJdLCJuYW1lcyI6WyJkZWZpbmUiLCJUZXJuYXJ5IiwiRWxlbWVudCIsImNvbnRleHQiLCJzdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsInRlcm0iLCJpZkV4cHJlc3Npb24iLCJlbHNlRXhwcmVzc2lvbiIsImdldFRlcm0iLCJnZXRJZkJsb2NrIiwiZ2V0RWxzZUJsb2NrIiwiZXZhbHVhdGUiLCJ2YWx1ZSIsInRlcm5hcnlTdHJpbmciLCJnZXRTdHJpbmciLCJ0cmFjZSIsInZhbHVlVHlwZSIsImdldFR5cGUiLCJCT09MRUFOX1RZUEUiLCJ2YWx1ZVN0cmluZyIsIm1lc3NhZ2UiLCJleGNlcHRpb24iLCJFeGNlcHRpb24iLCJmcm9tTWVzc2FnZSIsInByaW1pdGl2ZVZhbHVlIiwiZ2V0UHJpbWl0aXZlVmFsdWUiLCJib29sZWFuIiwiZGVidWciLCJuYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFTQTs7O2VBQUE7OztnQ0FQd0I7a0VBRUY7MEJBRUM7dUJBQ007Ozs7OztNQUU3QixXQUFlQSxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLGdCQUFnQkMsdUJBQU87SUFDakQsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxJQUFJLEVBQUVDLFlBQVksRUFBRUMsY0FBYyxDQUFFO1FBQ2pGLEtBQUssQ0FBQ04sU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxJQUFJLEdBQUdBO1FBQ1osSUFBSSxDQUFDQyxZQUFZLEdBQUdBO1FBQ3BCLElBQUksQ0FBQ0MsY0FBYyxHQUFHQTtJQUN4QjtJQUVBQyxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUNILElBQUk7SUFDbEI7SUFFQUksYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDSCxZQUFZO0lBQzFCO0lBRUFJLGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQ0gsY0FBYztJQUM1QjtJQUVBLE1BQU1JLFNBQVNWLE9BQU8sRUFBRTtRQUN0QixJQUFJVztRQUVKLE1BQU1DLGdCQUFnQixJQUFJLENBQUNDLFNBQVMsSUFBSSxHQUFHO1FBRTNDYixRQUFRYyxLQUFLLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRUYsY0FBYyxZQUFZLENBQUM7UUFFNURELFFBQVEsSUFBSSxDQUFDUCxJQUFJLENBQUNNLFFBQVEsQ0FBQ1Y7UUFFM0IsTUFBTWUsWUFBWUosTUFBTUssT0FBTztRQUUvQixJQUFJRCxjQUFjRSxtQkFBWSxFQUFFO1lBQzlCLE1BQU1DLGNBQWNQLE1BQU1FLFNBQVMsSUFDN0JNLFVBQVUsQ0FBQyxLQUFLLEVBQUVELFlBQVksbUJBQW1CLEVBQUVILFVBQVUsNkJBQTZCLEVBQUVFLG1CQUFZLENBQUMsRUFBRSxDQUFDLEVBQzVHRyxZQUFZQyxrQkFBUyxDQUFDQyxXQUFXLENBQUNIO1lBRXhDLE1BQU1DO1FBQ1I7UUFFQSxNQUFNRyxpQkFBaUJaLE1BQU1hLGlCQUFpQixJQUN4Q0MsVUFBVUYsZ0JBQWdCLEdBQUc7UUFFbkNaLFFBQVFjLFVBQ0UsTUFBTSxJQUFJLENBQUNwQixZQUFZLENBQUNLLFFBQVEsQ0FBQ1YsV0FDL0IsTUFBTSxJQUFJLENBQUNNLGNBQWMsQ0FBQ0ksUUFBUSxDQUFDVjtRQUUvQyxNQUFNa0IsY0FBY1AsTUFBTUUsU0FBUztRQUVuQ2IsUUFBUTBCLEtBQUssQ0FBQyxDQUFDLGtCQUFrQixFQUFFZCxjQUFjLGNBQWMsRUFBRU0sWUFBWSxFQUFFLENBQUM7UUFFaEYsT0FBT1A7SUFDVDtJQUVBLE9BQU9nQixPQUFPLFVBQVU7QUFDMUIifQ==
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3Rlcm5hcnkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IEJPT0xFQU5fVFlQRV9OQU1FIH0gZnJvbSBcIi4uL3R5cGVOYW1lc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgVGVybmFyeSBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIHRlcm0sIGlmRXhwcmVzc2lvbiwgZWxzZUV4cHJlc3Npb24pIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy50ZXJtID0gdGVybTtcbiAgICB0aGlzLmlmRXhwcmVzc2lvbiA9IGlmRXhwcmVzc2lvbjtcbiAgICB0aGlzLmVsc2VFeHByZXNzaW9uID0gZWxzZUV4cHJlc3Npb247XG4gIH1cblxuICBnZXRUZXJtKCkge1xuICAgIHJldHVybiB0aGlzLnRlcm07XG4gIH1cblxuICBnZXRJZkJsb2NrKCkge1xuICAgIHJldHVybiB0aGlzLmlmRXhwcmVzc2lvbjtcbiAgfVxuXG4gIGdldEVsc2VCbG9jaygpIHtcbiAgICByZXR1cm4gdGhpcy5lbHNlRXhwcmVzc2lvbjtcbiAgfVxuXG4gIGFzeW5jIGV2YWx1YXRlKGNvbnRleHQpIHtcbiAgICBsZXQgdmFsdWU7XG5cbiAgICBjb25zdCB0ZXJuYXJ5U3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTsgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBFdmFsdWF0aW5nIHRoZSAnJHt0ZXJuYXJ5U3RyaW5nfScgdGVybmFyeS4uLmApO1xuXG4gICAgdmFsdWUgPSB0aGlzLnRlcm0uZXZhbHVhdGUoY29udGV4dCk7XG5cbiAgICBjb25zdCB2YWx1ZVR5cGUgPSB2YWx1ZS5nZXRUeXBlKCksXG4gICAgICAgICAgdmFsdWVUeXBlQm9vbGVhblR5cGUgPSB2YWx1ZVR5cGUuaXNCb29sZWFuVHlwZSgpO1xuXG4gICAgaWYgKCF2YWx1ZVR5cGVCb29sZWFuVHlwZSkge1xuICAgICAgY29uc3QgdmFsdWVTdHJpbmcgPSB2YWx1ZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgIG1lc3NhZ2UgPSBgVGhlICcke3ZhbHVlU3RyaW5nfScgdmFsdWUncyB0eXBlIGlzICcke3ZhbHVlVHlwZX0nIHdoZW4gaXQgc2hvdWxkIGJlIG9mIHR5cGUgJyR7Qk9PTEVBTl9UWVBFX05BTUV9Jy5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgY29uc3QgcHJpbWl0aXZlVmFsdWUgPSB2YWx1ZS5nZXRQcmltaXRpdmVWYWx1ZSgpLFxuICAgICAgICAgIGJvb2xlYW4gPSBwcmltaXRpdmVWYWx1ZTsgLy8vXG5cbiAgICB2YWx1ZSA9IGJvb2xlYW4gP1xuICAgICAgICAgICAgICBhd2FpdCB0aGlzLmlmRXhwcmVzc2lvbi5ldmFsdWF0ZShjb250ZXh0KSA6XG4gICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5lbHNlRXhwcmVzc2lvbi5ldmFsdWF0ZShjb250ZXh0KTtcblxuICAgIGNvbnN0IHZhbHVlU3RyaW5nID0gdmFsdWUuZ2V0U3RyaW5nKCk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5ldmFsdWF0ZWQgdGhlICcke3Rlcm5hcnlTdHJpbmd9JyB0ZXJuYXJ5IGFzICcke3ZhbHVlU3RyaW5nfScuYCk7XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiVGVybmFyeVwiO1xufSk7XG4iXSwibmFtZXMiOlsiZGVmaW5lIiwiVGVybmFyeSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ0ZXJtIiwiaWZFeHByZXNzaW9uIiwiZWxzZUV4cHJlc3Npb24iLCJnZXRUZXJtIiwiZ2V0SWZCbG9jayIsImdldEVsc2VCbG9jayIsImV2YWx1YXRlIiwidmFsdWUiLCJ0ZXJuYXJ5U3RyaW5nIiwiZ2V0U3RyaW5nIiwidHJhY2UiLCJ2YWx1ZVR5cGUiLCJnZXRUeXBlIiwidmFsdWVUeXBlQm9vbGVhblR5cGUiLCJpc0Jvb2xlYW5UeXBlIiwidmFsdWVTdHJpbmciLCJtZXNzYWdlIiwiQk9PTEVBTl9UWVBFX05BTUUiLCJleGNlcHRpb24iLCJFeGNlcHRpb24iLCJmcm9tTWVzc2FnZSIsInByaW1pdGl2ZVZhbHVlIiwiZ2V0UHJpbWl0aXZlVmFsdWUiLCJib29sZWFuIiwiZGVidWciLCJuYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFTQTs7O2VBQUE7OztnQ0FQd0I7a0VBRUY7MEJBRUM7MkJBQ1c7Ozs7OztNQUVsQyxXQUFlQSxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLGdCQUFnQkMsdUJBQU87SUFDakQsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxJQUFJLEVBQUVDLFlBQVksRUFBRUMsY0FBYyxDQUFFO1FBQ2pGLEtBQUssQ0FBQ04sU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxJQUFJLEdBQUdBO1FBQ1osSUFBSSxDQUFDQyxZQUFZLEdBQUdBO1FBQ3BCLElBQUksQ0FBQ0MsY0FBYyxHQUFHQTtJQUN4QjtJQUVBQyxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUNILElBQUk7SUFDbEI7SUFFQUksYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDSCxZQUFZO0lBQzFCO0lBRUFJLGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQ0gsY0FBYztJQUM1QjtJQUVBLE1BQU1JLFNBQVNWLE9BQU8sRUFBRTtRQUN0QixJQUFJVztRQUVKLE1BQU1DLGdCQUFnQixJQUFJLENBQUNDLFNBQVMsSUFBSSxHQUFHO1FBRTNDYixRQUFRYyxLQUFLLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRUYsY0FBYyxZQUFZLENBQUM7UUFFNURELFFBQVEsSUFBSSxDQUFDUCxJQUFJLENBQUNNLFFBQVEsQ0FBQ1Y7UUFFM0IsTUFBTWUsWUFBWUosTUFBTUssT0FBTyxJQUN6QkMsdUJBQXVCRixVQUFVRyxhQUFhO1FBRXBELElBQUksQ0FBQ0Qsc0JBQXNCO1lBQ3pCLE1BQU1FLGNBQWNSLE1BQU1FLFNBQVMsSUFDN0JPLFVBQVUsQ0FBQyxLQUFLLEVBQUVELFlBQVksbUJBQW1CLEVBQUVKLFVBQVUsNkJBQTZCLEVBQUVNLDRCQUFpQixDQUFDLEVBQUUsQ0FBQyxFQUNqSEMsWUFBWUMsa0JBQVMsQ0FBQ0MsV0FBVyxDQUFDSjtZQUV4QyxNQUFNRTtRQUNSO1FBRUEsTUFBTUcsaUJBQWlCZCxNQUFNZSxpQkFBaUIsSUFDeENDLFVBQVVGLGdCQUFnQixHQUFHO1FBRW5DZCxRQUFRZ0IsVUFDRSxNQUFNLElBQUksQ0FBQ3RCLFlBQVksQ0FBQ0ssUUFBUSxDQUFDVixXQUMvQixNQUFNLElBQUksQ0FBQ00sY0FBYyxDQUFDSSxRQUFRLENBQUNWO1FBRS9DLE1BQU1tQixjQUFjUixNQUFNRSxTQUFTO1FBRW5DYixRQUFRNEIsS0FBSyxDQUFDLENBQUMsa0JBQWtCLEVBQUVoQixjQUFjLGNBQWMsRUFBRU8sWUFBWSxFQUFFLENBQUM7UUFFaEYsT0FBT1I7SUFDVDtJQUVBLE9BQU9rQixPQUFPLFVBQVU7QUFDMUIifQ==
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ const _occamlanguages = require("occam-languages");
12
+ const _elements = require("../elements");
13
+ const _string = require("../utilities/string");
14
+ const _typeNames = require("../typeNames");
15
+ const _default = (0, _elements.define)(class Type extends _occamlanguages.Element {
16
+ constructor(context, string, node, breakPoint, name, argumentType){
17
+ super(context, string, node, breakPoint);
18
+ this.name = name;
19
+ this.argumentType = argumentType;
20
+ }
21
+ getName() {
22
+ return this.name;
23
+ }
24
+ getArgumentType() {
25
+ return this.argumentType;
26
+ }
27
+ isListType() {
28
+ const listType = this.name === _typeNames.LIST_TYPE_NAME;
29
+ return listType;
30
+ }
31
+ isStringType() {
32
+ const booleanType = this.name === _typeNames.STRING_TYPE_NAME;
33
+ return booleanType;
34
+ }
35
+ isNumberType() {
36
+ const numberType = this.name === _typeNames.NUMBER_TYPE_NAME;
37
+ return numberType;
38
+ }
39
+ isBooleanType() {
40
+ const booleanType = this.name === _typeNames.BOOLEAN_TYPE_NAME;
41
+ return booleanType;
42
+ }
43
+ isNominalValueType() {
44
+ const listType = this.name === _typeNames.NOMINAL_VALUE_TYPE_NAME;
45
+ return listType;
46
+ }
47
+ isEqualTo(type) {
48
+ let equalTo = false;
49
+ const typeName = type.getName();
50
+ if (this.name === typeName) {
51
+ switch(this.name){
52
+ case _typeNames.LIST_TYPE_NAME:
53
+ {
54
+ const typeArgumentType = type.getArgumentType();
55
+ if (this.argumentType === null || typeArgumentType === null) {
56
+ if (this.argumentType === typeArgumentType) {
57
+ equalTo = true;
58
+ }
59
+ } else {
60
+ const arguemntTypeEqualToTypeArgumentType = this.argumentType.isEqualTo(typeArgumentType);
61
+ if (arguemntTypeEqualToTypeArgumentType) {
62
+ equalTo = true;
63
+ }
64
+ }
65
+ break;
66
+ }
67
+ default:
68
+ {
69
+ equalTo = true;
70
+ break;
71
+ }
72
+ }
73
+ }
74
+ return equalTo;
75
+ }
76
+ static name = "Type";
77
+ static fromTypeName(typeName, context) {
78
+ let type = null;
79
+ if (typeName !== null) {
80
+ const node = null, name = typeName, argumentType = null, typeString = typeName, string = typeString, breakPoint = null;
81
+ context = null;
82
+ type = new Type(context, string, node, breakPoint, name, argumentType);
83
+ }
84
+ return type;
85
+ }
86
+ static fromTypeNameAndArgumentTypeName(typeName, argumentTypeName, context) {
87
+ const node = null, name = typeName, argumentType = Type.fromTypeName(argumentTypeName, context), typeString = (0, _string.typeStringFromTypeNameAndArgumentTypeName)(typeName, argumentTypeName), string = typeString, breakPoint = null;
88
+ context = null;
89
+ const type = new Type(context, string, node, breakPoint, name, argumentType);
90
+ return type;
91
+ }
92
+ });
93
+
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3R5cGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuXG5pbXBvcnQgeyB0eXBlU3RyaW5nRnJvbVR5cGVOYW1lQW5kQXJndW1lbnRUeXBlTmFtZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvc3RyaW5nXCI7XG5pbXBvcnQgeyBMSVNUX1RZUEVfTkFNRSwgU1RSSU5HX1RZUEVfTkFNRSwgTlVNQkVSX1RZUEVfTkFNRSwgQk9PTEVBTl9UWVBFX05BTUUsIE5PTUlOQUxfVkFMVUVfVFlQRV9OQU1FIH0gZnJvbSBcIi4uL3R5cGVOYW1lc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgVHlwZSBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIG5hbWUsIGFyZ3VtZW50VHlwZSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xuICAgIHRoaXMuYXJndW1lbnRUeXBlID0gYXJndW1lbnRUeXBlO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG5cbiAgZ2V0QXJndW1lbnRUeXBlKCkge1xuICAgIHJldHVybiB0aGlzLmFyZ3VtZW50VHlwZTtcbiAgfVxuXG4gIGlzTGlzdFR5cGUoKSB7XG4gICAgY29uc3QgbGlzdFR5cGUgPSAodGhpcy5uYW1lID09PSBMSVNUX1RZUEVfTkFNRSk7XG5cbiAgICByZXR1cm4gbGlzdFR5cGU7XG4gIH1cblxuICBpc1N0cmluZ1R5cGUoKSB7XG4gICAgY29uc3QgYm9vbGVhblR5cGUgPSAodGhpcy5uYW1lID09PSBTVFJJTkdfVFlQRV9OQU1FKTtcblxuICAgIHJldHVybiBib29sZWFuVHlwZTtcbiAgfVxuXG4gIGlzTnVtYmVyVHlwZSgpIHtcbiAgICBjb25zdCBudW1iZXJUeXBlID0gKHRoaXMubmFtZSA9PT0gTlVNQkVSX1RZUEVfTkFNRSk7XG5cbiAgICByZXR1cm4gbnVtYmVyVHlwZTtcbiAgfVxuXG4gIGlzQm9vbGVhblR5cGUoKSB7XG4gICAgY29uc3QgYm9vbGVhblR5cGUgPSAodGhpcy5uYW1lID09PSBCT09MRUFOX1RZUEVfTkFNRSk7XG5cbiAgICByZXR1cm4gYm9vbGVhblR5cGU7XG4gIH1cblxuICBpc05vbWluYWxWYWx1ZVR5cGUoKSB7XG4gICAgY29uc3QgbGlzdFR5cGUgPSAodGhpcy5uYW1lID09PSBOT01JTkFMX1ZBTFVFX1RZUEVfTkFNRSk7XG5cbiAgICByZXR1cm4gbGlzdFR5cGU7XG4gIH1cblxuICBpc0VxdWFsVG8odHlwZSkge1xuICAgIGxldCBlcXVhbFRvID0gZmFsc2U7XG5cbiAgICBjb25zdCB0eXBlTmFtZSA9IHR5cGUuZ2V0TmFtZSgpO1xuXG4gICAgaWYgKHRoaXMubmFtZSA9PT0gdHlwZU5hbWUpIHtcbiAgICAgIHN3aXRjaCAodGhpcy5uYW1lKSB7XG4gICAgICAgIGNhc2UgTElTVF9UWVBFX05BTUU6IHtcbiAgICAgICAgICBjb25zdCB0eXBlQXJndW1lbnRUeXBlID0gdHlwZS5nZXRBcmd1bWVudFR5cGUoKTtcblxuICAgICAgICAgIGlmICgodGhpcy5hcmd1bWVudFR5cGUgPT09IG51bGwpIHx8ICh0eXBlQXJndW1lbnRUeXBlID09PSBudWxsKSkge1xuICAgICAgICAgICAgaWYgKHRoaXMuYXJndW1lbnRUeXBlID09PSB0eXBlQXJndW1lbnRUeXBlKSB7XG4gICAgICAgICAgICAgIGVxdWFsVG8gPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBhcmd1ZW1udFR5cGVFcXVhbFRvVHlwZUFyZ3VtZW50VHlwZSA9IHRoaXMuYXJndW1lbnRUeXBlLmlzRXF1YWxUbyh0eXBlQXJndW1lbnRUeXBlKTtcblxuICAgICAgICAgICAgaWYgKGFyZ3VlbW50VHlwZUVxdWFsVG9UeXBlQXJndW1lbnRUeXBlKSB7XG4gICAgICAgICAgICAgIGVxdWFsVG8gPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgIGVxdWFsVG8gPSB0cnVlO1xuXG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZXF1YWxUbztcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJUeXBlXCI7XG5cbiAgc3RhdGljIGZyb21UeXBlTmFtZSh0eXBlTmFtZSwgY29udGV4dCkge1xuICAgIGxldCB0eXBlID0gbnVsbDtcblxuICAgIGlmICh0eXBlTmFtZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgbm9kZSA9IG51bGwsICAvLy9cbiAgICAgICAgICAgIG5hbWUgPSB0eXBlTmFtZSwgIC8vL1xuICAgICAgICAgICAgYXJndW1lbnRUeXBlID0gbnVsbCxcbiAgICAgICAgICAgIHR5cGVTdHJpbmcgPSB0eXBlTmFtZSwgIC8vL1xuICAgICAgICAgICAgc3RyaW5nID0gdHlwZVN0cmluZywgIC8vL1xuICAgICAgICAgICAgYnJlYWtQb2ludCA9IG51bGw7XG5cbiAgICAgIGNvbnRleHQgPSBudWxsO1xuXG4gICAgICB0eXBlID0gbmV3IFR5cGUoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBuYW1lLCBhcmd1bWVudFR5cGUpO1xuICAgIH1cblxuICAgIHJldHVybiB0eXBlO1xuICB9XG5cbiAgc3RhdGljIGZyb21UeXBlTmFtZUFuZEFyZ3VtZW50VHlwZU5hbWUodHlwZU5hbWUsIGFyZ3VtZW50VHlwZU5hbWUsIGNvbnRleHQpIHtcbiAgICBjb25zdCBub2RlID0gbnVsbCwgIC8vL1xuICAgICAgICAgIG5hbWUgPSB0eXBlTmFtZSwgIC8vL1xuICAgICAgICAgIGFyZ3VtZW50VHlwZSA9IFR5cGUuZnJvbVR5cGVOYW1lKGFyZ3VtZW50VHlwZU5hbWUsIGNvbnRleHQpLFxuICAgICAgICAgIHR5cGVTdHJpbmcgPSB0eXBlU3RyaW5nRnJvbVR5cGVOYW1lQW5kQXJndW1lbnRUeXBlTmFtZSh0eXBlTmFtZSwgYXJndW1lbnRUeXBlTmFtZSksXG4gICAgICAgICAgc3RyaW5nID0gdHlwZVN0cmluZywgIC8vL1xuICAgICAgICAgIGJyZWFrUG9pbnQgPSBudWxsO1xuXG4gICAgY29udGV4dCA9IG51bGw7XG5cbiAgICBjb25zdCB0eXBlID0gbmV3IFR5cGUoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCBuYW1lLCBhcmd1bWVudFR5cGUpO1xuXG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxufSk7XG4iXSwibmFtZXMiOlsiZGVmaW5lIiwiVHlwZSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJuYW1lIiwiYXJndW1lbnRUeXBlIiwiZ2V0TmFtZSIsImdldEFyZ3VtZW50VHlwZSIsImlzTGlzdFR5cGUiLCJsaXN0VHlwZSIsIkxJU1RfVFlQRV9OQU1FIiwiaXNTdHJpbmdUeXBlIiwiYm9vbGVhblR5cGUiLCJTVFJJTkdfVFlQRV9OQU1FIiwiaXNOdW1iZXJUeXBlIiwibnVtYmVyVHlwZSIsIk5VTUJFUl9UWVBFX05BTUUiLCJpc0Jvb2xlYW5UeXBlIiwiQk9PTEVBTl9UWVBFX05BTUUiLCJpc05vbWluYWxWYWx1ZVR5cGUiLCJOT01JTkFMX1ZBTFVFX1RZUEVfTkFNRSIsImlzRXF1YWxUbyIsInR5cGUiLCJlcXVhbFRvIiwidHlwZU5hbWUiLCJ0eXBlQXJndW1lbnRUeXBlIiwiYXJndWVtbnRUeXBlRXF1YWxUb1R5cGVBcmd1bWVudFR5cGUiLCJmcm9tVHlwZU5hbWUiLCJ0eXBlU3RyaW5nIiwiZnJvbVR5cGVOYW1lQW5kQXJndW1lbnRUeXBlTmFtZSIsImFyZ3VtZW50VHlwZU5hbWUiLCJ0eXBlU3RyaW5nRnJvbVR5cGVOYW1lQW5kQXJndW1lbnRUeXBlTmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBU0E7OztlQUFBOzs7Z0NBUHdCOzBCQUVEO3dCQUVtQzsyQkFDcUQ7TUFFL0csV0FBZUEsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyxhQUFhQyx1QkFBTztJQUM5QyxZQUFZQyxPQUFPLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxVQUFVLEVBQUVDLElBQUksRUFBRUMsWUFBWSxDQUFFO1FBQ2pFLEtBQUssQ0FBQ0wsU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxJQUFJLEdBQUdBO1FBQ1osSUFBSSxDQUFDQyxZQUFZLEdBQUdBO0lBQ3RCO0lBRUFDLFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQ0YsSUFBSTtJQUNsQjtJQUVBRyxrQkFBa0I7UUFDaEIsT0FBTyxJQUFJLENBQUNGLFlBQVk7SUFDMUI7SUFFQUcsYUFBYTtRQUNYLE1BQU1DLFdBQVksSUFBSSxDQUFDTCxJQUFJLEtBQUtNLHlCQUFjO1FBRTlDLE9BQU9EO0lBQ1Q7SUFFQUUsZUFBZTtRQUNiLE1BQU1DLGNBQWUsSUFBSSxDQUFDUixJQUFJLEtBQUtTLDJCQUFnQjtRQUVuRCxPQUFPRDtJQUNUO0lBRUFFLGVBQWU7UUFDYixNQUFNQyxhQUFjLElBQUksQ0FBQ1gsSUFBSSxLQUFLWSwyQkFBZ0I7UUFFbEQsT0FBT0Q7SUFDVDtJQUVBRSxnQkFBZ0I7UUFDZCxNQUFNTCxjQUFlLElBQUksQ0FBQ1IsSUFBSSxLQUFLYyw0QkFBaUI7UUFFcEQsT0FBT047SUFDVDtJQUVBTyxxQkFBcUI7UUFDbkIsTUFBTVYsV0FBWSxJQUFJLENBQUNMLElBQUksS0FBS2dCLGtDQUF1QjtRQUV2RCxPQUFPWDtJQUNUO0lBRUFZLFVBQVVDLElBQUksRUFBRTtRQUNkLElBQUlDLFVBQVU7UUFFZCxNQUFNQyxXQUFXRixLQUFLaEIsT0FBTztRQUU3QixJQUFJLElBQUksQ0FBQ0YsSUFBSSxLQUFLb0IsVUFBVTtZQUMxQixPQUFRLElBQUksQ0FBQ3BCLElBQUk7Z0JBQ2YsS0FBS00seUJBQWM7b0JBQUU7d0JBQ25CLE1BQU1lLG1CQUFtQkgsS0FBS2YsZUFBZTt3QkFFN0MsSUFBSSxBQUFDLElBQUksQ0FBQ0YsWUFBWSxLQUFLLFFBQVVvQixxQkFBcUIsTUFBTzs0QkFDL0QsSUFBSSxJQUFJLENBQUNwQixZQUFZLEtBQUtvQixrQkFBa0I7Z0NBQzFDRixVQUFVOzRCQUNaO3dCQUNGLE9BQU87NEJBQ0wsTUFBTUcsc0NBQXNDLElBQUksQ0FBQ3JCLFlBQVksQ0FBQ2dCLFNBQVMsQ0FBQ0k7NEJBRXhFLElBQUlDLHFDQUFxQztnQ0FDdkNILFVBQVU7NEJBQ1o7d0JBQ0Y7d0JBRUE7b0JBQ0Y7Z0JBRUE7b0JBQVM7d0JBQ1BBLFVBQVU7d0JBRVY7b0JBQ0Y7WUFDRjtRQUNGO1FBRUEsT0FBT0E7SUFDVDtJQUVBLE9BQU9uQixPQUFPLE9BQU87SUFFckIsT0FBT3VCLGFBQWFILFFBQVEsRUFBRXhCLE9BQU8sRUFBRTtRQUNyQyxJQUFJc0IsT0FBTztRQUVYLElBQUlFLGFBQWEsTUFBTTtZQUNyQixNQUFNdEIsT0FBTyxNQUNQRSxPQUFPb0IsVUFDUG5CLGVBQWUsTUFDZnVCLGFBQWFKLFVBQ2J2QixTQUFTMkIsWUFDVHpCLGFBQWE7WUFFbkJILFVBQVU7WUFFVnNCLE9BQU8sSUFBSXhCLEtBQUtFLFNBQVNDLFFBQVFDLE1BQU1DLFlBQVlDLE1BQU1DO1FBQzNEO1FBRUEsT0FBT2lCO0lBQ1Q7SUFFQSxPQUFPTyxnQ0FBZ0NMLFFBQVEsRUFBRU0sZ0JBQWdCLEVBQUU5QixPQUFPLEVBQUU7UUFDMUUsTUFBTUUsT0FBTyxNQUNQRSxPQUFPb0IsVUFDUG5CLGVBQWVQLEtBQUs2QixZQUFZLENBQUNHLGtCQUFrQjlCLFVBQ25ENEIsYUFBYUcsSUFBQUEsaURBQXlDLEVBQUNQLFVBQVVNLG1CQUNqRTdCLFNBQVMyQixZQUNUekIsYUFBYTtRQUVuQkgsVUFBVTtRQUVWLE1BQU1zQixPQUFPLElBQUl4QixLQUFLRSxTQUFTQyxRQUFRQyxNQUFNQyxZQUFZQyxNQUFNQztRQUUvRCxPQUFPaUI7SUFDVDtBQUVGIn0=
@@ -9,9 +9,48 @@ Object.defineProperty(exports, "default", {
9
9
  }
10
10
  });
11
11
  const _occamlanguages = require("occam-languages");
12
- const _elements = require("../elements");
13
- const _types = require("../types");
14
- const _value = require("../utilities/value");
12
+ const _elements = /*#__PURE__*/ _interop_require_wildcard(require("../elements"));
13
+ function _getRequireWildcardCache(nodeInterop) {
14
+ if (typeof WeakMap !== "function") return null;
15
+ var cacheBabelInterop = new WeakMap();
16
+ var cacheNodeInterop = new WeakMap();
17
+ return (_getRequireWildcardCache = function(nodeInterop) {
18
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
19
+ })(nodeInterop);
20
+ }
21
+ function _interop_require_wildcard(obj, nodeInterop) {
22
+ if (!nodeInterop && obj && obj.__esModule) {
23
+ return obj;
24
+ }
25
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
26
+ return {
27
+ default: obj
28
+ };
29
+ }
30
+ var cache = _getRequireWildcardCache(nodeInterop);
31
+ if (cache && cache.has(obj)) {
32
+ return cache.get(obj);
33
+ }
34
+ var newObj = {
35
+ __proto__: null
36
+ };
37
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
38
+ for(var key in obj){
39
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
40
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
41
+ if (desc && (desc.get || desc.set)) {
42
+ Object.defineProperty(newObj, key, desc);
43
+ } else {
44
+ newObj[key] = obj[key];
45
+ }
46
+ }
47
+ }
48
+ newObj.default = obj;
49
+ if (cache) {
50
+ cache.set(obj, newObj);
51
+ }
52
+ return newObj;
53
+ }
15
54
  const _default = (0, _elements.define)(class Value extends _occamlanguages.Element {
16
55
  constructor(context, string, node, breakPoint, variable, primitive){
17
56
  super(context, string, node, breakPoint);
@@ -40,7 +79,7 @@ const _default = (0, _elements.define)(class Value extends _occamlanguages.Eleme
40
79
  return type;
41
80
  }
42
81
  isBoolean() {
43
- const type = this.getType(), boolean = type === _types.BOOLEAN_TYPE;
82
+ const type = this.getType(), booleanType = type.isBooleanType(), boolean = booleanType; ///
44
83
  return boolean;
45
84
  }
46
85
  evaluate(context) {
@@ -71,6 +110,18 @@ const _default = (0, _elements.define)(class Value extends _occamlanguages.Eleme
71
110
  }
72
111
  return equalTo;
73
112
  }
113
+ lift(context) {
114
+ const { Primitive } = _elements.default, primitiveValue = this.getPrimitiveValue(), primitiveValues = primitiveValue; ///
115
+ let type;
116
+ type = this.getType();
117
+ const argumentType = type.getArgumentType();
118
+ type = argumentType; ///
119
+ const values = primitiveValues.map((primitiveValue)=>{
120
+ const primitive = Primitive.fromPrimitiveValueAndType(primitiveValue, type, context), value = Value.fromPrimitive(primitive, context);
121
+ return value;
122
+ });
123
+ return values;
124
+ }
74
125
  static name = "Value";
75
126
  static fromPrimitive(primitive, context) {
76
127
  const primitiveString = primitive.getString(), string = primitiveString, node = null, breakPoint = null, variable = null;
@@ -80,4 +131,4 @@ const _default = (0, _elements.define)(class Value extends _occamlanguages.Eleme
80
131
  }
81
132
  });
82
133
 
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3ZhbHVlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IEJPT0xFQU5fVFlQRSB9IGZyb20gXCIuLi90eXBlc1wiO1xuaW1wb3J0IHsgdmFsdWVGcm9tQm9vbGVhbiB9IGZyb20gXCIuLi91dGlsaXRpZXMvdmFsdWVcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIFZhbHVlIGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdmFyaWFibGUsIHByaW1pdGl2ZSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLnZhcmlhYmxlID0gdmFyaWFibGU7XG4gICAgdGhpcy5wcmltaXRpdmUgPSBwcmltaXRpdmU7XG4gIH1cblxuICBnZXRWYXJpYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YXJpYWJsZTtcbiAgfVxuXG4gIGdldFByaW1pdGl2ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5wcmltaXRpdmU7XG4gIH1cblxuICBnZXRQcmltaXRpdmVWYWx1ZSgpIHtcbiAgICBjb25zdCBwcmltaXRpdmVWYWx1ZSA9IHRoaXMucHJpbWl0aXZlLmdldFZhbHVlKCk7XG5cbiAgICByZXR1cm4gcHJpbWl0aXZlVmFsdWU7XG4gIH1cblxuICBnZXRUeXBlKCkge1xuICAgIGxldCB0eXBlO1xuXG4gICAgaWYgKGZhbHNlKSB7XG4gICAgICAvLy9cbiAgICB9IGVsc2UgaWYgKHRoaXMudmFyaWFibGUgIT09IG51bGwpIHtcbiAgICAgIHR5cGUgPSB0aGlzLnZhcmlhYmxlLmdldFR5cGUoKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMucHJpbWl0aXZlICE9PSBudWxsKSB7XG4gICAgICB0eXBlID0gdGhpcy5wcmltaXRpdmUuZ2V0VHlwZSgpO1xuICAgIH1cblxuICAgIHJldHVybiB0eXBlO1xuICB9XG5cbiAgaXNCb29sZWFuKCkge1xuICAgIGNvbnN0IHR5cGUgPSB0aGlzLmdldFR5cGUoKSxcbiAgICAgICAgICBib29sZWFuID0gKHR5cGUgPT09IEJPT0xFQU5fVFlQRSk7XG5cbiAgICByZXR1cm4gYm9vbGVhbjtcbiAgfVxuXG4gIGV2YWx1YXRlKGNvbnRleHQpIHtcbiAgICBsZXQgdmFsdWU7XG5cbiAgICBpZiAoZmFsc2UpIHtcbiAgICAgIC8vL1xuICAgIH0gZWxzZSBpZiAodGhpcy52YXJpYWJsZSAhPT0gbnVsbCkge1xuICAgICAgdmFsdWUgPSB0aGlzLnZhcmlhYmxlLmV2YWx1YXRlKGNvbnRleHQpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5wcmltaXRpdmUgIT09IG51bGwpIHtcbiAgICAgIHZhbHVlID0gdGhpcy5wcmltaXRpdmUuZXZhbHVhdGUoY29udGV4dCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgaXNFcXVhbFRvKHZhbHVlKSB7XG4gICAgbGV0IGVxdWFsVG8gPSBmYWxzZTtcblxuICAgIGlmIChmYWxzZSkge1xuICAgICAgLy8vXG4gICAgfSBlbHNlIGlmICh0aGlzLnZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCB2YXJpYWJsZSA9IHZhbHVlLmdldFZhcmlhYmxlKCk7XG5cbiAgICAgIGlmICh2YXJpYWJsZSAhPT0gbnVsbCkge1xuICAgICAgICBlcXVhbFRvID0gdGhpcy52YXJpYWJsZS5pc0VxdWFsVG8odmFyaWFibGUpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodGhpcy5wcmltaXRpdmUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHByaW1pdGl2ZSA9IHZhbHVlLmdldFByaW1pdGl2ZSgpO1xuXG4gICAgICBpZiAocHJpbWl0aXZlICE9PSBudWxsKSB7XG4gICAgICAgIGVxdWFsVG8gPSB0aGlzLnByaW1pdGl2ZS5pc0VxdWFsVG8ocHJpbWl0aXZlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZXF1YWxUbztcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJWYWx1ZVwiO1xuXG4gIHN0YXRpYyBmcm9tUHJpbWl0aXZlKHByaW1pdGl2ZSwgY29udGV4dCkge1xuICAgIGNvbnN0IHByaW1pdGl2ZVN0cmluZyA9IHByaW1pdGl2ZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICBzdHJpbmcgPSBwcmltaXRpdmVTdHJpbmcsIC8vL1xuICAgICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICAgIGJyZWFrUG9pbnQgPSBudWxsLFxuICAgICAgICAgIHZhcmlhYmxlID0gbnVsbDtcblxuICAgIGNvbnRleHQgPSBudWxsO1xuXG4gICAgY29uc3QgdmFsdWUgPSBuZXcgVmFsdWUoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB2YXJpYWJsZSwgcHJpbWl0aXZlKTtcblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxufSk7XG4iXSwibmFtZXMiOlsiZGVmaW5lIiwiVmFsdWUiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwidmFyaWFibGUiLCJwcmltaXRpdmUiLCJnZXRWYXJpYWJsZSIsImdldFByaW1pdGl2ZSIsImdldFByaW1pdGl2ZVZhbHVlIiwicHJpbWl0aXZlVmFsdWUiLCJnZXRWYWx1ZSIsImdldFR5cGUiLCJ0eXBlIiwiaXNCb29sZWFuIiwiYm9vbGVhbiIsIkJPT0xFQU5fVFlQRSIsImV2YWx1YXRlIiwidmFsdWUiLCJpc0VxdWFsVG8iLCJlcXVhbFRvIiwibmFtZSIsImZyb21QcmltaXRpdmUiLCJwcmltaXRpdmVTdHJpbmciLCJnZXRTdHJpbmciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVFBOzs7ZUFBQTs7O2dDQU53QjswQkFFRDt1QkFDTTt1QkFDSTtN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
134
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3ZhbHVlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgZWxlbWVudHMgZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgVmFsdWUgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB2YXJpYWJsZSwgcHJpbWl0aXZlKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMudmFyaWFibGUgPSB2YXJpYWJsZTtcbiAgICB0aGlzLnByaW1pdGl2ZSA9IHByaW1pdGl2ZTtcbiAgfVxuXG4gIGdldFZhcmlhYmxlKCkge1xuICAgIHJldHVybiB0aGlzLnZhcmlhYmxlO1xuICB9XG5cbiAgZ2V0UHJpbWl0aXZlKCkge1xuICAgIHJldHVybiB0aGlzLnByaW1pdGl2ZTtcbiAgfVxuXG4gIGdldFByaW1pdGl2ZVZhbHVlKCkge1xuICAgIGNvbnN0IHByaW1pdGl2ZVZhbHVlID0gdGhpcy5wcmltaXRpdmUuZ2V0VmFsdWUoKTtcblxuICAgIHJldHVybiBwcmltaXRpdmVWYWx1ZTtcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgbGV0IHR5cGU7XG5cbiAgICBpZiAoZmFsc2UpIHtcbiAgICAgIC8vL1xuICAgIH0gZWxzZSBpZiAodGhpcy52YXJpYWJsZSAhPT0gbnVsbCkge1xuICAgICAgdHlwZSA9IHRoaXMudmFyaWFibGUuZ2V0VHlwZSgpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5wcmltaXRpdmUgIT09IG51bGwpIHtcbiAgICAgIHR5cGUgPSB0aGlzLnByaW1pdGl2ZS5nZXRUeXBlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxuICBpc0Jvb2xlYW4oKSB7XG4gICAgY29uc3QgdHlwZSA9IHRoaXMuZ2V0VHlwZSgpLFxuICAgICAgICAgIGJvb2xlYW5UeXBlID0gdHlwZS5pc0Jvb2xlYW5UeXBlKCksXG4gICAgICAgICAgYm9vbGVhbiA9IGJvb2xlYW5UeXBlOyAvLy9cblxuICAgIHJldHVybiBib29sZWFuO1xuICB9XG5cbiAgZXZhbHVhdGUoY29udGV4dCkge1xuICAgIGxldCB2YWx1ZTtcblxuICAgIGlmIChmYWxzZSkge1xuICAgICAgLy8vXG4gICAgfSBlbHNlIGlmICh0aGlzLnZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgICB2YWx1ZSA9IHRoaXMudmFyaWFibGUuZXZhbHVhdGUoY29udGV4dCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnByaW1pdGl2ZSAhPT0gbnVsbCkge1xuICAgICAgdmFsdWUgPSB0aGlzLnByaW1pdGl2ZS5ldmFsdWF0ZShjb250ZXh0KTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBpc0VxdWFsVG8odmFsdWUpIHtcbiAgICBsZXQgZXF1YWxUbyA9IGZhbHNlO1xuXG4gICAgaWYgKGZhbHNlKSB7XG4gICAgICAvLy9cbiAgICB9IGVsc2UgaWYgKHRoaXMudmFyaWFibGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHZhcmlhYmxlID0gdmFsdWUuZ2V0VmFyaWFibGUoKTtcblxuICAgICAgaWYgKHZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgICAgIGVxdWFsVG8gPSB0aGlzLnZhcmlhYmxlLmlzRXF1YWxUbyh2YXJpYWJsZSk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh0aGlzLnByaW1pdGl2ZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgcHJpbWl0aXZlID0gdmFsdWUuZ2V0UHJpbWl0aXZlKCk7XG5cbiAgICAgIGlmIChwcmltaXRpdmUgIT09IG51bGwpIHtcbiAgICAgICAgZXF1YWxUbyA9IHRoaXMucHJpbWl0aXZlLmlzRXF1YWxUbyhwcmltaXRpdmUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBlcXVhbFRvO1xuICB9XG5cbiAgbGlmdChjb250ZXh0KSB7XG4gICAgY29uc3QgeyBQcmltaXRpdmUgfSA9IGVsZW1lbnRzLFxuICAgICAgICAgIHByaW1pdGl2ZVZhbHVlID0gdGhpcy5nZXRQcmltaXRpdmVWYWx1ZSgpLFxuICAgICAgICAgIHByaW1pdGl2ZVZhbHVlcyA9IHByaW1pdGl2ZVZhbHVlOyAvLy9cblxuICAgIGxldCB0eXBlO1xuXG4gICAgdHlwZSA9IHRoaXMuZ2V0VHlwZSgpO1xuXG4gICAgY29uc3QgYXJndW1lbnRUeXBlID0gdHlwZS5nZXRBcmd1bWVudFR5cGUoKTtcblxuICAgIHR5cGUgPSBhcmd1bWVudFR5cGU7ICAvLy9cblxuICAgIGNvbnN0IHZhbHVlcyA9IHByaW1pdGl2ZVZhbHVlcy5tYXAoKHByaW1pdGl2ZVZhbHVlKT0+IHtcbiAgICAgICAgICAgIGNvbnN0IHByaW1pdGl2ZSA9IFByaW1pdGl2ZS5mcm9tUHJpbWl0aXZlVmFsdWVBbmRUeXBlKHByaW1pdGl2ZVZhbHVlLCB0eXBlLCBjb250ZXh0KSxcbiAgICAgICAgICAgICAgICAgIHZhbHVlID0gVmFsdWUuZnJvbVByaW1pdGl2ZShwcmltaXRpdmUsIGNvbnRleHQpO1xuXG4gICAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgICAgfSk7XG5cbiAgICByZXR1cm4gdmFsdWVzO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlZhbHVlXCI7XG5cbiAgc3RhdGljIGZyb21QcmltaXRpdmUocHJpbWl0aXZlLCBjb250ZXh0KSB7XG4gICAgY29uc3QgcHJpbWl0aXZlU3RyaW5nID0gcHJpbWl0aXZlLmdldFN0cmluZygpLFxuICAgICAgICAgIHN0cmluZyA9IHByaW1pdGl2ZVN0cmluZywgLy8vXG4gICAgICAgICAgbm9kZSA9IG51bGwsXG4gICAgICAgICAgYnJlYWtQb2ludCA9IG51bGwsXG4gICAgICAgICAgdmFyaWFibGUgPSBudWxsO1xuXG4gICAgY29udGV4dCA9IG51bGw7XG5cbiAgICBjb25zdCB2YWx1ZSA9IG5ldyBWYWx1ZShjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIHZhcmlhYmxlLCBwcmltaXRpdmUpO1xuXG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG59KTtcbiJdLCJuYW1lcyI6WyJkZWZpbmUiLCJWYWx1ZSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ2YXJpYWJsZSIsInByaW1pdGl2ZSIsImdldFZhcmlhYmxlIiwiZ2V0UHJpbWl0aXZlIiwiZ2V0UHJpbWl0aXZlVmFsdWUiLCJwcmltaXRpdmVWYWx1ZSIsImdldFZhbHVlIiwiZ2V0VHlwZSIsInR5cGUiLCJpc0Jvb2xlYW4iLCJib29sZWFuVHlwZSIsImlzQm9vbGVhblR5cGUiLCJib29sZWFuIiwiZXZhbHVhdGUiLCJ2YWx1ZSIsImlzRXF1YWxUbyIsImVxdWFsVG8iLCJsaWZ0IiwiUHJpbWl0aXZlIiwiZWxlbWVudHMiLCJwcmltaXRpdmVWYWx1ZXMiLCJhcmd1bWVudFR5cGUiLCJnZXRBcmd1bWVudFR5cGUiLCJ2YWx1ZXMiLCJtYXAiLCJmcm9tUHJpbWl0aXZlVmFsdWVBbmRUeXBlIiwiZnJvbVByaW1pdGl2ZSIsIm5hbWUiLCJwcmltaXRpdmVTdHJpbmciLCJnZXRTdHJpbmciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVFBOzs7ZUFBQTs7O2dDQU53QjtrRUFFSDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BSXJCLFdBQWVBLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsY0FBY0MsdUJBQU87SUFDL0MsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxRQUFRLEVBQUVDLFNBQVMsQ0FBRTtRQUNsRSxLQUFLLENBQUNMLFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0MsUUFBUSxHQUFHQTtRQUNoQixJQUFJLENBQUNDLFNBQVMsR0FBR0E7SUFDbkI7SUFFQUMsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDRixRQUFRO0lBQ3RCO0lBRUFHLGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQ0YsU0FBUztJQUN2QjtJQUVBRyxvQkFBb0I7UUFDbEIsTUFBTUMsaUJBQWlCLElBQUksQ0FBQ0osU0FBUyxDQUFDSyxRQUFRO1FBRTlDLE9BQU9EO0lBQ1Q7SUFFQUUsVUFBVTtRQUNSLElBQUlDO1FBRUosSUFBSSxPQUFPO1FBQ1QsR0FBRztRQUNMLE9BQU8sSUFBSSxJQUFJLENBQUNSLFFBQVEsS0FBSyxNQUFNO1lBQ2pDUSxPQUFPLElBQUksQ0FBQ1IsUUFBUSxDQUFDTyxPQUFPO1FBQzlCLE9BQU8sSUFBSSxJQUFJLENBQUNOLFNBQVMsS0FBSyxNQUFNO1lBQ2xDTyxPQUFPLElBQUksQ0FBQ1AsU0FBUyxDQUFDTSxPQUFPO1FBQy9CO1FBRUEsT0FBT0M7SUFDVDtJQUVBQyxZQUFZO1FBQ1YsTUFBTUQsT0FBTyxJQUFJLENBQUNELE9BQU8sSUFDbkJHLGNBQWNGLEtBQUtHLGFBQWEsSUFDaENDLFVBQVVGLGFBQWEsR0FBRztRQUVoQyxPQUFPRTtJQUNUO0lBRUFDLFNBQVNqQixPQUFPLEVBQUU7UUFDaEIsSUFBSWtCO1FBRUosSUFBSSxPQUFPO1FBQ1QsR0FBRztRQUNMLE9BQU8sSUFBSSxJQUFJLENBQUNkLFFBQVEsS0FBSyxNQUFNO1lBQ2pDYyxRQUFRLElBQUksQ0FBQ2QsUUFBUSxDQUFDYSxRQUFRLENBQUNqQjtRQUNqQyxPQUFPLElBQUksSUFBSSxDQUFDSyxTQUFTLEtBQUssTUFBTTtZQUNsQ2EsUUFBUSxJQUFJLENBQUNiLFNBQVMsQ0FBQ1ksUUFBUSxDQUFDakI7UUFDbEM7UUFFQSxPQUFPa0I7SUFDVDtJQUVBQyxVQUFVRCxLQUFLLEVBQUU7UUFDZixJQUFJRSxVQUFVO1FBRWQsSUFBSSxPQUFPO1FBQ1QsR0FBRztRQUNMLE9BQU8sSUFBSSxJQUFJLENBQUNoQixRQUFRLEtBQUssTUFBTTtZQUNqQyxNQUFNQSxXQUFXYyxNQUFNWixXQUFXO1lBRWxDLElBQUlGLGFBQWEsTUFBTTtnQkFDckJnQixVQUFVLElBQUksQ0FBQ2hCLFFBQVEsQ0FBQ2UsU0FBUyxDQUFDZjtZQUNwQztRQUNGLE9BQU8sSUFBSSxJQUFJLENBQUNDLFNBQVMsS0FBSyxNQUFNO1lBQ2xDLE1BQU1BLFlBQVlhLE1BQU1YLFlBQVk7WUFFcEMsSUFBSUYsY0FBYyxNQUFNO2dCQUN0QmUsVUFBVSxJQUFJLENBQUNmLFNBQVMsQ0FBQ2MsU0FBUyxDQUFDZDtZQUNyQztRQUNGO1FBRUEsT0FBT2U7SUFDVDtJQUVBQyxLQUFLckIsT0FBTyxFQUFFO1FBQ1osTUFBTSxFQUFFc0IsU0FBUyxFQUFFLEdBQUdDLGlCQUFRLEVBQ3hCZCxpQkFBaUIsSUFBSSxDQUFDRCxpQkFBaUIsSUFDdkNnQixrQkFBa0JmLGdCQUFnQixHQUFHO1FBRTNDLElBQUlHO1FBRUpBLE9BQU8sSUFBSSxDQUFDRCxPQUFPO1FBRW5CLE1BQU1jLGVBQWViLEtBQUtjLGVBQWU7UUFFekNkLE9BQU9hLGNBQWUsR0FBRztRQUV6QixNQUFNRSxTQUFTSCxnQkFBZ0JJLEdBQUcsQ0FBQyxDQUFDbkI7WUFDNUIsTUFBTUosWUFBWWlCLFVBQVVPLHlCQUF5QixDQUFDcEIsZ0JBQWdCRyxNQUFNWixVQUN0RWtCLFFBQVFwQixNQUFNZ0MsYUFBYSxDQUFDekIsV0FBV0w7WUFFN0MsT0FBT2tCO1FBQ1Q7UUFFTixPQUFPUztJQUNUO0lBRUEsT0FBT0ksT0FBTyxRQUFRO0lBRXRCLE9BQU9ELGNBQWN6QixTQUFTLEVBQUVMLE9BQU8sRUFBRTtRQUN2QyxNQUFNZ0Msa0JBQWtCM0IsVUFBVTRCLFNBQVMsSUFDckNoQyxTQUFTK0IsaUJBQ1Q5QixPQUFPLE1BQ1BDLGFBQWEsTUFDYkMsV0FBVztRQUVqQkosVUFBVTtRQUVWLE1BQU1rQixRQUFRLElBQUlwQixNQUFNRSxTQUFTQyxRQUFRQyxNQUFNQyxZQUFZQyxVQUFVQztRQUVyRSxPQUFPYTtJQUNUO0FBQ0YifQ==
@@ -56,9 +56,9 @@ const _default = (0, _elements.define)(class Variable extends _occamlanguages.El
56
56
  const message = `The '${variableString}' variable is already present.`, exception = _exception.default.fromMessage(message);
57
57
  throw exception;
58
58
  }
59
- const valueType = value.getType(), variableType = this.type;
60
- if (valueType !== variableType) {
61
- const message = `The '${variableString} variable's '${variableType}' type does not compare to the value's '${valueType}' type.'`, exception = _exception.default.fromMessage(message);
59
+ const valueType = value.getType(), typeEqualToValueType = this.type.isEqualTo(valueType);
60
+ if (!typeEqualToValueType) {
61
+ const typeString = this.type.getString(), valueTypeString = valueType.getString(), message = `The '${variableString} variable's '${typeString}' type does not compare to the value's '${valueTypeString}' type.'`, exception = _exception.default.fromMessage(message);
62
62
  throw exception;
63
63
  }
64
64
  this.value = value;
@@ -87,4 +87,4 @@ const _default = (0, _elements.define)(class Variable extends _occamlanguages.El
87
87
  }
88
88
  });
89
89
 
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3ZhcmlhYmxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgeyB2YXJpYWJsZVN0cmluZ0Zyb21OYW1lIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9zdHJpbmdcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIFZhcmlhYmxlIGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdHlwZSwgbmFtZSwgdmFsdWUpIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIGdldE5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMubmFtZTtcbiAgfVxuXG4gIGdldFZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLnZhbHVlO1xuICB9XG5cbiAgY29tcGFyZVZhcmlhYmxlTmFtZSh2YXJpYWJsZU5hbWUpIHtcbiAgICBjb25zdCBjb21wYXJlc1RvVmFyaWFibGVOYW1lID0gKHRoaXMubmFtZSA9PT0gdmFyaWFibGVOYW1lKTtcblxuICAgIHJldHVybiBjb21wYXJlc1RvVmFyaWFibGVOYW1lO1xuICB9XG5cbiAgZXZhbHVhdGUoY29udGV4dCkge1xuICAgIGNvbnN0IHZhcmlhYmxlU3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTsgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBFdmFsdWF0aW5nIHRoZSAnJHt2YXJpYWJsZVN0cmluZ30nIHZhcmlhYmxlLi4uYCk7XG5cbiAgICBjb25zdCBuZXN0ZWQgPSB0cnVlLFxuICAgICAgICAgIHZhcmlhYmxlTmFtZSA9IHRoaXMubmFtZSwgLy8vXG4gICAgICAgICAgdmFyaWFibGVQcmVzZW50ID0gY29udGV4dC5pc1ZhcmlhYmxlUHJlc2VudEJ5VmFyaWFibGVOYW1lKHZhcmlhYmxlTmFtZSwgbmVzdGVkKTtcblxuICAgIGlmICghdmFyaWFibGVQcmVzZW50KSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYFRoZSAnJHt2YXJpYWJsZVN0cmluZ30nIHZhcmlhYmxlIGlzIG5vdCBwcmVzZW50LidgLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgY29uc3QgdmFyaWFibGUgPSBjb250ZXh0LmZpbmRWYXJpYWJsZUJ5VmFyaWFibGVOYW1lKHZhcmlhYmxlTmFtZSksXG4gICAgICAgICAgdmFsdWUgPSB2YXJpYWJsZS5nZXRWYWx1ZSgpLFxuICAgICAgICAgIHZhbHVlU3RyaW5nID0gdmFsdWUuZ2V0U3RyaW5nKCk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5ldmFsdWF0ZWQgdGhlICcke3ZhcmlhYmxlU3RyaW5nfScgdmFyaWFibGUgYXMgdGhlICcke3ZhbHVlU3RyaW5nfScgdmFsdWUuYCk7XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBhc3NpZ24odmFsdWUsIGNvbnRleHQpIHtcbiAgICBjb25zdCBuZXN0ZWQgPSBmYWxzZSxcbiAgICAgICAgICB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICAgIHZhcmlhYmxlTmFtZSA9IHRoaXMubmFtZSwgLy8vXG4gICAgICAgICAgdmFyaWFibGVTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpLCAvLy9cbiAgICAgICAgICB2YXJpYWJsZVByZXNlbnQgPSBjb250ZXh0LmlzVmFyaWFibGVQcmVzZW50QnlWYXJpYWJsZU5hbWUodmFyaWFibGVOYW1lLCBuZXN0ZWQpO1xuXG4gICAgY29udGV4dC50cmFjZShgQXNzaWduaW5nIHRoZSAnJHt2YWx1ZVN0cmluZ30nIHZhbHVlIHRvIHRoZSAnJHt2YXJpYWJsZVN0cmluZ30nIHZhcmlhYmxlLi4uYCk7XG5cbiAgICBpZiAodmFyaWFibGVQcmVzZW50KSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYFRoZSAnJHt2YXJpYWJsZVN0cmluZ30nIHZhcmlhYmxlIGlzIGFscmVhZHkgcHJlc2VudC5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWVUeXBlID0gdmFsdWUuZ2V0VHlwZSgpLFxuICAgICAgICAgIHZhcmlhYmxlVHlwZSA9IHRoaXMudHlwZTtcblxuICAgIGlmICh2YWx1ZVR5cGUgIT09IHZhcmlhYmxlVHlwZSkge1xuICAgICAgY29uc3QgbWVzc2FnZSA9IGBUaGUgJyR7dmFyaWFibGVTdHJpbmd9IHZhcmlhYmxlJ3MgJyR7dmFyaWFibGVUeXBlfScgdHlwZSBkb2VzIG5vdCBjb21wYXJlIHRvIHRoZSB2YWx1ZSdzICcke3ZhbHVlVHlwZX0nIHR5cGUuJ2AsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG5cbiAgICBjb25zdCB2YXJpYWJsZSA9IHRoaXM7ICAvLy9cblxuICAgIGNvbnRleHQuYWRkVmFyaWFibGUodmFyaWFibGUpO1xuXG4gICAgY29udGV4dC5kZWJ1ZyhgLi4uYXNzaWduZWQgdGhlICcke3ZhbHVlU3RyaW5nfScgdmFsdWUgdG8gdGhlICcke3ZhcmlhYmxlU3RyaW5nfScgdmFyaWFibGUuYCk7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiVmFyaWFibGVcIjtcblxuICBzdGF0aWMgZnJvbUJpbmRpbmcoYmluZGluZywgY29udGV4dCkge1xuICAgIGNvbnN0IHR5cGUgPSBiaW5kaW5nLmdldFR5cGUoKSxcbiAgICAgICAgICBuYW1lID0gYmluZGluZy5nZXROYW1lKCksXG4gICAgICAgICAgdmFsdWUgPSBudWxsLFxuICAgICAgICAgIHZhcmlhYmxlU3RyaW5nID0gdmFyaWFibGVTdHJpbmdGcm9tTmFtZShuYW1lKSxcbiAgICAgICAgICBzdHJpbmcgPSB2YXJpYWJsZVN0cmluZywgIC8vL1xuICAgICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICAgIGJyZWFrUG9pbnQgPSBudWxsXG5cbiAgICBjb250ZXh0ID0gbnVsbDtcblxuICAgIGNvbnN0IHZhcmlhYmxlID0gbmV3IFZhcmlhYmxlKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdHlwZSwgbmFtZSwgdmFsdWUpO1xuXG4gICAgcmV0dXJuIHZhcmlhYmxlO1xuICB9XG5cbiAgc3RhdGljIGZyb21OYW1lZEJpbmRpbmcobmFtZWRCaW5kaW5nLCBjb250ZXh0KSB7XG4gICAgY29uc3QgYWxpYXNlZE5hbWUgPSBuYW1lZEJpbmRpbmcuZ2V0QWxpYXNlZE5hbWUoKSxcbiAgICAgICAgICB0eXBlID0gbmFtZWRCaW5kaW5nLmdldFR5cGUoKSxcbiAgICAgICAgICBuYW1lID0gYWxpYXNlZE5hbWUsIC8vL1xuICAgICAgICAgIHRlcm0gPSBudWxsLFxuICAgICAgICAgIHZhcmlhYmxlU3RyaW5nID0gdmFyaWFibGVTdHJpbmdGcm9tTmFtZShuYW1lKSxcbiAgICAgICAgICBzdHJpbmcgPSB2YXJpYWJsZVN0cmluZywgIC8vL1xuICAgICAgICAgIG5vZGUgPSBudWxsLFxuICAgICAgICAgIGJyZWFrUG9pbnQgPSBudWxsO1xuXG4gICAgY29udGV4dCA9IG51bGw7XG5cbiAgICBjb25zdCB2YXJpYWJsZSA9IG5ldyBWYXJpYWJsZShjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIHR5cGUsIG5hbWUsIHRlcm0pO1xuXG4gICAgcmV0dXJuIHZhcmlhYmxlO1xuICB9XG5cbiAgc3RhdGljIGZyb21WYWx1ZUFuZFBhcmFtZXRlcih2YWx1ZSwgcGFyYW1ldGVyLCBjb250ZXh0KSB7XG4gICAgY29uc3QgdHlwZSA9IHBhcmFtZXRlci5nZXRUeXBlKCksXG4gICAgICAgICAgbmFtZSA9IHBhcmFtZXRlci5nZXROYW1lKCksXG4gICAgICAgICAgdmFyaWFibGVTdHJpbmcgPSB2YXJpYWJsZVN0cmluZ0Zyb21OYW1lKG5hbWUpLFxuICAgICAgICAgIHN0cmluZyA9IHZhcmlhYmxlU3RyaW5nLCAgLy8vXG4gICAgICAgICAgbm9kZSA9IG51bGwsXG4gICAgICAgICAgYnJlYWtQb2ludCA9IG51bGw7XG5cbiAgICBjb250ZXh0ID0gbnVsbDtcblxuICAgIGNvbnN0IHZhcmlhYmxlID0gbmV3IFZhcmlhYmxlKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdHlwZSwgbmFtZSwgdmFsdWUpO1xuXG4gICAgcmV0dXJuIHZhcmlhYmxlO1xuICB9XG59KTtcbiJdLCJuYW1lcyI6WyJkZWZpbmUiLCJWYXJpYWJsZSIsIkVsZW1lbnQiLCJjb250ZXh0Iiwic3RyaW5nIiwibm9kZSIsImJyZWFrUG9pbnQiLCJ0eXBlIiwibmFtZSIsInZhbHVlIiwiZ2V0VHlwZSIsImdldE5hbWUiLCJnZXRWYWx1ZSIsImNvbXBhcmVWYXJpYWJsZU5hbWUiLCJ2YXJpYWJsZU5hbWUiLCJjb21wYXJlc1RvVmFyaWFibGVOYW1lIiwiZXZhbHVhdGUiLCJ2YXJpYWJsZVN0cmluZyIsImdldFN0cmluZyIsInRyYWNlIiwibmVzdGVkIiwidmFyaWFibGVQcmVzZW50IiwiaXNWYXJpYWJsZVByZXNlbnRCeVZhcmlhYmxlTmFtZSIsIm1lc3NhZ2UiLCJleGNlcHRpb24iLCJFeGNlcHRpb24iLCJmcm9tTWVzc2FnZSIsInZhcmlhYmxlIiwiZmluZFZhcmlhYmxlQnlWYXJpYWJsZU5hbWUiLCJ2YWx1ZVN0cmluZyIsImRlYnVnIiwiYXNzaWduIiwidmFsdWVUeXBlIiwidmFyaWFibGVUeXBlIiwiYWRkVmFyaWFibGUiLCJmcm9tQmluZGluZyIsImJpbmRpbmciLCJ2YXJpYWJsZVN0cmluZ0Zyb21OYW1lIiwiZnJvbU5hbWVkQmluZGluZyIsIm5hbWVkQmluZGluZyIsImFsaWFzZWROYW1lIiwiZ2V0QWxpYXNlZE5hbWUiLCJ0ZXJtIiwiZnJvbVZhbHVlQW5kUGFyYW1ldGVyIiwicGFyYW1ldGVyIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFTQTs7O2VBQUE7OztnQ0FQd0I7a0VBRUY7MEJBRUM7d0JBQ2dCOzs7Ozs7TUFFdkMsV0FBZUEsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyxpQkFBaUJDLHVCQUFPO0lBQ2xELFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsSUFBSSxFQUFFQyxJQUFJLEVBQUVDLEtBQUssQ0FBRTtRQUNoRSxLQUFLLENBQUNOLFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtRQUNaLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtRQUNaLElBQUksQ0FBQ0MsS0FBSyxHQUFHQTtJQUNmO0lBRUFDLFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQ0gsSUFBSTtJQUNsQjtJQUVBSSxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUNILElBQUk7SUFDbEI7SUFFQUksV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDSCxLQUFLO0lBQ25CO0lBRUFJLG9CQUFvQkMsWUFBWSxFQUFFO1FBQ2hDLE1BQU1DLHlCQUEwQixJQUFJLENBQUNQLElBQUksS0FBS007UUFFOUMsT0FBT0M7SUFDVDtJQUVBQyxTQUFTYixPQUFPLEVBQUU7UUFDaEIsTUFBTWMsaUJBQWlCLElBQUksQ0FBQ0MsU0FBUyxJ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
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3ZhcmlhYmxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgRXhjZXB0aW9uIGZyb20gXCIuLi9leGNlcHRpb25cIjtcblxuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5pbXBvcnQgeyB2YXJpYWJsZVN0cmluZ0Zyb21OYW1lIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9zdHJpbmdcIjtcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIFZhcmlhYmxlIGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdHlwZSwgbmFtZSwgdmFsdWUpIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIGdldE5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMubmFtZTtcbiAgfVxuXG4gIGdldFZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLnZhbHVlO1xuICB9XG5cbiAgY29tcGFyZVZhcmlhYmxlTmFtZSh2YXJpYWJsZU5hbWUpIHtcbiAgICBjb25zdCBjb21wYXJlc1RvVmFyaWFibGVOYW1lID0gKHRoaXMubmFtZSA9PT0gdmFyaWFibGVOYW1lKTtcblxuICAgIHJldHVybiBjb21wYXJlc1RvVmFyaWFibGVOYW1lO1xuICB9XG5cbiAgZXZhbHVhdGUoY29udGV4dCkge1xuICAgIGNvbnN0IHZhcmlhYmxlU3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTsgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBFdmFsdWF0aW5nIHRoZSAnJHt2YXJpYWJsZVN0cmluZ30nIHZhcmlhYmxlLi4uYCk7XG5cbiAgICBjb25zdCBuZXN0ZWQgPSB0cnVlLFxuICAgICAgICAgIHZhcmlhYmxlTmFtZSA9IHRoaXMubmFtZSwgLy8vXG4gICAgICAgICAgdmFyaWFibGVQcmVzZW50ID0gY29udGV4dC5pc1ZhcmlhYmxlUHJlc2VudEJ5VmFyaWFibGVOYW1lKHZhcmlhYmxlTmFtZSwgbmVzdGVkKTtcblxuICAgIGlmICghdmFyaWFibGVQcmVzZW50KSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYFRoZSAnJHt2YXJpYWJsZVN0cmluZ30nIHZhcmlhYmxlIGlzIG5vdCBwcmVzZW50LidgLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgY29uc3QgdmFyaWFibGUgPSBjb250ZXh0LmZpbmRWYXJpYWJsZUJ5VmFyaWFibGVOYW1lKHZhcmlhYmxlTmFtZSksXG4gICAgICAgICAgdmFsdWUgPSB2YXJpYWJsZS5nZXRWYWx1ZSgpLFxuICAgICAgICAgIHZhbHVlU3RyaW5nID0gdmFsdWUuZ2V0U3RyaW5nKCk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5ldmFsdWF0ZWQgdGhlICcke3ZhcmlhYmxlU3RyaW5nfScgdmFyaWFibGUgYXMgdGhlICcke3ZhbHVlU3RyaW5nfScgdmFsdWUuYCk7XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBhc3NpZ24odmFsdWUsIGNvbnRleHQpIHtcbiAgICBjb25zdCBuZXN0ZWQgPSBmYWxzZSxcbiAgICAgICAgICB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICAgIHZhcmlhYmxlTmFtZSA9IHRoaXMubmFtZSwgLy8vXG4gICAgICAgICAgdmFyaWFibGVTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpLCAvLy9cbiAgICAgICAgICB2YXJpYWJsZVByZXNlbnQgPSBjb250ZXh0LmlzVmFyaWFibGVQcmVzZW50QnlWYXJpYWJsZU5hbWUodmFyaWFibGVOYW1lLCBuZXN0ZWQpO1xuXG4gICAgY29udGV4dC50cmFjZShgQXNzaWduaW5nIHRoZSAnJHt2YWx1ZVN0cmluZ30nIHZhbHVlIHRvIHRoZSAnJHt2YXJpYWJsZVN0cmluZ30nIHZhcmlhYmxlLi4uYCk7XG5cbiAgICBpZiAodmFyaWFibGVQcmVzZW50KSB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gYFRoZSAnJHt2YXJpYWJsZVN0cmluZ30nIHZhcmlhYmxlIGlzIGFscmVhZHkgcHJlc2VudC5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgY29uc3QgdmFsdWVUeXBlID0gdmFsdWUuZ2V0VHlwZSgpLFxuICAgICAgICAgIHR5cGVFcXVhbFRvVmFsdWVUeXBlID0gdGhpcy50eXBlLmlzRXF1YWxUbyh2YWx1ZVR5cGUpO1xuXG4gICAgaWYgKCF0eXBlRXF1YWxUb1ZhbHVlVHlwZSkge1xuICAgICAgY29uc3QgdHlwZVN0cmluZyA9IHRoaXMudHlwZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgIHZhbHVlVHlwZVN0cmluZyA9IHZhbHVlVHlwZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgIG1lc3NhZ2UgPSBgVGhlICcke3ZhcmlhYmxlU3RyaW5nfSB2YXJpYWJsZSdzICcke3R5cGVTdHJpbmd9JyB0eXBlIGRvZXMgbm90IGNvbXBhcmUgdG8gdGhlIHZhbHVlJ3MgJyR7dmFsdWVUeXBlU3RyaW5nfScgdHlwZS4nYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgdGhyb3cgZXhjZXB0aW9uO1xuICAgIH1cblxuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcblxuICAgIGNvbnN0IHZhcmlhYmxlID0gdGhpczsgIC8vL1xuXG4gICAgY29udGV4dC5hZGRWYXJpYWJsZSh2YXJpYWJsZSk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5hc3NpZ25lZCB0aGUgJyR7dmFsdWVTdHJpbmd9JyB2YWx1ZSB0byB0aGUgJyR7dmFyaWFibGVTdHJpbmd9JyB2YXJpYWJsZS5gKTtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJWYXJpYWJsZVwiO1xuXG4gIHN0YXRpYyBmcm9tQmluZGluZyhiaW5kaW5nLCBjb250ZXh0KSB7XG4gICAgY29uc3QgdHlwZSA9IGJpbmRpbmcuZ2V0VHlwZSgpLFxuICAgICAgICAgIG5hbWUgPSBiaW5kaW5nLmdldE5hbWUoKSxcbiAgICAgICAgICB2YWx1ZSA9IG51bGwsXG4gICAgICAgICAgdmFyaWFibGVTdHJpbmcgPSB2YXJpYWJsZVN0cmluZ0Zyb21OYW1lKG5hbWUpLFxuICAgICAgICAgIHN0cmluZyA9IHZhcmlhYmxlU3RyaW5nLCAgLy8vXG4gICAgICAgICAgbm9kZSA9IG51bGwsXG4gICAgICAgICAgYnJlYWtQb2ludCA9IG51bGxcblxuICAgIGNvbnRleHQgPSBudWxsO1xuXG4gICAgY29uc3QgdmFyaWFibGUgPSBuZXcgVmFyaWFibGUoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB0eXBlLCBuYW1lLCB2YWx1ZSk7XG5cbiAgICByZXR1cm4gdmFyaWFibGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbU5hbWVkQmluZGluZyhuYW1lZEJpbmRpbmcsIGNvbnRleHQpIHtcbiAgICBjb25zdCBhbGlhc2VkTmFtZSA9IG5hbWVkQmluZGluZy5nZXRBbGlhc2VkTmFtZSgpLFxuICAgICAgICAgIHR5cGUgPSBuYW1lZEJpbmRpbmcuZ2V0VHlwZSgpLFxuICAgICAgICAgIG5hbWUgPSBhbGlhc2VkTmFtZSwgLy8vXG4gICAgICAgICAgdGVybSA9IG51bGwsXG4gICAgICAgICAgdmFyaWFibGVTdHJpbmcgPSB2YXJpYWJsZVN0cmluZ0Zyb21OYW1lKG5hbWUpLFxuICAgICAgICAgIHN0cmluZyA9IHZhcmlhYmxlU3RyaW5nLCAgLy8vXG4gICAgICAgICAgbm9kZSA9IG51bGwsXG4gICAgICAgICAgYnJlYWtQb2ludCA9IG51bGw7XG5cbiAgICBjb250ZXh0ID0gbnVsbDtcblxuICAgIGNvbnN0IHZhcmlhYmxlID0gbmV3IFZhcmlhYmxlKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdHlwZSwgbmFtZSwgdGVybSk7XG5cbiAgICByZXR1cm4gdmFyaWFibGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbVZhbHVlQW5kUGFyYW1ldGVyKHZhbHVlLCBwYXJhbWV0ZXIsIGNvbnRleHQpIHtcbiAgICBjb25zdCB0eXBlID0gcGFyYW1ldGVyLmdldFR5cGUoKSxcbiAgICAgICAgICBuYW1lID0gcGFyYW1ldGVyLmdldE5hbWUoKSxcbiAgICAgICAgICB2YXJpYWJsZVN0cmluZyA9IHZhcmlhYmxlU3RyaW5nRnJvbU5hbWUobmFtZSksXG4gICAgICAgICAgc3RyaW5nID0gdmFyaWFibGVTdHJpbmcsICAvLy9cbiAgICAgICAgICBub2RlID0gbnVsbCxcbiAgICAgICAgICBicmVha1BvaW50ID0gbnVsbDtcblxuICAgIGNvbnRleHQgPSBudWxsO1xuXG4gICAgY29uc3QgdmFyaWFibGUgPSBuZXcgVmFyaWFibGUoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB0eXBlLCBuYW1lLCB2YWx1ZSk7XG5cbiAgICByZXR1cm4gdmFyaWFibGU7XG4gIH1cbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIlZhcmlhYmxlIiwiRWxlbWVudCIsImNvbnRleHQiLCJzdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsInR5cGUiLCJuYW1lIiwidmFsdWUiLCJnZXRUeXBlIiwiZ2V0TmFtZSIsImdldFZhbHVlIiwiY29tcGFyZVZhcmlhYmxlTmFtZSIsInZhcmlhYmxlTmFtZSIsImNvbXBhcmVzVG9WYXJpYWJsZU5hbWUiLCJldmFsdWF0ZSIsInZhcmlhYmxlU3RyaW5nIiwiZ2V0U3RyaW5nIiwidHJhY2UiLCJuZXN0ZWQiLCJ2YXJpYWJsZVByZXNlbnQiLCJpc1ZhcmlhYmxlUHJlc2VudEJ5VmFyaWFibGVOYW1lIiwibWVzc2FnZSIsImV4Y2VwdGlvbiIsIkV4Y2VwdGlvbiIsImZyb21NZXNzYWdlIiwidmFyaWFibGUiLCJmaW5kVmFyaWFibGVCeVZhcmlhYmxlTmFtZSIsInZhbHVlU3RyaW5nIiwiZGVidWciLCJhc3NpZ24iLCJ2YWx1ZVR5cGUiLCJ0eXBlRXF1YWxUb1ZhbHVlVHlwZSIsImlzRXF1YWxUbyIsInR5cGVTdHJpbmciLCJ2YWx1ZVR5cGVTdHJpbmciLCJhZGRWYXJpYWJsZSIsImZyb21CaW5kaW5nIiwiYmluZGluZyIsInZhcmlhYmxlU3RyaW5nRnJvbU5hbWUiLCJmcm9tTmFtZWRCaW5kaW5nIiwibmFtZWRCaW5kaW5nIiwiYWxpYXNlZE5hbWUiLCJnZXRBbGlhc2VkTmFtZSIsInRlcm0iLCJmcm9tVmFsdWVBbmRQYXJhbWV0ZXIiLCJwYXJhbWV0ZXIiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVNBOzs7ZUFBQTs7O2dDQVB3QjtrRUFFRjswQkFFQzt3QkFDZ0I7Ozs7OztNQUV2QyxXQUFlQSxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLGlCQUFpQkMsdUJBQU87SUFDbEQsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxJQUFJLEVBQUVDLElBQUksRUFBRUMsS0FBSyxDQUFFO1FBQ2hFLEtBQUssQ0FBQ04sU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxJQUFJLEdBQUdBO1FBQ1osSUFBSSxDQUFDQyxJQUFJLEdBQUdBO1FBQ1osSUFBSSxDQUFDQyxLQUFLLEdBQUdBO0lBQ2Y7SUFFQUMsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDSCxJQUFJO0lBQ2xCO0lBRUFJLFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQ0gsSUFBSTtJQUNsQjtJ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
@@ -9,7 +9,6 @@ Object.defineProperty(exports, "default", {
9
9
  }
10
10
  });
11
11
  const _assignment = /*#__PURE__*/ _interop_require_default(require("../../node/assignment"));
12
- const _tokenTypes = require("../../tokenTypes");
13
12
  const _ruleNames = require("../../ruleNames");
14
13
  function _interop_require_default(obj) {
15
14
  return obj && obj.__esModule ? obj : {
@@ -17,14 +16,9 @@ function _interop_require_default(obj) {
17
16
  };
18
17
  }
19
18
  class VariableAssignmentsNode extends _assignment.default {
20
- getType() {
21
- let type;
22
- const tokenType = _tokenTypes.TYPE_TOKEN_TYPE;
23
- this.someTerminalNode((terminalNode)=>{
24
- const content = terminalNode.getContent();
25
- type = content; ///
26
- }, tokenType);
27
- return type;
19
+ getTypeNode() {
20
+ const ruleName = _ruleNames.TYPE_RULE_NAME, typeNode = this.getNodeByRuleName(ruleName);
21
+ return typeNode;
28
22
  }
29
23
  getVariableAssignmentNodes() {
30
24
  const ruleName = _ruleNames.VARIABLE_ASSIGNMENT_RULE_NAME, variableAssingnmentNodss = this.getNodesByRuleName(ruleName);
@@ -35,4 +29,4 @@ class VariableAssignmentsNode extends _assignment.default {
35
29
  }
36
30
  }
37
31
 
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2RlL2Fzc2lnbm1lbnRzL3ZhcmlhYmxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgQXNzaWdubWVudHNOb2RlIGZyb20gXCIuLi8uLi9ub2RlL2Fzc2lnbm1lbnRcIjtcblxuaW1wb3J0IHsgVFlQRV9UT0tFTl9UWVBFIH0gZnJvbSBcIi4uLy4uL3Rva2VuVHlwZXNcIjtcbmltcG9ydCB7IFZBUklBQkxFX0FTU0lHTk1FTlRfUlVMRV9OQU1FIH0gZnJvbSBcIi4uLy4uL3J1bGVOYW1lc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWYXJpYWJsZUFzc2lnbm1lbnRzTm9kZSBleHRlbmRzIEFzc2lnbm1lbnRzTm9kZSB7XG4gIGdldFR5cGUoKSB7XG4gICAgbGV0IHR5cGU7XG5cbiAgICBjb25zdCB0b2tlblR5cGUgPSBUWVBFX1RPS0VOX1RZUEU7XG5cbiAgICB0aGlzLnNvbWVUZXJtaW5hbE5vZGUoKHRlcm1pbmFsTm9kZSkgPT4ge1xuICAgICAgY29uc3QgY29udGVudCA9IHRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCk7XG5cbiAgICAgIHR5cGUgPSBjb250ZW50OyAgLy8vXG4gICAgfSwgdG9rZW5UeXBlKTtcblxuICAgIHJldHVybiB0eXBlO1xuICB9XG5cbiAgZ2V0VmFyaWFibGVBc3NpZ25tZW50Tm9kZXMoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBWQVJJQUJMRV9BU1NJR05NRU5UX1JVTEVfTkFNRSxcbiAgICAgICAgICB2YXJpYWJsZUFzc2luZ25tZW50Tm9kc3MgPSB0aGlzLmdldE5vZGVzQnlSdWxlTmFtZShydWxlTmFtZSk7XG5cbiAgICByZXR1cm4gdmFyaWFibGVBc3NpbmdubWVudE5vZHNzO1xuICB9XG5cbiAgc3RhdGljIGZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgcHJlY2VkZW5jZSkgeyByZXR1cm4gQXNzaWdubWVudHNOb2RlLmZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShWYXJpYWJsZUFzc2lnbm1lbnRzTm9kZSwgcnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpOyB9XG59XG4iXSwibmFtZXMiOlsiVmFyaWFibGVBc3NpZ25tZW50c05vZGUiLCJBc3NpZ25tZW50c05vZGUiLCJnZXRUeXBlIiwidHlwZSIsInRva2VuVHlwZSIsIlRZUEVfVE9LRU5fVFlQRSIsInNvbWVUZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGUiLCJjb250ZW50IiwiZ2V0Q29udGVudCIsImdldFZhcmlhYmxlQXNzaWdubWVudE5vZGVzIiwicnVsZU5hbWUiLCJWQVJJQUJMRV9BU1NJR05NRU5UX1JVTEVfTkFNRSIsInZhcmlhYmxlQXNzaW5nbm1lbnROb2RzcyIsImdldE5vZGVzQnlSdWxlTmFtZSIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZSIsImNoaWxkTm9kZXMiLCJvcGFjaXR5IiwicHJlY2VkZW5jZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBT0E7OztlQUFxQkE7OzttRUFMTzs0QkFFSTsyQkFDYzs7Ozs7O0FBRS9CLE1BQU1BLGdDQUFnQ0MsbUJBQWU7SUFDbEVDLFVBQVU7UUFDUixJQUFJQztRQUVKLE1BQU1DLFlBQVlDLDJCQUFlO1FBRWpDLElBQUksQ0FBQ0MsZ0JBQWdCLENBQUMsQ0FBQ0M7WUFDckIsTUFBTUMsVUFBVUQsYUFBYUUsVUFBVTtZQUV2Q04sT0FBT0ssU0FBVSxHQUFHO1FBQ3RCLEdBQUdKO1FBRUgsT0FBT0Q7SUFDVDtJQUVBTyw2QkFBNkI7UUFDM0IsTUFBTUMsV0FBV0Msd0NBQTZCLEVBQ3hDQywyQkFBMkIsSUFBSSxDQUFDQyxrQkFBa0IsQ0FBQ0g7UUFFekQsT0FBT0U7SUFDVDtJQUVBLE9BQU9FLDJDQUEyQ0osUUFBUSxFQUFFSyxVQUFVLEVBQUVDLE9BQU8sRUFBRUMsVUFBVSxFQUFFO1FBQUUsT0FBT2pCLG1CQUFlLENBQUNjLDBDQUEwQyxDQUFDZix5QkFBeUJXLFVBQVVLLFlBQVlDLFNBQVNDO0lBQWE7QUFDeE8ifQ==
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2RlL2Fzc2lnbm1lbnRzL3ZhcmlhYmxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgQXNzaWdubWVudHNOb2RlIGZyb20gXCIuLi8uLi9ub2RlL2Fzc2lnbm1lbnRcIjtcblxuaW1wb3J0IHsgVFlQRV9SVUxFX05BTUUsIFZBUklBQkxFX0FTU0lHTk1FTlRfUlVMRV9OQU1FIH0gZnJvbSBcIi4uLy4uL3J1bGVOYW1lc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWYXJpYWJsZUFzc2lnbm1lbnRzTm9kZSBleHRlbmRzIEFzc2lnbm1lbnRzTm9kZSB7XG4gIGdldFR5cGVOb2RlKCkge1xuICAgIGNvbnN0IHJ1bGVOYW1lID0gVFlQRV9SVUxFX05BTUUsXG4gICAgICAgICAgdHlwZU5vZGUgPSB0aGlzLmdldE5vZGVCeVJ1bGVOYW1lKHJ1bGVOYW1lKTtcblxuICAgIHJldHVybiB0eXBlTm9kZTtcbiAgfVxuXG4gIGdldFZhcmlhYmxlQXNzaWdubWVudE5vZGVzKCkge1xuICAgIGNvbnN0IHJ1bGVOYW1lID0gVkFSSUFCTEVfQVNTSUdOTUVOVF9SVUxFX05BTUUsXG4gICAgICAgICAgdmFyaWFibGVBc3NpbmdubWVudE5vZHNzID0gdGhpcy5nZXROb2Rlc0J5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIHZhcmlhYmxlQXNzaW5nbm1lbnROb2RzcztcbiAgfVxuXG4gIHN0YXRpYyBmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UocnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpIHsgcmV0dXJuIEFzc2lnbm1lbnRzTm9kZS5mcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UoVmFyaWFibGVBc3NpZ25tZW50c05vZGUsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBwcmVjZWRlbmNlKTsgfVxufVxuIl0sIm5hbWVzIjpbIlZhcmlhYmxlQXNzaWdubWVudHNOb2RlIiwiQXNzaWdubWVudHNOb2RlIiwiZ2V0VHlwZU5vZGUiLCJydWxlTmFtZSIsIlRZUEVfUlVMRV9OQU1FIiwidHlwZU5vZGUiLCJnZXROb2RlQnlSdWxlTmFtZSIsImdldFZhcmlhYmxlQXNzaWdubWVudE5vZGVzIiwiVkFSSUFCTEVfQVNTSUdOTUVOVF9SVUxFX05BTUUiLCJ2YXJpYWJsZUFzc2luZ25tZW50Tm9kc3MiLCJnZXROb2Rlc0J5UnVsZU5hbWUiLCJmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UiLCJjaGlsZE5vZGVzIiwib3BhY2l0eSIsInByZWNlZGVuY2UiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQU1BOzs7ZUFBcUJBOzs7bUVBSk87MkJBRWtDOzs7Ozs7QUFFL0MsTUFBTUEsZ0NBQWdDQyxtQkFBZTtJQUNsRUMsY0FBYztRQUNaLE1BQU1DLFdBQVdDLHlCQUFjLEVBQ3pCQyxXQUFXLElBQUksQ0FBQ0MsaUJBQWlCLENBQUNIO1FBRXhDLE9BQU9FO0lBQ1Q7SUFFQUUsNkJBQTZCO1FBQzNCLE1BQU1KLFdBQVdLLHdDQUE2QixFQUN4Q0MsMkJBQTJCLElBQUksQ0FBQ0Msa0JBQWtCLENBQUNQO1FBRXpELE9BQU9NO0lBQ1Q7SUFFQSxPQUFPRSwyQ0FBMkNSLFFBQVEsRUFBRVMsVUFBVSxFQUFFQyxPQUFPLEVBQUVDLFVBQVUsRUFBRTtRQUFFLE9BQU9iLG1CQUFlLENBQUNVLDBDQUEwQyxDQUFDWCx5QkFBeUJHLFVBQVVTLFlBQVlDLFNBQVNDO0lBQWE7QUFDeE8ifQ==
@@ -20,7 +20,7 @@ class NamedBindingNode extends _binding.default {
20
20
  let alias = null;
21
21
  const tokenType = _tokenTypes.NAME_TOKEN_TYPE;
22
22
  this.someTerminalNode((terminalNode, index)=>{
23
- if (index === 3) {
23
+ if (index === 1) {
24
24
  const content = terminalNode.getContent();
25
25
  alias = content; //
26
26
  return true;
@@ -33,4 +33,4 @@ class NamedBindingNode extends _binding.default {
33
33
  }
34
34
  }
35
35
 
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2RlL2JpbmRpbmcvbmFtZWQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBCaW5kaW5nTm9kZSBmcm9tIFwiLi4vLi4vbm9kZS9iaW5kaW5nXCI7XG5cbmltcG9ydCB7IE5BTUVfVE9LRU5fVFlQRSB9IGZyb20gXCIuLi8uLi90b2tlblR5cGVzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5hbWVkQmluZGluZ05vZGUgZXh0ZW5kcyBCaW5kaW5nTm9kZSB7XG4gIGdldEFsaWFzKCkge1xuICAgIGxldCBhbGlhcyA9IG51bGw7XG5cbiAgICBjb25zdCB0b2tlblR5cGUgPSBOQU1FX1RPS0VOX1RZUEU7XG5cbiAgICB0aGlzLnNvbWVUZXJtaW5hbE5vZGUoKHRlcm1pbmFsTm9kZSwgaW5kZXgpID0+IHtcbiAgICAgIGlmIChpbmRleCA9PT0gMykge1xuICAgICAgICBjb25zdCBjb250ZW50ID0gdGVybWluYWxOb2RlLmdldENvbnRlbnQoKTtcblxuICAgICAgICBhbGlhcyA9IGNvbnRlbnQ7IC8vXG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSwgdG9rZW5UeXBlKTtcblxuICAgIHJldHVybiBhbGlhcztcbiAgfVxuXG4gIHN0YXRpYyBmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UocnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpIHsgcmV0dXJuIEJpbmRpbmdOb2RlLmZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShOYW1lZEJpbmRpbmdOb2RlLCBydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgcHJlY2VkZW5jZSk7IH1cbn1cbiJdLCJuYW1lcyI6WyJOYW1lZEJpbmRpbmdOb2RlIiwiQmluZGluZ05vZGUiLCJnZXRBbGlhcyIsImFsaWFzIiwidG9rZW5UeXBlIiwiTkFNRV9UT0tFTl9UWVBFIiwic29tZVRlcm1pbmFsTm9kZSIsInRlcm1pbmFsTm9kZSIsImluZGV4IiwiY29udGVudCIsImdldENvbnRlbnQiLCJmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UiLCJydWxlTmFtZSIsImNoaWxkTm9kZXMiLCJvcGFjaXR5IiwicHJlY2VkZW5jZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBTUE7OztlQUFxQkE7OztnRUFKRzs0QkFFUTs7Ozs7O0FBRWpCLE1BQU1BLHlCQUF5QkMsZ0JBQVc7SUFDdkRDLFdBQVc7UUFDVCxJQUFJQyxRQUFRO1FBRVosTUFBTUMsWUFBWUMsMkJBQWU7UUFFakMsSUFBSSxDQUFDQyxnQkFBZ0IsQ0FBQyxDQUFDQyxjQUFjQztZQUNuQyxJQUFJQSxVQUFVLEdBQUc7Z0JBQ2YsTUFBTUMsVUFBVUYsYUFBYUcsVUFBVTtnQkFFdkNQLFFBQVFNLFNBQVMsRUFBRTtnQkFFbkIsT0FBTztZQUNUO1FBQ0YsR0FBR0w7UUFFSCxPQUFPRDtJQUNUO0lBRUEsT0FBT1EsMkNBQTJDQyxRQUFRLEVBQUVDLFVBQVUsRUFBRUMsT0FBTyxFQUFFQyxVQUFVLEVBQUU7UUFBRSxPQUFPZCxnQkFBVyxDQUFDVSwwQ0FBMEMsQ0FBQ1gsa0JBQWtCWSxVQUFVQyxZQUFZQyxTQUFTQztJQUFhO0FBQzdOIn0=
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2RlL2JpbmRpbmcvbmFtZWQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBCaW5kaW5nTm9kZSBmcm9tIFwiLi4vLi4vbm9kZS9iaW5kaW5nXCI7XG5cbmltcG9ydCB7IE5BTUVfVE9LRU5fVFlQRSB9IGZyb20gXCIuLi8uLi90b2tlblR5cGVzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5hbWVkQmluZGluZ05vZGUgZXh0ZW5kcyBCaW5kaW5nTm9kZSB7XG4gIGdldEFsaWFzKCkge1xuICAgIGxldCBhbGlhcyA9IG51bGw7XG5cbiAgICBjb25zdCB0b2tlblR5cGUgPSBOQU1FX1RPS0VOX1RZUEU7XG5cbiAgICB0aGlzLnNvbWVUZXJtaW5hbE5vZGUoKHRlcm1pbmFsTm9kZSwgaW5kZXgpID0+IHtcbiAgICAgIGlmIChpbmRleCA9PT0gMSkge1xuICAgICAgICBjb25zdCBjb250ZW50ID0gdGVybWluYWxOb2RlLmdldENvbnRlbnQoKTtcblxuICAgICAgICBhbGlhcyA9IGNvbnRlbnQ7IC8vXG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSwgdG9rZW5UeXBlKTtcblxuICAgIHJldHVybiBhbGlhcztcbiAgfVxuXG4gIHN0YXRpYyBmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UocnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpIHsgcmV0dXJuIEJpbmRpbmdOb2RlLmZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShOYW1lZEJpbmRpbmdOb2RlLCBydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgcHJlY2VkZW5jZSk7IH1cbn1cbiJdLCJuYW1lcyI6WyJOYW1lZEJpbmRpbmdOb2RlIiwiQmluZGluZ05vZGUiLCJnZXRBbGlhcyIsImFsaWFzIiwidG9rZW5UeXBlIiwiTkFNRV9UT0tFTl9UWVBFIiwic29tZVRlcm1pbmFsTm9kZSIsInRlcm1pbmFsTm9kZSIsImluZGV4IiwiY29udGVudCIsImdldENvbnRlbnQiLCJmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UiLCJydWxlTmFtZSIsImNoaWxkTm9kZXMiLCJvcGFjaXR5IiwicHJlY2VkZW5jZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBTUE7OztlQUFxQkE7OztnRUFKRzs0QkFFUTs7Ozs7O0FBRWpCLE1BQU1BLHlCQUF5QkMsZ0JBQVc7SUFDdkRDLFdBQVc7UUFDVCxJQUFJQyxRQUFRO1FBRVosTUFBTUMsWUFBWUMsMkJBQWU7UUFFakMsSUFBSSxDQUFDQyxnQkFBZ0IsQ0FBQyxDQUFDQyxjQUFjQztZQUNuQyxJQUFJQSxVQUFVLEdBQUc7Z0JBQ2YsTUFBTUMsVUFBVUYsYUFBYUcsVUFBVTtnQkFFdkNQLFFBQVFNLFNBQVMsRUFBRTtnQkFFbkIsT0FBTztZQUNUO1FBQ0YsR0FBR0w7UUFFSCxPQUFPRDtJQUNUO0lBRUEsT0FBT1EsMkNBQTJDQyxRQUFRLEVBQUVDLFVBQVUsRUFBRUMsT0FBTyxFQUFFQyxVQUFVLEVBQUU7UUFBRSxPQUFPZCxnQkFBVyxDQUFDVSwwQ0FBMEMsQ0FBQ1gsa0JBQWtCWSxVQUFVQyxZQUFZQyxTQUFTQztJQUFhO0FBQzdOIn0=
@@ -8,31 +8,10 @@ Object.defineProperty(exports, "default", {
8
8
  return BindingNode;
9
9
  }
10
10
  });
11
- const _occamlexers = require("occam-lexers");
12
11
  const _occamlanguages = require("occam-languages");
12
+ const _ruleNames = require("../ruleNames");
13
13
  const _tokenTypes = require("../tokenTypes");
14
- const { epsilon } = _occamlexers.types;
15
14
  class BindingNode extends _occamlanguages.NonTerminalNode {
16
- getName() {
17
- let name = null;
18
- const tokenType = _tokenTypes.NAME_TOKEN_TYPE;
19
- this.someTerminalNode((terminalNode)=>{
20
- const content = terminalNode.getContent();
21
- name = content; //
22
- return true;
23
- }, tokenType);
24
- return name;
25
- }
26
- getType() {
27
- let type = null;
28
- const tokenType = _tokenTypes.TYPE_TOKEN_TYPE;
29
- this.someTerminalNode((terminalNode)=>{
30
- const content = terminalNode.getContent();
31
- type = content; //
32
- return true;
33
- }, tokenType);
34
- return type;
35
- }
36
15
  isElided() {
37
16
  let elided = false;
38
17
  const tokenType = null;
@@ -45,6 +24,20 @@ class BindingNode extends _occamlanguages.NonTerminalNode {
45
24
  }, tokenType);
46
25
  return elided;
47
26
  }
27
+ getName() {
28
+ let name = null;
29
+ const tokenType = _tokenTypes.NAME_TOKEN_TYPE;
30
+ this.someTerminalNode((terminalNode)=>{
31
+ const content = terminalNode.getContent();
32
+ name = content; //
33
+ return true;
34
+ }, tokenType);
35
+ return name;
36
+ }
37
+ getTypeNode() {
38
+ const ruleName = _ruleNames.TYPE_RULE_NAME, typeNode = this.getNodeByRuleName(ruleName);
39
+ return typeNode;
40
+ }
48
41
  static fromRuleNameChildNodesOpacityAndPrecedence(Class, ruleName, childNodes, opacity, precedence) {
49
42
  if (precedence === undefined) {
50
43
  precedence = opacity; ///
@@ -58,4 +51,4 @@ class BindingNode extends _occamlanguages.NonTerminalNode {
58
51
  }
59
52
  }
60
53
 
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL2JpbmRpbmcuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IHR5cGVzIH0gZnJvbSBcIm9jY2FtLWxleGVyc1wiO1xuaW1wb3J0IHsgTm9uVGVybWluYWxOb2RlIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgeyBUWVBFX1RPS0VOX1RZUEUsIE5BTUVfVE9LRU5fVFlQRSB9IGZyb20gXCIuLi90b2tlblR5cGVzXCI7XG5cbmNvbnN0IHsgZXBzaWxvbiB9ID0gdHlwZXM7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEJpbmRpbmdOb2RlIGV4dGVuZHMgTm9uVGVybWluYWxOb2RlIHtcbiAgZ2V0TmFtZSgpIHtcbiAgICBsZXQgbmFtZSA9IG51bGw7XG5cbiAgICBjb25zdCB0b2tlblR5cGUgPSBOQU1FX1RPS0VOX1RZUEU7XG5cbiAgICB0aGlzLnNvbWVUZXJtaW5hbE5vZGUoKHRlcm1pbmFsTm9kZSkgPT4ge1xuICAgICAgY29uc3QgY29udGVudCA9IHRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCk7XG5cbiAgICAgIG5hbWUgPSBjb250ZW50OyAvL1xuXG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9LCB0b2tlblR5cGUpO1xuXG4gICAgcmV0dXJuIG5hbWU7XG4gIH1cblxuICBnZXRUeXBlKCkge1xuICAgIGxldCB0eXBlID0gbnVsbDtcblxuICAgIGNvbnN0IHRva2VuVHlwZSA9IFRZUEVfVE9LRU5fVFlQRTtcblxuICAgIHRoaXMuc29tZVRlcm1pbmFsTm9kZSgodGVybWluYWxOb2RlKSA9PiB7XG4gICAgICBjb25zdCBjb250ZW50ID0gdGVybWluYWxOb2RlLmdldENvbnRlbnQoKTtcblxuICAgICAgdHlwZSA9IGNvbnRlbnQ7IC8vXG5cbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0sIHRva2VuVHlwZSk7XG5cbiAgICByZXR1cm4gdHlwZTtcbiAgfVxuXG4gIGlzRWxpZGVkKCkge1xuICAgIGxldCBlbGlkZWQgPSBmYWxzZTtcblxuICAgIGNvbnN0IHRva2VuVHlwZSA9IG51bGxcblxuICAgIHRoaXMuc29tZVRlcm1pbmFsTm9kZSgodGVybWluYWxOb2RlKSA9PiB7XG4gICAgICBjb25zdCB0ZXJtaW5hbE5vZGVFcHNpbG9uTm9kZSA9IHRlcm1pbmFsTm9kZS5pc0Vwc2lsb25Ob2RlKCk7XG5cbiAgICAgIGlmICh0ZXJtaW5hbE5vZGVFcHNpbG9uTm9kZSkge1xuICAgICAgICBlbGlkZWQgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9LCB0b2tlblR5cGUpO1xuXG4gICAgcmV0dXJuIGVsaWRlZDtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UoQ2xhc3MsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBwcmVjZWRlbmNlKSB7XG4gICAgaWYgKHByZWNlZGVuY2UgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcHJlY2VkZW5jZSA9IG9wYWNpdHk7IC8vL1xuXG4gICAgICBvcGFjaXR5ID0gY2hpbGROb2RlczsgLy8vXG5cbiAgICAgIGNoaWxkTm9kZXMgPSBydWxlTmFtZTsgIC8vL1xuXG4gICAgICBydWxlTmFtZSA9IENsYXNzOyAvLy9cblxuICAgICAgQ2xhc3MgPSBCaW5kaW5nTm9kZTtcbiAgICB9XG5cbiAgICBjb25zdCBwYXJhbWV0ZXJzTm9kZSA9IE5vblRlcm1pbmFsTm9kZS5mcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UoQ2xhc3MsIHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBwcmVjZWRlbmNlKTtcblxuICAgIHJldHVybiBwYXJhbWV0ZXJzTm9kZTtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIkJpbmRpbmdOb2RlIiwiZXBzaWxvbiIsInR5cGVzIiwiTm9uVGVybWluYWxOb2RlIiwiZ2V0TmFtZSIsIm5hbWUiLCJ0b2tlblR5cGUiLCJOQU1FX1RPS0VOX1RZUEUiLCJzb21lVGVybWluYWxOb2RlIiwidGVybWluYWxOb2RlIiwiY29udGVudCIsImdldENvbnRlbnQiLCJnZXRUeXBlIiwidHlwZSIsIlRZUEVfVE9LRU5fVFlQRSIsImlzRWxpZGVkIiwiZWxpZGVkIiwidGVybWluYWxOb2RlRXBzaWxvbk5vZGUiLCJpc0Vwc2lsb25Ob2RlIiwiZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlIiwiQ2xhc3MiLCJydWxlTmFtZSIsImNoaWxkTm9kZXMiLCJvcGFjaXR5IiwicHJlY2VkZW5jZSIsInVuZGVmaW5lZCIsInBhcmFtZXRlcnNOb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFTQTs7O2VBQXFCQTs7OzZCQVBDO2dDQUNVOzRCQUVpQjtBQUVqRCxNQUFNLEVBQUVDLE9BQU8sRUFBRSxHQUFHQyxrQkFBSztBQUVWLE1BQU1GLG9CQUFvQkcsK0JBQWU7SUFDdERDLFVBQVU7UUFDUixJQUFJQyxPQUFPO1FBRVgsTUFBTUMsWUFBWUMsMkJBQWU7UUFFakMsSUFBSSxDQUFDQyxnQkFBZ0IsQ0FBQyxDQUFDQztZQUNyQixNQUFNQyxVQUFVRCxhQUFhRSxVQUFVO1lBRXZDTixPQUFPSyxTQUFTLEVBQUU7WUFFbEIsT0FBTztRQUNULEdBQUdKO1FBRUgsT0FBT0Q7SUFDVDtJQUVBTyxVQUFVO1FBQ1IsSUFBSUMsT0FBTztRQUVYLE1BQU1QLFlBQVlRLDJCQUFlO1FBRWpDLElBQUksQ0FBQ04sZ0JBQWdCLENBQUMsQ0FBQ0M7WUFDckIsTUFBTUMsVUFBVUQsYUFBYUUsVUFBVTtZQUV2Q0UsT0FBT0gsU0FBUyxFQUFFO1lBRWxCLE9BQU87UUFDVCxHQUFHSjtRQUVILE9BQU9PO0lBQ1Q7SUFFQUUsV0FBVztRQUNULElBQUlDLFNBQVM7UUFFYixNQUFNVixZQUFZO1FBRWxCLElBQUksQ0FBQ0UsZ0JBQWdCLENBQUMsQ0FBQ0M7WUFDckIsTUFBTVEsMEJBQTBCUixhQUFhUyxhQUFhO1lBRTFELElBQUlELHlCQUF5QjtnQkFDM0JELFNBQVM7WUFDWDtZQUVBLE9BQU87UUFDVCxHQUFHVjtRQUVILE9BQU9VO0lBQ1Q7SUFFQSxPQUFPRywyQ0FBMkNDLEtBQUssRUFBRUMsUUFBUSxFQUFFQyxVQUFVLEVBQUVDLE9BQU8sRUFBRUMsVUFBVSxFQUFFO1FBQ2xHLElBQUlBLGVBQWVDLFdBQVc7WUFDNUJELGFBQWFELFNBQVMsR0FBRztZQUV6QkEsVUFBVUQsWUFBWSxHQUFHO1lBRXpCQSxhQUFhRCxVQUFXLEdBQUc7WUFFM0JBLFdBQVdELE9BQU8sR0FBRztZQUVyQkEsUUFBUXBCO1FBQ1Y7UUFFQSxNQUFNMEIsaUJBQWlCdkIsK0JBQWUsQ0FBQ2dCLDBDQUEwQyxDQUFDQyxPQUFPQyxVQUFVQyxZQUFZQyxTQUFTQztRQUV4SCxPQUFPRTtJQUNUO0FBQ0YifQ==
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL2JpbmRpbmcuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IE5vblRlcm1pbmFsTm9kZSB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcblxuaW1wb3J0IHsgVFlQRV9SVUxFX05BTUUgfSBmcm9tIFwiLi4vcnVsZU5hbWVzXCI7XG5pbXBvcnQgeyBOQU1FX1RPS0VOX1RZUEUgfSBmcm9tIFwiLi4vdG9rZW5UeXBlc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBCaW5kaW5nTm9kZSBleHRlbmRzIE5vblRlcm1pbmFsTm9kZSB7XG4gIGlzRWxpZGVkKCkge1xuICAgIGxldCBlbGlkZWQgPSBmYWxzZTtcblxuICAgIGNvbnN0IHRva2VuVHlwZSA9IG51bGxcblxuICAgIHRoaXMuc29tZVRlcm1pbmFsTm9kZSgodGVybWluYWxOb2RlKSA9PiB7XG4gICAgICBjb25zdCB0ZXJtaW5hbE5vZGVFcHNpbG9uTm9kZSA9IHRlcm1pbmFsTm9kZS5pc0Vwc2lsb25Ob2RlKCk7XG5cbiAgICAgIGlmICh0ZXJtaW5hbE5vZGVFcHNpbG9uTm9kZSkge1xuICAgICAgICBlbGlkZWQgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9LCB0b2tlblR5cGUpO1xuXG4gICAgcmV0dXJuIGVsaWRlZDtcbiAgfVxuXG4gIGdldE5hbWUoKSB7XG4gICAgbGV0IG5hbWUgPSBudWxsO1xuXG4gICAgY29uc3QgdG9rZW5UeXBlID0gTkFNRV9UT0tFTl9UWVBFO1xuXG4gICAgdGhpcy5zb21lVGVybWluYWxOb2RlKCh0ZXJtaW5hbE5vZGUpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRlbnQgPSB0ZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpO1xuXG4gICAgICBuYW1lID0gY29udGVudDsgLy9cblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSwgdG9rZW5UeXBlKTtcblxuICAgIHJldHVybiBuYW1lO1xuICB9XG5cbiAgZ2V0VHlwZU5vZGUoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBUWVBFX1JVTEVfTkFNRSxcbiAgICAgICAgICB0eXBlTm9kZSA9IHRoaXMuZ2V0Tm9kZUJ5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIHR5cGVOb2RlO1xuICB9XG5cbiAgc3RhdGljIGZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShDbGFzcywgcnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpIHtcbiAgICBpZiAocHJlY2VkZW5jZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBwcmVjZWRlbmNlID0gb3BhY2l0eTsgLy8vXG5cbiAgICAgIG9wYWNpdHkgPSBjaGlsZE5vZGVzOyAvLy9cblxuICAgICAgY2hpbGROb2RlcyA9IHJ1bGVOYW1lOyAgLy8vXG5cbiAgICAgIHJ1bGVOYW1lID0gQ2xhc3M7IC8vL1xuXG4gICAgICBDbGFzcyA9IEJpbmRpbmdOb2RlO1xuICAgIH1cblxuICAgIGNvbnN0IHBhcmFtZXRlcnNOb2RlID0gTm9uVGVybWluYWxOb2RlLmZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShDbGFzcywgcnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpO1xuXG4gICAgcmV0dXJuIHBhcmFtZXRlcnNOb2RlO1xuICB9XG59XG4iXSwibmFtZXMiOlsiQmluZGluZ05vZGUiLCJOb25UZXJtaW5hbE5vZGUiLCJpc0VsaWRlZCIsImVsaWRlZCIsInRva2VuVHlwZSIsInNvbWVUZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGUiLCJ0ZXJtaW5hbE5vZGVFcHNpbG9uTm9kZSIsImlzRXBzaWxvbk5vZGUiLCJnZXROYW1lIiwibmFtZSIsIk5BTUVfVE9LRU5fVFlQRSIsImNvbnRlbnQiLCJnZXRDb250ZW50IiwiZ2V0VHlwZU5vZGUiLCJydWxlTmFtZSIsIlRZUEVfUlVMRV9OQU1FIiwidHlwZU5vZGUiLCJnZXROb2RlQnlSdWxlTmFtZSIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZSIsIkNsYXNzIiwiY2hpbGROb2RlcyIsIm9wYWNpdHkiLCJwcmVjZWRlbmNlIiwidW5kZWZpbmVkIiwicGFyYW1ldGVyc05vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQU9BOzs7ZUFBcUJBOzs7Z0NBTFc7MkJBRUQ7NEJBQ0M7QUFFakIsTUFBTUEsb0JBQW9CQywrQkFBZTtJQUN0REMsV0FBVztRQUNULElBQUlDLFNBQVM7UUFFYixNQUFNQyxZQUFZO1FBRWxCLElBQUksQ0FBQ0MsZ0JBQWdCLENBQUMsQ0FBQ0M7WUFDckIsTUFBTUMsMEJBQTBCRCxhQUFhRSxhQUFhO1lBRTFELElBQUlELHlCQUF5QjtnQkFDM0JKLFNBQVM7WUFDWDtZQUVBLE9BQU87UUFDVCxHQUFHQztRQUVILE9BQU9EO0lBQ1Q7SUFFQU0sVUFBVTtRQUNSLElBQUlDLE9BQU87UUFFWCxNQUFNTixZQUFZTywyQkFBZTtRQUVqQyxJQUFJLENBQUNOLGdCQUFnQixDQUFDLENBQUNDO1lBQ3JCLE1BQU1NLFVBQVVOLGFBQWFPLFVBQVU7WUFFdkNILE9BQU9FLFNBQVMsRUFBRTtZQUVsQixPQUFPO1FBQ1QsR0FBR1I7UUFFSCxPQUFPTTtJQUNUO0lBRUFJLGNBQWM7UUFDWixNQUFNQyxXQUFXQyx5QkFBYyxFQUN6QkMsV0FBVyxJQUFJLENBQUNDLGlCQUFpQixDQUFDSDtRQUV4QyxPQUFPRTtJQUNUO0lBRUEsT0FBT0UsMkNBQTJDQyxLQUFLLEVBQUVMLFFBQVEsRUFBRU0sVUFBVSxFQUFFQyxPQUFPLEVBQUVDLFVBQVUsRUFBRTtRQUNsRyxJQUFJQSxlQUFlQyxXQUFXO1lBQzVCRCxhQUFhRCxTQUFTLEdBQUc7WUFFekJBLFVBQVVELFlBQVksR0FBRztZQUV6QkEsYUFBYU4sVUFBVyxHQUFHO1lBRTNCQSxXQUFXSyxPQUFPLEdBQUc7WUFFckJBLFFBQVFwQjtRQUNWO1FBRUEsTUFBTXlCLGlCQUFpQnhCLCtCQUFlLENBQUNrQiwwQ0FBMEMsQ0FBQ0MsT0FBT0wsVUFBVU0sWUFBWUMsU0FBU0M7UUFFeEgsT0FBT0U7SUFDVDtBQUNGIn0=
@@ -9,7 +9,6 @@ Object.defineProperty(exports, "default", {
9
9
  }
10
10
  });
11
11
  const _declaration = /*#__PURE__*/ _interop_require_default(require("../../node/declaration"));
12
- const _tokenTypes = require("../../tokenTypes");
13
12
  const _ruleNames = require("../../ruleNames");
14
13
  function _interop_require_default(obj) {
15
14
  return obj && obj.__esModule ? obj : {
@@ -17,14 +16,9 @@ function _interop_require_default(obj) {
17
16
  };
18
17
  }
19
18
  class ProcedureDeclarationNode extends _declaration.default {
20
- getType() {
21
- let type;
22
- const tokenType = _tokenTypes.TYPE_TOKEN_TYPE;
23
- this.someTerminalNode((terminalNode)=>{
24
- const content = terminalNode.getContent();
25
- type = content; ///
26
- }, tokenType);
27
- return type;
19
+ getTypeNode() {
20
+ const ruleName = _ruleNames.TYPE_RULE_NAME, labelNode = this.getNodeByRuleName(ruleName);
21
+ return labelNode;
28
22
  }
29
23
  getLabelNode() {
30
24
  const ruleName = _ruleNames.LABEL_RULE_NAME, labelNode = this.getNodeByRuleName(ruleName);
@@ -43,4 +37,4 @@ class ProcedureDeclarationNode extends _declaration.default {
43
37
  }
44
38
  }
45
39
 
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2RlL2RlY2xhcmF0aW9uL3Byb2NlZHVyZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IERlY2xhcmF0aW9uTm9kZSBmcm9tIFwiLi4vLi4vbm9kZS9kZWNsYXJhdGlvblwiO1xuXG5pbXBvcnQgeyBUWVBFX1RPS0VOX1RZUEUgfSBmcm9tIFwiLi4vLi4vdG9rZW5UeXBlc1wiO1xuaW1wb3J0IHsgTEFCRUxfUlVMRV9OQU1FLCBQQVJBTUVURVJTX1JVTEVfTkFNRSwgUkVUVVJOX0JMT0NLX1JVTEVfTkFNRSB9IGZyb20gXCIuLi8uLi9ydWxlTmFtZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUHJvY2VkdXJlRGVjbGFyYXRpb25Ob2RlIGV4dGVuZHMgRGVjbGFyYXRpb25Ob2RlIHtcbiAgZ2V0VHlwZSgpIHtcbiAgICBsZXQgdHlwZTtcblxuICAgIGNvbnN0IHRva2VuVHlwZSA9IFRZUEVfVE9LRU5fVFlQRTtcblxuICAgIHRoaXMuc29tZVRlcm1pbmFsTm9kZSgodGVybWluYWxOb2RlKSA9PiB7XG4gICAgICBjb25zdCBjb250ZW50ID0gdGVybWluYWxOb2RlLmdldENvbnRlbnQoKTtcblxuICAgICAgdHlwZSA9IGNvbnRlbnQ7ICAvLy9cbiAgICB9LCB0b2tlblR5cGUpO1xuXG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cblxuICBnZXRMYWJlbE5vZGUoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBMQUJFTF9SVUxFX05BTUUsXG4gICAgICAgICAgbGFiZWxOb2RlID0gdGhpcy5nZXROb2RlQnlSdWxlTmFtZShydWxlTmFtZSk7XG5cbiAgICByZXR1cm4gbGFiZWxOb2RlO1xuICB9XG5cbiAgZ2V0UGFyYW1ldGVyc05vZGUoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBQQVJBTUVURVJTX1JVTEVfTkFNRSxcbiAgICAgICAgICBwYXJhbWV0ZXJzTm9kZSA9IHRoaXMuZ2V0Tm9kZUJ5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIHBhcmFtZXRlcnNOb2RlO1xuICB9XG5cbiAgZ2V0UmV0dXJuQmxvY2tOb2RlKCkge1xuICAgIGNvbnN0IHJ1bGVOYW1lID0gUkVUVVJOX0JMT0NLX1JVTEVfTkFNRSxcbiAgICAgICAgICByZXR1cm5CbG9ja05vZGUgPSB0aGlzLmdldE5vZGVCeVJ1bGVOYW1lKHJ1bGVOYW1lKTtcblxuICAgIHJldHVybiByZXR1cm5CbG9ja05vZGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlKHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBwcmVjZWRlbmNlKSB7IHJldHVybiBEZWNsYXJhdGlvbk5vZGUuZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlKFByb2NlZHVyZURlY2xhcmF0aW9uTm9kZSwgcnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpOyB9XG59XG4iXSwibmFtZXMiOlsiUHJvY2VkdXJlRGVjbGFyYXRpb25Ob2RlIiwiRGVjbGFyYXRpb25Ob2RlIiwiZ2V0VHlwZSIsInR5cGUiLCJ0b2tlblR5cGUiLCJUWVBFX1RPS0VOX1RZUEUiLCJzb21lVGVybWluYWxOb2RlIiwidGVybWluYWxOb2RlIiwiY29udGVudCIsImdldENvbnRlbnQiLCJnZXRMYWJlbE5vZGUiLCJydWxlTmFtZSIsIkxBQkVMX1JVTEVfTkFNRSIsImxhYmVsTm9kZSIsImdldE5vZGVCeVJ1bGVOYW1lIiwiZ2V0UGFyYW1ldGVyc05vZGUiLCJQQVJBTUVURVJTX1JVTEVfTkFNRSIsInBhcmFtZXRlcnNOb2RlIiwiZ2V0UmV0dXJuQmxvY2tOb2RlIiwiUkVUVVJOX0JMT0NLX1JVTEVfTkFNRSIsInJldHVybkJsb2NrTm9kZSIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZSIsImNoaWxkTm9kZXMiLCJvcGFjaXR5IiwicHJlY2VkZW5jZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBT0E7OztlQUFxQkE7OztvRUFMTzs0QkFFSTsyQkFDOEM7Ozs7OztBQUUvRCxNQUFNQSxpQ0FBaUNDLG9CQUFlO0lBQ25FQyxVQUFVO1FBQ1IsSUFBSUM7UUFFSixNQUFNQyxZQUFZQywyQkFBZTtRQUVqQyxJQUFJLENBQUNDLGdCQUFnQixDQUFDLENBQUNDO1lBQ3JCLE1BQU1DLFVBQVVELGFBQWFFLFVBQVU7WUFFdkNOLE9BQU9LLFNBQVUsR0FBRztRQUN0QixHQUFHSjtRQUVILE9BQU9EO0lBQ1Q7SUFFQU8sZUFBZTtRQUNiLE1BQU1DLFdBQVdDLDBCQUFlLEVBQzFCQyxZQUFZLElBQUksQ0FBQ0MsaUJBQWlCLENBQUNIO1FBRXpDLE9BQU9FO0lBQ1Q7SUFFQUUsb0JBQW9CO1FBQ2xCLE1BQU1KLFdBQVdLLCtCQUFvQixFQUMvQkMsaUJBQWlCLElBQUksQ0FBQ0gsaUJBQWlCLENBQUNIO1FBRTlDLE9BQU9NO0lBQ1Q7SUFFQUMscUJBQXFCO1FBQ25CLE1BQU1QLFdBQVdRLGlDQUFzQixFQUNqQ0Msa0JBQWtCLElBQUksQ0FBQ04saUJBQWlCLENBQUNIO1FBRS9DLE9BQU9TO0lBQ1Q7SUFFQSxPQUFPQywyQ0FBMkNWLFFBQVEsRUFBRVcsVUFBVSxFQUFFQyxPQUFPLEVBQUVDLFVBQVUsRUFBRTtRQUFFLE9BQU92QixvQkFBZSxDQUFDb0IsMENBQTBDLENBQUNyQiwwQkFBMEJXLFVBQVVXLFlBQVlDLFNBQVNDO0lBQWE7QUFDek8ifQ==
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2RlL2RlY2xhcmF0aW9uL3Byb2NlZHVyZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IERlY2xhcmF0aW9uTm9kZSBmcm9tIFwiLi4vLi4vbm9kZS9kZWNsYXJhdGlvblwiO1xuXG5pbXBvcnQgeyBUWVBFX1JVTEVfTkFNRSwgTEFCRUxfUlVMRV9OQU1FLCBQQVJBTUVURVJTX1JVTEVfTkFNRSwgUkVUVVJOX0JMT0NLX1JVTEVfTkFNRSB9IGZyb20gXCIuLi8uLi9ydWxlTmFtZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUHJvY2VkdXJlRGVjbGFyYXRpb25Ob2RlIGV4dGVuZHMgRGVjbGFyYXRpb25Ob2RlIHtcbiAgZ2V0VHlwZU5vZGUoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBUWVBFX1JVTEVfTkFNRSxcbiAgICAgICAgICBsYWJlbE5vZGUgPSB0aGlzLmdldE5vZGVCeVJ1bGVOYW1lKHJ1bGVOYW1lKTtcblxuICAgIHJldHVybiBsYWJlbE5vZGU7XG4gIH1cblxuICBnZXRMYWJlbE5vZGUoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBMQUJFTF9SVUxFX05BTUUsXG4gICAgICAgICAgbGFiZWxOb2RlID0gdGhpcy5nZXROb2RlQnlSdWxlTmFtZShydWxlTmFtZSk7XG5cbiAgICByZXR1cm4gbGFiZWxOb2RlO1xuICB9XG5cbiAgZ2V0UGFyYW1ldGVyc05vZGUoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBQQVJBTUVURVJTX1JVTEVfTkFNRSxcbiAgICAgICAgICBwYXJhbWV0ZXJzTm9kZSA9IHRoaXMuZ2V0Tm9kZUJ5UnVsZU5hbWUocnVsZU5hbWUpO1xuXG4gICAgcmV0dXJuIHBhcmFtZXRlcnNOb2RlO1xuICB9XG5cbiAgZ2V0UmV0dXJuQmxvY2tOb2RlKCkge1xuICAgIGNvbnN0IHJ1bGVOYW1lID0gUkVUVVJOX0JMT0NLX1JVTEVfTkFNRSxcbiAgICAgICAgICByZXR1cm5CbG9ja05vZGUgPSB0aGlzLmdldE5vZGVCeVJ1bGVOYW1lKHJ1bGVOYW1lKTtcblxuICAgIHJldHVybiByZXR1cm5CbG9ja05vZGU7XG4gIH1cblxuICBzdGF0aWMgZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlKHJ1bGVOYW1lLCBjaGlsZE5vZGVzLCBvcGFjaXR5LCBwcmVjZWRlbmNlKSB7IHJldHVybiBEZWNsYXJhdGlvbk5vZGUuZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlKFByb2NlZHVyZURlY2xhcmF0aW9uTm9kZSwgcnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpOyB9XG59XG4iXSwibmFtZXMiOlsiUHJvY2VkdXJlRGVjbGFyYXRpb25Ob2RlIiwiRGVjbGFyYXRpb25Ob2RlIiwiZ2V0VHlwZU5vZGUiLCJydWxlTmFtZSIsIlRZUEVfUlVMRV9OQU1FIiwibGFiZWxOb2RlIiwiZ2V0Tm9kZUJ5UnVsZU5hbWUiLCJnZXRMYWJlbE5vZGUiLCJMQUJFTF9SVUxFX05BTUUiLCJnZXRQYXJhbWV0ZXJzTm9kZSIsIlBBUkFNRVRFUlNfUlVMRV9OQU1FIiwicGFyYW1ldGVyc05vZGUiLCJnZXRSZXR1cm5CbG9ja05vZGUiLCJSRVRVUk5fQkxPQ0tfUlVMRV9OQU1FIiwicmV0dXJuQmxvY2tOb2RlIiwiZnJvbVJ1bGVOYW1lQ2hpbGROb2Rlc09wYWNpdHlBbmRQcmVjZWRlbmNlIiwiY2hpbGROb2RlcyIsIm9wYWNpdHkiLCJwcmVjZWRlbmNlIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFNQTs7O2VBQXFCQTs7O29FQUpPOzJCQUVrRTs7Ozs7O0FBRS9FLE1BQU1BLGlDQUFpQ0Msb0JBQWU7SUFDbkVDLGNBQWM7UUFDWixNQUFNQyxXQUFXQyx5QkFBYyxFQUN6QkMsWUFBWSxJQUFJLENBQUNDLGlCQUFpQixDQUFDSDtRQUV6QyxPQUFPRTtJQUNUO0lBRUFFLGVBQWU7UUFDYixNQUFNSixXQUFXSywwQkFBZSxFQUMxQkgsWUFBWSxJQUFJLENBQUNDLGlCQUFpQixDQUFDSDtRQUV6QyxPQUFPRTtJQUNUO0lBRUFJLG9CQUFvQjtRQUNsQixNQUFNTixXQUFXTywrQkFBb0IsRUFDL0JDLGlCQUFpQixJQUFJLENBQUNMLGlCQUFpQixDQUFDSDtRQUU5QyxPQUFPUTtJQUNUO0lBRUFDLHFCQUFxQjtRQUNuQixNQUFNVCxXQUFXVSxpQ0FBc0IsRUFDakNDLGtCQUFrQixJQUFJLENBQUNSLGlCQUFpQixDQUFDSDtRQUUvQyxPQUFPVztJQUNUO0lBRUEsT0FBT0MsMkNBQTJDWixRQUFRLEVBQUVhLFVBQVUsRUFBRUMsT0FBTyxFQUFFQyxVQUFVLEVBQUU7UUFBRSxPQUFPakIsb0JBQWUsQ0FBQ2MsMENBQTBDLENBQUNmLDBCQUEwQkcsVUFBVWEsWUFBWUMsU0FBU0M7SUFBYTtBQUN6TyJ9
@@ -9,6 +9,7 @@ Object.defineProperty(exports, "default", {
9
9
  }
10
10
  });
11
11
  const _occamlanguages = require("occam-languages");
12
+ const _ruleNames = require("../ruleNames");
12
13
  const _tokenTypes = require("../tokenTypes");
13
14
  class ParameterNode extends _occamlanguages.NonTerminalNode {
14
15
  getName() {
@@ -21,19 +22,13 @@ class ParameterNode extends _occamlanguages.NonTerminalNode {
21
22
  }, tokenType);
22
23
  return name;
23
24
  }
24
- getType() {
25
- let type = null;
26
- const tokenType = _tokenTypes.TYPE_TOKEN_TYPE;
27
- this.someTerminalNode((terminalNode)=>{
28
- const content = terminalNode.getContent();
29
- type = content; //
30
- return true;
31
- }, tokenType);
32
- return type;
25
+ getTypeNode() {
26
+ const ruleName = _ruleNames.TYPE_RULE_NAME, typeNode = this.getNodeByRuleName(ruleName);
27
+ return typeNode;
33
28
  }
34
29
  static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) {
35
30
  return _occamlanguages.NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(ParameterNode, ruleName, childNodes, opacity, precedence);
36
31
  }
37
32
  }
38
33
 
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL3BhcmFtZXRlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgTm9uVGVybWluYWxOb2RlIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgeyBUWVBFX1RPS0VOX1RZUEUsIE5BTUVfVE9LRU5fVFlQRSB9IGZyb20gXCIuLi90b2tlblR5cGVzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFBhcmFtZXRlck5vZGUgZXh0ZW5kcyBOb25UZXJtaW5hbE5vZGUge1xuICBnZXROYW1lKCkge1xuICAgIGxldCBuYW1lID0gbnVsbDtcblxuICAgIGNvbnN0IHRva2VuVHlwZSA9IE5BTUVfVE9LRU5fVFlQRTtcblxuICAgIHRoaXMuc29tZVRlcm1pbmFsTm9kZSgodGVybWluYWxOb2RlKSA9PiB7XG4gICAgICBjb25zdCBjb250ZW50ID0gdGVybWluYWxOb2RlLmdldENvbnRlbnQoKTtcblxuICAgICAgbmFtZSA9IGNvbnRlbnQ7IC8vXG5cbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0sIHRva2VuVHlwZSk7XG5cbiAgICByZXR1cm4gbmFtZTtcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgbGV0IHR5cGUgPSBudWxsO1xuXG4gICAgY29uc3QgdG9rZW5UeXBlID0gVFlQRV9UT0tFTl9UWVBFO1xuXG4gICAgdGhpcy5zb21lVGVybWluYWxOb2RlKCh0ZXJtaW5hbE5vZGUpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRlbnQgPSB0ZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpO1xuXG4gICAgICB0eXBlID0gY29udGVudDsgLy9cblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSwgdG9rZW5UeXBlKTtcblxuICAgIHJldHVybiB0eXBlO1xuICB9XG5cbiAgc3RhdGljIGZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgcHJlY2VkZW5jZSkgeyByZXR1cm4gTm9uVGVybWluYWxOb2RlLmZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZShQYXJhbWV0ZXJOb2RlLCBydWxlTmFtZSwgY2hpbGROb2Rlcywgb3BhY2l0eSwgcHJlY2VkZW5jZSk7IH1cbn1cbiJdLCJuYW1lcyI6WyJQYXJhbWV0ZXJOb2RlIiwiTm9uVGVybWluYWxOb2RlIiwiZ2V0TmFtZSIsIm5hbWUiLCJ0b2tlblR5cGUiLCJOQU1FX1RPS0VOX1RZUEUiLCJzb21lVGVybWluYWxOb2RlIiwidGVybWluYWxOb2RlIiwiY29udGVudCIsImdldENvbnRlbnQiLCJnZXRUeXBlIiwidHlwZSIsIlRZUEVfVE9LRU5fVFlQRSIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZSIsInJ1bGVOYW1lIiwiY2hpbGROb2RlcyIsIm9wYWNpdHkiLCJwcmVjZWRlbmNlIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFNQTs7O2VBQXFCQTs7O2dDQUpXOzRCQUVpQjtBQUVsQyxNQUFNQSxzQkFBc0JDLCtCQUFlO0lBQ3hEQyxVQUFVO1FBQ1IsSUFBSUMsT0FBTztRQUVYLE1BQU1DLFlBQVlDLDJCQUFlO1FBRWpDLElBQUksQ0FBQ0MsZ0JBQWdCLENBQUMsQ0FBQ0M7WUFDckIsTUFBTUMsVUFBVUQsYUFBYUUsVUFBVTtZQUV2Q04sT0FBT0ssU0FBUyxFQUFFO1lBRWxCLE9BQU87UUFDVCxHQUFHSjtRQUVILE9BQU9EO0lBQ1Q7SUFFQU8sVUFBVTtRQUNSLElBQUlDLE9BQU87UUFFWCxNQUFNUCxZQUFZUSwyQkFBZTtRQUVqQyxJQUFJLENBQUNOLGdCQUFnQixDQUFDLENBQUNDO1lBQ3JCLE1BQU1DLFVBQVVELGFBQWFFLFVBQVU7WUFFdkNFLE9BQU9ILFNBQVMsRUFBRTtZQUVsQixPQUFPO1FBQ1QsR0FBR0o7UUFFSCxPQUFPTztJQUNUO0lBRUEsT0FBT0UsMkNBQTJDQyxRQUFRLEVBQUVDLFVBQVUsRUFBRUMsT0FBTyxFQUFFQyxVQUFVLEVBQUU7UUFBRSxPQUFPaEIsK0JBQWUsQ0FBQ1ksMENBQTBDLENBQUNiLGVBQWVjLFVBQVVDLFlBQVlDLFNBQVNDO0lBQWE7QUFDOU4ifQ==
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2RlL3BhcmFtZXRlci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgTm9uVGVybWluYWxOb2RlIH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgeyBUWVBFX1JVTEVfTkFNRSB9IGZyb20gXCIuLi9ydWxlTmFtZXNcIjtcbmltcG9ydCB7IE5BTUVfVE9LRU5fVFlQRSB9IGZyb20gXCIuLi90b2tlblR5cGVzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFBhcmFtZXRlck5vZGUgZXh0ZW5kcyBOb25UZXJtaW5hbE5vZGUge1xuICBnZXROYW1lKCkge1xuICAgIGxldCBuYW1lID0gbnVsbDtcblxuICAgIGNvbnN0IHRva2VuVHlwZSA9IE5BTUVfVE9LRU5fVFlQRTtcblxuICAgIHRoaXMuc29tZVRlcm1pbmFsTm9kZSgodGVybWluYWxOb2RlKSA9PiB7XG4gICAgICBjb25zdCBjb250ZW50ID0gdGVybWluYWxOb2RlLmdldENvbnRlbnQoKTtcblxuICAgICAgbmFtZSA9IGNvbnRlbnQ7IC8vXG5cbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0sIHRva2VuVHlwZSk7XG5cbiAgICByZXR1cm4gbmFtZTtcbiAgfVxuXG4gIGdldFR5cGVOb2RlKCkge1xuICAgIGNvbnN0IHJ1bGVOYW1lID0gVFlQRV9SVUxFX05BTUUsXG4gICAgICAgICAgdHlwZU5vZGUgPSB0aGlzLmdldE5vZGVCeVJ1bGVOYW1lKHJ1bGVOYW1lKTtcblxuICAgIHJldHVybiB0eXBlTm9kZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UocnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpIHsgcmV0dXJuIE5vblRlcm1pbmFsTm9kZS5mcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UoUGFyYW1ldGVyTm9kZSwgcnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpOyB9XG59XG4iXSwibmFtZXMiOlsiUGFyYW1ldGVyTm9kZSIsIk5vblRlcm1pbmFsTm9kZSIsImdldE5hbWUiLCJuYW1lIiwidG9rZW5UeXBlIiwiTkFNRV9UT0tFTl9UWVBFIiwic29tZVRlcm1pbmFsTm9kZSIsInRlcm1pbmFsTm9kZSIsImNvbnRlbnQiLCJnZXRDb250ZW50IiwiZ2V0VHlwZU5vZGUiLCJydWxlTmFtZSIsIlRZUEVfUlVMRV9OQU1FIiwidHlwZU5vZGUiLCJnZXROb2RlQnlSdWxlTmFtZSIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZSIsImNoaWxkTm9kZXMiLCJvcGFjaXR5IiwicHJlY2VkZW5jZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBT0E7OztlQUFxQkE7OztnQ0FMVzsyQkFFRDs0QkFDQztBQUVqQixNQUFNQSxzQkFBc0JDLCtCQUFlO0lBQ3hEQyxVQUFVO1FBQ1IsSUFBSUMsT0FBTztRQUVYLE1BQU1DLFlBQVlDLDJCQUFlO1FBRWpDLElBQUksQ0FBQ0MsZ0JBQWdCLENBQUMsQ0FBQ0M7WUFDckIsTUFBTUMsVUFBVUQsYUFBYUUsVUFBVTtZQUV2Q04sT0FBT0ssU0FBUyxFQUFFO1lBRWxCLE9BQU87UUFDVCxHQUFHSjtRQUVILE9BQU9EO0lBQ1Q7SUFFQU8sY0FBYztRQUNaLE1BQU1DLFdBQVdDLHlCQUFjLEVBQ3pCQyxXQUFXLElBQUksQ0FBQ0MsaUJBQWlCLENBQUNIO1FBRXhDLE9BQU9FO0lBQ1Q7SUFFQSxPQUFPRSwyQ0FBMkNKLFFBQVEsRUFBRUssVUFBVSxFQUFFQyxPQUFPLEVBQUVDLFVBQVUsRUFBRTtRQUFFLE9BQU9qQiwrQkFBZSxDQUFDYywwQ0FBMEMsQ0FBQ2YsZUFBZVcsVUFBVUssWUFBWUMsU0FBU0M7SUFBYTtBQUM5TiJ9