occam-verify-cli 0.0.1061 → 0.0.1065
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/bin/action/verify.js +2 -0
- package/lib/assertion/contained.js +184 -0
- package/lib/assertion/defined.js +171 -0
- package/lib/assertion/subproof.js +5 -5
- package/lib/assertion/type.js +13 -6
- package/lib/conclusion.js +5 -8
- package/lib/consequent.js +5 -8
- package/lib/context/release.js +3 -2
- package/lib/declaration.js +6 -50
- package/lib/equality.js +6 -7
- package/lib/equivalence.js +3 -2
- package/lib/frame.js +160 -64
- package/lib/metavariable.js +49 -39
- package/lib/mixins/statement/verify.js +24 -32
- package/lib/premise.js +5 -8
- package/lib/proofStep.js +2 -2
- package/lib/statement/unqualified.js +14 -1
- package/lib/statement.js +77 -23
- package/lib/substitution/statement.js +17 -2
- package/lib/substitution/statementForMetavariable.js +22 -27
- package/lib/substitution/termForVariable.js +9 -9
- package/lib/supposition.js +5 -8
- package/lib/term.js +46 -3
- package/lib/unifier/intrinsicLevel.js +4 -4
- package/lib/unifier/metaLevel.js +9 -13
- package/lib/unifier/metavariable.js +4 -4
- package/lib/unify/simpleSubstitutionStatementWithComplexSubstitutionStatement.js +3 -3
- package/lib/unify/statementWithSttaemetnGivenEquivalences.js +5 -5
- package/lib/utilities/unify.js +4 -21
- package/lib/variable.js +19 -3
- package/lib/verifier/intrinsicLevel.js +4 -4
- package/lib/verifier/metaLevel.js +4 -4
- package/lib/verifier/substitution.js +161 -0
- package/lib/verifier/topLevel.js +4 -4
- package/package.json +1 -1
- package/src/assertion/contained.js +170 -0
- package/src/assertion/defined.js +161 -0
- package/src/assertion/subproof.js +5 -4
- package/src/assertion/type.js +18 -7
- package/src/conclusion.js +5 -18
- package/src/consequent.js +5 -18
- package/src/context/release.js +3 -1
- package/src/declaration.js +49 -49
- package/src/equality.js +7 -8
- package/src/equivalence.js +3 -1
- package/src/frame.js +204 -59
- package/src/metavariable.js +82 -45
- package/src/mixins/statement/verify.js +30 -42
- package/src/premise.js +5 -18
- package/src/proofStep.js +1 -1
- package/src/statement/unqualified.js +17 -0
- package/src/statement.js +116 -32
- package/src/substitution/statement.js +22 -2
- package/src/substitution/statementForMetavariable.js +27 -34
- package/src/substitution/termForVariable.js +15 -12
- package/src/supposition.js +5 -18
- package/src/term.js +61 -3
- package/src/unifier/intrinsicLevel.js +3 -3
- package/src/unifier/metaLevel.js +16 -21
- package/src/unifier/metavariable.js +3 -3
- package/src/unify/simpleSubstitutionStatementWithComplexSubstitutionStatement.js +2 -2
- package/src/unify/statementWithSttaemetnGivenEquivalences.js +4 -4
- package/src/utilities/unify.js +0 -14
- package/src/variable.js +27 -3
- package/src/verifier/intrinsicLevel.js +3 -3
- package/src/verifier/metaLevel.js +3 -3
- package/src/verifier/substitution.js +75 -0
- package/src/verifier/topLevel.js +3 -3
- package/lib/unify/frameWithMetaType.js +0 -24
- package/lib/verify/assertion/contained.js +0 -107
- package/lib/verify/assertion/defined.js +0 -98
- package/lib/verify/assertion/subproof.js +0 -16
- package/lib/verify/frameGivenMetaType.js +0 -37
- package/src/unify/frameWithMetaType.js +0 -14
- package/src/verify/assertion/contained.js +0 -134
- package/src/verify/assertion/defined.js +0 -120
- package/src/verify/assertion/subproof.js +0 -9
- package/src/verify/frameGivenMetaType.js +0 -31
|
@@ -11,15 +11,15 @@ const typeNodeQuery = nodeQuery("/type!"),
|
|
|
11
11
|
|
|
12
12
|
class MetavariableUnifier extends Unifier {
|
|
13
13
|
unify(metavariableNodeA, metavariableNodeB, localContext) {
|
|
14
|
-
let
|
|
14
|
+
let metavariableUnified;
|
|
15
15
|
|
|
16
16
|
const nonTerminalNodeA = metavariableNodeA, ///
|
|
17
17
|
nonTerminalNodeB = metavariableNodeB, ///
|
|
18
18
|
nonTerminalNodeUnified = this.unifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, localContext);
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
metavariableUnified = nonTerminalNodeUnified; ///
|
|
21
21
|
|
|
22
|
-
return
|
|
22
|
+
return metavariableUnified;
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
static maps = [
|
|
@@ -15,9 +15,9 @@ export default function unifyComplexSubstitutionStatementWithSimpleSubstitutionS
|
|
|
15
15
|
|
|
16
16
|
localContextA = localContextB; ///
|
|
17
17
|
|
|
18
|
-
const
|
|
18
|
+
const unifiedAtMetaLevel = metaLevelUnifier.unify(nodeA, nodeB, substitutions, localContextA, localContextB);
|
|
19
19
|
|
|
20
|
-
simpleSubstitutionStatementUnifiedWithComplexSubstitutionStatement =
|
|
20
|
+
simpleSubstitutionStatementUnifiedWithComplexSubstitutionStatement = unifiedAtMetaLevel; ///
|
|
21
21
|
|
|
22
22
|
if (simpleSubstitutionStatementUnifiedWithComplexSubstitutionStatement) {
|
|
23
23
|
localContextB.trace(`...unified the simple substitution's '${simpleSubstitutionStatementString}' statement with the complex substitution's '${complexSubstitutionStatementString}' statement.`, simpleSubstitutionStatementNode);
|
|
@@ -15,9 +15,9 @@ export default function unifyStatementWithStatementGivenEquivalences(statementNo
|
|
|
15
15
|
const substitutions = Substitutions.fromNothing(),
|
|
16
16
|
nodeA = statementNodeA, ///
|
|
17
17
|
nodeB = statementNodeB, ///
|
|
18
|
-
|
|
18
|
+
unifiedAtIntrinsicLevel = intrinsicLevelUnifier.unify(nodeA, nodeB, substitutions, localContextA, localContextB);
|
|
19
19
|
|
|
20
|
-
if (
|
|
20
|
+
if (unifiedAtIntrinsicLevel) {
|
|
21
21
|
const substitutionsUnifiedWithEquivalences = substitutions.unifyWithEquivalences(equivalences, localContextA, localContextB);
|
|
22
22
|
|
|
23
23
|
statementUnifiedWithStatementGivenEquivalences = substitutionsUnifiedWithEquivalences; ///
|
|
@@ -34,9 +34,9 @@ export default function unifyStatementWithStatementGivenEquivalences(statementNo
|
|
|
34
34
|
const substitutions = Substitutions.fromNothing(),
|
|
35
35
|
nodeA = statementNodeB, ///
|
|
36
36
|
nodeB = statementNodeA, ///
|
|
37
|
-
|
|
37
|
+
unifiedAtIntrinsicLevel = intrinsicLevelUnifier.unify(nodeA, nodeB, substitutions, localContextA, localContextB);
|
|
38
38
|
|
|
39
|
-
if (
|
|
39
|
+
if (unifiedAtIntrinsicLevel) {
|
|
40
40
|
const substitutionsUnifiedWithEquivalences = substitutions.unifyWithEquivalences(equivalences, localContextA, localContextB);
|
|
41
41
|
|
|
42
42
|
statementUnifiedWithStatementGivenEquivalences = substitutionsUnifiedWithEquivalences; ///
|
package/src/utilities/unify.js
CHANGED
|
@@ -21,17 +21,3 @@ export function metavariableFromFrameNode(frameNode, localContext) {
|
|
|
21
21
|
return metavariable;
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
-
export function metavariableFromStatementNode(statementNode, localContext) {
|
|
25
|
-
let metavariable = null;
|
|
26
|
-
|
|
27
|
-
const statementMetavariableNode = statementMetavariableNodeQuery(statementNode)
|
|
28
|
-
|
|
29
|
-
if (statementMetavariableNode !== null) {
|
|
30
|
-
const metavariableNode = statementMetavariableNode, ///
|
|
31
|
-
metavariableName = metavariableNameFromMetavariableNode(metavariableNode);
|
|
32
|
-
|
|
33
|
-
metavariable = localContext.findMetavariableByMetavariableName(metavariableName);
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
return metavariable;
|
|
37
|
-
}
|
package/src/variable.js
CHANGED
|
@@ -8,13 +8,12 @@ import { nodeQuery } from "./utilities/query";
|
|
|
8
8
|
import { objectType } from "./type";
|
|
9
9
|
import { variableNameFromVariableNode} from "./utilities/name";
|
|
10
10
|
import { variableNodeFromVariableString } from "./utilities/node";
|
|
11
|
-
import local from "./context/local";
|
|
12
11
|
|
|
13
12
|
const typeNodeQuery = nodeQuery("/variableDeclaration/type"),
|
|
14
13
|
variableNodeQuery = nodeQuery("/variableDeclaration/variable"),
|
|
15
14
|
termVariableNodeQuery = nodeQuery("/term/variable");
|
|
16
15
|
|
|
17
|
-
|
|
16
|
+
class Variable {
|
|
18
17
|
constructor(localContext, string, node, name, type) {
|
|
19
18
|
this.localContext = localContext; ///
|
|
20
19
|
this.string = string;
|
|
@@ -166,7 +165,7 @@ export default class Variable {
|
|
|
166
165
|
if (termVariable === variable) {
|
|
167
166
|
termUnified = true;
|
|
168
167
|
} else {
|
|
169
|
-
const termForVariableSubstitution = TermForVariableSubstitution.fromTernAndVariable(term, variable
|
|
168
|
+
const termForVariableSubstitution = TermForVariableSubstitution.fromTernAndVariable(term, variable),
|
|
170
169
|
substitution = termForVariableSubstitution; ///
|
|
171
170
|
|
|
172
171
|
substitutions.addSubstitution(substitution, localContext);
|
|
@@ -210,6 +209,25 @@ export default class Variable {
|
|
|
210
209
|
return variable;
|
|
211
210
|
}
|
|
212
211
|
|
|
212
|
+
static fromTermNode(termNode, localContext) {
|
|
213
|
+
let variable = null;
|
|
214
|
+
|
|
215
|
+
const termVariableNode = termVariableNodeQuery(termNode);
|
|
216
|
+
|
|
217
|
+
if (termVariableNode !== null) {
|
|
218
|
+
const variableNode = termVariableNode, ///
|
|
219
|
+
variableName = variableNameFromVariableNode(variableNode),
|
|
220
|
+
node = variableNode, ///
|
|
221
|
+
string = localContext.nodeAsString(node),
|
|
222
|
+
name = variableName, ///
|
|
223
|
+
type = null;
|
|
224
|
+
|
|
225
|
+
variable = new Variable(localContext, string, node, name, type);
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
return variable;
|
|
229
|
+
}
|
|
230
|
+
|
|
213
231
|
static fromVariableNode(variableNode, localContext) {
|
|
214
232
|
let variable = null;
|
|
215
233
|
|
|
@@ -253,6 +271,12 @@ export default class Variable {
|
|
|
253
271
|
}
|
|
254
272
|
}
|
|
255
273
|
|
|
274
|
+
Object.assign(shim, {
|
|
275
|
+
Variable
|
|
276
|
+
});
|
|
277
|
+
|
|
278
|
+
export default Variable;
|
|
279
|
+
|
|
256
280
|
function typeFromJSON(json, fileContext) {
|
|
257
281
|
let { type } = json;
|
|
258
282
|
|
|
@@ -9,14 +9,14 @@ const termNodeQuery = nodeQuery("/term!");
|
|
|
9
9
|
|
|
10
10
|
class IntrinsicLevelVerifier extends Verifier {
|
|
11
11
|
verify(node, localContext) {
|
|
12
|
-
let
|
|
12
|
+
let verifiedAtIntrinsicLevel;
|
|
13
13
|
|
|
14
14
|
const nonTerminalNode = node, ///
|
|
15
15
|
nonTerminalNodeVerified = this.verifyNonTerminalNode(nonTerminalNode, localContext);
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
verifiedAtIntrinsicLevel = nonTerminalNodeVerified; ///
|
|
18
18
|
|
|
19
|
-
return
|
|
19
|
+
return verifiedAtIntrinsicLevel;
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
static maps = [
|
|
@@ -10,15 +10,15 @@ const termNodeQuery = nodeQuery("/term!"),
|
|
|
10
10
|
|
|
11
11
|
class MetaLevelVerifier extends Verifier {
|
|
12
12
|
verify(node, assignments, stated, localContext) {
|
|
13
|
-
let
|
|
13
|
+
let verifiedAtMetaLevel;
|
|
14
14
|
|
|
15
15
|
const nonTerminalNode = node, ///
|
|
16
16
|
childNodes = nonTerminalNode.getChildNodes(),
|
|
17
17
|
nonTerminalNodeVerified = this.verifyChildNodes(childNodes, assignments, stated, localContext);
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
verifiedAtMetaLevel = nonTerminalNodeVerified; ///
|
|
20
20
|
|
|
21
|
-
return
|
|
21
|
+
return verifiedAtMetaLevel;
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
static maps = [
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import shim from "../shim";
|
|
4
|
+
import Verifier from "../verifier";
|
|
5
|
+
|
|
6
|
+
import { nodeQuery } from "../utilities/query";
|
|
7
|
+
|
|
8
|
+
const termNodeQuery = nodeQuery("/term"),
|
|
9
|
+
frameNodeQuery = nodeQuery("/frame"),
|
|
10
|
+
variableNodeQuery = nodeQuery("/variable"),
|
|
11
|
+
metavariableNodeQuery = nodeQuery("/metavariable");
|
|
12
|
+
|
|
13
|
+
class SubstitutionVerifier extends Verifier {
|
|
14
|
+
verify(substitutionNode, assignments, stated, localContext) {
|
|
15
|
+
let substitutionVerified;
|
|
16
|
+
|
|
17
|
+
const nonTerminalNode = substitutionNode, ///
|
|
18
|
+
nonTerminalNodeVerified = this.verifyNonTerminalNode(nonTerminalNode, assignments, stated, localContext);
|
|
19
|
+
|
|
20
|
+
substitutionVerified = nonTerminalNodeVerified; ///
|
|
21
|
+
|
|
22
|
+
return substitutionVerified;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
static maps = [
|
|
26
|
+
{
|
|
27
|
+
nodeQuery: metavariableNodeQuery,
|
|
28
|
+
verify: (metavariableNode, assignments, stated, localContext) => {
|
|
29
|
+
const { Metavariable } = shim,
|
|
30
|
+
metavariable = Metavariable.fromMetavariableNode(metavariableNode, localContext),
|
|
31
|
+
metavariableVerified = metavariable.verify(localContext);
|
|
32
|
+
|
|
33
|
+
return metavariableVerified;
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
nodeQuery: variableNodeQuery,
|
|
38
|
+
verify: (variableNode, assignments, stated, localContext) => {
|
|
39
|
+
const { Variable } = shim,
|
|
40
|
+
variable = Variable.fromVariableNode(variableNode, localContext),
|
|
41
|
+
variableVerified = variable.verify(localContext);
|
|
42
|
+
|
|
43
|
+
return variableVerified;
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
nodeQuery: frameNodeQuery,
|
|
48
|
+
verify: (frameNode, assignments, stated, localContext) => {
|
|
49
|
+
const { Frame } = shim,
|
|
50
|
+
frame = Frame.fromFrameNode(frameNode, localContext),
|
|
51
|
+
frameVerified = frame.verify(localContext);
|
|
52
|
+
|
|
53
|
+
return frameVerified;
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
nodeQuery: termNodeQuery,
|
|
58
|
+
verify: (termNode, assignments, stated, localContext) => {
|
|
59
|
+
const { Term } = shim,
|
|
60
|
+
term = Term.fromTermNode(termNode, localContext),
|
|
61
|
+
termVerified = term.verify(localContext, () => {
|
|
62
|
+
const verifiedAhead = true;
|
|
63
|
+
|
|
64
|
+
return verifiedAhead;
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
return termVerified;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
];
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
const substitutionVerifier = new SubstitutionVerifier();
|
|
74
|
+
|
|
75
|
+
export default substitutionVerifier;
|
package/src/verifier/topLevel.js
CHANGED
|
@@ -34,14 +34,14 @@ const errorNodeQuery = nodeQuery("/error"),
|
|
|
34
34
|
|
|
35
35
|
class TopLevelVerifier extends Verifier {
|
|
36
36
|
verify(node, fileContext) {
|
|
37
|
-
let
|
|
37
|
+
let verifiedAtTopLevel;
|
|
38
38
|
|
|
39
39
|
const nonTerminalNode = node, ///
|
|
40
40
|
nonTerminalNodeVerified = this.verifyNonTerminalNode(nonTerminalNode, fileContext);
|
|
41
41
|
|
|
42
|
-
|
|
42
|
+
verifiedAtTopLevel = nonTerminalNodeVerified; ///
|
|
43
43
|
|
|
44
|
-
return
|
|
44
|
+
return verifiedAtTopLevel;
|
|
45
45
|
}
|
|
46
46
|
|
|
47
47
|
static maps = [
|
|
@@ -1,24 +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 unifyFrameWithMetaType;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _frameGivenMetaType = /*#__PURE__*/ _interop_require_default(require("../verify/frameGivenMetaType"));
|
|
12
|
-
function _interop_require_default(obj) {
|
|
13
|
-
return obj && obj.__esModule ? obj : {
|
|
14
|
-
default: obj
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
function unifyFrameWithMetaType(frameNode, metaTypeNode, assignments, stated, localContext) {
|
|
18
|
-
var frameUnifiedWithMetaType;
|
|
19
|
-
var metaType = localContext.findMetaTypeByMetaTypeName(metaTypeNode), frameVerifiedGivenMetaType = (0, _frameGivenMetaType.default)(frameNode, metaType, assignments, stated, localContext);
|
|
20
|
-
frameUnifiedWithMetaType = frameVerifiedGivenMetaType; ///
|
|
21
|
-
return frameUnifiedWithMetaType;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91bmlmeS9mcmFtZVdpdGhNZXRhVHlwZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHZlcmlmeUZyYW1lR2l2ZW5NZXRhVHlwZSBmcm9tIFwiLi4vdmVyaWZ5L2ZyYW1lR2l2ZW5NZXRhVHlwZVwiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1bmlmeUZyYW1lV2l0aE1ldGFUeXBlKGZyYW1lTm9kZSwgbWV0YVR5cGVOb2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGZyYW1lVW5pZmllZFdpdGhNZXRhVHlwZTtcblxuICBjb25zdCBtZXRhVHlwZSA9IGxvY2FsQ29udGV4dC5maW5kTWV0YVR5cGVCeU1ldGFUeXBlTmFtZShtZXRhVHlwZU5vZGUpLFxuICAgICAgICBmcmFtZVZlcmlmaWVkR2l2ZW5NZXRhVHlwZSA9IHZlcmlmeUZyYW1lR2l2ZW5NZXRhVHlwZShmcmFtZU5vZGUsIG1ldGFUeXBlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpO1xuXG4gIGZyYW1lVW5pZmllZFdpdGhNZXRhVHlwZSA9IGZyYW1lVmVyaWZpZWRHaXZlbk1ldGFUeXBlOyAgLy8vXG5cbiAgcmV0dXJuIGZyYW1lVW5pZmllZFdpdGhNZXRhVHlwZTtcbn1cbiJdLCJuYW1lcyI6WyJ1bmlmeUZyYW1lV2l0aE1ldGFUeXBlIiwiZnJhbWVOb2RlIiwibWV0YVR5cGVOb2RlIiwiYXNzaWdubWVudHMiLCJzdGF0ZWQiLCJsb2NhbENvbnRleHQiLCJmcmFtZVVuaWZpZWRXaXRoTWV0YVR5cGUiLCJtZXRhVHlwZSIsImZpbmRNZXRhVHlwZUJ5TWV0YVR5cGVOYW1lIiwiZnJhbWVWZXJpZmllZEdpdmVuTWV0YVR5cGUiLCJ2ZXJpZnlGcmFtZUdpdmVuTWV0YVR5cGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQUlBOzs7ZUFBd0JBOzs7eUVBRmE7Ozs7OztBQUV0QixTQUFTQSx1QkFBdUJDLFNBQVMsRUFBRUMsWUFBWSxFQUFFQyxXQUFXLEVBQUVDLE1BQU0sRUFBRUMsWUFBWTtJQUN2RyxJQUFJQztJQUVKLElBQU1DLFdBQVdGLGFBQWFHLDBCQUEwQixDQUFDTixlQUNuRE8sNkJBQTZCQyxJQUFBQSwyQkFBd0IsRUFBQ1QsV0FBV00sVUFBVUosYUFBYUMsUUFBUUM7SUFFdEdDLDJCQUEyQkcsNEJBQTZCLEdBQUc7SUFFM0QsT0FBT0g7QUFDVCJ9
|
|
@@ -1,107 +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 verifyContainedAssertion;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _metaLevel = /*#__PURE__*/ _interop_require_default(require("../../verifier/metaLevel"));
|
|
12
|
-
var _assertion = require("../../utilities/assertion");
|
|
13
|
-
var _query = require("../../utilities/query");
|
|
14
|
-
function _interop_require_default(obj) {
|
|
15
|
-
return obj && obj.__esModule ? obj : {
|
|
16
|
-
default: obj
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
var termVariableNodeQuery = (0, _query.nodeQuery)("/containedAssertion/term/variable!"), frameMetavariableNodeQuery = (0, _query.nodeQuery)("/containedAssertion/frame/metavariable!"), statementVariableNodesQuery = (0, _query.nodesQuery)("/containedAssertion/statement//variable"), statementMetavariableNodesQuery = (0, _query.nodesQuery)("/containedAssertion/statement//metavariable");
|
|
20
|
-
var verifyContainedAssertionFunctions = [
|
|
21
|
-
verifyDerivedContainedAssertion,
|
|
22
|
-
verifyStatedContainedAssertion
|
|
23
|
-
];
|
|
24
|
-
function verifyContainedAssertion(containedAssertionNode, assignments, stated, localContext) {
|
|
25
|
-
var containedAssertionVerified = false;
|
|
26
|
-
var containedAssertionString = localContext.nodeAsString(containedAssertionNode), savedStated = stated; ///
|
|
27
|
-
localContext.trace("Verifying the '".concat(containedAssertionString, "' contained assertion..."), containedAssertionNode);
|
|
28
|
-
assignments = null; ///
|
|
29
|
-
stated = true; ///
|
|
30
|
-
var verified = _metaLevel.default.verify(containedAssertionNode, assignments, stated, localContext);
|
|
31
|
-
stated = savedStated; ///
|
|
32
|
-
if (verified) {
|
|
33
|
-
containedAssertionVerified = verifyContainedAssertionFunctions.some(function(verifyContainedAssertionFunction) {
|
|
34
|
-
var containedAssertionVerified = verifyContainedAssertionFunction(containedAssertionNode, assignments, stated, localContext);
|
|
35
|
-
if (containedAssertionVerified) {
|
|
36
|
-
return true;
|
|
37
|
-
}
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
if (containedAssertionVerified) {
|
|
41
|
-
localContext.debug("...verified the '".concat(containedAssertionString, "' contained assertion."), containedAssertionNode);
|
|
42
|
-
}
|
|
43
|
-
return containedAssertionVerified;
|
|
44
|
-
}
|
|
45
|
-
function verifyDerivedContainedAssertion(containedAssertionNode, assignments, stated, localContext) {
|
|
46
|
-
var derivedContainedAssertionVerified = false;
|
|
47
|
-
if (!stated) {
|
|
48
|
-
var containedAssertionString = localContext.nodeAsString(containedAssertionNode);
|
|
49
|
-
localContext.trace("Verifying the '".concat(containedAssertionString, "' derived contained assertion..."), containedAssertionNode);
|
|
50
|
-
var assertionNegated = (0, _assertion.isAssertionNegated)(containedAssertionNode), frameMetavariableNode = frameMetavariableNodeQuery(containedAssertionNode), termVariableNode = termVariableNodeQuery(containedAssertionNode), negated = assertionNegated; ///
|
|
51
|
-
if (false) {
|
|
52
|
-
///
|
|
53
|
-
} else if (frameMetavariableNode !== null) {
|
|
54
|
-
var statementMetavariableNodes = statementMetavariableNodesQuery(containedAssertionNode), frameMetavariableNodeMatchesStatementMetavariableNode = statementMetavariableNodes.some(function(statementMetavariableNode) {
|
|
55
|
-
var frameMetavariableNodeMatchesStatementMetavariableNode = frameMetavariableNode.match(statementMetavariableNode);
|
|
56
|
-
if (frameMetavariableNodeMatchesStatementMetavariableNode) {
|
|
57
|
-
return true;
|
|
58
|
-
}
|
|
59
|
-
});
|
|
60
|
-
if (!negated) {
|
|
61
|
-
if (frameMetavariableNodeMatchesStatementMetavariableNode) {
|
|
62
|
-
derivedContainedAssertionVerified = true;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
if (negated) {
|
|
66
|
-
if (!frameMetavariableNodeMatchesStatementMetavariableNode) {
|
|
67
|
-
derivedContainedAssertionVerified = true;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
} else if (termVariableNode !== null) {
|
|
71
|
-
var statementVariableNodes = statementVariableNodesQuery(containedAssertionNode), termVariableNodeMatchesStatementVariableNode = statementVariableNodes.some(function(statementVariableNode) {
|
|
72
|
-
var termVariableNodeMatchesStatementVariableNode = termVariableNode.match(statementVariableNode);
|
|
73
|
-
if (termVariableNodeMatchesStatementVariableNode) {
|
|
74
|
-
return true;
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
if (!negated) {
|
|
78
|
-
if (termVariableNodeMatchesStatementVariableNode) {
|
|
79
|
-
derivedContainedAssertionVerified = true;
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
if (negated) {
|
|
83
|
-
if (!termVariableNodeMatchesStatementVariableNode) {
|
|
84
|
-
derivedContainedAssertionVerified = true;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
if (derivedContainedAssertionVerified) {
|
|
89
|
-
localContext.debug("...verified the '".concat(containedAssertionString, "' derived contained assertion."), containedAssertionNode);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
return derivedContainedAssertionVerified;
|
|
93
|
-
}
|
|
94
|
-
function verifyStatedContainedAssertion(containedAssertionNode, assignments, stated, localContext) {
|
|
95
|
-
var statedContainedAssertionVerified;
|
|
96
|
-
if (stated) {
|
|
97
|
-
var containedAssertionString = localContext.nodeAsString(containedAssertionNode);
|
|
98
|
-
localContext.trace("Verifying the '".concat(containedAssertionString, "' stated contained assertion..."), containedAssertionNode);
|
|
99
|
-
statedContainedAssertionVerified = true;
|
|
100
|
-
if (statedContainedAssertionVerified) {
|
|
101
|
-
localContext.debug("...verified the '".concat(containedAssertionString, "' stated contained assertion."), containedAssertionNode);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
return statedContainedAssertionVerified;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvYXNzZXJ0aW9uL2NvbnRhaW5lZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IG1ldGFMZXZlbFZlcmlmaWVyIGZyb20gXCIuLi8uLi92ZXJpZmllci9tZXRhTGV2ZWxcIjtcblxuaW1wb3J0IHsgaXNBc3NlcnRpb25OZWdhdGVkIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9hc3NlcnRpb25cIjtcbmltcG9ydCB7IG5vZGVRdWVyeSwgbm9kZXNRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgdGVybVZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2NvbnRhaW5lZEFzc2VydGlvbi90ZXJtL3ZhcmlhYmxlIVwiKSxcbiAgICAgIGZyYW1lTWV0YXZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2NvbnRhaW5lZEFzc2VydGlvbi9mcmFtZS9tZXRhdmFyaWFibGUhXCIpLFxuICAgICAgc3RhdGVtZW50VmFyaWFibGVOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9jb250YWluZWRBc3NlcnRpb24vc3RhdGVtZW50Ly92YXJpYWJsZVwiKSxcbiAgICAgIHN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL2NvbnRhaW5lZEFzc2VydGlvbi9zdGF0ZW1lbnQvL21ldGF2YXJpYWJsZVwiKTtcblxuY29uc3QgdmVyaWZ5Q29udGFpbmVkQXNzZXJ0aW9uRnVuY3Rpb25zID0gW1xuICB2ZXJpZnlEZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uLFxuICB2ZXJpZnlTdGF0ZWRDb250YWluZWRBc3NlcnRpb25cbl07XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeUNvbnRhaW5lZEFzc2VydGlvbihjb250YWluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGNvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gZmFsc2U7XG5cbiAgY29uc3QgY29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhjb250YWluZWRBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgc2F2ZWRTdGF0ZWQgPSBzdGF0ZWQ7IC8vL1xuXG4gIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtjb250YWluZWRBc3NlcnRpb25TdHJpbmd9JyBjb250YWluZWQgYXNzZXJ0aW9uLi4uYCwgY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgYXNzaWdubWVudHMgPSBudWxsOyAvLy9cblxuICBzdGF0ZWQgPSB0cnVlOyAgLy8vXG5cbiAgY29uc3QgdmVyaWZpZWQgPSBtZXRhTGV2ZWxWZXJpZmllci52ZXJpZnkoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KTtcblxuICBzdGF0ZWQgPSBzYXZlZFN0YXRlZDsgLy8vXG5cbiAgaWYgKHZlcmlmaWVkKSB7XG4gICAgY29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSB2ZXJpZnlDb250YWluZWRBc3NlcnRpb25GdW5jdGlvbnMuc29tZSgodmVyaWZ5Q29udGFpbmVkQXNzZXJ0aW9uRnVuY3Rpb24pID0+IHtcbiAgICAgIGNvbnN0IGNvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdmVyaWZ5Q29udGFpbmVkQXNzZXJ0aW9uRnVuY3Rpb24oY29udGFpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KTtcblxuICAgICAgaWYgKGNvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgaWYgKGNvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7Y29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nfScgY29udGFpbmVkIGFzc2VydGlvbi5gLCBjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcbiAgfVxuXG4gIHJldHVybiBjb250YWluZWRBc3NlcnRpb25WZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5RGVyaXZlZENvbnRhaW5lZEFzc2VydGlvbihjb250YWluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGRlcml2ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZCA9IGZhbHNlO1xuXG4gIGlmICghc3RhdGVkKSB7XG4gICAgY29uc3QgY29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtjb250YWluZWRBc3NlcnRpb25TdHJpbmd9JyBkZXJpdmVkIGNvbnRhaW5lZCBhc3NlcnRpb24uLi5gLCBjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIGNvbnN0IGFzc2VydGlvbk5lZ2F0ZWQgPSBpc0Fzc2VydGlvbk5lZ2F0ZWQoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgZnJhbWVNZXRhdmFyaWFibGVOb2RlID0gZnJhbWVNZXRhdmFyaWFibGVOb2RlUXVlcnkoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgdGVybVZhcmlhYmxlTm9kZSA9IHRlcm1WYXJpYWJsZU5vZGVRdWVyeShjb250YWluZWRBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgICBuZWdhdGVkID0gYXNzZXJ0aW9uTmVnYXRlZDsgLy8vXG5cbiAgICBpZiAoZmFsc2UpIHtcbiAgICAgIC8vL1xuICAgIH0gZWxzZSBpZiAoZnJhbWVNZXRhdmFyaWFibGVOb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBzdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlcyA9IHN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVzUXVlcnkoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgICBmcmFtZU1ldGF2YXJpYWJsZU5vZGVNYXRjaGVzU3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZSA9IHN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVzLnNvbWUoKHN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGUpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgZnJhbWVNZXRhdmFyaWFibGVOb2RlTWF0Y2hlc1N0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGUgPSBmcmFtZU1ldGF2YXJpYWJsZU5vZGUubWF0Y2goc3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgICAgICAgICAgICAgaWYgKGZyYW1lTWV0YXZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICBpZiAoIW5lZ2F0ZWQpIHtcbiAgICAgICAgaWYgKGZyYW1lTWV0YXZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgZGVyaXZlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAobmVnYXRlZCkge1xuICAgICAgICBpZiAoIWZyYW1lTWV0YXZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgZGVyaXZlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodGVybVZhcmlhYmxlTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgc3RhdGVtZW50VmFyaWFibGVOb2RlcyA9IHN0YXRlbWVudFZhcmlhYmxlTm9kZXNRdWVyeShjb250YWluZWRBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgICAgIHRlcm1WYXJpYWJsZU5vZGVNYXRjaGVzU3RhdGVtZW50VmFyaWFibGVOb2RlID0gc3RhdGVtZW50VmFyaWFibGVOb2Rlcy5zb21lKChzdGF0ZW1lbnRWYXJpYWJsZU5vZGUpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgdGVybVZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRWYXJpYWJsZU5vZGUgPSB0ZXJtVmFyaWFibGVOb2RlLm1hdGNoKHN0YXRlbWVudFZhcmlhYmxlTm9kZSk7XG5cbiAgICAgICAgICAgICAgaWYgKHRlcm1WYXJpYWJsZU5vZGVNYXRjaGVzU3RhdGVtZW50VmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICBpZiAoIW5lZ2F0ZWQpIHtcbiAgICAgICAgaWYgKHRlcm1WYXJpYWJsZU5vZGVNYXRjaGVzU3RhdGVtZW50VmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgZGVyaXZlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAobmVnYXRlZCkge1xuICAgICAgICBpZiAoIXRlcm1WYXJpYWJsZU5vZGVNYXRjaGVzU3RhdGVtZW50VmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgZGVyaXZlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChkZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQpIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2NvbnRhaW5lZEFzc2VydGlvblN0cmluZ30nIGRlcml2ZWQgY29udGFpbmVkIGFzc2VydGlvbi5gLCBjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZGVyaXZlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlTdGF0ZWRDb250YWluZWRBc3NlcnRpb24oY29udGFpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBzdGF0ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZDtcblxuICBpZiAoc3RhdGVkKSB7XG4gICAgY29uc3QgY29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtjb250YWluZWRBc3NlcnRpb25TdHJpbmd9JyBzdGF0ZWQgY29udGFpbmVkIGFzc2VydGlvbi4uLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgc3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSB0cnVlO1xuXG4gICAgaWYgKHN0YXRlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtjb250YWluZWRBc3NlcnRpb25TdHJpbmd9JyBzdGF0ZWQgY29udGFpbmVkIGFzc2VydGlvbi5gLCBjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5Q29udGFpbmVkQXNzZXJ0aW9uIiwidGVybVZhcmlhYmxlTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwiZnJhbWVNZXRhdmFyaWFibGVOb2RlUXVlcnkiLCJzdGF0ZW1lbnRWYXJpYWJsZU5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5Iiwic3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZXNRdWVyeSIsInZlcmlmeUNvbnRhaW5lZEFzc2VydGlvbkZ1bmN0aW9ucyIsInZlcmlmeURlcml2ZWRDb250YWluZWRBc3NlcnRpb24iLCJ2ZXJpZnlTdGF0ZWRDb250YWluZWRBc3NlcnRpb24iLCJjb250YWluZWRBc3NlcnRpb25Ob2RlIiwiYXNzaWdubWVudHMiLCJzdGF0ZWQiLCJsb2NhbENvbnRleHQiLCJjb250YWluZWRBc3NlcnRpb25WZXJpZmllZCIsImNvbnRhaW5lZEFzc2VydGlvblN0cmluZyIsIm5vZGVBc1N0cmluZyIsInNhdmVkU3RhdGVkIiwidHJhY2UiLCJ2ZXJpZmllZCIsIm1ldGFMZXZlbFZlcmlmaWVyIiwidmVyaWZ5Iiwic29tZSIsInZlcmlmeUNvbnRhaW5lZEFzc2VydGlvbkZ1bmN0aW9uIiwiZGVidWciLCJkZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQiLCJhc3NlcnRpb25OZWdhdGVkIiwiaXNBc3NlcnRpb25OZWdhdGVkIiwiZnJhbWVNZXRhdmFyaWFibGVOb2RlIiwidGVybVZhcmlhYmxlTm9kZSIsIm5lZ2F0ZWQiLCJzdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlcyIsImZyYW1lTWV0YXZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlIiwic3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZSIsIm1hdGNoIiwic3RhdGVtZW50VmFyaWFibGVOb2RlcyIsInRlcm1WYXJpYWJsZU5vZGVNYXRjaGVzU3RhdGVtZW50VmFyaWFibGVOb2RlIiwic3RhdGVtZW50VmFyaWFibGVOb2RlIiwic3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWlCQTs7O2VBQXdCQTs7O2dFQWZNO3lCQUVLO3FCQUNHOzs7Ozs7QUFFdEMsSUFBTUMsd0JBQXdCQyxJQUFBQSxnQkFBUyxFQUFDLHVDQUNsQ0Ms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
|
|
@@ -1,98 +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 verifyDefinedAssertion;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _metaLevel = /*#__PURE__*/ _interop_require_default(require("../../verifier/metaLevel"));
|
|
12
|
-
var _query = require("../../utilities/query");
|
|
13
|
-
var _assertion = require("../../utilities/assertion");
|
|
14
|
-
var _name = require("../../utilities/name");
|
|
15
|
-
function _interop_require_default(obj) {
|
|
16
|
-
return obj && obj.__esModule ? obj : {
|
|
17
|
-
default: obj
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
var variableNodeQuery = (0, _query.nodeQuery)("/definedAssertion/term/variable!"), metavariableNodeQuery = (0, _query.nodeQuery)("/definedAssertion/frame/metavariable!");
|
|
21
|
-
var verifyDefinedAssertionFunctions = [
|
|
22
|
-
verifyDerivedDefinedAssertion,
|
|
23
|
-
verifyStatedDefinedAssertion
|
|
24
|
-
];
|
|
25
|
-
function verifyDefinedAssertion(definedAssertionNode, assignments, stated, localContext) {
|
|
26
|
-
var definedAssertionVerified;
|
|
27
|
-
var definedAssertionString = localContext.nodeAsString(definedAssertionNode), savedStated = stated; ///;
|
|
28
|
-
localContext.trace("Verifying the '".concat(definedAssertionString, "' defined assertion..."), definedAssertionNode);
|
|
29
|
-
assignments = null; ///
|
|
30
|
-
stated = true; ///
|
|
31
|
-
var verified = _metaLevel.default.verify(definedAssertionNode, assignments, stated, localContext);
|
|
32
|
-
stated = savedStated; ///
|
|
33
|
-
if (verified) {
|
|
34
|
-
definedAssertionVerified = verifyDefinedAssertionFunctions.some(function(verifyDefinedAssertionFunction) {
|
|
35
|
-
var definedAssertionVerified = verifyDefinedAssertionFunction(definedAssertionNode, assignments, stated, localContext);
|
|
36
|
-
if (definedAssertionVerified) {
|
|
37
|
-
return true;
|
|
38
|
-
}
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
if (definedAssertionVerified) {
|
|
42
|
-
localContext.debug("...verified the '".concat(definedAssertionString, "' defined assertion."), definedAssertionNode);
|
|
43
|
-
}
|
|
44
|
-
return definedAssertionVerified;
|
|
45
|
-
}
|
|
46
|
-
function verifyDerivedDefinedAssertion(definedAssertionNode, assignments, stated, localContext) {
|
|
47
|
-
var derivedDefinedAssertionVerified = false;
|
|
48
|
-
if (!stated) {
|
|
49
|
-
var definedAssertionString = localContext.nodeAsString(definedAssertionNode);
|
|
50
|
-
localContext.trace("Verifying the '".concat(definedAssertionString, "' derived defined assertion..."), definedAssertionNode);
|
|
51
|
-
var assertionNegated = (0, _assertion.isAssertionNegated)(definedAssertionNode), metavariableNode = metavariableNodeQuery(definedAssertionNode), variableNode = variableNodeQuery(definedAssertionNode);
|
|
52
|
-
if (false) {
|
|
53
|
-
///
|
|
54
|
-
} else if (metavariableNode !== null) {
|
|
55
|
-
var metavariableName = (0, _name.metavariableNameFromMetavariableNode)(metavariableNode), metavariableDefinedByMetavariableName = localContext.isMetavariableDefinedByMetavariableName(metavariableName);
|
|
56
|
-
if (!assertionNegated) {
|
|
57
|
-
if (metavariableDefinedByMetavariableName) {
|
|
58
|
-
derivedDefinedAssertionVerified = true;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
if (assertionNegated) {
|
|
62
|
-
if (!metavariableDefinedByMetavariableName) {
|
|
63
|
-
derivedDefinedAssertionVerified = true;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
} else if (variableNode !== null) {
|
|
67
|
-
var variable = localContext.findVariableByVariableNode(variableNode), variableDefined = localContext.isVariableDefined(variable);
|
|
68
|
-
if (!assertionNegated) {
|
|
69
|
-
if (variableDefined) {
|
|
70
|
-
derivedDefinedAssertionVerified = true;
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
if (assertionNegated) {
|
|
74
|
-
if (!variableDefined) {
|
|
75
|
-
derivedDefinedAssertionVerified = true;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
if (derivedDefinedAssertionVerified) {
|
|
80
|
-
localContext.debug("...verified the '".concat(definedAssertionString, "' derived defined assertion."), definedAssertionNode);
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
return derivedDefinedAssertionVerified;
|
|
84
|
-
}
|
|
85
|
-
function verifyStatedDefinedAssertion(definedAssertionNode, assignments, stated, localContext) {
|
|
86
|
-
var statedDefinedAssertionVerified;
|
|
87
|
-
if (stated) {
|
|
88
|
-
var definedAssertionString = localContext.nodeAsString(definedAssertionNode);
|
|
89
|
-
localContext.trace("Verifying the '".concat(definedAssertionString, "' stated defined assertion..."), definedAssertionNode);
|
|
90
|
-
statedDefinedAssertionVerified = true;
|
|
91
|
-
if (statedDefinedAssertionVerified) {
|
|
92
|
-
localContext.debug("...verified the '".concat(definedAssertionString, "' stated defined assertion."), definedAssertionNode);
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
return statedDefinedAssertionVerified;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvYXNzZXJ0aW9uL2RlZmluZWQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBtZXRhTGV2ZWxWZXJpZmllciBmcm9tIFwiLi4vLi4vdmVyaWZpZXIvbWV0YUxldmVsXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IGlzQXNzZXJ0aW9uTmVnYXRlZCB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvYXNzZXJ0aW9uXCI7XG5pbXBvcnQgeyBtZXRhdmFyaWFibGVOYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL25hbWVcIjtcblxuY29uc3QgdmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvZGVmaW5lZEFzc2VydGlvbi90ZXJtL3ZhcmlhYmxlIVwiKSxcbiAgICAgIG1ldGF2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9kZWZpbmVkQXNzZXJ0aW9uL2ZyYW1lL21ldGF2YXJpYWJsZSFcIik7XG5cbmNvbnN0IHZlcmlmeURlZmluZWRBc3NlcnRpb25GdW5jdGlvbnMgPSBbXG4gIHZlcmlmeURlcml2ZWREZWZpbmVkQXNzZXJ0aW9uLFxuICB2ZXJpZnlTdGF0ZWREZWZpbmVkQXNzZXJ0aW9uXG5dO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlEZWZpbmVkQXNzZXJ0aW9uKGRlZmluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGRlZmluZWRBc3NlcnRpb25WZXJpZmllZDtcblxuICBjb25zdCBkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhkZWZpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgIHNhdmVkU3RhdGVkID0gc3RhdGVkOyAvLy87XG5cbiAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2RlZmluZWRBc3NlcnRpb25TdHJpbmd9JyBkZWZpbmVkIGFzc2VydGlvbi4uLmAsIGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcblxuICBhc3NpZ25tZW50cyA9IG51bGw7IC8vL1xuXG4gIHN0YXRlZCA9IHRydWU7ICAvLy9cblxuICBjb25zdCB2ZXJpZmllZCA9IG1ldGFMZXZlbFZlcmlmaWVyLnZlcmlmeShkZWZpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KTtcblxuICBzdGF0ZWQgPSBzYXZlZFN0YXRlZDsgLy8vXG5cbiAgaWYgKHZlcmlmaWVkKSB7XG4gICAgZGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdmVyaWZ5RGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9ucy5zb21lKCh2ZXJpZnlEZWZpbmVkQXNzZXJ0aW9uRnVuY3Rpb24pID0+IHtcbiAgICAgIGNvbnN0IGRlZmluZWRBc3NlcnRpb25WZXJpZmllZCA9IHZlcmlmeURlZmluZWRBc3NlcnRpb25GdW5jdGlvbihkZWZpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KTtcblxuICAgICAgaWYgKGRlZmluZWRBc3NlcnRpb25WZXJpZmllZCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGlmIChkZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQpIHtcbiAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgZGVmaW5lZCBhc3NlcnRpb24uYCwgZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIGRlZmluZWRBc3NlcnRpb25WZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5RGVyaXZlZERlZmluZWRBc3NlcnRpb24oZGVmaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgZGVyaXZlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCA9IGZhbHNlO1xuXG4gIGlmICghc3RhdGVkKSB7XG4gICAgY29uc3QgZGVmaW5lZEFzc2VydGlvblN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2RlZmluZWRBc3NlcnRpb25TdHJpbmd9JyBkZXJpdmVkIGRlZmluZWQgYXNzZXJ0aW9uLi4uYCwgZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgY29uc3QgYXNzZXJ0aW9uTmVnYXRlZCA9IGlzQXNzZXJ0aW9uTmVnYXRlZChkZWZpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgbWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGVRdWVyeShkZWZpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgdmFyaWFibGVOb2RlID0gdmFyaWFibGVOb2RlUXVlcnkoZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgaWYgKGZhbHNlKSB7XG4gICAgICAvLy9cbiAgICB9IGVsc2UgaWYgKG1ldGF2YXJpYWJsZU5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG1ldGF2YXJpYWJsZU5hbWUgPSBtZXRhdmFyaWFibGVOYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSksXG4gICAgICAgICAgICBtZXRhdmFyaWFibGVEZWZpbmVkQnlNZXRhdmFyaWFibGVOYW1lID0gbG9jYWxDb250ZXh0LmlzTWV0YXZhcmlhYmxlRGVmaW5lZEJ5TWV0YXZhcmlhYmxlTmFtZShtZXRhdmFyaWFibGVOYW1lKTtcblxuICAgICAgaWYgKCFhc3NlcnRpb25OZWdhdGVkKSB7XG4gICAgICAgIGlmIChtZXRhdmFyaWFibGVEZWZpbmVkQnlNZXRhdmFyaWFibGVOYW1lKSB7XG4gICAgICAgICAgZGVyaXZlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGFzc2VydGlvbk5lZ2F0ZWQpIHtcbiAgICAgICAgaWYgKCFtZXRhdmFyaWFibGVEZWZpbmVkQnlNZXRhdmFyaWFibGVOYW1lKSB7XG4gICAgICAgICAgZGVyaXZlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHZhcmlhYmxlTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgdmFyaWFibGUgPSBsb2NhbENvbnRleHQuZmluZFZhcmlhYmxlQnlWYXJpYWJsZU5vZGUodmFyaWFibGVOb2RlKSxcbiAgICAgICAgICAgIHZhcmlhYmxlRGVmaW5lZCA9IGxvY2FsQ29udGV4dC5pc1ZhcmlhYmxlRGVmaW5lZCh2YXJpYWJsZSk7XG5cbiAgICAgIGlmICghYXNzZXJ0aW9uTmVnYXRlZCkge1xuICAgICAgICBpZiAodmFyaWFibGVEZWZpbmVkKSB7XG4gICAgICAgICAgZGVyaXZlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGFzc2VydGlvbk5lZ2F0ZWQpIHtcbiAgICAgICAgaWYgKCF2YXJpYWJsZURlZmluZWQpIHtcbiAgICAgICAgICBkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgZGVyaXZlZCBkZWZpbmVkIGFzc2VydGlvbi5gLCBkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGRlcml2ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeVN0YXRlZERlZmluZWRBc3NlcnRpb24oZGVmaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgc3RhdGVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkO1xuXG4gIGlmIChzdGF0ZWQpIHtcbiAgICBjb25zdCBkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7ZGVmaW5lZEFzc2VydGlvblN0cmluZ30nIHN0YXRlZCBkZWZpbmVkIGFzc2VydGlvbi4uLmAsIGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIHN0YXRlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG5cbiAgICBpZiAoc3RhdGVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgc3RhdGVkIGRlZmluZWQgYXNzZXJ0aW9uLmAsIGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3RhdGVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeURlZmluZWRBc3NlcnRpb24iLCJ2YXJpYWJsZU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIm1ldGF2YXJpYWJsZU5vZGVRdWVyeSIsInZlcmlmeURlZmluZWRBc3NlcnRpb25GdW5jdGlvbnMiLCJ2ZXJpZnlEZXJpdmVkRGVmaW5lZEFzc2VydGlvbiIsInZlcmlmeVN0YXRlZERlZmluZWRBc3NlcnRpb24iLCJkZWZpbmVkQXNzZXJ0aW9uTm9kZSIsImFzc2lnbm1lbnRzIiwic3RhdGVkIiwibG9jYWxDb250ZXh0IiwiZGVmaW5lZEFzc2VydGlvblZlcmlmaWVkIiwiZGVmaW5lZEFzc2VydGlvblN0cmluZyIsIm5vZGVBc1N0cmluZyIsInNhdmVkU3RhdGVkIiwidHJhY2UiLCJ2ZXJpZmllZCIsIm1ldGFMZXZlbFZlcmlmaWVyIiwidmVyaWZ5Iiwic29tZSIsInZlcmlmeURlZmluZWRBc3NlcnRpb25GdW5jdGlvbiIsImRlYnVnIiwiZGVyaXZlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCIsImFzc2VydGlvbk5lZ2F0ZWQiLCJpc0Fzc2VydGlvbk5lZ2F0ZWQiLCJtZXRhdmFyaWFibGVOb2RlIiwidmFyaWFibGVOb2RlIiwibWV0YXZhcmlhYmxlTmFtZSIsIm1ldGF2YXJpYWJsZU5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZSIsIm1ldGF2YXJpYWJsZURlZmluZWRCeU1ldGF2YXJpYWJsZU5hbWUiLCJpc01ldGF2YXJpYWJsZURlZmluZWRCeU1ldGF2YXJpYWJsZU5hbWUiLCJ2YXJpYWJsZSIsImZpbmRWYXJpYWJsZUJ5VmFyaWFibGVOb2RlIiwidmFyaWFibGVEZWZpbmVkIiwiaXNWYXJpYWJsZURlZmluZWQiLCJzdGF0ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWdCQTs7O2VBQXdCQTs7O2dFQWRNO3FCQUVKO3lCQUNTO29CQUNrQjs7Ozs7O0FBRXJELElBQU1DLG9CQUFvQkMsSUFBQUEsZ0JBQVMsRUFBQyxxQ0FDOUJDLHdCQUF3QkQsSUFBQUEsZ0JBQVMsRUFBQztBQUV4QyxJQUFNRSxrQ0FBa0M7SUFDdENDO0lBQ0FDO0NBQ0Q7QUFFYyxTQUFTTix1QkFBdUJPLG9CQUFvQixFQUFFQyxXQUFXLEVBQUVDLE1BQU0sRUFBRUMsWUFBWTtJQUNwRyxJQUFJQztJQUVKLElBQU1DLHlCQUF5QkYsYUFBYUcsWUFBWSxDQUFDTix1QkFDbkRPLGNBQWNMLFFBQVEsSUFBSTtJQUVoQ0MsYUFBYUss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
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
var _metaLevel = /*#__PURE__*/ _interop_require_default(require("../../verifier/metaLevel"));
|
|
6
|
-
function _interop_require_default(obj) {
|
|
7
|
-
return obj && obj.__esModule ? obj : {
|
|
8
|
-
default: obj
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
var verifySubproofAssertionFunctions = [
|
|
12
|
-
verifyDerivedSubproofAssertion,
|
|
13
|
-
verifyStatedSubproofAssertion
|
|
14
|
-
];
|
|
15
|
-
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvYXNzZXJ0aW9uL3N1YnByb29mLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgbWV0YUxldmVsVmVyaWZpZXIgZnJvbSBcIi4uLy4uL3ZlcmlmaWVyL21ldGFMZXZlbFwiO1xuXG5jb25zdCB2ZXJpZnlTdWJwcm9vZkFzc2VydGlvbkZ1bmN0aW9ucyA9IFtcbiAgdmVyaWZ5RGVyaXZlZFN1YnByb29mQXNzZXJ0aW9uLFxuICB2ZXJpZnlTdGF0ZWRTdWJwcm9vZkFzc2VydGlvblxuXTtcblxuIl0sIm5hbWVzIjpbInZlcmlmeVN1YnByb29mQXNzZXJ0aW9uRnVuY3Rpb25zIiwidmVyaWZ5RGVyaXZlZFN1YnByb29mQXNzZXJ0aW9uIiwidmVyaWZ5U3RhdGVkU3VicHJvb2ZBc3NlcnRpb24iXSwibWFwcGluZ3MiOiJBQUFBOzs7O2dFQUU4Qjs7Ozs7O0FBRTlCLElBQU1BLG1DQUFtQztJQUN2Q0M7SUFDQUM7Q0FDRCJ9
|
|
@@ -1,37 +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 verifyFrameGivenMetaType;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _shim = /*#__PURE__*/ _interop_require_default(require("../shim"));
|
|
12
|
-
var _metaTypeNames = require("../metaTypeNames");
|
|
13
|
-
function _interop_require_default(obj) {
|
|
14
|
-
return obj && obj.__esModule ? obj : {
|
|
15
|
-
default: obj
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
function verifyFrameGivenMetaType(frameNode, metaType, assignments, stated, localContext) {
|
|
19
|
-
var frameVerifiedGivenMetaType;
|
|
20
|
-
var metaTypeName = metaType.getName();
|
|
21
|
-
switch(metaTypeName){
|
|
22
|
-
case _metaTypeNames.FRAME_META_TYPE_NAME:
|
|
23
|
-
{
|
|
24
|
-
var verifyFrame = _shim.default.verifyFrame, frames = [], frameVerified = verifyFrame(frameNode, frames, stated, localContext);
|
|
25
|
-
frameVerifiedGivenMetaType = frameVerified; ///
|
|
26
|
-
break;
|
|
27
|
-
}
|
|
28
|
-
default:
|
|
29
|
-
{
|
|
30
|
-
debugger;
|
|
31
|
-
break;
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
return frameVerifiedGivenMetaType;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvZnJhbWVHaXZlbk1ldGFUeXBlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgc2hpbSBmcm9tIFwiLi4vc2hpbVwiO1xuXG5pbXBvcnQgeyBGUkFNRV9NRVRBX1RZUEVfTkFNRSB9IGZyb20gXCIuLi9tZXRhVHlwZU5hbWVzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeUZyYW1lR2l2ZW5NZXRhVHlwZShmcmFtZU5vZGUsIG1ldGFUeXBlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGZyYW1lVmVyaWZpZWRHaXZlbk1ldGFUeXBlO1xuXG4gIGNvbnN0IG1ldGFUeXBlTmFtZSA9IG1ldGFUeXBlLmdldE5hbWUoKTtcblxuICBzd2l0Y2ggKG1ldGFUeXBlTmFtZSkge1xuICAgIGNhc2UgRlJBTUVfTUVUQV9UWVBFX05BTUU6IHtcbiAgICAgIGNvbnN0IHsgdmVyaWZ5RnJhbWUgfSA9IHNoaW0sXG4gICAgICAgICAgICBmcmFtZXMgPSBbXSxcbiAgICAgICAgICAgIGZyYW1lVmVyaWZpZWQgPSB2ZXJpZnlGcmFtZShmcmFtZU5vZGUsIGZyYW1lcywgc3RhdGVkLCBsb2NhbENvbnRleHQpXG5cbiAgICAgIGZyYW1lVmVyaWZpZWRHaXZlbk1ldGFUeXBlID0gZnJhbWVWZXJpZmllZDsgLy8vXG5cbiAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIGRlZmF1bHQ6IHtcbiAgICAgIGRlYnVnZ2VyXG5cbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBmcmFtZVZlcmlmaWVkR2l2ZW5NZXRhVHlwZTtcbn0iXSwibmFtZXMiOlsidmVyaWZ5RnJhbWVHaXZlbk1ldGFUeXBlIiwiZnJhbWVOb2RlIiwibWV0YVR5cGUiLCJhc3NpZ25tZW50cyIsInN0YXRlZCIsImxvY2FsQ29udGV4dCIsImZyYW1lVmVyaWZpZWRHaXZlbk1ldGFUeXBlIiwibWV0YVR5cGVOYW1lIiwiZ2V0TmFtZSIsIkZSQU1FX01FVEFfVFlQRV9OQU1FIiwidmVyaWZ5RnJhbWUiLCJzaGltIiwiZnJhbWVzIiwiZnJhbWVWZXJpZmllZCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBTUE7OztlQUF3QkE7OzsyREFKUDs2QkFFb0I7Ozs7OztBQUV0QixTQUFTQSx5QkFBeUJDLFNBQVMsRUFBRUMsUUFBUSxFQUFFQyxXQUFXLEVBQUVDLE1BQU0sRUFBRUMsWUFBWTtJQUNyRyxJQUFJQztJQUVKLElBQU1DLGVBQWVMLFNBQVNNLE9BQU87SUFFckMsT0FBUUQ7UUFDTixLQUFLRSxtQ0FBb0I7WUFBRTtnQkFDekIsSUFBTSxBQUFFQyxjQUFnQkMsYUFBSSxDQUFwQkQsYUFDRkUsU0FBUyxFQUFFLEVBQ1hDLGdCQUFnQkgsWUFBWVQsV0FBV1csUUFBUVIsUUFBUUM7Z0JBRTdEQyw2QkFBNkJPLGVBQWUsR0FBRztnQkFFL0M7WUFDRjtRQUVBO1lBQVM7Z0JBQ1AsUUFBUTtnQkFFUjtZQUNGO0lBQ0Y7SUFFQSxPQUFPUDtBQUNUIn0=
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
import verifyFrameGivenMetaType from "../verify/frameGivenMetaType";
|
|
4
|
-
|
|
5
|
-
export default function unifyFrameWithMetaType(frameNode, metaTypeNode, assignments, stated, localContext) {
|
|
6
|
-
let frameUnifiedWithMetaType;
|
|
7
|
-
|
|
8
|
-
const metaType = localContext.findMetaTypeByMetaTypeName(metaTypeNode),
|
|
9
|
-
frameVerifiedGivenMetaType = verifyFrameGivenMetaType(frameNode, metaType, assignments, stated, localContext);
|
|
10
|
-
|
|
11
|
-
frameUnifiedWithMetaType = frameVerifiedGivenMetaType; ///
|
|
12
|
-
|
|
13
|
-
return frameUnifiedWithMetaType;
|
|
14
|
-
}
|