occam-verify-cli 1.0.457 → 1.0.473
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/constants.js +13 -1
- package/lib/context/ephemeral.js +270 -0
- package/lib/context/file.js +102 -66
- package/lib/context/liminal.js +120 -0
- package/lib/context/literal.js +92 -0
- package/lib/context/nominal.js +15 -1
- package/lib/context/release.js +66 -7
- package/lib/context/scoped.js +48 -40
- package/lib/context/synthetic.js +133 -0
- package/lib/element/assertion/contained.js +66 -66
- package/lib/element/assertion/defined.js +32 -32
- package/lib/element/assertion/property.js +39 -39
- package/lib/element/assertion/satisfies.js +22 -22
- package/lib/element/assumption.js +5 -8
- package/lib/element/conclusion.js +14 -13
- package/lib/element/constructor.js +2 -2
- package/lib/element/deduction.js +14 -13
- package/lib/element/derivation.js +3 -3
- package/lib/element/equality.js +5 -5
- package/lib/element/equivalence.js +112 -107
- package/lib/element/equivalences.js +24 -10
- package/lib/element/error.js +3 -3
- package/lib/element/frame.js +38 -21
- package/lib/element/hypothesis.js +2 -2
- package/lib/element/judgement.js +6 -5
- package/lib/element/metaType.js +1 -2
- package/lib/element/metavariable.js +46 -35
- package/lib/element/parameter.js +13 -5
- package/lib/element/procedureCall.js +16 -16
- package/lib/element/proof.js +14 -13
- package/lib/element/proofAssertion/premise.js +41 -30
- package/lib/element/proofAssertion/step.js +39 -35
- package/lib/element/proofAssertion/supposition.js +43 -32
- package/lib/element/proofAssertion.js +19 -5
- package/lib/element/propertyRelation.js +2 -2
- package/lib/element/reference.js +50 -9
- package/lib/element/rule.js +26 -28
- package/lib/element/section.js +2 -2
- package/lib/element/signature.js +9 -6
- package/lib/element/statement.js +44 -31
- package/lib/element/subproof.js +18 -17
- package/lib/element/substitution/frame.js +83 -46
- package/lib/element/substitution/reference.js +101 -19
- package/lib/element/substitution/statement.js +122 -75
- package/lib/element/substitution/term.js +93 -57
- package/lib/element/substitution.js +20 -69
- package/lib/element/substitutions.js +49 -34
- package/lib/element/term.js +30 -21
- package/lib/element/topLevelAssertion/axiom.js +8 -6
- package/lib/element/topLevelAssertion/conjecture.js +4 -4
- package/lib/element/topLevelAssertion/lemma.js +4 -4
- package/lib/element/topLevelAssertion/theorem.js +2 -2
- package/lib/element/topLevelAssertion.js +30 -23
- package/lib/element/topLevelMetaAssertion/metaLemma.js +2 -2
- package/lib/element/topLevelMetaAssertion/metatheorem.js +2 -2
- package/lib/element/topLevelMetaAssertion.js +16 -12
- package/lib/element/variable.js +30 -22
- package/lib/index.js +3 -3
- package/lib/main.js +3 -3
- package/lib/node/frame.js +2 -2
- package/lib/node/metavariable.js +4 -4
- package/lib/node/parameter.js +28 -7
- package/lib/node/substitution/frame.js +9 -31
- package/lib/node/substitution/reference.js +137 -0
- package/lib/node/substitution/statement.js +9 -31
- package/lib/node/substitution/term.js +9 -23
- package/lib/nonTerminalNodeMap.js +3 -2
- package/lib/process/instantiate.js +2 -14
- package/lib/process/unify.js +5 -5
- package/lib/tokenTypes.js +22 -0
- package/lib/utilities/context.js +54 -19
- package/lib/utilities/element.js +161 -336
- package/lib/utilities/instance.js +4 -4
- package/lib/utilities/string.js +18 -4
- package/lib/utilities/unification.js +24 -18
- package/lib/utilities/validation.js +31 -31
- package/package.json +2 -2
- package/src/constants.js +12 -0
- package/src/context/{transient.js → ephemeral.js} +15 -112
- package/src/context/file.js +66 -67
- package/src/context/liminal.js +67 -0
- package/src/context/{fragment.js → literal.js} +17 -4
- package/src/context/nominal.js +12 -0
- package/src/context/release.js +44 -6
- package/src/context/scoped.js +41 -31
- package/src/context/synthetic.js +60 -0
- package/src/element/assertion/contained.js +49 -47
- package/src/element/assertion/defined.js +29 -27
- package/src/element/assertion/property.js +35 -35
- package/src/element/assertion/satisfies.js +19 -18
- package/src/element/assumption.js +4 -10
- package/src/element/conclusion.js +16 -19
- package/src/element/constructor.js +1 -1
- package/src/element/deduction.js +16 -21
- package/src/element/derivation.js +2 -2
- package/src/element/equality.js +4 -4
- package/src/element/equivalence.js +115 -135
- package/src/element/equivalences.js +9 -7
- package/src/element/error.js +4 -2
- package/src/element/frame.js +50 -23
- package/src/element/hypothesis.js +1 -1
- package/src/element/judgement.js +9 -4
- package/src/element/metaType.js +0 -1
- package/src/element/metavariable.js +54 -53
- package/src/element/parameter.js +10 -5
- package/src/element/procedureCall.js +20 -18
- package/src/element/proof.js +14 -16
- package/src/element/proofAssertion/premise.js +46 -42
- package/src/element/proofAssertion/step.js +45 -40
- package/src/element/proofAssertion/supposition.js +56 -45
- package/src/element/proofAssertion.js +23 -5
- package/src/element/propertyRelation.js +1 -1
- package/src/element/reference.js +64 -16
- package/src/element/rule.js +31 -37
- package/src/element/section.js +1 -1
- package/src/element/signature.js +8 -8
- package/src/element/statement.js +51 -40
- package/src/element/subproof.js +16 -18
- package/src/element/substitution/frame.js +99 -42
- package/src/element/substitution/reference.js +120 -20
- package/src/element/substitution/statement.js +160 -89
- package/src/element/substitution/term.js +104 -63
- package/src/element/substitution.js +16 -58
- package/src/element/substitutions.js +43 -41
- package/src/element/term.js +37 -32
- package/src/element/topLevelAssertion/axiom.js +8 -6
- package/src/element/topLevelAssertion/conjecture.js +1 -2
- package/src/element/topLevelAssertion/lemma.js +2 -3
- package/src/element/topLevelAssertion/theorem.js +1 -1
- package/src/element/topLevelAssertion.js +31 -27
- package/src/element/topLevelMetaAssertion/metaLemma.js +1 -2
- package/src/element/topLevelMetaAssertion/metatheorem.js +1 -2
- package/src/element/topLevelMetaAssertion.js +15 -13
- package/src/element/variable.js +30 -31
- package/src/index.js +2 -1
- package/src/main.js +2 -1
- package/src/node/frame.js +1 -1
- package/src/node/metavariable.js +3 -3
- package/src/node/parameter.js +32 -5
- package/src/node/substitution/frame.js +6 -32
- package/src/node/substitution/reference.js +38 -0
- package/src/node/substitution/statement.js +6 -32
- package/src/node/substitution/term.js +6 -22
- package/src/nonTerminalNodeMap.js +3 -0
- package/src/process/instantiate.js +0 -8
- package/src/process/unify.js +4 -4
- package/src/tokenTypes.js +4 -0
- package/src/utilities/context.js +43 -17
- package/src/utilities/element.js +187 -401
- package/src/utilities/instance.js +3 -3
- package/src/utilities/string.js +21 -5
- package/src/utilities/unification.js +26 -23
- package/src/utilities/validation.js +47 -47
- package/lib/context/fragment.js +0 -77
- package/lib/context/transient.js +0 -371
- package/lib/log.js +0 -150
- package/lib/utilities/fragment.js +0 -23
- package/lib/utilities/node.js +0 -71
- package/src/log.js +0 -118
- package/src/utilities/fragment.js +0 -11
- package/src/utilities/node.js +0 -85
package/lib/utilities/node.js
DELETED
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
function _export(target, all) {
|
|
6
|
-
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: Object.getOwnPropertyDescriptor(all, name).get
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
_export(exports, {
|
|
12
|
-
get nodeAsString () {
|
|
13
|
-
return nodeAsString;
|
|
14
|
-
},
|
|
15
|
-
get nodesAsString () {
|
|
16
|
-
return nodesAsString;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
var _constants = require("../constants");
|
|
20
|
-
function nodeAsString(node, tokens) {
|
|
21
|
-
var string;
|
|
22
|
-
tokens = nodeAsTokens(node, tokens); ///
|
|
23
|
-
string = tokensAsString(tokens);
|
|
24
|
-
string = trimString(string); ///
|
|
25
|
-
return string;
|
|
26
|
-
}
|
|
27
|
-
function nodesAsString(nodes, tokens) {
|
|
28
|
-
var string = nodes.reduce(function(string, node) {
|
|
29
|
-
var nodeString = nodeAsString(node, tokens);
|
|
30
|
-
string = string === null ? nodeString : "".concat(string, ", ").concat(nodeString);
|
|
31
|
-
return string;
|
|
32
|
-
}, null);
|
|
33
|
-
return string;
|
|
34
|
-
}
|
|
35
|
-
function trimString(string) {
|
|
36
|
-
string = string.replace(/\s+$/, _constants.EMPTY_STRING); ///
|
|
37
|
-
return string;
|
|
38
|
-
}
|
|
39
|
-
function tokensAsString(tokens) {
|
|
40
|
-
var string = tokens.reduce(function(string, token) {
|
|
41
|
-
var content = token.getContent();
|
|
42
|
-
string = "".concat(string).concat(content);
|
|
43
|
-
return string;
|
|
44
|
-
}, _constants.EMPTY_STRING);
|
|
45
|
-
return string;
|
|
46
|
-
}
|
|
47
|
-
function nodeAsTokens(node, tokens) {
|
|
48
|
-
var nodeTerminalNode = node.isTerminalNode();
|
|
49
|
-
if (nodeTerminalNode) {
|
|
50
|
-
var terminalNode = node; ///
|
|
51
|
-
tokens = terminalNodeAsTokens(terminalNode, tokens);
|
|
52
|
-
} else {
|
|
53
|
-
var nonTerminalNode = node; ///
|
|
54
|
-
tokens = nonTerminalNodeAsTokens(nonTerminalNode, tokens);
|
|
55
|
-
}
|
|
56
|
-
return tokens;
|
|
57
|
-
}
|
|
58
|
-
function terminalNodeAsTokens(terminalNode, tokens) {
|
|
59
|
-
var significantToken = terminalNode.getSignificantToken(), token = significantToken; ///
|
|
60
|
-
tokens = [
|
|
61
|
-
token
|
|
62
|
-
];
|
|
63
|
-
return tokens;
|
|
64
|
-
}
|
|
65
|
-
function nonTerminalNodeAsTokens(nonTerminalNode, tokens) {
|
|
66
|
-
var lastSignificantTokenIndex = nonTerminalNode.getLastSignificantTokenIndex(tokens), firstSignificantTokenIndex = nonTerminalNode.getFirstSignificantTokenIndex(tokens), start = firstSignificantTokenIndex, end = lastSignificantTokenIndex + 1;
|
|
67
|
-
tokens = tokens.slice(start, end); ///
|
|
68
|
-
return tokens;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbm9kZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRU1QVFlfU1RSSU5HIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gbm9kZUFzU3RyaW5nKG5vZGUsIHRva2Vucykge1xuICBsZXQgc3RyaW5nO1xuXG4gIHRva2VucyA9IG5vZGVBc1Rva2Vucyhub2RlLCB0b2tlbnMpOyAgLy8vXG5cbiAgc3RyaW5nID0gdG9rZW5zQXNTdHJpbmcodG9rZW5zKTtcblxuICBzdHJpbmcgPSB0cmltU3RyaW5nKHN0cmluZyk7ICAvLy9cblxuICByZXR1cm4gc3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbm9kZXNBc1N0cmluZyhub2RlcywgdG9rZW5zKSB7XG4gIGNvbnN0IHN0cmluZyA9IG5vZGVzLnJlZHVjZSgoc3RyaW5nLCBub2RlKSA9PiB7XG4gICAgY29uc3Qgbm9kZVN0cmluZyA9IG5vZGVBc1N0cmluZyhub2RlLCB0b2tlbnMpO1xuXG4gICAgc3RyaW5nID0gKHN0cmluZyA9PT0gbnVsbCkgP1xuICAgICAgICAgICAgICAgbm9kZVN0cmluZyA6XG4gICAgICAgICAgICAgICAgYCR7c3RyaW5nfSwgJHtub2RlU3RyaW5nfWA7XG5cbiAgICByZXR1cm4gc3RyaW5nO1xuICB9LCBudWxsKTtcblxuICByZXR1cm4gc3RyaW5nO1xufVxuXG5mdW5jdGlvbiB0cmltU3RyaW5nKHN0cmluZykge1xuICBzdHJpbmcgPSBzdHJpbmcucmVwbGFjZSgvXFxzKyQvLCBFTVBUWV9TVFJJTkcpOyAgLy8vXG5cbiAgcmV0dXJuIHN0cmluZztcbn1cblxuZnVuY3Rpb24gdG9rZW5zQXNTdHJpbmcodG9rZW5zKSB7XG4gIGNvbnN0IHN0cmluZyA9IHRva2Vucy5yZWR1Y2UoKHN0cmluZywgdG9rZW4pID0+IHtcbiAgICBjb25zdCBjb250ZW50ID0gdG9rZW4uZ2V0Q29udGVudCgpO1xuXG4gICAgc3RyaW5nID0gYCR7c3RyaW5nfSR7Y29udGVudH1gO1xuXG4gICAgcmV0dXJuIHN0cmluZztcbiAgfSwgRU1QVFlfU1RSSU5HKTtcblxuICByZXR1cm4gc3RyaW5nO1xufVxuXG5mdW5jdGlvbiBub2RlQXNUb2tlbnMobm9kZSwgdG9rZW5zKSB7XG4gIGNvbnN0IG5vZGVUZXJtaW5hbE5vZGUgPSBub2RlLmlzVGVybWluYWxOb2RlKCk7XG5cbiAgaWYgKG5vZGVUZXJtaW5hbE5vZGUpIHtcbiAgICBjb25zdCB0ZXJtaW5hbE5vZGUgPSBub2RlOyAgLy8vXG5cbiAgICB0b2tlbnMgPSB0ZXJtaW5hbE5vZGVBc1Rva2Vucyh0ZXJtaW5hbE5vZGUsIHRva2Vucyk7XG4gIH0gZWxzZSB7XG4gICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gbm9kZTsgLy8vXG5cbiAgICB0b2tlbnMgPSBub25UZXJtaW5hbE5vZGVBc1Rva2Vucyhub25UZXJtaW5hbE5vZGUsIHRva2Vucyk7XG4gIH1cblxuICByZXR1cm4gdG9rZW5zO1xufVxuXG5mdW5jdGlvbiB0ZXJtaW5hbE5vZGVBc1Rva2Vucyh0ZXJtaW5hbE5vZGUsIHRva2Vucykge1xuICBjb25zdCBzaWduaWZpY2FudFRva2VuID0gdGVybWluYWxOb2RlLmdldFNpZ25pZmljYW50VG9rZW4oKSxcbiAgICAgICAgdG9rZW4gPSBzaWduaWZpY2FudFRva2VuOyAvLy9cblxuICB0b2tlbnMgPSBbICAvLy9cbiAgICB0b2tlblxuICBdO1xuXG4gIHJldHVybiB0b2tlbnM7XG59XG5cbmZ1bmN0aW9uIG5vblRlcm1pbmFsTm9kZUFzVG9rZW5zKG5vblRlcm1pbmFsTm9kZSwgdG9rZW5zKSB7XG4gIGNvbnN0IGxhc3RTaWduaWZpY2FudFRva2VuSW5kZXggPSBub25UZXJtaW5hbE5vZGUuZ2V0TGFzdFNpZ25pZmljYW50VG9rZW5JbmRleCh0b2tlbnMpLFxuICAgICAgICBmaXJzdFNpZ25pZmljYW50VG9rZW5JbmRleCA9IG5vblRlcm1pbmFsTm9kZS5nZXRGaXJzdFNpZ25pZmljYW50VG9rZW5JbmRleCh0b2tlbnMpLFxuICAgICAgICBzdGFydCA9IGZpcnN0U2lnbmlmaWNhbnRUb2tlbkluZGV4LCAvLy9cbiAgICAgICAgZW5kID0gbGFzdFNpZ25pZmljYW50VG9rZW5JbmRleCArIDE7XG5cbiAgdG9rZW5zID0gdG9rZW5zLnNsaWNlKHN0YXJ0LCBlbmQpOyAgLy8vXG5cbiAgcmV0dXJuIHRva2Vucztcbn1cbiJdLCJuYW1lcyI6WyJub2RlQXNTdHJpbmciLCJub2Rlc0FzU3RyaW5nIiwibm9kZSIsInRva2VucyIsInN0cmluZyIsIm5vZGVBc1Rva2VucyIsInRva2Vuc0FzU3RyaW5nIiwidHJpbVN0cmluZyIsIm5vZGVzIiwicmVkdWNlIiwibm9kZVN0cmluZyIsInJlcGxhY2UiLCJFTVBUWV9TVFJJTkciLCJ0b2tlbiIsImNvbnRlbnQiLCJnZXRDb250ZW50Iiwibm9kZVRlcm1pbmFsTm9kZSIsImlzVGVybWluYWxOb2RlIiwidGVybWluYWxOb2RlIiwidGVybWluYWxOb2RlQXNUb2tlbnMiLCJub25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGVBc1Rva2VucyIsInNpZ25pZmljYW50VG9rZW4iLCJnZXRTaWduaWZpY2FudFRva2VuIiwibGFzdFNpZ25pZmljYW50VG9rZW5JbmRleCIsImdldExhc3RTaWduaWZpY2FudFRva2VuSW5kZXgiLCJmaXJzdFNpZ25pZmljYW50VG9rZW5JbmRleCIsImdldEZpcnN0U2lnbmlmaWNhbnRUb2tlbkluZGV4Iiwic3RhcnQiLCJlbmQiLCJzbGljZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O1FBSWdCQTtlQUFBQTs7UUFZQUM7ZUFBQUE7Ozt5QkFkYTtBQUV0QixTQUFTRCxhQUFhRSxJQUFJLEVBQUVDLE1BQU07SUFDdkMsSUFBSUM7SUFFSkQsU0FBU0UsYUFBYUgsTUFBTUMsU0FBVSxHQUFHO0lBRXpDQyxTQUFTRSxlQUFlSDtJQUV4QkMsU0FBU0csV0FBV0gsU0FBVSxHQUFHO0lBRWpDLE9BQU9BO0FBQ1Q7QUFFTyxTQUFTSCxjQUFjTyxLQUFLLEVBQUVMLE1BQU07SUFDekMsSUFBTUMsU0FBU0ksTUFBTUMsTUFBTSxDQUFDLFNBQUNMLFFBQVFGO1FBQ25DLElBQU1RLGFBQWFWLGFBQWFFLE1BQU1DO1FBRXRDQyxTQUFTLEFBQUNBLFdBQVcsT0FDVk0sYUFDQyxBQUFDLEdBQWFBLE9BQVhOLFFBQU8sTUFBZSxPQUFYTTtRQUUxQixPQUFPTjtJQUNULEdBQUc7SUFFSCxPQUFPQTtBQUNUO0FBRUEsU0FBU0csV0FBV0gsTUFBTTtJQUN4QkEsU0FBU0EsT0FBT08sT0FBTyxDQUFDLFFBQVFDLHVCQUFZLEdBQUksR0FBRztJQUVuRCxPQUFPUjtBQUNUO0FBRUEsU0FBU0UsZUFBZUgsTUFBTTtJQUM1QixJQUFNQyxTQUFTRCxPQUFPTSxNQUFNLENBQUMsU0FBQ0wsUUFBUVM7UUFDcEMsSUFBTUMsVUFBVUQsTUFBTUUsVUFBVTtRQUVoQ1gsU0FBUyxBQUFDLEdBQVdVLE9BQVRWLFFBQWlCLE9BQVJVO1FBRXJCLE9BQU9WO0lBQ1QsR0FBR1EsdUJBQVk7SUFFZixPQUFPUjtBQUNUO0FBRUEsU0FBU0MsYUFBYUgsSUFBSSxFQUFFQyxNQUFNO0lBQ2hDLElBQU1hLG1CQUFtQmQsS0FBS2UsY0FBYztJQUU1QyxJQUFJRCxrQkFBa0I7UUFDcEIsSUFBTUUsZUFBZWhCLE1BQU8sR0FBRztRQUUvQkMsU0FBU2dCLHFCQUFxQkQsY0FBY2Y7SUFDOUMsT0FBTztRQUNMLElBQU1pQixrQkFBa0JsQixNQUFNLEdBQUc7UUFFakNDLFNBQVNrQix3QkFBd0JELGlCQUFpQmpCO0lBQ3BEO0lBRUEsT0FBT0E7QUFDVDtBQUVBLFNBQVNnQixxQkFBcUJELFlBQVksRUFBRWYsTUFBTTtJQUNoRCxJQUFNbUIsbUJBQW1CSixhQUFhSyxtQkFBbUIsSUFDbkRWLFFBQVFTLGtCQUFrQixHQUFHO0lBRW5DbkIsU0FBUztRQUNQVTtLQUNEO0lBRUQsT0FBT1Y7QUFDVDtBQUVBLFNBQVNrQix3QkFBd0JELGVBQWUsRUFBRWpCLE1BQU07SUFDdEQsSUFBTXFCLDRCQUE0QkosZ0JBQWdCSyw0QkFBNEIsQ0FBQ3RCLFNBQ3pFdUIsNkJBQTZCTixnQkFBZ0JPLDZCQUE2QixDQUFDeEIsU0FDM0V5QixRQUFRRiw0QkFDUkcsTUFBTUwsNEJBQTRCO0lBRXhDckIsU0FBU0EsT0FBTzJCLEtBQUssQ0FBQ0YsT0FBT0MsTUFBTyxHQUFHO0lBRXZDLE9BQU8xQjtBQUNUIn0=
|
package/src/log.js
DELETED
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
import { levels } from "necessary";
|
|
4
|
-
import {EMPTY_STRING} from "./constants";
|
|
5
|
-
|
|
6
|
-
const { TRACE_LEVEL, DEBUG_LEVEL, INFO_LEVEL, WARNING_LEVEL, ERROR_LEVEL } = levels;
|
|
7
|
-
|
|
8
|
-
export default class Log {
|
|
9
|
-
constructor(messages, logLevel, follow) {
|
|
10
|
-
this.messages = messages;
|
|
11
|
-
this.logLevel = logLevel;
|
|
12
|
-
this.follow = follow;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
getMessages() {
|
|
16
|
-
return this.messages;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
getLogLevel() {
|
|
20
|
-
return this.logLevel;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
getFollow() {
|
|
24
|
-
return this.follow;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
trace(message, filePath, lineIndex = null) {
|
|
28
|
-
const level = TRACE_LEVEL;
|
|
29
|
-
|
|
30
|
-
this.write(level, message, filePath, lineIndex);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
debug(message, filePath, lineIndex = null) {
|
|
34
|
-
const level = DEBUG_LEVEL;
|
|
35
|
-
|
|
36
|
-
this.write(level, message, filePath, lineIndex);
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
info(message, filePath, lineIndex = null) {
|
|
40
|
-
const level = INFO_LEVEL;
|
|
41
|
-
|
|
42
|
-
this.write(level, message, filePath, lineIndex);
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
warning(message, filePath, lineIndex = null) {
|
|
46
|
-
const level = WARNING_LEVEL;
|
|
47
|
-
|
|
48
|
-
this.write(level, message, filePath, lineIndex);
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
error(message, filePath, lineIndex = null) {
|
|
52
|
-
const level = ERROR_LEVEL;
|
|
53
|
-
|
|
54
|
-
this.write(level, message, filePath, lineIndex);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
write(level, message, filePath, lineIndex) {
|
|
58
|
-
const levels = [
|
|
59
|
-
TRACE_LEVEL,
|
|
60
|
-
DEBUG_LEVEL,
|
|
61
|
-
INFO_LEVEL,
|
|
62
|
-
WARNING_LEVEL,
|
|
63
|
-
ERROR_LEVEL
|
|
64
|
-
],
|
|
65
|
-
levelIndex = levels.indexOf(level),
|
|
66
|
-
logLevelIndex = levels.indexOf(this.logLevel);
|
|
67
|
-
|
|
68
|
-
if (levelIndex < logLevelIndex) {
|
|
69
|
-
return;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
message = formatMessage(level, message, filePath, lineIndex); ///
|
|
73
|
-
|
|
74
|
-
this.follow ?
|
|
75
|
-
console.log(message) :
|
|
76
|
-
this.messages.push(message);
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
static fromNothing() {
|
|
80
|
-
const messages = [],
|
|
81
|
-
logLevel = TRACE_LEVEL,
|
|
82
|
-
follow = false,
|
|
83
|
-
log = new Log(messages, logLevel, follow);
|
|
84
|
-
|
|
85
|
-
return log;
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
static fromFollowAndLogLevel(follow, logLevel) {
|
|
89
|
-
const messages = follow ?
|
|
90
|
-
null :
|
|
91
|
-
[],
|
|
92
|
-
log = new Log(messages, logLevel, follow);
|
|
93
|
-
|
|
94
|
-
return log;
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
function formatMessage(level, message, filePath = null, lineIndex = null) {
|
|
99
|
-
let formattedMessage = EMPTY_STRING;
|
|
100
|
-
|
|
101
|
-
const upperCaseLevel = level.toUpperCase();
|
|
102
|
-
|
|
103
|
-
formattedMessage += `${upperCaseLevel}:`;
|
|
104
|
-
|
|
105
|
-
if (filePath !== null) {
|
|
106
|
-
formattedMessage += ` ${filePath}`;
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
if (lineIndex !== null) {
|
|
110
|
-
formattedMessage += ` [${lineIndex}]`;
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
formattedMessage += ` - ${message}`;
|
|
114
|
-
|
|
115
|
-
message = formattedMessage; ///
|
|
116
|
-
|
|
117
|
-
return message;
|
|
118
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
import FragmentContext from "../context/fragment";
|
|
4
|
-
|
|
5
|
-
export function withinFragment(innerFunction, context) {
|
|
6
|
-
const fragmentContext = FragmentContext.fromNothing(context);
|
|
7
|
-
|
|
8
|
-
context = fragmentContext; ///
|
|
9
|
-
|
|
10
|
-
return innerFunction(context);
|
|
11
|
-
}
|
package/src/utilities/node.js
DELETED
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
import { EMPTY_STRING } from "../constants";
|
|
4
|
-
|
|
5
|
-
export function nodeAsString(node, tokens) {
|
|
6
|
-
let string;
|
|
7
|
-
|
|
8
|
-
tokens = nodeAsTokens(node, tokens); ///
|
|
9
|
-
|
|
10
|
-
string = tokensAsString(tokens);
|
|
11
|
-
|
|
12
|
-
string = trimString(string); ///
|
|
13
|
-
|
|
14
|
-
return string;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
export function nodesAsString(nodes, tokens) {
|
|
18
|
-
const string = nodes.reduce((string, node) => {
|
|
19
|
-
const nodeString = nodeAsString(node, tokens);
|
|
20
|
-
|
|
21
|
-
string = (string === null) ?
|
|
22
|
-
nodeString :
|
|
23
|
-
`${string}, ${nodeString}`;
|
|
24
|
-
|
|
25
|
-
return string;
|
|
26
|
-
}, null);
|
|
27
|
-
|
|
28
|
-
return string;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
function trimString(string) {
|
|
32
|
-
string = string.replace(/\s+$/, EMPTY_STRING); ///
|
|
33
|
-
|
|
34
|
-
return string;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
function tokensAsString(tokens) {
|
|
38
|
-
const string = tokens.reduce((string, token) => {
|
|
39
|
-
const content = token.getContent();
|
|
40
|
-
|
|
41
|
-
string = `${string}${content}`;
|
|
42
|
-
|
|
43
|
-
return string;
|
|
44
|
-
}, EMPTY_STRING);
|
|
45
|
-
|
|
46
|
-
return string;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
function nodeAsTokens(node, tokens) {
|
|
50
|
-
const nodeTerminalNode = node.isTerminalNode();
|
|
51
|
-
|
|
52
|
-
if (nodeTerminalNode) {
|
|
53
|
-
const terminalNode = node; ///
|
|
54
|
-
|
|
55
|
-
tokens = terminalNodeAsTokens(terminalNode, tokens);
|
|
56
|
-
} else {
|
|
57
|
-
const nonTerminalNode = node; ///
|
|
58
|
-
|
|
59
|
-
tokens = nonTerminalNodeAsTokens(nonTerminalNode, tokens);
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
return tokens;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
function terminalNodeAsTokens(terminalNode, tokens) {
|
|
66
|
-
const significantToken = terminalNode.getSignificantToken(),
|
|
67
|
-
token = significantToken; ///
|
|
68
|
-
|
|
69
|
-
tokens = [ ///
|
|
70
|
-
token
|
|
71
|
-
];
|
|
72
|
-
|
|
73
|
-
return tokens;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
function nonTerminalNodeAsTokens(nonTerminalNode, tokens) {
|
|
77
|
-
const lastSignificantTokenIndex = nonTerminalNode.getLastSignificantTokenIndex(tokens),
|
|
78
|
-
firstSignificantTokenIndex = nonTerminalNode.getFirstSignificantTokenIndex(tokens),
|
|
79
|
-
start = firstSignificantTokenIndex, ///
|
|
80
|
-
end = lastSignificantTokenIndex + 1;
|
|
81
|
-
|
|
82
|
-
tokens = tokens.slice(start, end); ///
|
|
83
|
-
|
|
84
|
-
return tokens;
|
|
85
|
-
}
|