occam-verify-cli 0.0.1007 → 0.0.1010

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.
@@ -1,7 +1,5 @@
1
1
  "use strict";
2
2
 
3
- import verifyFiles from "../verify/files";
4
-
5
3
  export default function verifyRelease(releaseName, dependentName, dependentReleased, releaseContextMap) {
6
4
  let releaseVerified = false;
7
5
 
@@ -21,27 +19,21 @@ export default function verifyRelease(releaseName, dependentName, dependentRelea
21
19
  dependencyReleasesVVerified = verifyDependencyReleases(releaseContext, dependentName, dependentReleased, releaseContextMap);
22
20
 
23
21
  if (dependencyReleasesVVerified) {
24
- const verified = releaseContext.isVerified();
25
-
26
- if (verified) {
27
- releaseVerified = true;
28
- } else {
29
- releaseContext.info(`Verifying the '${releaseName}' project...`);
22
+ let releaseContextVerified;
30
23
 
31
- const releaseFilesVerified = verifyReleaseFiles(releaseContext);
24
+ releaseContextVerified = releaseContext.isVerified();
32
25
 
33
- if (releaseFilesVerified) {
34
- const verified = true;
35
-
36
- releaseContext.setVerified(verified);
26
+ if (!releaseContextVerified) {
27
+ releaseContext.info(`Verifying the '${releaseName}' project...`);
37
28
 
38
- releaseVerified = verified; ///
39
- }
29
+ releaseContextVerified = releaseContext.verify();
40
30
 
41
- if (releaseVerified) {
31
+ if (releaseContextVerified) {
42
32
  releaseContext.info(`...verified the '${releaseName}' project.`);
43
33
  }
44
34
  }
35
+
36
+ releaseVerified = releaseContextVerified; ///
45
37
  }
46
38
  }
47
39
  }
@@ -50,13 +42,6 @@ export default function verifyRelease(releaseName, dependentName, dependentRelea
50
42
  return releaseVerified;
51
43
  }
52
44
 
53
- function verifyReleaseFiles(releaseContext) {
54
- const filesVerified = verifyFiles(releaseContext),
55
- releaseFilesVerified = filesVerified; ///
56
-
57
- return releaseFilesVerified;
58
- }
59
-
60
45
  function verifyDependencyReleases(releaseContext, dependentName, dependentReleased, releaseContextMap) {
61
46
  const dependencies = releaseContext.getDependencies(),
62
47
  dependencyReleasesVVerified = dependencies.everyDependency((dependency) => {
@@ -1,89 +0,0 @@
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 verifyMetavariableDeclaration;
9
- }
10
- });
11
- var _metavariable = /*#__PURE__*/ _interop_require_default(require("../../metavariable"));
12
- var _metavariable1 = /*#__PURE__*/ _interop_require_default(require("../../assignment/metavariable"));
13
- var _array = require("../../utilities/array");
14
- var _query = require("../../utilities/query");
15
- function _interop_require_default(obj) {
16
- return obj && obj.__esModule ? obj : {
17
- default: obj
18
- };
19
- }
20
- var termNodeQuery = (0, _query.nodeQuery)("/argument/term"), typeNodeQuery = (0, _query.nodeQuery)("/argument/type"), argumentNodeQuery = (0, _query.nodeQuery)("/metavariable/argument!"), metaTypeNodeQuery = (0, _query.nodeQuery)("/metavariableDeclaration/metaType"), metavariableNodeQuery = (0, _query.nodeQuery)("/metavariableDeclaration/metavariable");
21
- function verifyMetavariableDeclaration(metavariableDeclarationNode, fileContext) {
22
- var metavariableDeclarationVerified;
23
- var metaTypeNode = metaTypeNodeQuery(metavariableDeclarationNode), metavariableNode = metavariableNodeQuery(metavariableDeclarationNode), metaTypeString = fileContext.nodeAsString(metaTypeNode), metavariableString = fileContext.nodeAsString(metavariableNode);
24
- fileContext.trace("Verifying the '".concat(metavariableString, ":").concat(metaTypeString, "' metavariable declaration..."));
25
- var metavariableVVerified = verifyMetavariable(metavariableNode, metaTypeNode, fileContext);
26
- metavariableDeclarationVerified = metavariableVVerified; ///
27
- if (metavariableDeclarationVerified) {
28
- fileContext.debug("...verified the '".concat(metavariableString, ":").concat(metaTypeString, "' metavariable declaration."));
29
- }
30
- return metavariableDeclarationVerified;
31
- }
32
- function verifyMetavariable(metavariableNode, metaTypeNode, fileContext) {
33
- var metavariableVerified = false;
34
- var metavariableString = fileContext.nodeAsString(metavariableNode);
35
- fileContext.trace("Verifying the '".concat(metavariableString, "' metavariable..."));
36
- var metavariablePresent = fileContext.isMetavariablePresentByMetavariableNode(metavariableNode);
37
- if (metavariablePresent) {
38
- fileContext.debug("The metavariable '".concat(metavariableString, "' is already present."));
39
- } else {
40
- var termTypes = [], metaTypes = [], argumentNode = argumentNodeQuery(metavariableNode), argumentVerified = verifyArgument(argumentNode, termTypes, fileContext), metaTypeVerified = verifyMetaType(metaTypeNode, metaTypes, fileContext);
41
- if (argumentVerified && metaTypeVerified) {
42
- var metaType;
43
- var firstMetaType = (0, _array.first)(metaTypes);
44
- metaType = firstMetaType; ///
45
- var metavariable = _metavariable.default.fromMetavariableNodeAndMetaType(metavariableNode, metaType, fileContext), metavariableAssignment = _metavariable1.default.fromMetavariable(metavariable), metavariableAssigned = metavariableAssignment.assign(fileContext);
46
- if (metavariableAssigned) {
47
- metavariableVerified = true;
48
- }
49
- }
50
- }
51
- if (metavariableVerified) {
52
- fileContext.debug("...verified the '".concat(metavariableString, "' metavariable."));
53
- }
54
- return metavariableVerified;
55
- }
56
- function verifyArgument(argumentNode, termTypes, fileContext) {
57
- var argumentVerified = false;
58
- if (argumentNode === null) {
59
- argumentVerified = true;
60
- } else {
61
- var termNode = termNodeQuery(argumentNode);
62
- if (termNode === null) {} else {
63
- var termString = fileContext.nodeAsString(termNode);
64
- fileContext.debug("The '".concat(termString, "' term was found when a type should have been present."));
65
- }
66
- var typeNode = typeNodeQuery(argumentNode);
67
- if (typeNode !== null) {
68
- var type = fileContext.findTypeByTypeNode(typeNode);
69
- if (type !== null) {
70
- var termType = type; ///
71
- termTypes.push(termType);
72
- argumentVerified = true;
73
- } else {
74
- var typeString = fileContext.nodeAsString(typeNode);
75
- fileContext.debug("The '".concat(typeString, "' type is not present."));
76
- }
77
- }
78
- }
79
- return argumentVerified;
80
- }
81
- function verifyMetaType(metaTypeNode, metaTypes, fileContext) {
82
- var metaTypeVerified;
83
- var metaType = fileContext.findMetaTypeByMetaTypeNode(metaTypeNode);
84
- metaTypes.push(metaType);
85
- metaTypeVerified = true;
86
- return metaTypeVerified;
87
- }
88
-
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvZGVjbGFyYXRpb24vbWV0YXZhcmlhYmxlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTWV0YXZhcmlhYmxlIGZyb20gXCIuLi8uLi9tZXRhdmFyaWFibGVcIjtcbmltcG9ydCBNZXRhdmFyaWFibGVBc3NpZ25tZW50IGZyb20gXCIuLi8uLi9hc3NpZ25tZW50L21ldGF2YXJpYWJsZVwiO1xuXG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvYXJyYXlcIjtcbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgdGVybU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9hcmd1bWVudC90ZXJtXCIpLFxuICAgICAgdHlwZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9hcmd1bWVudC90eXBlXCIpLFxuICAgICAgYXJndW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YXZhcmlhYmxlL2FyZ3VtZW50IVwiKSxcbiAgICAgIG1ldGFUeXBlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL21ldGF2YXJpYWJsZURlY2xhcmF0aW9uL21ldGFUeXBlXCIpLFxuICAgICAgbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL21ldGF2YXJpYWJsZURlY2xhcmF0aW9uL21ldGF2YXJpYWJsZVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5TWV0YXZhcmlhYmxlRGVjbGFyYXRpb24obWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlLCBmaWxlQ29udGV4dCkge1xuICBsZXQgbWV0YXZhcmlhYmxlRGVjbGFyYXRpb25WZXJpZmllZDtcblxuICBjb25zdCBtZXRhVHlwZU5vZGUgPSBtZXRhVHlwZU5vZGVRdWVyeShtZXRhdmFyaWFibGVEZWNsYXJhdGlvbk5vZGUpLFxuICAgICAgICBtZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZVF1ZXJ5KG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uTm9kZSksXG4gICAgICAgIG1ldGFUeXBlU3RyaW5nID0gZmlsZUNvbnRleHQubm9kZUFzU3RyaW5nKG1ldGFUeXBlTm9kZSksXG4gICAgICAgIG1ldGF2YXJpYWJsZVN0cmluZyA9IGZpbGVDb250ZXh0Lm5vZGVBc1N0cmluZyhtZXRhdmFyaWFibGVOb2RlKTtcblxuICBmaWxlQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHttZXRhdmFyaWFibGVTdHJpbmd9OiR7bWV0YVR5cGVTdHJpbmd9JyBtZXRhdmFyaWFibGUgZGVjbGFyYXRpb24uLi5gKTtcblxuICBjb25zdCBtZXRhdmFyaWFibGVWVmVyaWZpZWQgPSB2ZXJpZnlNZXRhdmFyaWFibGUobWV0YXZhcmlhYmxlTm9kZSwgbWV0YVR5cGVOb2RlLCBmaWxlQ29udGV4dCk7XG5cbiAgbWV0YXZhcmlhYmxlRGVjbGFyYXRpb25WZXJpZmllZCA9IG1ldGF2YXJpYWJsZVZWZXJpZmllZDsgIC8vL1xuXG4gIGlmIChtZXRhdmFyaWFibGVEZWNsYXJhdGlvblZlcmlmaWVkKSB7XG4gICAgZmlsZUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHttZXRhdmFyaWFibGVTdHJpbmd9OiR7bWV0YVR5cGVTdHJpbmd9JyBtZXRhdmFyaWFibGUgZGVjbGFyYXRpb24uYCk7XG4gIH1cblxuICByZXR1cm4gbWV0YXZhcmlhYmxlRGVjbGFyYXRpb25WZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5TWV0YXZhcmlhYmxlKG1ldGF2YXJpYWJsZU5vZGUsIG1ldGFUeXBlTm9kZSwgZmlsZUNvbnRleHQpIHtcbiAgbGV0IG1ldGF2YXJpYWJsZVZlcmlmaWVkID0gZmFsc2U7XG5cbiAgY29uc3QgbWV0YXZhcmlhYmxlU3RyaW5nID0gZmlsZUNvbnRleHQubm9kZUFzU3RyaW5nKG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gIGZpbGVDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIG1ldGF2YXJpYWJsZS4uLmApO1xuXG4gIGNvbnN0IG1ldGF2YXJpYWJsZVByZXNlbnQgPSBmaWxlQ29udGV4dC5pc01ldGF2YXJpYWJsZVByZXNlbnRCeU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgaWYgKG1ldGF2YXJpYWJsZVByZXNlbnQpIHtcbiAgICBmaWxlQ29udGV4dC5kZWJ1ZyhgVGhlIG1ldGF2YXJpYWJsZSAnJHttZXRhdmFyaWFibGVTdHJpbmd9JyBpcyBhbHJlYWR5IHByZXNlbnQuYCk7XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgdGVybVR5cGVzID0gW10sXG4gICAgICAgICAgbWV0YVR5cGVzID0gW10sXG4gICAgICAgICAgYXJndW1lbnROb2RlID0gYXJndW1lbnROb2RlUXVlcnkobWV0YXZhcmlhYmxlTm9kZSksXG4gICAgICAgICAgYXJndW1lbnRWZXJpZmllZCA9IHZlcmlmeUFyZ3VtZW50KGFyZ3VtZW50Tm9kZSwgdGVybVR5cGVzLCBmaWxlQ29udGV4dCksXG4gICAgICAgICAgbWV0YVR5cGVWZXJpZmllZCA9IHZlcmlmeU1ldGFUeXBlKG1ldGFUeXBlTm9kZSwgbWV0YVR5cGVzLCBmaWxlQ29udGV4dCk7XG5cbiAgICBpZiAoYXJndW1lbnRWZXJpZmllZCAmJiBtZXRhVHlwZVZlcmlmaWVkKSB7XG4gICAgICBsZXQgbWV0YVR5cGU7XG5cbiAgICAgIGNvbnN0IGZpcnN0TWV0YVR5cGUgPSBmaXJzdChtZXRhVHlwZXMpO1xuXG4gICAgICBtZXRhVHlwZSA9IGZpcnN0TWV0YVR5cGU7IC8vL1xuXG4gICAgICBjb25zdCBtZXRhdmFyaWFibGUgPSBNZXRhdmFyaWFibGUuZnJvbU1ldGF2YXJpYWJsZU5vZGVBbmRNZXRhVHlwZShtZXRhdmFyaWFibGVOb2RlLCBtZXRhVHlwZSwgZmlsZUNvbnRleHQpLFxuICAgICAgICAgICAgbWV0YXZhcmlhYmxlQXNzaWdubWVudCA9IE1ldGF2YXJpYWJsZUFzc2lnbm1lbnQuZnJvbU1ldGF2YXJpYWJsZShtZXRhdmFyaWFibGUpLFxuICAgICAgICAgICAgbWV0YXZhcmlhYmxlQXNzaWduZWQgPSBtZXRhdmFyaWFibGVBc3NpZ25tZW50LmFzc2lnbihmaWxlQ29udGV4dCk7XG5cbiAgICAgIGlmIChtZXRhdmFyaWFibGVBc3NpZ25lZCkge1xuICAgICAgICBtZXRhdmFyaWFibGVWZXJpZmllZCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaWYgKG1ldGF2YXJpYWJsZVZlcmlmaWVkKSB7XG4gICAgZmlsZUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHttZXRhdmFyaWFibGVTdHJpbmd9JyBtZXRhdmFyaWFibGUuYCk7XG4gIH1cblxuICByZXR1cm4gbWV0YXZhcmlhYmxlVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeUFyZ3VtZW50KGFyZ3VtZW50Tm9kZSwgdGVybVR5cGVzLCBmaWxlQ29udGV4dCkge1xuICBsZXQgYXJndW1lbnRWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGlmIChhcmd1bWVudE5vZGUgPT09IG51bGwpIHtcbiAgICBhcmd1bWVudFZlcmlmaWVkID0gdHJ1ZTtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCB0ZXJtTm9kZSA9IHRlcm1Ob2RlUXVlcnkoYXJndW1lbnROb2RlKTtcblxuICAgIGlmICh0ZXJtTm9kZSA9PT0gbnVsbCkge1xuXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHRlcm1TdHJpbmcgPSBmaWxlQ29udGV4dC5ub2RlQXNTdHJpbmcodGVybU5vZGUpO1xuXG4gICAgICBmaWxlQ29udGV4dC5kZWJ1ZyhgVGhlICcke3Rlcm1TdHJpbmd9JyB0ZXJtIHdhcyBmb3VuZCB3aGVuIGEgdHlwZSBzaG91bGQgaGF2ZSBiZWVuIHByZXNlbnQuYCk7XG4gICAgfVxuICAgIGNvbnN0IHR5cGVOb2RlID0gdHlwZU5vZGVRdWVyeShhcmd1bWVudE5vZGUpO1xuXG4gICAgaWYgKHR5cGVOb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCB0eXBlID0gZmlsZUNvbnRleHQuZmluZFR5cGVCeVR5cGVOb2RlKHR5cGVOb2RlKTtcblxuICAgICAgaWYgKHR5cGUgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgdGVybVR5cGUgPSB0eXBlOyAgLy8vXG5cbiAgICAgICAgdGVybVR5cGVzLnB1c2godGVybVR5cGUpO1xuXG4gICAgICAgIGFyZ3VtZW50VmVyaWZpZWQgPSB0cnVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgdHlwZVN0cmluZyA9IGZpbGVDb250ZXh0Lm5vZGVBc1N0cmluZyh0eXBlTm9kZSk7XG5cbiAgICAgICAgZmlsZUNvbnRleHQuZGVidWcoYFRoZSAnJHt0eXBlU3RyaW5nfScgdHlwZSBpcyBub3QgcHJlc2VudC5gKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gYXJndW1lbnRWZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5TWV0YVR5cGUobWV0YVR5cGVOb2RlLCBtZXRhVHlwZXMsIGZpbGVDb250ZXh0KSB7XG4gIGxldCBtZXRhVHlwZVZlcmlmaWVkO1xuXG4gIGNvbnN0IG1ldGFUeXBlID0gZmlsZUNvbnRleHQuZmluZE1ldGFUeXBlQnlNZXRhVHlwZU5vZGUobWV0YVR5cGVOb2RlKTtcblxuICBtZXRhVHlwZXMucHVzaChtZXRhVHlwZSk7XG5cbiAgbWV0YVR5cGVWZXJpZmllZCA9IHRydWU7XG5cbiAgcmV0dXJuIG1ldGFUeXBlVmVyaWZpZWQ7XG59Il0sIm5hbWVzIjpbInZlcmlmeU1ldGF2YXJpYWJsZURlY2xhcmF0aW9uIiwidGVybU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInR5cGVOb2RlUXVlcnkiLCJhcmd1bWVudE5vZGVRdWVyeSIsIm1ldGFUeXBlTm9kZVF1ZXJ5IiwibWV0YXZhcmlhYmxlTm9kZVF1ZXJ5IiwibWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlIiwiZmlsZUNvbnRleHQiLCJtZXRhdmFyaWFibGVEZWNsYXJhdGlvblZlcmlmaWVkIiwibWV0YVR5cGVOb2RlIiwibWV0YXZhcmlhYmxlTm9kZSIsIm1ldGFUeXBlU3RyaW5nIiwibm9kZUFzU3RyaW5nIiwibWV0YXZhcmlhYmxlU3RyaW5nIiwidHJhY2UiLCJtZXRhdmFyaWFibGVWVmVyaWZpZWQiLCJ2ZXJpZnlNZXRhdmFyaWFibGUiLCJkZWJ1ZyIsIm1ldGF2YXJpYWJsZVZlcmlmaWVkIiwibWV0YXZhcmlhYmxlUHJlc2VudCIsImlzTWV0YXZhcmlhYmxlUHJlc2VudEJ5TWV0YXZhcmlhYmxlTm9kZSIsInRlcm1UeXBlcyIsIm1ldGFUeXBlcyIsImFyZ3VtZW50Tm9kZSIsImFyZ3VtZW50VmVyaWZpZWQiLCJ2ZXJpZnlBcmd1bWVudCIsIm1ldGFUeXBlVmVyaWZpZWQiLCJ2ZXJpZnlNZXRhVHlwZSIsIm1ldGFUeXBlIiwiZmlyc3RNZXRhVHlwZSIsImZpcnN0IiwibWV0YXZhcmlhYmxlIiwiTWV0YXZhcmlhYmxlIiwiZnJvbU1ldGF2YXJpYWJsZU5vZGVBbmRNZXRhVHlwZSIsIm1ldGF2YXJpYWJsZUFzc2lnbm1lbnQiLCJNZXRhdmFyaWFibGVBc3NpZ25tZW50IiwiZnJvbU1ldGF2YXJpYWJsZSIsIm1ldGF2YXJpYWJsZUFzc2lnbmVkIiwiYXNzaWduIiwidGVybU5vZGUiLCJ0ZXJtU3RyaW5nIiwidHlwZU5vZGUiLCJ0eXBlIiwiZmluZFR5cGVCeVR5cGVOb2RlIiwidGVybVR5cGUiLCJwdXNoIiwidHlwZVN0cmluZyIsImZpbmRNZXRhVHlwZUJ5TWV0YVR5cGVOb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFjQTs7O2VBQXdCQTs7O21FQVpDO29FQUNVO3FCQUViO3FCQUNJOzs7Ozs7QUFFMUIsSUFBTUMsZ0JBQWdCQyxJQUFBQSxnQkFBUyxFQUFDLG1CQUMxQkMsZ0JBQWdCRCxJQUFBQSxnQkFBUyxFQUFDLG1CQUMxQkUsb0JBQW9CRixJQUFBQSxnQkFBUyxFQUFDLDRCQUM5Qkcsb0JBQW9CSCxJQUFBQSxnQkFBUyxFQUFDLHND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
@@ -1,125 +0,0 @@
1
- "use strict";
2
-
3
- import Metavariable from "../../metavariable";
4
- import MetavariableAssignment from "../../assignment/metavariable";
5
-
6
- import { first } from "../../utilities/array";
7
- import { nodeQuery } from "../../utilities/query";
8
-
9
- const termNodeQuery = nodeQuery("/argument/term"),
10
- typeNodeQuery = nodeQuery("/argument/type"),
11
- argumentNodeQuery = nodeQuery("/metavariable/argument!"),
12
- metaTypeNodeQuery = nodeQuery("/metavariableDeclaration/metaType"),
13
- metavariableNodeQuery = nodeQuery("/metavariableDeclaration/metavariable");
14
-
15
- export default function verifyMetavariableDeclaration(metavariableDeclarationNode, fileContext) {
16
- let metavariableDeclarationVerified;
17
-
18
- const metaTypeNode = metaTypeNodeQuery(metavariableDeclarationNode),
19
- metavariableNode = metavariableNodeQuery(metavariableDeclarationNode),
20
- metaTypeString = fileContext.nodeAsString(metaTypeNode),
21
- metavariableString = fileContext.nodeAsString(metavariableNode);
22
-
23
- fileContext.trace(`Verifying the '${metavariableString}:${metaTypeString}' metavariable declaration...`);
24
-
25
- const metavariableVVerified = verifyMetavariable(metavariableNode, metaTypeNode, fileContext);
26
-
27
- metavariableDeclarationVerified = metavariableVVerified; ///
28
-
29
- if (metavariableDeclarationVerified) {
30
- fileContext.debug(`...verified the '${metavariableString}:${metaTypeString}' metavariable declaration.`);
31
- }
32
-
33
- return metavariableDeclarationVerified;
34
- }
35
-
36
- function verifyMetavariable(metavariableNode, metaTypeNode, fileContext) {
37
- let metavariableVerified = false;
38
-
39
- const metavariableString = fileContext.nodeAsString(metavariableNode);
40
-
41
- fileContext.trace(`Verifying the '${metavariableString}' metavariable...`);
42
-
43
- const metavariablePresent = fileContext.isMetavariablePresentByMetavariableNode(metavariableNode);
44
-
45
- if (metavariablePresent) {
46
- fileContext.debug(`The metavariable '${metavariableString}' is already present.`);
47
- } else {
48
- const termTypes = [],
49
- metaTypes = [],
50
- argumentNode = argumentNodeQuery(metavariableNode),
51
- argumentVerified = verifyArgument(argumentNode, termTypes, fileContext),
52
- metaTypeVerified = verifyMetaType(metaTypeNode, metaTypes, fileContext);
53
-
54
- if (argumentVerified && metaTypeVerified) {
55
- let metaType;
56
-
57
- const firstMetaType = first(metaTypes);
58
-
59
- metaType = firstMetaType; ///
60
-
61
- const metavariable = Metavariable.fromMetavariableNodeAndMetaType(metavariableNode, metaType, fileContext),
62
- metavariableAssignment = MetavariableAssignment.fromMetavariable(metavariable),
63
- metavariableAssigned = metavariableAssignment.assign(fileContext);
64
-
65
- if (metavariableAssigned) {
66
- metavariableVerified = true;
67
- }
68
- }
69
- }
70
-
71
- if (metavariableVerified) {
72
- fileContext.debug(`...verified the '${metavariableString}' metavariable.`);
73
- }
74
-
75
- return metavariableVerified;
76
- }
77
-
78
- function verifyArgument(argumentNode, termTypes, fileContext) {
79
- let argumentVerified = false;
80
-
81
- if (argumentNode === null) {
82
- argumentVerified = true;
83
- } else {
84
- const termNode = termNodeQuery(argumentNode);
85
-
86
- if (termNode === null) {
87
-
88
- } else {
89
- const termString = fileContext.nodeAsString(termNode);
90
-
91
- fileContext.debug(`The '${termString}' term was found when a type should have been present.`);
92
- }
93
- const typeNode = typeNodeQuery(argumentNode);
94
-
95
- if (typeNode !== null) {
96
- const type = fileContext.findTypeByTypeNode(typeNode);
97
-
98
- if (type !== null) {
99
- const termType = type; ///
100
-
101
- termTypes.push(termType);
102
-
103
- argumentVerified = true;
104
- } else {
105
- const typeString = fileContext.nodeAsString(typeNode);
106
-
107
- fileContext.debug(`The '${typeString}' type is not present.`);
108
- }
109
- }
110
- }
111
-
112
- return argumentVerified;
113
- }
114
-
115
- function verifyMetaType(metaTypeNode, metaTypes, fileContext) {
116
- let metaTypeVerified;
117
-
118
- const metaType = fileContext.findMetaTypeByMetaTypeNode(metaTypeNode);
119
-
120
- metaTypes.push(metaType);
121
-
122
- metaTypeVerified = true;
123
-
124
- return metaTypeVerified;
125
- }