occam-verify-cli 0.0.877 → 0.0.879
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.
- package/lib/assignment/metaEquality.js +62 -0
- package/lib/context/file.js +12 -4
- package/lib/context/local.js +7 -1
- package/lib/context/localMeta.js +40 -13
- package/lib/metaEquality.js +101 -0
- package/lib/utilities/assignments.js +3 -3
- package/lib/utilities/metaEquivalences.js +15 -0
- package/lib/verify/context.js +34 -0
- package/lib/verify/declaration.js +47 -0
- package/lib/verify/judgement.js +15 -9
- package/lib/verify/metaEquality.js +69 -0
- package/lib/verify/metastatement/qualified.js +2 -2
- package/lib/verify/metastatement/unqualified.js +2 -2
- package/lib/verify/metastatement.js +24 -8
- package/lib/verify/premise.js +6 -4
- package/lib/verify/ruleDerivation.js +16 -3
- package/package.json +2 -2
- package/src/assignment/metaEquality.js +30 -0
- package/src/context/file.js +10 -3
- package/src/context/local.js +2 -0
- package/src/context/localMeta.js +41 -15
- package/src/metaEquality.js +84 -0
- package/src/utilities/assignments.js +2 -2
- package/src/utilities/metaEquivalences.js +5 -0
- package/src/verify/context.js +30 -0
- package/src/verify/declaration.js +52 -0
- package/src/verify/judgement.js +13 -6
- package/src/verify/metaEquality.js +83 -0
- package/src/verify/metastatement/qualified.js +4 -4
- package/src/verify/metastatement/unqualified.js +4 -4
- package/src/verify/metastatement.js +33 -7
- package/src/verify/premise.js +7 -4
- package/src/verify/ruleDerivation.js +24 -5
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import labelMetaType from "../metaType/label";
|
|
4
|
+
import metastatementNodeVerifier from "../verifier/node/metastatement";
|
|
5
|
+
|
|
6
|
+
import { nodeQuery } from "../utilities/query";
|
|
7
|
+
|
|
8
|
+
const metavariableNodeQuery = nodeQuery("/declaration/metavariable!"),
|
|
9
|
+
metastatementNodeQuery = nodeQuery("/declaration/metastatement!");
|
|
10
|
+
|
|
11
|
+
export default function verifyDeclaration(declarationNode, derived, localMetaContext) {
|
|
12
|
+
let declarationVerified = false;
|
|
13
|
+
|
|
14
|
+
const declarationString = localMetaContext.nodeAsString(declarationNode);
|
|
15
|
+
|
|
16
|
+
localMetaContext.trace(`Verifying the '${declarationString}' declaration...`, declarationNode);
|
|
17
|
+
|
|
18
|
+
const metavariableNode = metavariableNodeQuery(declarationNode),
|
|
19
|
+
metavariable = localMetaContext.findMetavariableByMetavariableNode(metavariableNode, localMetaContext);
|
|
20
|
+
|
|
21
|
+
if (metavariable !== null) {
|
|
22
|
+
const metaType = metavariable.getMetaType();
|
|
23
|
+
|
|
24
|
+
if (metaType === labelMetaType) {
|
|
25
|
+
const metastatementNode = metastatementNodeQuery(declarationNode);
|
|
26
|
+
|
|
27
|
+
if (metastatementNode !== null) {
|
|
28
|
+
const { verifyMetastatement } = metastatementNodeVerifier,
|
|
29
|
+
assignments = [],
|
|
30
|
+
metastatementVerified = verifyMetastatement(metastatementNode, assignments, derived, localMetaContext, () => {
|
|
31
|
+
const verifiedAhead = true;
|
|
32
|
+
|
|
33
|
+
return verifiedAhead;
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
declarationVerified = metastatementVerified; ///
|
|
37
|
+
}
|
|
38
|
+
} else {
|
|
39
|
+
const metavariableString = localMetaContext.nodeAsString(metavariableNode),
|
|
40
|
+
labelMetaTypeName = labelMetaType.getName(),
|
|
41
|
+
metaTypeString = metaType.asString();
|
|
42
|
+
|
|
43
|
+
localMetaContext.debug(`The '${metavariableString}' metavariable's meta-type is '${metaTypeString}' when it should be '${labelMetaTypeName}'.`, declarationNode);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
if (declarationVerified) {
|
|
48
|
+
localMetaContext.debug(`...verified the '${declarationString}' declaration.`, declarationNode);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
return declarationVerified;
|
|
52
|
+
}
|
package/src/verify/judgement.js
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
import verifyContext from "../verify/context";
|
|
3
4
|
import contextMetaType from "../metaType/context";
|
|
4
5
|
|
|
5
6
|
import { nodeQuery } from "../utilities/query";
|
|
6
|
-
import { CONTEXT_META_TYPE_NAME } from "../metaTypeNames";
|
|
7
7
|
|
|
8
|
-
const contextNodeQuery = nodeQuery("/judgement/context!"),
|
|
8
|
+
const contextNodeQuery = nodeQuery("/judgement/metastatement/context!"),
|
|
9
9
|
metavariableNodeQuery = nodeQuery("/judgement/metavariable!");
|
|
10
10
|
|
|
11
11
|
export default function verifyJudgement(judgementNode, derived, localMetaContext) {
|
|
12
|
-
let judgementVerified;
|
|
12
|
+
let judgementVerified = false;
|
|
13
13
|
|
|
14
14
|
const judgementString = localMetaContext.nodeAsString(judgementNode);
|
|
15
15
|
|
|
16
16
|
localMetaContext.trace(`Verifying the '${judgementString}' judgement...`, judgementNode);
|
|
17
17
|
|
|
18
18
|
const metavariableNode = metavariableNodeQuery(judgementNode),
|
|
19
|
-
metavariable = localMetaContext.findMetavariableByMetavariableNode(metavariableNode);
|
|
19
|
+
metavariable = localMetaContext.findMetavariableByMetavariableNode(metavariableNode, localMetaContext);
|
|
20
20
|
|
|
21
21
|
if (metavariable !== null) {
|
|
22
22
|
const metaType = metavariable.getMetaType();
|
|
@@ -24,12 +24,19 @@ export default function verifyJudgement(judgementNode, derived, localMetaContext
|
|
|
24
24
|
if (metaType === contextMetaType) {
|
|
25
25
|
const contextNode = contextNodeQuery(judgementNode);
|
|
26
26
|
|
|
27
|
+
if (contextNode !== null) {
|
|
28
|
+
const contextVerified = verifyContext(contextNode, derived, localMetaContext);
|
|
27
29
|
|
|
30
|
+
judgementVerified = contextVerified; ///
|
|
31
|
+
} else {
|
|
32
|
+
localMetaContext.debug(`The right hand side of the '${judgementString}' judgement must be a context.`, judgementNode);
|
|
33
|
+
}
|
|
28
34
|
} else {
|
|
29
|
-
const
|
|
35
|
+
const contextMetaTypeName = contextMetaType.getName(),
|
|
36
|
+
metavariableString = localMetaContext.nodeAsString(metavariableNode),
|
|
30
37
|
metaTypeString = metaType.asString();
|
|
31
38
|
|
|
32
|
-
localMetaContext.debug(`The '${metavariableString}' metavariable's meta-type is '${metaTypeString}' when it should be '${
|
|
39
|
+
localMetaContext.debug(`The '${metavariableString}' metavariable's meta-type is '${metaTypeString}' when it should be '${contextMetaTypeName}'.`, judgementNode);
|
|
33
40
|
}
|
|
34
41
|
}
|
|
35
42
|
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import MetaEquality from "../metaEquality";
|
|
4
|
+
import MetaEqualityAssignment from "../assignment/metaEquality";
|
|
5
|
+
|
|
6
|
+
import { nodeQuery } from "../utilities/query";
|
|
7
|
+
|
|
8
|
+
const leftMetastatementNodeQuery = nodeQuery("/metaEquality/metastatement[0]"),
|
|
9
|
+
rightMetastatementNodeQuery = nodeQuery("/metaEquality/metastatement[1]");
|
|
10
|
+
|
|
11
|
+
export default function verifyMetaEquality(metaEqualityNode, assignments, derived, localMetaContext) {
|
|
12
|
+
let metaEqualityVerified;
|
|
13
|
+
|
|
14
|
+
const metaEqualityString = localMetaContext.nodeAsString(metaEqualityNode);
|
|
15
|
+
|
|
16
|
+
localMetaContext.trace(`Verifying the '${metaEqualityString}' meta-equality...`, metaEqualityNode);
|
|
17
|
+
|
|
18
|
+
const verifyMetaEqualityFunctions = [
|
|
19
|
+
verifyDerivedMetaEquality,
|
|
20
|
+
verifyStatedMetaEquality
|
|
21
|
+
];
|
|
22
|
+
|
|
23
|
+
metaEqualityVerified = verifyMetaEqualityFunctions.some((verifyMetaEqualityFunction) => {
|
|
24
|
+
const metaEqualityVerified = verifyMetaEqualityFunction(metaEqualityNode, assignments, derived, localMetaContext);
|
|
25
|
+
|
|
26
|
+
if (metaEqualityVerified) {
|
|
27
|
+
return true;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
if (metaEqualityVerified) {
|
|
32
|
+
localMetaContext.debug(`...verified the '${metaEqualityString}' meta-equality.`, metaEqualityNode);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
return metaEqualityVerified;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
function verifyDerivedMetaEquality(metaEqualityNode, assignments, derived, localMetaContext) {
|
|
39
|
+
let derivedMetaEqualityVerified = false;
|
|
40
|
+
|
|
41
|
+
if (derived) {
|
|
42
|
+
const metaEqualityString = localMetaContext.nodeAsString(metaEqualityNode);
|
|
43
|
+
|
|
44
|
+
localMetaContext.trace(`Verifying the '${metaEqualityString}' derived meta-equality...`, metaEqualityNode);
|
|
45
|
+
|
|
46
|
+
const leftMetastatementNode = leftMetastatementNodeQuery(metaEqualityNode),
|
|
47
|
+
rightMetastatementNode = rightMetastatementNodeQuery(metaEqualityNode),
|
|
48
|
+
metaEquality = MetaEquality.fromLeftMetastatementNodeRightMetastatementNodeAndMetaEqualityNode(leftMetastatementNode, rightMetastatementNode, metaEqualityNode, localMetaContext);
|
|
49
|
+
|
|
50
|
+
if (metaEquality !== null) {
|
|
51
|
+
const metaEqualityAssignment = MetaEqualityAssignment.fromMetaEquality(metaEquality),
|
|
52
|
+
assignment = metaEqualityAssignment; ///
|
|
53
|
+
|
|
54
|
+
assignments.push(assignment);
|
|
55
|
+
|
|
56
|
+
derivedMetaEqualityVerified = true;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
if (derivedMetaEqualityVerified) {
|
|
60
|
+
localMetaContext.debug(`...verified the '${metaEqualityString}' derived meta-equality.`, metaEqualityNode);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
return derivedMetaEqualityVerified;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
function verifyStatedMetaEquality(metaEqualityNode, assignments, derived, localMetaContext) {
|
|
68
|
+
let statedMetaEqualityVerified = false;
|
|
69
|
+
|
|
70
|
+
if (!derived) {
|
|
71
|
+
const metaEqualityString = localMetaContext.nodeAsString(metaEqualityNode);
|
|
72
|
+
|
|
73
|
+
localMetaContext.trace(`Verifying the '${metaEqualityString}' stated meta-equality...`, metaEqualityNode);
|
|
74
|
+
|
|
75
|
+
debugger
|
|
76
|
+
|
|
77
|
+
if (statedMetaEqualityVerified) {
|
|
78
|
+
localMetaContext.debug(`...verified the '${metaEqualityString}' stated meta-equality.`, metaEqualityNode);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
return statedMetaEqualityVerified;
|
|
83
|
+
}
|
|
@@ -32,11 +32,11 @@ export default function verifyQualifiedMetastatement(qualifiedMetastatementNode,
|
|
|
32
32
|
metavariablePresent = localMetaContext.isMetavariablePresentByMetavariableNode(metavariableNode, localMetaContext);
|
|
33
33
|
|
|
34
34
|
if (metavariablePresent) {
|
|
35
|
-
const metastatementVerified = verifyMetastatement(metastatementNode, derived, localMetaContext, () => {
|
|
36
|
-
|
|
35
|
+
const metastatementVerified = verifyMetastatement(metastatementNode, assignments, derived, localMetaContext, () => {
|
|
36
|
+
const verifiedAhead = true;
|
|
37
37
|
|
|
38
|
-
|
|
39
|
-
|
|
38
|
+
return verifiedAhead;
|
|
39
|
+
});
|
|
40
40
|
|
|
41
41
|
qualifiedMetastatementVerified = metastatementVerified; ///
|
|
42
42
|
}
|
|
@@ -23,11 +23,11 @@ export default function verifyUnqualifiedMetastatement(unqualifiedMetastatementN
|
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
if (!unqualifiedMetastatementVerified) {
|
|
26
|
-
const metastatementVerified = verifyMetastatement(metastatementNode, derived, localMetaContext, () => {
|
|
27
|
-
|
|
26
|
+
const metastatementVerified = verifyMetastatement(metastatementNode, assignments, derived, localMetaContext, () => {
|
|
27
|
+
const verifiedAhead = true;
|
|
28
28
|
|
|
29
|
-
|
|
30
|
-
|
|
29
|
+
return verifiedAhead;
|
|
30
|
+
});
|
|
31
31
|
|
|
32
32
|
unqualifiedMetastatementVerified = metastatementVerified; ///
|
|
33
33
|
}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import verifyJudgement from "../verify/judgement";
|
|
4
|
+
import verifyMetaEquality from "../verify/metaEquality";
|
|
4
5
|
import metastatementNodeVerifier from "../verifier/node/metastatement";
|
|
5
6
|
|
|
6
7
|
import { nodeQuery } from "../utilities/query";
|
|
7
8
|
|
|
8
|
-
const judgementNodeQuery = nodeQuery("/metastatement/judgement!")
|
|
9
|
+
const judgementNodeQuery = nodeQuery("/metastatement/judgement!"),
|
|
10
|
+
metaEqualityNodeQuery = nodeQuery("/metastatement/metaEquality!");
|
|
9
11
|
|
|
10
|
-
function verifyMetastatement(metastatementNode, derived, localMetaContext) {
|
|
12
|
+
function verifyMetastatement(metastatementNode, assignments, derived, localMetaContext) {
|
|
11
13
|
let metastatementVerified;
|
|
12
14
|
|
|
13
15
|
const metastatementString = localMetaContext.nodeAsString(metastatementNode);
|
|
@@ -15,12 +17,13 @@ function verifyMetastatement(metastatementNode, derived, localMetaContext) {
|
|
|
15
17
|
localMetaContext.trace(`Verifying the '${metastatementString}' metastatement...`, metastatementNode);
|
|
16
18
|
|
|
17
19
|
const verifyMetaStatementFunctions = [
|
|
20
|
+
verifyMetastatementAsMetaEquality,
|
|
18
21
|
verifyMetastatementAsJudgement,
|
|
19
22
|
verifyMetastatementAsIs
|
|
20
23
|
];
|
|
21
24
|
|
|
22
25
|
metastatementVerified = verifyMetaStatementFunctions.some((verifyStatementFunction) => {
|
|
23
|
-
const metastatementVerified = verifyStatementFunction(metastatementNode, derived, localMetaContext);
|
|
26
|
+
const metastatementVerified = verifyStatementFunction(metastatementNode, assignments, derived, localMetaContext);
|
|
24
27
|
|
|
25
28
|
if (metastatementVerified) {
|
|
26
29
|
return true;
|
|
@@ -40,7 +43,29 @@ Object.assign(metastatementNodeVerifier, {
|
|
|
40
43
|
|
|
41
44
|
export default verifyMetastatement;
|
|
42
45
|
|
|
43
|
-
function
|
|
46
|
+
function verifyMetastatementAsMetaEquality(metastatementNode, assignments, derived, localMetaContext) {
|
|
47
|
+
let metastatementVerifiedAsMetaEquality = false;
|
|
48
|
+
|
|
49
|
+
const metaEqualityNode = metaEqualityNodeQuery(metastatementNode);
|
|
50
|
+
|
|
51
|
+
if (metaEqualityNode !== null) {
|
|
52
|
+
const metastatementString = localMetaContext.nodeAsString(metastatementNode);
|
|
53
|
+
|
|
54
|
+
localMetaContext.trace(`Verifying the '${metastatementString}' metastatement as a meta-equality...`, metastatementNode);
|
|
55
|
+
|
|
56
|
+
const metaEqualityVerified = verifyMetaEquality(metaEqualityNode, assignments, derived, localMetaContext);
|
|
57
|
+
|
|
58
|
+
metastatementVerifiedAsMetaEquality = metaEqualityVerified; ///
|
|
59
|
+
|
|
60
|
+
if (metastatementVerifiedAsMetaEquality) {
|
|
61
|
+
localMetaContext.debug(`...verified the '${metastatementString}' metastatement as a meta-equality.`, metastatementNode);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
return metastatementVerifiedAsMetaEquality;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
function verifyMetastatementAsJudgement(metastatementNode, assignments, derived, localMetaContext) {
|
|
44
69
|
let metastatementVerifiedAsJudgement = false;
|
|
45
70
|
|
|
46
71
|
const judgementNode = judgementNodeQuery(metastatementNode);
|
|
@@ -62,12 +87,13 @@ function verifyMetastatementAsJudgement(metastatementNode, derived, localMetaCon
|
|
|
62
87
|
return metastatementVerifiedAsJudgement;
|
|
63
88
|
}
|
|
64
89
|
|
|
65
|
-
function verifyMetastatementAsIs(metastatementNode, derived, localMetaContext) {
|
|
90
|
+
function verifyMetastatementAsIs(metastatementNode, assignments, derived, localMetaContext) {
|
|
66
91
|
let metastatementVerifiedAsIs = false;
|
|
67
92
|
|
|
68
|
-
const judgementNode = judgementNodeQuery(metastatementNode)
|
|
93
|
+
const judgementNode = judgementNodeQuery(metastatementNode),
|
|
94
|
+
metaEqualityNode = metaEqualityNodeQuery(metastatementNode);
|
|
69
95
|
|
|
70
|
-
if (judgementNode === null) {
|
|
96
|
+
if ((judgementNode === null) && (metaEqualityNode === null)) {
|
|
71
97
|
const metastatementString = localMetaContext.nodeAsString(metastatementNode);
|
|
72
98
|
|
|
73
99
|
localMetaContext.trace(`Verifying the '${metastatementString}' metastatement as is...`, metastatementNode);
|
package/src/verify/premise.js
CHANGED
|
@@ -5,6 +5,7 @@ import MetaproofStep from "../step/metaproof";
|
|
|
5
5
|
import verifyUnqualifiedMetastatement from "../verify/metastatement/unqualified";
|
|
6
6
|
|
|
7
7
|
import { nodeQuery } from "../utilities/query";
|
|
8
|
+
import { assignAssignment } from "../utilities/assignments";
|
|
8
9
|
|
|
9
10
|
const metastatementNodeQuery = nodeQuery("/unqualifiedMetastatement/metastatement!"),
|
|
10
11
|
unqualifiedMetastatementNodeQuery = nodeQuery("/premise/unqualifiedMetastatement!");
|
|
@@ -22,6 +23,12 @@ export default function verifyPremise(premiseNode, premises, localMetaContext) {
|
|
|
22
23
|
unqualifiedMetastatementVerified = verifyUnqualifiedMetastatement(unqualifiedMetastatementNode, assignments, derived, localMetaContext);
|
|
23
24
|
|
|
24
25
|
if (unqualifiedMetastatementVerified) {
|
|
26
|
+
const assignmentAssigned = assignAssignment(assignments, localMetaContext);
|
|
27
|
+
|
|
28
|
+
premiseVerified = assignmentAssigned; ///
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
if (premiseVerified) {
|
|
25
32
|
const metastatementNode = metastatementNodeQuery(unqualifiedMetastatementNode),
|
|
26
33
|
metaproofStep = MetaproofStep.fromMetastatementNode(metastatementNode),
|
|
27
34
|
premise = Premise.fromMetastatementNode(metastatementNode);
|
|
@@ -30,10 +37,6 @@ export default function verifyPremise(premiseNode, premises, localMetaContext) {
|
|
|
30
37
|
|
|
31
38
|
localMetaContext.addMetaproofStep(metaproofStep);
|
|
32
39
|
|
|
33
|
-
premiseVerified = true;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
if (premiseVerified) {
|
|
37
40
|
localMetaContext.debug(`...verified the '${premiseString}' premise.`, premiseNode);
|
|
38
41
|
}
|
|
39
42
|
|
|
@@ -6,6 +6,7 @@ import LocalMetaContext from "../context/localMeta";
|
|
|
6
6
|
import verifyQualifiedMetastatement from "../verify/metastatement/qualified";
|
|
7
7
|
import verifyUnqualifiedMetastatement from "../verify/metastatement/unqualified";
|
|
8
8
|
|
|
9
|
+
import { assignAssignment } from "../utilities/assignments";
|
|
9
10
|
import { nodeQuery, nodesQuery } from "../utilities/query";
|
|
10
11
|
import { RULE_SUBPROOF_RULE_NAME, QUALIFIED_METASTATEMENT_RULE_NAME, UNQUALIFIED_METASTATEMENT_RULE_NAME } from "../ruleNames";
|
|
11
12
|
|
|
@@ -89,11 +90,20 @@ function verifyChild(childNode, localMetaContext) {
|
|
|
89
90
|
}
|
|
90
91
|
|
|
91
92
|
case QUALIFIED_METASTATEMENT_RULE_NAME: {
|
|
93
|
+
let qualifiedMetastatementVerified;
|
|
94
|
+
|
|
92
95
|
const derived = true,
|
|
93
96
|
assignments = [],
|
|
94
97
|
metavariableReferences = true,
|
|
95
|
-
qualifiedMetastatementNode = childNode
|
|
96
|
-
|
|
98
|
+
qualifiedMetastatementNode = childNode; ///
|
|
99
|
+
|
|
100
|
+
qualifiedMetastatementVerified = verifyQualifiedMetastatement(qualifiedMetastatementNode, metavariableReferences, assignments, derived, localMetaContext);
|
|
101
|
+
|
|
102
|
+
if (qualifiedMetastatementVerified) {
|
|
103
|
+
const assignmentAssigned = assignAssignment(assignments, localMetaContext);
|
|
104
|
+
|
|
105
|
+
qualifiedMetastatementVerified = assignmentAssigned; ///
|
|
106
|
+
}
|
|
97
107
|
|
|
98
108
|
if (qualifiedMetastatementVerified) {
|
|
99
109
|
const metastatementNode = metastatementNodeQuery(qualifiedMetastatementNode),
|
|
@@ -108,10 +118,19 @@ function verifyChild(childNode, localMetaContext) {
|
|
|
108
118
|
}
|
|
109
119
|
|
|
110
120
|
case UNQUALIFIED_METASTATEMENT_RULE_NAME: {
|
|
121
|
+
let unqualifiedMetastatementVerified;
|
|
122
|
+
|
|
111
123
|
const derived = true,
|
|
112
|
-
assignments =
|
|
113
|
-
unqualifiedMetastatementNode = childNode
|
|
114
|
-
|
|
124
|
+
assignments = [],
|
|
125
|
+
unqualifiedMetastatementNode = childNode; ///
|
|
126
|
+
|
|
127
|
+
unqualifiedMetastatementVerified = verifyUnqualifiedMetastatement(unqualifiedMetastatementNode, assignments, derived, localMetaContext);
|
|
128
|
+
|
|
129
|
+
if (unqualifiedMetastatementVerified) {
|
|
130
|
+
const assignmentAssigned = assignAssignment(assignments, localMetaContext);
|
|
131
|
+
|
|
132
|
+
unqualifiedMetastatementVerified = assignmentAssigned; ///
|
|
133
|
+
}
|
|
115
134
|
|
|
116
135
|
if (unqualifiedMetastatementVerified) {
|
|
117
136
|
const metastatementNode = metastatementNodeQuery(unqualifiedMetastatementNode),
|