occam-verify-cli 0.0.1268 → 0.0.1270
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.
|
@@ -112,12 +112,15 @@ var _default = (0, _dom.domAssigned)((_ComplexTypeDeclaration = /*#__PURE__*/ fu
|
|
|
112
112
|
key: "verify",
|
|
113
113
|
value: function verify() {
|
|
114
114
|
var verified = false;
|
|
115
|
-
var complexTypeDeclarationString = this.getString();
|
|
115
|
+
var complexTypeDeclarationString = this.getString();
|
|
116
116
|
this.fileContext.trace("Verifying the '".concat(complexTypeDeclarationString, "' complex type declaration..."));
|
|
117
117
|
var typeVerified = this.verifyType(this.type);
|
|
118
118
|
if (typeVerified) {
|
|
119
|
-
this.
|
|
120
|
-
|
|
119
|
+
var properties = this.type.getProperties(), propertiesVerified = this.verifyProperties(properties);
|
|
120
|
+
if (propertiesVerified) {
|
|
121
|
+
this.fileContext.addType(this.type);
|
|
122
|
+
verified = true;
|
|
123
|
+
}
|
|
121
124
|
}
|
|
122
125
|
if (verified) {
|
|
123
126
|
this.fileContext.debug("...verified the '".concat(complexTypeDeclarationString, "' complex type declaration."));
|
|
@@ -133,8 +136,8 @@ var _default = (0, _dom.domAssigned)((_ComplexTypeDeclaration = /*#__PURE__*/ fu
|
|
|
133
136
|
this.fileContext.trace("Verifying the '".concat(typeString, "' type..."));
|
|
134
137
|
var typeName = type.getName(), typePresent = this.fileContext.isTypePresentByTypeName(typeName);
|
|
135
138
|
if (typePresent) {
|
|
136
|
-
var typeString1 =
|
|
137
|
-
this.fileContext.debug("The
|
|
139
|
+
var typeString1 = type.getString();
|
|
140
|
+
this.fileContext.debug("The '".concat(typeString1, "' type is already present."));
|
|
138
141
|
} else {
|
|
139
142
|
var superType;
|
|
140
143
|
superType = type.getSuperType();
|
|
@@ -153,6 +156,46 @@ var _default = (0, _dom.domAssigned)((_ComplexTypeDeclaration = /*#__PURE__*/ fu
|
|
|
153
156
|
}
|
|
154
157
|
return typeVerified;
|
|
155
158
|
}
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
key: "verifyProperties",
|
|
162
|
+
value: function verifyProperties(properties) {
|
|
163
|
+
var _this = this;
|
|
164
|
+
var propertiesVerified = properties.every(function(property) {
|
|
165
|
+
var propertyVerified = _this.verifyProperty(property, properties);
|
|
166
|
+
if (propertyVerified) {
|
|
167
|
+
return true;
|
|
168
|
+
}
|
|
169
|
+
});
|
|
170
|
+
return propertiesVerified;
|
|
171
|
+
}
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
key: "verifyProperty",
|
|
175
|
+
value: function verifyProperty(property, properties) {
|
|
176
|
+
var propertyVerified = false;
|
|
177
|
+
var propertyString = property.getString();
|
|
178
|
+
this.fileContext.trace("Verifying the '".concat(propertyString, "' property..."));
|
|
179
|
+
var propertyName = property.getName(), count = properties.reduce(function(count, property) {
|
|
180
|
+
var propertyNameMatches = property.matchPropertyName(propertyName);
|
|
181
|
+
if (propertyNameMatches) {
|
|
182
|
+
count++;
|
|
183
|
+
}
|
|
184
|
+
return count;
|
|
185
|
+
}, 0);
|
|
186
|
+
if (count > 1) {
|
|
187
|
+
this.fileContext.debug("The '".concat(propertyString, "' property appears more than once."));
|
|
188
|
+
} else {
|
|
189
|
+
var type = property.getType(), typeVerified = this.verifyType(type);
|
|
190
|
+
if (typeVerified) {
|
|
191
|
+
propertyVerified = true;
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
if (propertyVerified) {
|
|
195
|
+
this.fileContext.debug("verified the '".concat(propertyString, "' property."));
|
|
196
|
+
}
|
|
197
|
+
return propertyVerified;
|
|
198
|
+
}
|
|
156
199
|
}
|
|
157
200
|
], [
|
|
158
201
|
{
|
|
@@ -166,4 +209,4 @@ var _default = (0, _dom.domAssigned)((_ComplexTypeDeclaration = /*#__PURE__*/ fu
|
|
|
166
209
|
return ComplexTypeDeclaration;
|
|
167
210
|
}(), _define_property(_ComplexTypeDeclaration, "name", "ComplexTypeDeclaration"), _ComplexTypeDeclaration));
|
|
168
211
|
|
|
169
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
212
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kb20vZGVjbGFyYXRpb24vY29tcGxleFR5cGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBkb20gZnJvbSBcIi4uLy4uL2RvbVwiO1xuXG5pbXBvcnQgeyBkb21Bc3NpZ25lZCB9IGZyb20gXCIuLi8uLi9kb21cIjtcblxuZXhwb3J0IGRlZmF1bHQgZG9tQXNzaWduZWQoY2xhc3MgQ29tcGxleFR5cGVEZWNsYXJhdGlvbiB7XG4gIGNvbnN0cnVjdG9yKGZpbGVDb250ZXh0LCB0eXBlKSB7XG4gICAgdGhpcy5maWxlQ29udGV4dCA9IGZpbGVDb250ZXh0O1xuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gIH1cblxuICBnZXRGaWxlQ29udGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5maWxlQ29udGV4dDtcbiAgfVxuXG4gIGdldFR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIGdldFN0cmluZygpIHsgcmV0dXJuIHRoaXMudHlwZS5nZXRTdHJpbmcoKTsgfVxuXG4gIHZlcmlmeSgpIHtcbiAgICBsZXQgdmVyaWZpZWQgPSBmYWxzZTtcblxuICAgIGNvbnN0IGNvbXBsZXhUeXBlRGVjbGFyYXRpb25TdHJpbmcgPSB0aGlzLmdldFN0cmluZygpO1xuXG4gICAgdGhpcy5maWxlQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtjb21wbGV4VHlwZURlY2xhcmF0aW9uU3RyaW5nfScgY29tcGxleCB0eXBlIGRlY2xhcmF0aW9uLi4uYCk7XG5cbiAgICBjb25zdCB0eXBlVmVyaWZpZWQgPSB0aGlzLnZlcmlmeVR5cGUodGhpcy50eXBlKTtcblxuICAgIGlmICh0eXBlVmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IHByb3BlcnRpZXMgPSB0aGlzLnR5cGUuZ2V0UHJvcGVydGllcygpLFxuICAgICAgICAgICAgcHJvcGVydGllc1ZlcmlmaWVkID0gdGhpcy52ZXJpZnlQcm9wZXJ0aWVzKHByb3BlcnRpZXMpO1xuXG4gICAgICBpZiAocHJvcGVydGllc1ZlcmlmaWVkKSB7XG4gICAgICAgIHRoaXMuZmlsZUNvbnRleHQuYWRkVHlwZSh0aGlzLnR5cGUpO1xuXG4gICAgICAgIHZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodmVyaWZpZWQpIHtcbiAgICAgIHRoaXMuZmlsZUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtjb21wbGV4VHlwZURlY2xhcmF0aW9uU3RyaW5nfScgY29tcGxleCB0eXBlIGRlY2xhcmF0aW9uLmApO1xuICAgIH1cblxuICAgIHJldHVybiB2ZXJpZmllZDtcbiAgfVxuXG4gIHZlcmlmeVR5cGUodHlwZSkge1xuICAgIGxldCB0eXBlVmVyaWZpZWQgPSBmYWxzZTtcblxuICAgIGNvbnN0IHR5cGVTdHJpbmcgPSB0eXBlLmdldFN0cmluZygpOyAvLy9cblxuICAgIHRoaXMuZmlsZUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7dHlwZVN0cmluZ30nIHR5cGUuLi5gKTtcblxuICAgIGNvbnN0IHR5cGVOYW1lID0gdHlwZS5nZXROYW1lKCksXG4gICAgICAgICAgdHlwZVByZXNlbnQgPSB0aGlzLmZpbGVDb250ZXh0LmlzVHlwZVByZXNlbnRCeVR5cGVOYW1lKHR5cGVOYW1lKTtcblxuICAgIGlmICh0eXBlUHJlc2VudCkge1xuICAgICAgY29uc3QgdHlwZVN0cmluZyA9IHR5cGUuZ2V0U3RyaW5nKCk7XG5cbiAgICAgIHRoaXMuZmlsZUNvbnRleHQuZGVidWcoYFRoZSAnJHt0eXBlU3RyaW5nfScgdHlwZSBpcyBhbHJlYWR5IHByZXNlbnQuYCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCBzdXBlclR5cGU7XG5cbiAgICAgIHN1cGVyVHlwZSA9IHR5cGUuZ2V0U3VwZXJUeXBlKCk7XG5cbiAgICAgIGNvbnN0IHN1cGVyVHlwZU5hbWUgPSBzdXBlclR5cGUuZ2V0TmFtZSgpO1xuXG4gICAgICBzdXBlclR5cGUgPSB0aGlzLmZpbGVDb250ZXh0LmZpbmRUeXBlQnlUeXBlTmFtZShzdXBlclR5cGVOYW1lKTtcblxuICAgICAgaWYgKHN1cGVyVHlwZSA9PT0gbnVsbCkge1xuICAgICAgICBjb25zdCBzdXBlclR5cGVTdHJpbmcgPSBzdXBlclR5cGUuZ2V0U3RyaW5nKCk7XG5cbiAgICAgICAgdGhpcy5maWxlQ29udGV4dC5kZWJ1ZyhgVGhlIHN1cGVyLXR5cGUgJyR7c3VwZXJUeXBlU3RyaW5nfScgaXMgbm90IHByZXNlbnQuYCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0eXBlLnNldFN1cGVyVHlwZShzdXBlclR5cGUpO1xuXG4gICAgICAgIHR5cGVWZXJpZmllZCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHR5cGVWZXJpZmllZCkge1xuICAgICAgdGhpcy5maWxlQ29udGV4dC5kZWJ1ZyhgLi4udHlwZVZlcmlmaWVkIHRoZSAnJHt0eXBlU3RyaW5nfScgdHlwZS5gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHlwZVZlcmlmaWVkO1xuICB9XG5cbiAgdmVyaWZ5UHJvcGVydGllcyhwcm9wZXJ0aWVzKSB7XG4gICAgY29uc3QgcHJvcGVydGllc1ZlcmlmaWVkID0gcHJvcGVydGllcy5ldmVyeSgocHJvcGVydHkpID0+IHtcbiAgICAgIGNvbnN0IHByb3BlcnR5VmVyaWZpZWQgPSB0aGlzLnZlcmlmeVByb3BlcnR5KHByb3BlcnR5LCBwcm9wZXJ0aWVzKTtcblxuICAgICAgaWYgKHByb3BlcnR5VmVyaWZpZWQpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gcHJvcGVydGllc1ZlcmlmaWVkO1xuICB9XG5cbiAgdmVyaWZ5UHJvcGVydHkocHJvcGVydHksIHByb3BlcnRpZXMpIHtcbiAgICBsZXQgcHJvcGVydHlWZXJpZmllZCA9IGZhbHNlO1xuXG4gICAgY29uc3QgcHJvcGVydHlTdHJpbmcgPSBwcm9wZXJ0eS5nZXRTdHJpbmcoKTtcblxuICAgIHRoaXMuZmlsZUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7cHJvcGVydHlTdHJpbmd9JyBwcm9wZXJ0eS4uLmApO1xuXG4gICAgY29uc3QgcHJvcGVydHlOYW1lID0gcHJvcGVydHkuZ2V0TmFtZSgpLFxuICAgICAgICAgIGNvdW50ID0gcHJvcGVydGllcy5yZWR1Y2UoKGNvdW50LCBwcm9wZXJ0eSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcHJvcGVydHlOYW1lTWF0Y2hlcyA9IHByb3BlcnR5Lm1hdGNoUHJvcGVydHlOYW1lKHByb3BlcnR5TmFtZSk7XG5cbiAgICAgICAgICAgIGlmIChwcm9wZXJ0eU5hbWVNYXRjaGVzKSB7XG4gICAgICAgICAgICAgIGNvdW50Kys7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBjb3VudDtcbiAgICAgICAgICB9LCAwKTtcblxuICAgIGlmIChjb3VudCA+IDEpIHtcbiAgICAgIHRoaXMuZmlsZUNvbnRleHQuZGVidWcoYFRoZSAnJHtwcm9wZXJ0eVN0cmluZ30nIHByb3BlcnR5IGFwcGVhcnMgbW9yZSB0aGFuIG9uY2UuYCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHR5cGUgPSBwcm9wZXJ0eS5nZXRUeXBlKCksXG4gICAgICAgICAgICB0eXBlVmVyaWZpZWQgPSB0aGlzLnZlcmlmeVR5cGUodHlwZSk7XG5cbiAgICAgIGlmICh0eXBlVmVyaWZpZWQpIHtcbiAgICAgICAgcHJvcGVydHlWZXJpZmllZCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHByb3BlcnR5VmVyaWZpZWQpIHtcbiAgICAgIHRoaXMuZmlsZUNvbnRleHQuZGVidWcoYHZlcmlmaWVkIHRoZSAnJHtwcm9wZXJ0eVN0cmluZ30nIHByb3BlcnR5LmApO1xuICAgIH1cblxuICAgIHJldHVybiBwcm9wZXJ0eVZlcmlmaWVkO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIkNvbXBsZXhUeXBlRGVjbGFyYXRpb25cIjtcblxuICBzdGF0aWMgZnJvbUNvbXBsZXhUeXBlRGVjbGFyYXRpb25Ob2RlKGNvbXBsZXhUeXBlRGVjbGFyYXRpb25Ob2RlLCBmaWxlQ29udGV4dCkge1xuICAgIGNvbnN0IHsgVHlwZSB9ID0gZG9tLFxuICAgICAgICAgIHR5cGUgPSBUeXBlLmZyb21Db21wbGV4VHlwZURlY2xhcmF0aW9uTm9kZShjb21wbGV4VHlwZURlY2xhcmF0aW9uTm9kZSwgZmlsZUNvbnRleHQpLFxuICAgICAgICAgIGNvbXBsZXhUeXBlRGVjbGFyYXRpb24gPSBuZXcgQ29tcGxleFR5cGVEZWNsYXJhdGlvbihmaWxlQ29udGV4dCwgdHlwZSk7XG5cbiAgICByZXR1cm4gY29tcGxleFR5cGVEZWNsYXJhdGlvbjtcbiAgfVxufSk7XG4iXSwibmFtZXMiOlsiZG9tQXNzaWduZWQiLCJDb21wbGV4VHlwZURlY2xhcmF0aW9uIiwiZmlsZUNvbnRleHQiLCJ0eXBlIiwiZ2V0RmlsZUNvbnRleHQiLCJnZXRUeXBlIiwiZ2V0U3RyaW5nIiwidmVyaWZ5IiwidmVyaWZpZWQiLCJjb21wbGV4VHlwZURlY2xhcmF0aW9uU3RyaW5nIiwidHJhY2UiLCJ0eXBlVmVyaWZpZWQiLCJ2ZXJpZnlUeXBlIiwicHJvcGVydGllcyIsImdldFByb3BlcnRpZXMiLCJwcm9wZXJ0aWVzVmVyaWZpZWQiLCJ2ZXJpZnlQcm9wZXJ0aWVzIiwiYWRkVHlwZSIsImRlYnVnIiwidHlwZVN0cmluZyIsInR5cGVOYW1lIiwiZ2V0TmFtZSIsInR5cGVQcmVzZW50IiwiaXNUeXBlUHJlc2VudEJ5VHlwZU5hbWUiLCJzdXBlclR5cGUiLCJnZXRTdXBlclR5cGUiLCJzdXBlclR5cGVOYW1lIiwiZmluZFR5cGVCeVR5cGVOYW1lIiwic3VwZXJUeXBlU3RyaW5nIiwic2V0U3VwZXJUeXBlIiwiZXZlcnkiLCJwcm9wZXJ0eSIsInByb3BlcnR5VmVyaWZpZWQiLCJ2ZXJpZnlQcm9wZXJ0eSIsInByb3BlcnR5U3RyaW5nIiwicHJvcGVydHlOYW1lIiwiY291bnQiLCJyZWR1Y2UiLCJwcm9wZXJ0eU5hbWVNYXRjaGVzIiwibWF0Y2hQcm9wZXJ0eU5hbWUiLCJmcm9tQ29tcGxleFR5cGVEZWNsYXJhdGlvbk5vZGUiLCJjb21wbGV4VHlwZURlY2xhcmF0aW9uTm9kZSIsIlR5cGUiLCJkb20iLCJjb21wbGV4VHlwZURlY2xhcmF0aW9uIiwibmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBTUE7OztlQUFBOzs7MkRBSmdCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFJaEIsV0FBZUEsSUFBQUEsZ0JBQVcsMkNBQUM7YUFBTUMsdUJBQ25CQyxXQUFXLEVBQUVDLElBQUk7Z0NBREVGO1FBRTdCLElBQUksQ0FBQ0MsV0FBVyxHQUFHQTtRQUNuQixJQUFJLENBQUNDLElBQUksR0FBR0E7Ozs7WUFHZEMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDRixXQUFXO1lBQ3pCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLE9BQU8sSUFBSSxDQUFDRixJQUFJO1lBQ2xCOzs7WUFFQUcsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUFjLE9BQU8sSUFBSSxDQUFDSCxJQUFJLENBQUNHLFNBQVM7WUFBSTs7O1lBRTVDQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBSUMsV0FBVztnQkFFZixJQUFNQywrQkFBK0IsSUFBSSxDQUFDSCxTQUFTO2dCQUVuRCxJQUFJLENBQUNKLFdBQVcsQ0FBQ1EsS0FBSyxDQUFDLEFBQUMsa0JBQThDLE9BQTdCRCw4QkFBNkI7Z0JBRXRFLElBQU1FLGVBQWUsSUFBSSxDQUFDQyxVQUFVLENBQUMsSUFBSSxDQUFDVCxJQUFJO2dCQUU5QyxJQUFJUSxjQUFjO29CQUNoQixJQUFNRSxhQUFhLElBQUksQ0FBQ1YsSUFBSSxDQUFDVyxhQUFhLElBQ3BDQyxxQkFBcUIsSUFBSSxDQUFDQyxnQkFBZ0IsQ0FBQ0g7b0JBRWpELElBQUlFLG9CQUFvQjt3QkFDdEIsSUFBSSxDQUFDYixXQUFXLENBQUNlLE9BQU8sQ0FBQyxJQUFJLENBQUNkLElBQUk7d0JBRWxDSyxXQUFXO29CQUNiO2dCQUNGO2dCQUVBLElBQUlBLFVBQVU7b0JBQ1osSUFBSSxDQUFDTixXQUFXLENBQUNnQixLQUFLLENBQUMsQUFBQyxvQkFBZ0QsT0FBN0JULDhCQUE2QjtnQkFDMUU7Z0JBRUEsT0FBT0Q7WUFDVDs7O1lBRUFJLEtBQUFBO21CQUFBQSxTQUFBQSxXQUFXVCxJQUFJO2dCQUNiLElBQUlRLGVBQWU7Z0JBRW5CLElBQU1RLGFBQWFoQixLQUFLRyxTQUFTLElBQUksR0FBRztnQkFFeEMsSUFBSSxDQUFDSixXQUFXLENBQUNRLEtBQUssQ0FBQyxBQUFDLGtCQUE0QixPQUFYUyxZQUFXO2dCQUVwRCxJQUFNQyxXQUFXakIsS0FBS2tCLE9BQU8sSUFDdkJDLGNBQWMsSUFBSSxDQUFDcEIsV0FBVyxDQUFDcUIsdUJBQXVCLENBQUNIO2dCQUU3RCxJQUFJRSxhQUFhO29CQUNmLElBQU1ILGNBQWFoQixLQUFLRyxTQUFTO29CQUVqQyxJQUFJLENBQUNKLFdBQVcsQ0FBQ2dCLEtBQUssQ0FBQyxBQUFDLFFBQWtCLE9BQVhDLGFBQVc7Z0JBQzVDLE9BQU87b0JBQ0wsSUFBSUs7b0JBRUpBLFlBQVlyQixLQUFLc0IsWUFBWTtvQkFFN0IsSUFBTUMsZ0JBQWdCRixVQUFVSCxPQUFPO29CQUV2Q0csWUFBWSxJQUFJLENBQUN0QixXQUFXLENBQUN5QixrQkFBa0IsQ0FBQ0Q7b0JBRWhELElBQUlGLGNBQWMsTUFBTTt3QkFDdEIsSUFBTUksa0JBQWtCSixVQUFVbEIsU0FBUzt3QkFFM0MsSUFBSSxDQUFDSixXQUFXLENBQUNnQixLQUFLLENBQUMsQUFBQyxtQkFBa0MsT0FBaEJVLGlCQUFnQjtvQkFDNUQsT0FBTzt3QkFDTHpCLEtBQUswQixZQUFZLENBQUNMO3dCQUVsQmIsZUFBZTtvQkFDakI7Z0JBQ0Y7Z0JBRUEsSUFBSUEsY0FBYztvQkFDaEIsSUFBSSxDQUFDVCxXQUFXLENBQUNnQixLQUFLLENBQUMsQUFBQyx3QkFBa0MsT0FBWEMsWUFBVztnQkFDNUQ7Z0JBRUEsT0FBT1I7WUFDVDs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQSxpQkFBaUJILFVBQVU7O2dCQUN6QixJQUFNRSxxQkFBcUJGLFdBQVdpQixLQUFLLENBQUMsU0FBQ0M7b0JBQzNDLElBQU1DLG1CQUFtQixNQUFLQyxjQUFjLENBQUNGLFVBQVVsQjtvQkFFdkQsSUFBSW1CLGtCQUFrQjt3QkFDcEIsT0FBTztvQkFDVDtnQkFDRjtnQkFFQSxPQUFPakI7WUFDVDs7O1lBRUFrQixLQUFBQTttQkFBQUEsU0FBQUEsZUFBZUYsUUFBUSxFQUFFbEIsVUFBVTtnQkFDakMsSUFBSW1CLG1CQUFtQjtnQkFFdkIsSUFBTUUsaUJBQWlCSCxTQUFTekIsU0FBUztnQkFFekMsSUFBSSxDQUFDSixXQUFXLENBQUNRLEtBQUssQ0FBQyxBQUFDLGtCQUFnQyxPQUFmd0IsZ0JBQWU7Z0JBRXhELElBQU1DLGVBQWVKLFNBQVNWLE9BQU8sSUFDL0JlLFFBQVF2QixXQUFXd0IsTUFBTSxDQUFDLFNBQUNELE9BQU9MO29CQUNoQyxJQUFNTyxzQkFBc0JQLFNBQVNRLGlCQUFpQixDQUFDSjtvQkFFdkQsSUFBSUcscUJBQXFCO3dCQUN2QkY7b0JBQ0Y7b0JBRUEsT0FBT0E7Z0JBQ1QsR0FBRztnQkFFVCxJQUFJQSxRQUFRLEdBQUc7b0JBQ2IsSUFBSSxDQUFDbEMsV0FBVyxDQUFDZ0IsS0FBSyxDQUFDLEFBQUMsUUFBc0IsT0FBZmdCLGdCQUFlO2dCQUNoRCxPQUFPO29CQUNMLElBQU0vQixPQUFPNEIsU0FBUzFCLE9BQU8sSUFDdkJNLGVBQWUsSUFBSSxDQUFDQyxVQUFVLENBQUNUO29CQUVyQyxJQUFJUSxjQUFjO3dCQUNoQnFCLG1CQUFtQjtvQkFDckI7Z0JBQ0Y7Z0JBRUEsSUFBSUEsa0JBQWtCO29CQUNwQixJQUFJLENBQUM5QixXQUFXLENBQUNnQixLQUFLLENBQUMsQUFBQyxpQkFBK0IsT0FBZmdCLGdCQUFlO2dCQUN6RDtnQkFFQSxPQUFPRjtZQUNUOzs7O1lBSU9RLEtBQUFBO21CQUFQLFNBQU9BLCtCQUErQkMsMEJBQTBCLEVBQUV2QyxXQUFXO2dCQUMzRSxJQUFNLEFBQUV3QyxPQUFTQyxZQUFHLENBQVpELE1BQ0Z2QyxPQUFPdUMsS0FBS0YsOEJBQThCLENBQUNDLDRCQUE0QnZDLGNBQ3ZFMEMseUJBQXlCLElBQUkzQyx1QkFBdUJDLGFBQWFDO2dCQUV2RSxPQUFPeUM7WUFDVDs7OztLQVJBLDBDQUFPQyxRQUFPIn0=
|
|
@@ -9,9 +9,7 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _dom = /*#__PURE__*/ _interop_require_wildcard(require("../../dom"));
|
|
12
|
-
var _query = require("../../utilities/query");
|
|
13
12
|
var _type = require("../type");
|
|
14
|
-
var _name = require("../../utilities/name");
|
|
15
13
|
function _class_call_check(instance, Constructor) {
|
|
16
14
|
if (!(instance instanceof Constructor)) {
|
|
17
15
|
throw new TypeError("Cannot call a class as a function");
|
|
@@ -86,12 +84,10 @@ function _interop_require_wildcard(obj, nodeInterop) {
|
|
|
86
84
|
return newObj;
|
|
87
85
|
}
|
|
88
86
|
var _VariableDeclaration;
|
|
89
|
-
var typeNodeQuery = (0, _query.nodeQuery)("/variableDeclaration/type");
|
|
90
87
|
var _default = (0, _dom.domAssigned)((_VariableDeclaration = /*#__PURE__*/ function() {
|
|
91
88
|
function VariableDeclaration(fileContext, string, variable) {
|
|
92
89
|
_class_call_check(this, VariableDeclaration);
|
|
93
90
|
this.fileContext = fileContext;
|
|
94
|
-
this.string = string;
|
|
95
91
|
this.variable = variable;
|
|
96
92
|
}
|
|
97
93
|
_create_class(VariableDeclaration, [
|
|
@@ -101,23 +97,23 @@ var _default = (0, _dom.domAssigned)((_VariableDeclaration = /*#__PURE__*/ funct
|
|
|
101
97
|
return this.fileContext;
|
|
102
98
|
}
|
|
103
99
|
},
|
|
104
|
-
{
|
|
105
|
-
key: "getString",
|
|
106
|
-
value: function getString() {
|
|
107
|
-
return this.string;
|
|
108
|
-
}
|
|
109
|
-
},
|
|
110
100
|
{
|
|
111
101
|
key: "getVariable",
|
|
112
102
|
value: function getVariable() {
|
|
113
103
|
return this.variable;
|
|
114
104
|
}
|
|
115
105
|
},
|
|
106
|
+
{
|
|
107
|
+
key: "getString",
|
|
108
|
+
value: function getString() {
|
|
109
|
+
return this.variable.getString();
|
|
110
|
+
}
|
|
111
|
+
},
|
|
116
112
|
{
|
|
117
113
|
key: "verify",
|
|
118
114
|
value: function verify() {
|
|
119
115
|
var verified = false;
|
|
120
|
-
var variableDeclarationString = this.
|
|
116
|
+
var variableDeclarationString = this.getString();
|
|
121
117
|
this.fileContext.trace("Verifying the '".concat(variableDeclarationString, "' variable declaration..."));
|
|
122
118
|
var variableVerified = this.verifyVariable(this.variable);
|
|
123
119
|
if (variableVerified) {
|
|
@@ -182,23 +178,12 @@ var _default = (0, _dom.domAssigned)((_VariableDeclaration = /*#__PURE__*/ funct
|
|
|
182
178
|
{
|
|
183
179
|
key: "fromVariableDeclarationNode",
|
|
184
180
|
value: function fromVariableDeclarationNode(variableDeclarationNode, fileContext) {
|
|
185
|
-
var Variable = _dom.default.Variable,
|
|
181
|
+
var Variable = _dom.default.Variable, variable = Variable.fromVariableDeclarationNode(variableDeclarationNode, fileContext), variableDeclaration = new VariableDeclaration(fileContext, variable);
|
|
186
182
|
return variableDeclaration;
|
|
187
183
|
}
|
|
188
184
|
}
|
|
189
185
|
]);
|
|
190
186
|
return VariableDeclaration;
|
|
191
187
|
}(), _define_property(_VariableDeclaration, "name", "VariableDeclaration"), _VariableDeclaration));
|
|
192
|
-
function stringFromVariableAndTypeNode(variable, typeNode) {
|
|
193
|
-
var string;
|
|
194
|
-
var variableString = variable.getString();
|
|
195
|
-
if (typeNode === null) {
|
|
196
|
-
string = variableString; ///
|
|
197
|
-
} else {
|
|
198
|
-
var typeName = (0, _name.typeNameFromTypeNode)(typeNode);
|
|
199
|
-
string = "".concat(variableString, ":").concat(typeName);
|
|
200
|
-
}
|
|
201
|
-
return string;
|
|
202
|
-
}
|
|
203
188
|
|
|
204
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
189
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kb20vZGVjbGFyYXRpb24vdmFyaWFibGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBkb20gZnJvbSBcIi4uLy4uL2RvbVwiO1xuXG5pbXBvcnQgeyBvYmplY3RUeXBlIH0gZnJvbSBcIi4uL3R5cGVcIjtcbmltcG9ydCB7IGRvbUFzc2lnbmVkIH0gZnJvbSBcIi4uLy4uL2RvbVwiO1xuXG5leHBvcnQgZGVmYXVsdCBkb21Bc3NpZ25lZChjbGFzcyBWYXJpYWJsZURlY2xhcmF0aW9uIHtcbiAgY29uc3RydWN0b3IoZmlsZUNvbnRleHQsIHN0cmluZywgdmFyaWFibGUpIHtcbiAgICB0aGlzLmZpbGVDb250ZXh0ID0gZmlsZUNvbnRleHQ7XG4gICAgdGhpcy52YXJpYWJsZSA9IHZhcmlhYmxlO1xuICB9XG5cbiAgZ2V0RmlsZUNvbnRleHQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmlsZUNvbnRleHQ7XG4gIH1cblxuICBnZXRWYXJpYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YXJpYWJsZTtcbiAgfVxuXG4gIGdldFN0cmluZygpIHsgcmV0dXJuIHRoaXMudmFyaWFibGUuZ2V0U3RyaW5nKCk7IH1cblxuICB2ZXJpZnkoKSB7XG4gICAgbGV0IHZlcmlmaWVkID0gZmFsc2U7XG5cbiAgICBjb25zdCB2YXJpYWJsZURlY2xhcmF0aW9uU3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTtcblxuICAgIHRoaXMuZmlsZUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7dmFyaWFibGVEZWNsYXJhdGlvblN0cmluZ30nIHZhcmlhYmxlIGRlY2xhcmF0aW9uLi4uYCk7XG5cbiAgICBjb25zdCB2YXJpYWJsZVZlcmlmaWVkID0gdGhpcy52ZXJpZnlWYXJpYWJsZSh0aGlzLnZhcmlhYmxlKTtcblxuICAgIGlmICh2YXJpYWJsZVZlcmlmaWVkKSB7XG4gICAgICBsZXQgdHlwZTtcblxuICAgICAgdHlwZSA9IHRoaXMudmFyaWFibGUuZ2V0VHlwZSgpO1xuXG4gICAgICBjb25zdCB0eXBlVmVyaWZpZWQgPSB0aGlzLnZlcmlmeVR5cGUodHlwZSk7XG5cbiAgICAgIGlmICh0eXBlVmVyaWZpZWQpIHtcbiAgICAgICAgY29uc3QgdHlwZU5hbWUgPSB0eXBlLmdldE5hbWUoKTtcblxuICAgICAgICB0eXBlID0gdGhpcy5maWxlQ29udGV4dC5maW5kVHlwZUJ5VHlwZU5hbWUodHlwZU5hbWUpO1xuXG4gICAgICAgIHRoaXMudmFyaWFibGUuc2V0VHlwZSh0eXBlKTtcblxuICAgICAgICB0aGlzLmZpbGVDb250ZXh0LmFkZFZhcmlhYmxlKHRoaXMudmFyaWFibGUpO1xuXG4gICAgICAgIHZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodmVyaWZpZWQpIHtcbiAgICAgIHRoaXMuZmlsZUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHt2YXJpYWJsZURlY2xhcmF0aW9uU3RyaW5nfScgdmFyaWFibGUgZGVjbGFyYXRpb24uYCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHZlcmlmaWVkO1xuICB9XG5cbiAgdmVyaWZ5VHlwZSh0eXBlKSB7XG4gICAgbGV0IHR5cGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gICAgaWYgKHR5cGUgPT09IG9iamVjdFR5cGUpIHtcbiAgICAgIHR5cGVWZXJpZmllZCA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHR5cGVOYW1lID0gdHlwZS5nZXROYW1lKCk7XG5cbiAgICAgIHRoaXMuZmlsZUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7dHlwZU5hbWV9JyB0eXBlLi4uYCk7XG5cbiAgICAgIGNvbnN0IHR5cGVQcmVzZW50ID0gdGhpcy5maWxlQ29udGV4dC5pc1R5cGVQcmVzZW50QnlUeXBlTmFtZSh0eXBlTmFtZSk7XG5cbiAgICAgIGlmICghdHlwZVByZXNlbnQpIHtcbiAgICAgICAgdGhpcy5maWxlQ29udGV4dC5kZWJ1ZyhgVGhlICcke3R5cGVOYW1lfScgdHlwZSBpcyBub3QgcHJlc2VudC5gKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHR5cGVWZXJpZmllZCA9IHRydWU7XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlVmVyaWZpZWQpIHtcbiAgICAgICAgdGhpcy5maWxlQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke3R5cGVOYW1lfScgdHlwZS5gKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdHlwZVZlcmlmaWVkO1xuICB9XG5cbiAgdmVyaWZ5VmFyaWFibGUodmFyaWFibGUpIHtcbiAgICBsZXQgIHZhcmlhYmxlVmVyaWZpZWQgPSBmYWxzZTtcblxuICAgIGNvbnN0IHZhcmlhYmxlU3RyaW5nID0gdmFyaWFibGUuZ2V0U3RyaW5nKCk7XG5cbiAgICB0aGlzLmZpbGVDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke3ZhcmlhYmxlU3RyaW5nfScgdmFyaWFibGUuLi5gKTtcblxuICAgIGNvbnN0IHZhcmlhYmxlTmFtZSA9IHZhcmlhYmxlLmdldE5hbWUoKSxcbiAgICAgICAgICB2YXJpYWJsZVByZXNlbnQgPSB0aGlzLmZpbGVDb250ZXh0LmlzVmFyaWFibGVQcmVzZW50QnlWYXJpYWJsZU5hbWUodmFyaWFibGVOYW1lKTtcblxuICAgIGlmICh2YXJpYWJsZVByZXNlbnQpIHtcbiAgICAgIHRoaXMuZmlsZUNvbnRleHQuZGVidWcoYFRoZSAnJHt2YXJpYWJsZU5hbWV9JyB2YXJpYWJsZSBpcyBhbHJlYWR5IHByZXNlbnQuYCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHZhcmlhYmxlVmVyaWZpZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIGlmICggdmFyaWFibGVWZXJpZmllZCkge1xuICAgICAgdGhpcy5maWxlQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke3ZhcmlhYmxlU3RyaW5nfScgdmFyaWFibGUuYCk7XG4gICAgfVxuXG4gICAgcmV0dXJuICB2YXJpYWJsZVZlcmlmaWVkO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlZhcmlhYmxlRGVjbGFyYXRpb25cIjtcblxuICBzdGF0aWMgZnJvbVZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlKHZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlLCBmaWxlQ29udGV4dCkge1xuICAgIGNvbnN0IHsgVmFyaWFibGUgfSA9IGRvbSxcbiAgICAgICAgICB2YXJpYWJsZSA9IFZhcmlhYmxlLmZyb21WYXJpYWJsZURlY2xhcmF0aW9uTm9kZSh2YXJpYWJsZURlY2xhcmF0aW9uTm9kZSwgZmlsZUNvbnRleHQpLFxuICAgICAgICAgIHZhcmlhYmxlRGVjbGFyYXRpb24gPSBuZXcgVmFyaWFibGVEZWNsYXJhdGlvbihmaWxlQ29udGV4dCwgdmFyaWFibGUpO1xuXG4gICAgcmV0dXJuIHZhcmlhYmxlRGVjbGFyYXRpb247XG4gIH1cbn0pO1xuIl0sIm5hbWVzIjpbImRvbUFzc2lnbmVkIiwiVmFyaWFibGVEZWNsYXJhdGlvbiIsImZpbGVDb250ZXh0Iiwic3RyaW5nIiwidmFyaWFibGUiLCJnZXRGaWxlQ29udGV4dCIsImdldFZhcmlhYmxlIiwiZ2V0U3RyaW5nIiwidmVyaWZ5IiwidmVyaWZpZWQiLCJ2YXJpYWJsZURlY2xhcmF0aW9uU3RyaW5nIiwidHJhY2UiLCJ2YXJpYWJsZVZlcmlmaWVkIiwidmVyaWZ5VmFyaWFibGUiLCJ0eXBlIiwiZ2V0VHlwZSIsInR5cGVWZXJpZmllZCIsInZlcmlmeVR5cGUiLCJ0eXBlTmFtZSIsImdldE5hbWUiLCJmaW5kVHlwZUJ5VHlwZU5hbWUiLCJzZXRUeXBlIiwiYWRkVmFyaWFibGUiLCJkZWJ1ZyIsIm9iamVjdFR5cGUiLCJ0eXBlUHJlc2VudCIsImlzVHlwZVByZXNlbnRCeVR5cGVOYW1lIiwidmFyaWFibGVTdHJpbmciLCJ2YXJpYWJsZU5hbWUiLCJ2YXJpYWJsZVByZXNlbnQiLCJpc1ZhcmlhYmxlUHJlc2VudEJ5VmFyaWFibGVOYW1lIiwiZnJvbVZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlIiwidmFyaWFibGVEZWNsYXJhdGlvbk5vZGUiLCJWYXJpYWJsZSIsImRvbSIsInZhcmlhYmxlRGVjbGFyYXRpb24iLCJuYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFPQTs7O2VBQUE7OzsyREFMZ0I7b0JBRVc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQUczQixXQUFlQSxJQUFBQSxnQkFBVyx3Q0FBQzthQUFNQyxvQkFDbkJDLFdBQVcsRUFBRUMsTUFBTSxFQUFFQyxRQUFRO2dDQURWSDtRQUU3QixJQUFJLENBQUNDLFdBQVcsR0FBR0E7UUFDbkIsSUFBSSxDQUFDRSxRQUFRLEdBQUdBOzs7O1lBR2xCQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILFdBQVc7WUFDekI7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNGLFFBQVE7WUFDdEI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQWMsT0FBTyxJQUFJLENBQUNILFFBQVEsQ0FBQ0csU0FBUztZQUFJOzs7WUFFaERDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFJQyxXQUFXO2dCQUVmLElBQU1DLDRCQUE0QixJQUFJLENBQUNILFNBQVM7Z0JBRWhELElBQUksQ0FBQ0wsV0FBVyxDQUFDUyxLQUFLLENBQUMsQUFBQyxrQkFBMkMsT0FBMUJELDJCQUEwQjtnQkFFbkUsSUFBTUUsbUJBQW1CLElBQUksQ0FBQ0MsY0FBYyxDQUFDLElBQUksQ0FBQ1QsUUFBUTtnQkFFMUQsSUFBSVEsa0JBQWtCO29CQUNwQixJQUFJRTtvQkFFSkEsT0FBTyxJQUFJLENBQUNWLFFBQVEsQ0FBQ1csT0FBTztvQkFFNUIsSUFBTUMsZUFBZSxJQUFJLENBQUNDLFVBQVUsQ0FBQ0g7b0JBRXJDLElBQUlFLGNBQWM7d0JBQ2hCLElBQU1FLFdBQVdKLEtBQUtLLE9BQU87d0JBRTdCTCxPQUFPLElBQUksQ0FBQ1osV0FBVyxDQUFDa0Isa0JBQWtCLENBQUNGO3dCQUUzQyxJQUFJLENBQUNkLFFBQVEsQ0FBQ2lCLE9BQU8sQ0FBQ1A7d0JBRXRCLElBQUksQ0FBQ1osV0FBVyxDQUFDb0IsV0FBVyxDQUFDLElBQUksQ0FBQ2xCLFFBQVE7d0JBRTFDSyxXQUFXO29CQUNiO2dCQUNGO2dCQUVBLElBQUlBLFVBQVU7b0JBQ1osSUFBSSxDQUFDUCxXQUFXLENBQUNxQixLQUFLLENBQUMsQUFBQyxvQkFBNkMsT0FBMUJiLDJCQUEwQjtnQkFDdkU7Z0JBRUEsT0FBT0Q7WUFDVDs7O1lBRUFRLEtBQUFBO21CQUFBQSxTQUFBQSxXQUFXSCxJQUFJO2dCQUNiLElBQUlFLGVBQWU7Z0JBRW5CLElBQUlGLFNBQVNVLGdCQUFVLEVBQUU7b0JBQ3ZCUixlQUFlO2dCQUNqQixPQUFPO29CQUNMLElBQU1FLFdBQVdKLEtBQUtLLE9BQU87b0JBRTdCLElBQUksQ0FBQ2pCLFdBQVcsQ0FBQ1MsS0FBSyxDQUFDLEFBQUMsa0JBQTBCLE9BQVRPLFVBQVM7b0JBRWxELElBQU1PLGNBQWMsSUFBSSxDQUFDdkIsV0FBVyxDQUFDd0IsdUJBQXVCLENBQUNSO29CQUU3RCxJQUFJLENBQUNPLGFBQWE7d0JBQ2hCLElBQUksQ0FBQ3ZCLFdBQVcsQ0FBQ3FCLEtBQUssQ0FBQyxBQUFDLFFBQWdCLE9BQVRMLFVBQVM7b0JBQzFDLE9BQU87d0JBQ0xGLGVBQWU7b0JBQ2pCO29CQUVBLElBQUlBLGNBQWM7d0JBQ2hCLElBQUksQ0FBQ2QsV0FBVyxDQUFDcUIsS0FBSyxDQUFDLEFBQUMsb0JBQTRCLE9BQVRMLFVBQVM7b0JBQ3REO2dCQUNGO2dCQUVBLE9BQU9GO1lBQ1Q7OztZQUVBSCxLQUFBQTttQkFBQUEsU0FBQUEsZUFBZVQsUUFBUTtnQkFDckIsSUFBS1EsbUJBQW1CO2dCQUV4QixJQUFNZSxpQkFBaUJ2QixTQUFTRyxTQUFTO2dCQUV6QyxJQUFJLENBQUNMLFdBQVcsQ0FBQ1MsS0FBSyxDQUFDLEFBQUMsa0JBQWdDLE9BQWZnQixnQkFBZTtnQkFFeEQsSUFBTUMsZUFBZXhCLFNBQVNlLE9BQU8sSUFDL0JVLGtCQUFrQixJQUFJLENBQUMzQixXQUFXLENBQUM0QiwrQkFBK0IsQ0FBQ0Y7Z0JBRXpFLElBQUlDLGlCQUFpQjtvQkFDbkIsSUFBSSxDQUFDM0IsV0FBVyxDQUFDcUIsS0FBSyxDQUFDLEFBQUMsUUFBb0IsT0FBYkssY0FBYTtnQkFDOUMsT0FBTztvQkFDTGhCLG1CQUFtQjtnQkFDckI7Z0JBRUEsSUFBS0Esa0JBQWtCO29CQUNyQixJQUFJLENBQUNWLFdBQVcsQ0FBQ3FCLEtBQUssQ0FBQyxBQUFDLG9CQUFrQyxPQUFmSSxnQkFBZTtnQkFDNUQ7Z0JBRUEsT0FBUWY7WUFDVjs7OztZQUlPbUIsS0FBQUE7bUJBQVAsU0FBT0EsNEJBQTRCQyx1QkFBdUIsRUFBRTlCLFdBQVc7Z0JBQ3JFLElBQU0sQUFBRStCLFdBQWFDLFlBQUcsQ0FBaEJELFVBQ0Y3QixXQUFXNkIsU0FBU0YsMkJBQTJCLENBQUNDLHlCQUF5QjlCLGNBQ3pFaUMsc0JBQXNCLElBQUlsQyxvQkFBb0JDLGFBQWFFO2dCQUVqRSxPQUFPK0I7WUFDVDs7OztLQVJBLHVDQUFPQyxRQUFPIn0=
|
package/lib/dom/property.js
CHANGED
|
@@ -112,6 +112,13 @@ var _default = (0, _dom.domAssigned)((_Property = /*#__PURE__*/ function() {
|
|
|
112
112
|
return this.type;
|
|
113
113
|
}
|
|
114
114
|
},
|
|
115
|
+
{
|
|
116
|
+
key: "matchPropertyName",
|
|
117
|
+
value: function matchPropertyName(propertyName) {
|
|
118
|
+
var propertyNameMatches = propertyName === this.name;
|
|
119
|
+
return propertyNameMatches;
|
|
120
|
+
}
|
|
121
|
+
},
|
|
115
122
|
{
|
|
116
123
|
key: "verify",
|
|
117
124
|
value: function verify(context) {
|
|
@@ -162,4 +169,4 @@ function typeFromPropertyNode(propertyNode, fileContext) {
|
|
|
162
169
|
return type;
|
|
163
170
|
}
|
|
164
171
|
|
|
165
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
172
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kb20vcHJvcGVydHkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBkb20gZnJvbSBcIi4uL2RvbVwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBkb21Bc3NpZ25lZCB9IGZyb20gXCIuLi9kb21cIjtcbmltcG9ydCB7IHR5cGVGcm9tSlNPTiwgdHlwZVRvVHlwZUpTT04gfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2pzb25cIjtcblxuY29uc3QgdHlwZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9wcm9wZXJ0eS90eXBlXCIpLFxuICAgICAgcHJvcGVydHlOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcHJvcGVydHlEZWNsYXJhdGlvbi9wcm9wZXJ0eVwiKSxcbiAgICAgIG5hbWVUZXJtaW5hbE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9wcm9wZXJ0eS9AbmFtZVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZG9tQXNzaWduZWQoY2xhc3MgUHJvcGVydHkge1xuICBjb25zdHJ1Y3RvcihzdHJpbmcsIG5hbWUsIHR5cGUpIHtcbiAgICB0aGlzLnN0cmluZyA9IHN0cmluZztcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xuICAgIHRoaXMudHlwZSA9IHR5cGU7XG4gIH1cblxuICBnZXRTdHJpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RyaW5nO1xuICB9XG5cbiAgZ2V0TmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG5cbiAgZ2V0VHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlO1xuICB9XG5cbiAgbWF0Y2hQcm9wZXJ0eU5hbWUocHJvcGVydHlOYW1lKSB7XG4gICAgY29uc3QgcHJvcGVydHlOYW1lTWF0Y2hlcyA9IChwcm9wZXJ0eU5hbWUgPT09IHRoaXMubmFtZSk7XG5cbiAgICByZXR1cm4gcHJvcGVydHlOYW1lTWF0Y2hlcztcbiAgfVxuXG4gIHZlcmlmeShjb250ZXh0KSB7XG4gICAgbGV0IHZlcmlmaWVkO1xuXG4gICAgY29uc3QgcHJvcGVydHlTdHJpbmcgPSB0aGlzLnN0cmluZzsgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke3Byb3BlcnR5U3RyaW5nfScgcHJvcGVydHkuLi5gKTtcblxuICAgIGRlYnVnZ2VyXG5cbiAgICBpZiAodmVyaWZpZWQpIHtcbiAgICAgIGNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtwcm9wZXJ0eVN0cmluZ30nIHByb3BlcnR5LmApO1xuICAgIH1cblxuICAgIHJldHVybiB2ZXJpZmllZDtcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICBjb25zdCB0eXBlSlNPTiA9IHR5cGVUb1R5cGVKU09OKHRoaXMudHlwZSksXG4gICAgICAgICAgbmFtZSA9IHRoaXMubmFtZSwgLy8vXG4gICAgICAgICAgdHlwZSA9IHR5cGVKU09OLCAgLy8vXG4gICAgICAgICAganNvbiA9IHtcbiAgICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgICBuYW1lXG4gICAgICAgICAgfTtcblxuICAgIHJldHVybiBqc29uO1xuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlByb3BlcnR5XCI7XG5cbiAgc3RhdGljIGZyb21KU09OKGpzb24sIGZpbGVDb250ZXh0KSB7XG4gICAgY29uc3QgeyBuYW1lIH0gPSBqc29uLFxuICAgICAgICAgIHR5cGUgPSB0eXBlRnJvbUpTT04oanNvbiwgZmlsZUNvbnRleHQpLFxuICAgICAgICAgIHN0cmluZyA9IHN0cmluZ0Zyb21OYW1lQW5kVHlwZShuYW1lLCB0eXBlLCBmaWxlQ29udGV4dCksXG4gICAgICAgICAgcHJvcGVydHkgPSBuZXcgUHJvcGVydHkoc3RyaW5nLCBuYW1lLCB0eXBlKTtcblxuICAgIHJldHVybiBwcm9wZXJ0eTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tUHJvcGVydHlEZWNsYXJhdGlvbk5vZGUocHJvcGVydHlEZWNsYXJhdGlvbk5vZGUsIGZpbGVDb250ZXh0KSB7XG4gICAgY29uc3QgcHJvcGVydHlOb2RlID0gcHJvcGVydHlOb2RlUXVlcnkocHJvcGVydHlEZWNsYXJhdGlvbk5vZGUpLFxuICAgICAgICAgIG5vZGUgPSBwcm9wZXJ0eU5vZGUsICAvLy9cbiAgICAgICAgICBuYW1lID0gbmFtZUZyb21Qcm9wZXJ0eU5vZGUocHJvcGVydHlOb2RlKSxcbiAgICAgICAgICB0eXBlID0gdHlwZUZyb21Qcm9wZXJ0eU5vZGUocHJvcGVydHlOb2RlKSxcbiAgICAgICAgICBzdHJpbmcgPSBmaWxlQ29udGV4dC5ub2RlQXNTdHJpbmcobm9kZSksXG4gICAgICAgICAgcHJvcGVydHkgPSBuZXcgUHJvcGVydHkoc3RyaW5nLCBuYW1lLCB0eXBlKTtcblxuICAgIHJldHVybiBwcm9wZXJ0eTtcbiAgfVxufSk7XG5cbmZ1bmN0aW9uIG5hbWVGcm9tUHJvcGVydHlOb2RlKHByb3BlcnR5Tm9kZSwgZmlsZUNvbnRleHQpIHtcbiAgY29uc3QgbmFtZVRlcm1pbmFsTm9kZSA9IG5hbWVUZXJtaW5hbE5vZGVRdWVyeShwcm9wZXJ0eU5vZGUpLFxuICAgICAgICBuYW1lVGVybWluYWxOb2RlQ29udGVudCA9IG5hbWVUZXJtaW5hbE5vZGUuZ2V0Q29udGVudCgpLFxuICAgICAgICBuYW1lID0gbmFtZVRlcm1pbmFsTm9kZUNvbnRlbnQ7IC8vL1xuXG4gIHJldHVybiBuYW1lO1xufVxuXG5mdW5jdGlvbiB0eXBlRnJvbVByb3BlcnR5Tm9kZShwcm9wZXJ0eU5vZGUsIGZpbGVDb250ZXh0KSB7XG4gIGNvbnN0IHsgVHlwZSB9ID0gZG9tLFxuICAgICAgICB0eXBlTm9kZSA9IHR5cGVOb2RlUXVlcnkocHJvcGVydHlOb2RlKSxcbiAgICAgICAgdHlwZSA9IFR5cGUuZnJvbVR5cGVOb2RlKHR5cGVOb2RlKTtcblxuICByZXR1cm4gdHlwZTtcbn1cbiJdLCJuYW1lcyI6WyJ0eXBlTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwicHJvcGVydHlOb2RlUXVlcnkiLCJuYW1lVGVybWluYWxOb2RlUXVlcnkiLCJkb21Bc3NpZ25lZCIsIlByb3BlcnR5Iiwic3RyaW5nIiwibmFtZSIsInR5cGUiLCJnZXRTdHJpbmciLCJnZXROYW1lIiwiZ2V0VHlwZSIsIm1hdGNoUHJvcGVydHlOYW1lIiwicHJvcGVydHlOYW1lIiwicHJvcGVydHlOYW1lTWF0Y2hlcyIsInZlcmlmeSIsImNvbnRleHQiLCJ2ZXJpZmllZCIsInByb3BlcnR5U3RyaW5nIiwidHJhY2UiLCJkZWJ1ZyIsInRvSlNPTiIsInR5cGVKU09OIiwidHlwZVRvVHlwZUpTT04iLCJqc29uIiwiZnJvbUpTT04iLCJmaWxlQ29udGV4dCIsInR5cGVGcm9tSlNPTiIsInN0cmluZ0Zyb21OYW1lQW5kVHlwZSIsInByb3BlcnR5IiwiZnJvbVByb3BlcnR5RGVjbGFyYXRpb25Ob2RlIiwicHJvcGVydHlEZWNsYXJhdGlvbk5vZGUiLCJwcm9wZXJ0eU5vZGUiLCJub2RlIiwibmFtZUZyb21Qcm9wZXJ0eU5vZGUiLCJ0eXBlRnJvbVByb3BlcnR5Tm9kZSIsIm5vZGVBc1N0cmluZyIsIm5hbWVUZXJtaW5hbE5vZGUiLCJuYW1lVGVybWluYWxOb2RlQ29udGVudCIsImdldENvbnRlbnQiLCJUeXBlIiwiZG9tIiwidHlwZU5vZGUiLCJmcm9tVHlwZU5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVlBOzs7ZUFBQTs7OzJEQVZnQjtxQkFFVTtvQkFFbUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUU3QyxJQUFNQSxnQkFBZ0JDLElBQUFBLGdCQUFTLEVBQUMsbUJBQzFCQyxvQkFBb0JELElBQUFBLGdCQUFTLEVBQUMsa0NBQzlCRSx3QkFBd0JGLElBQUFBLGdCQUFTLEVBQUM7SUFFeEMsV0FBZUcsSUFBQUEsZ0JBQVcsNkJBQUM7YUFBTUMsU0FDbkJDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxJQUFJO2dD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
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "occam-verify-cli",
|
|
3
3
|
"author": "James Smith",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.1270",
|
|
5
5
|
"license": "MIT, Anti-996",
|
|
6
6
|
"homepage": "https://github.com/djalbat/occam-verify-cli",
|
|
7
7
|
"description": "Occam's Verifier",
|
|
@@ -12,10 +12,10 @@
|
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"argumentative": "^2.0.32",
|
|
14
14
|
"necessary": "^14.2.1",
|
|
15
|
-
"occam-custom-grammars": "^5.0.
|
|
16
|
-
"occam-entities": "^1.0.
|
|
17
|
-
"occam-file-system": "^6.0.
|
|
18
|
-
"occam-furtle": "^2.0.
|
|
15
|
+
"occam-custom-grammars": "^5.0.1038",
|
|
16
|
+
"occam-entities": "^1.0.272",
|
|
17
|
+
"occam-file-system": "^6.0.294",
|
|
18
|
+
"occam-furtle": "^2.0.34",
|
|
19
19
|
"occam-grammar-utilities": "^8.0.250",
|
|
20
20
|
"occam-lexers": "^23.0.37",
|
|
21
21
|
"occam-parsers": "^23.0.42",
|
|
@@ -23,16 +23,21 @@ export default domAssigned(class ComplexTypeDeclaration {
|
|
|
23
23
|
verify() {
|
|
24
24
|
let verified = false;
|
|
25
25
|
|
|
26
|
-
const complexTypeDeclarationString = this.getString();
|
|
26
|
+
const complexTypeDeclarationString = this.getString();
|
|
27
27
|
|
|
28
28
|
this.fileContext.trace(`Verifying the '${complexTypeDeclarationString}' complex type declaration...`);
|
|
29
29
|
|
|
30
30
|
const typeVerified = this.verifyType(this.type);
|
|
31
31
|
|
|
32
32
|
if (typeVerified) {
|
|
33
|
-
this.
|
|
33
|
+
const properties = this.type.getProperties(),
|
|
34
|
+
propertiesVerified = this.verifyProperties(properties);
|
|
34
35
|
|
|
35
|
-
|
|
36
|
+
if (propertiesVerified) {
|
|
37
|
+
this.fileContext.addType(this.type);
|
|
38
|
+
|
|
39
|
+
verified = true;
|
|
40
|
+
}
|
|
36
41
|
}
|
|
37
42
|
|
|
38
43
|
if (verified) {
|
|
@@ -53,9 +58,9 @@ export default domAssigned(class ComplexTypeDeclaration {
|
|
|
53
58
|
typePresent = this.fileContext.isTypePresentByTypeName(typeName);
|
|
54
59
|
|
|
55
60
|
if (typePresent) {
|
|
56
|
-
const typeString =
|
|
61
|
+
const typeString = type.getString();
|
|
57
62
|
|
|
58
|
-
this.fileContext.debug(`The
|
|
63
|
+
this.fileContext.debug(`The '${typeString}' type is already present.`);
|
|
59
64
|
} else {
|
|
60
65
|
let superType;
|
|
61
66
|
|
|
@@ -83,6 +88,54 @@ export default domAssigned(class ComplexTypeDeclaration {
|
|
|
83
88
|
return typeVerified;
|
|
84
89
|
}
|
|
85
90
|
|
|
91
|
+
verifyProperties(properties) {
|
|
92
|
+
const propertiesVerified = properties.every((property) => {
|
|
93
|
+
const propertyVerified = this.verifyProperty(property, properties);
|
|
94
|
+
|
|
95
|
+
if (propertyVerified) {
|
|
96
|
+
return true;
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
|
|
100
|
+
return propertiesVerified;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
verifyProperty(property, properties) {
|
|
104
|
+
let propertyVerified = false;
|
|
105
|
+
|
|
106
|
+
const propertyString = property.getString();
|
|
107
|
+
|
|
108
|
+
this.fileContext.trace(`Verifying the '${propertyString}' property...`);
|
|
109
|
+
|
|
110
|
+
const propertyName = property.getName(),
|
|
111
|
+
count = properties.reduce((count, property) => {
|
|
112
|
+
const propertyNameMatches = property.matchPropertyName(propertyName);
|
|
113
|
+
|
|
114
|
+
if (propertyNameMatches) {
|
|
115
|
+
count++;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
return count;
|
|
119
|
+
}, 0);
|
|
120
|
+
|
|
121
|
+
if (count > 1) {
|
|
122
|
+
this.fileContext.debug(`The '${propertyString}' property appears more than once.`);
|
|
123
|
+
} else {
|
|
124
|
+
const type = property.getType(),
|
|
125
|
+
typeVerified = this.verifyType(type);
|
|
126
|
+
|
|
127
|
+
if (typeVerified) {
|
|
128
|
+
propertyVerified = true;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
if (propertyVerified) {
|
|
133
|
+
this.fileContext.debug(`verified the '${propertyString}' property.`);
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
return propertyVerified;
|
|
137
|
+
}
|
|
138
|
+
|
|
86
139
|
static name = "ComplexTypeDeclaration";
|
|
87
140
|
|
|
88
141
|
static fromComplexTypeDeclarationNode(complexTypeDeclarationNode, fileContext) {
|
|
@@ -2,17 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
import dom from "../../dom";
|
|
4
4
|
|
|
5
|
-
import { nodeQuery } from "../../utilities/query";
|
|
6
5
|
import { objectType } from "../type";
|
|
7
6
|
import { domAssigned } from "../../dom";
|
|
8
|
-
import { typeNameFromTypeNode } from "../../utilities/name";
|
|
9
|
-
|
|
10
|
-
const typeNodeQuery = nodeQuery("/variableDeclaration/type");
|
|
11
7
|
|
|
12
8
|
export default domAssigned(class VariableDeclaration {
|
|
13
9
|
constructor(fileContext, string, variable) {
|
|
14
10
|
this.fileContext = fileContext;
|
|
15
|
-
this.string = string;
|
|
16
11
|
this.variable = variable;
|
|
17
12
|
}
|
|
18
13
|
|
|
@@ -20,18 +15,16 @@ export default domAssigned(class VariableDeclaration {
|
|
|
20
15
|
return this.fileContext;
|
|
21
16
|
}
|
|
22
17
|
|
|
23
|
-
getString() {
|
|
24
|
-
return this.string;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
18
|
getVariable() {
|
|
28
19
|
return this.variable;
|
|
29
20
|
}
|
|
30
21
|
|
|
22
|
+
getString() { return this.variable.getString(); }
|
|
23
|
+
|
|
31
24
|
verify() {
|
|
32
25
|
let verified = false;
|
|
33
26
|
|
|
34
|
-
const variableDeclarationString = this.
|
|
27
|
+
const variableDeclarationString = this.getString();
|
|
35
28
|
|
|
36
29
|
this.fileContext.trace(`Verifying the '${variableDeclarationString}' variable declaration...`);
|
|
37
30
|
|
|
@@ -117,27 +110,9 @@ export default domAssigned(class VariableDeclaration {
|
|
|
117
110
|
|
|
118
111
|
static fromVariableDeclarationNode(variableDeclarationNode, fileContext) {
|
|
119
112
|
const { Variable } = dom,
|
|
120
|
-
typeNode = typeNodeQuery(variableDeclarationNode),
|
|
121
113
|
variable = Variable.fromVariableDeclarationNode(variableDeclarationNode, fileContext),
|
|
122
|
-
|
|
123
|
-
variableDeclaration = new VariableDeclaration(fileContext, string, variable);
|
|
114
|
+
variableDeclaration = new VariableDeclaration(fileContext, variable);
|
|
124
115
|
|
|
125
116
|
return variableDeclaration;
|
|
126
117
|
}
|
|
127
118
|
});
|
|
128
|
-
|
|
129
|
-
function stringFromVariableAndTypeNode(variable, typeNode) {
|
|
130
|
-
let string;
|
|
131
|
-
|
|
132
|
-
const variableString = variable.getString();
|
|
133
|
-
|
|
134
|
-
if (typeNode === null) {
|
|
135
|
-
string = variableString; ///
|
|
136
|
-
} else {
|
|
137
|
-
const typeName = typeNameFromTypeNode(typeNode);
|
|
138
|
-
|
|
139
|
-
string = `${variableString}:${typeName}`;
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
return string;
|
|
143
|
-
}
|
package/src/dom/property.js
CHANGED
|
@@ -29,6 +29,12 @@ export default domAssigned(class Property {
|
|
|
29
29
|
return this.type;
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
+
matchPropertyName(propertyName) {
|
|
33
|
+
const propertyNameMatches = (propertyName === this.name);
|
|
34
|
+
|
|
35
|
+
return propertyNameMatches;
|
|
36
|
+
}
|
|
37
|
+
|
|
32
38
|
verify(context) {
|
|
33
39
|
let verified;
|
|
34
40
|
|