node-llama-cpp 2.6.2 → 2.7.0
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/README.md +1 -1
- package/dist/cli/commands/ChatCommand.d.ts +2 -0
- package/dist/cli/commands/ChatCommand.js +32 -8
- package/dist/cli/commands/ChatCommand.js.map +1 -1
- package/dist/cli/commands/ClearCommand.js +1 -1
- package/dist/cli/commands/ClearCommand.js.map +1 -1
- package/dist/index.d.ts +5 -2
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/llamaEvaluator/LlamaChatSession.d.ts +52 -41
- package/dist/llamaEvaluator/LlamaChatSession.js +24 -3
- package/dist/llamaEvaluator/LlamaChatSession.js.map +1 -1
- package/dist/llamaEvaluator/LlamaGrammar.d.ts +2 -0
- package/dist/llamaEvaluator/LlamaGrammar.js +5 -0
- package/dist/llamaEvaluator/LlamaGrammar.js.map +1 -1
- package/dist/llamaEvaluator/LlamaJsonSchemaGrammar.d.ts +7 -0
- package/dist/llamaEvaluator/LlamaJsonSchemaGrammar.js +21 -0
- package/dist/llamaEvaluator/LlamaJsonSchemaGrammar.js.map +1 -0
- package/dist/utils/clearLlamaBuild.js +1 -1
- package/dist/utils/clearLlamaBuild.js.map +1 -1
- package/dist/utils/clearTempFolder.js +1 -1
- package/dist/utils/clearTempFolder.js.map +1 -1
- package/dist/utils/cmake.js +19 -2
- package/dist/utils/cmake.js.map +1 -1
- package/dist/utils/compileLLamaCpp.js +2 -0
- package/dist/utils/compileLLamaCpp.js.map +1 -1
- package/dist/utils/gbnfJson/GbnfGrammarGenerator.d.ts +5 -0
- package/dist/utils/gbnfJson/GbnfGrammarGenerator.js +10 -0
- package/dist/utils/gbnfJson/GbnfGrammarGenerator.js.map +1 -0
- package/dist/utils/gbnfJson/GbnfTerminal.d.ts +7 -0
- package/dist/utils/gbnfJson/GbnfTerminal.js +17 -0
- package/dist/utils/gbnfJson/GbnfTerminal.js.map +1 -0
- package/dist/utils/gbnfJson/terminals/GbnfArray.d.ts +7 -0
- package/dist/utils/gbnfJson/terminals/GbnfArray.js +29 -0
- package/dist/utils/gbnfJson/terminals/GbnfArray.js.map +1 -0
- package/dist/utils/gbnfJson/terminals/GbnfBoolean.d.ts +6 -0
- package/dist/utils/gbnfJson/terminals/GbnfBoolean.js +16 -0
- package/dist/utils/gbnfJson/terminals/GbnfBoolean.js.map +1 -0
- package/dist/utils/gbnfJson/terminals/GbnfBooleanValue.d.ts +7 -0
- package/dist/utils/gbnfJson/terminals/GbnfBooleanValue.js +17 -0
- package/dist/utils/gbnfJson/terminals/GbnfBooleanValue.js.map +1 -0
- package/dist/utils/gbnfJson/terminals/GbnfGrammar.d.ts +6 -0
- package/dist/utils/gbnfJson/terminals/GbnfGrammar.js +16 -0
- package/dist/utils/gbnfJson/terminals/GbnfGrammar.js.map +1 -0
- package/dist/utils/gbnfJson/terminals/GbnfNull.d.ts +5 -0
- package/dist/utils/gbnfJson/terminals/GbnfNull.js +11 -0
- package/dist/utils/gbnfJson/terminals/GbnfNull.js.map +1 -0
- package/dist/utils/gbnfJson/terminals/GbnfNumber.d.ts +9 -0
- package/dist/utils/gbnfJson/terminals/GbnfNumber.js +21 -0
- package/dist/utils/gbnfJson/terminals/GbnfNumber.js.map +1 -0
- package/dist/utils/gbnfJson/terminals/GbnfNumberValue.d.ts +7 -0
- package/dist/utils/gbnfJson/terminals/GbnfNumberValue.js +15 -0
- package/dist/utils/gbnfJson/terminals/GbnfNumberValue.js.map +1 -0
- package/dist/utils/gbnfJson/terminals/GbnfObjectMap.d.ts +17 -0
- package/dist/utils/gbnfJson/terminals/GbnfObjectMap.js +25 -0
- package/dist/utils/gbnfJson/terminals/GbnfObjectMap.js.map +1 -0
- package/dist/utils/gbnfJson/terminals/GbnfOr.d.ts +8 -0
- package/dist/utils/gbnfJson/terminals/GbnfOr.js +30 -0
- package/dist/utils/gbnfJson/terminals/GbnfOr.js.map +1 -0
- package/dist/utils/gbnfJson/terminals/GbnfString.d.ts +5 -0
- package/dist/utils/gbnfJson/terminals/GbnfString.js +15 -0
- package/dist/utils/gbnfJson/terminals/GbnfString.js.map +1 -0
- package/dist/utils/gbnfJson/terminals/GbnfStringValue.d.ts +6 -0
- package/dist/utils/gbnfJson/terminals/GbnfStringValue.js +21 -0
- package/dist/utils/gbnfJson/terminals/GbnfStringValue.js.map +1 -0
- package/dist/utils/gbnfJson/terminals/GbnfWhitespace.d.ts +9 -0
- package/dist/utils/gbnfJson/terminals/GbnfWhitespace.js +20 -0
- package/dist/utils/gbnfJson/terminals/GbnfWhitespace.js.map +1 -0
- package/dist/utils/gbnfJson/terminals/gbnfConsts.d.ts +14 -0
- package/dist/utils/gbnfJson/terminals/gbnfConsts.js +15 -0
- package/dist/utils/gbnfJson/terminals/gbnfConsts.js.map +1 -0
- package/dist/utils/gbnfJson/types.d.ts +41 -0
- package/dist/utils/gbnfJson/types.js +21 -0
- package/dist/utils/gbnfJson/types.js.map +1 -0
- package/dist/utils/gbnfJson/utils/getGbnfJsonTerminalForGbnfJsonSchema.d.ts +4 -0
- package/dist/utils/gbnfJson/utils/getGbnfJsonTerminalForGbnfJsonSchema.js +48 -0
- package/dist/utils/gbnfJson/utils/getGbnfJsonTerminalForGbnfJsonSchema.js.map +1 -0
- package/dist/utils/gbnfJson/utils/getGbnfJsonTerminalForLiteral.d.ts +5 -0
- package/dist/utils/gbnfJson/utils/getGbnfJsonTerminalForLiteral.js +16 -0
- package/dist/utils/gbnfJson/utils/getGbnfJsonTerminalForLiteral.js.map +1 -0
- package/dist/utils/gbnfJson/utils/validateObjectAgainstGbnfSchema.d.ts +7 -0
- package/dist/utils/gbnfJson/utils/validateObjectAgainstGbnfSchema.js +122 -0
- package/dist/utils/gbnfJson/utils/validateObjectAgainstGbnfSchema.js.map +1 -0
- package/dist/utils/getGbnfGrammarForGbnfJsonSchema.d.ts +2 -0
- package/dist/utils/getGbnfGrammarForGbnfJsonSchema.js +23 -0
- package/dist/utils/getGbnfGrammarForGbnfJsonSchema.js.map +1 -0
- package/llama/CMakeLists.txt +1 -1
- package/llama/binariesGithubRelease.json +1 -1
- package/llama/gitRelease.bundle +0 -0
- package/llamaBins/linux-arm64/llama-addon.node +0 -0
- package/llamaBins/linux-armv7l/llama-addon.node +0 -0
- package/llamaBins/linux-x64/llama-addon.node +0 -0
- package/llamaBins/mac-arm64/llama-addon.node +0 -0
- package/llamaBins/mac-x64/llama-addon.node +0 -0
- package/llamaBins/win-x64/llama-addon.node +0 -0
- package/package.json +9 -4
package/dist/utils/cmake.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cmake.js","sourceRoot":"","sources":["../../src/utils/cmake.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,
|
|
1
|
+
{"version":3,"file":"cmake.js","sourceRoot":"","sources":["../../src/utils/cmake.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,6 +23,8 @@ export async function compileLlamaCpp({ arch = process.arch, nodeTarget = proces
|
|
|
23
23
|
cmakeCustomOptions.push("LLAMA_METAL=OFF");
|
|
24
24
|
if (cuda || process.env.LLAMA_CUBLAS === "1")
|
|
25
25
|
cmakeCustomOptions.push("LLAMA_CUBLAS=1");
|
|
26
|
+
if (cuda && process.env.CUDA_PATH != null && await fs.pathExists(process.env.CUDA_PATH))
|
|
27
|
+
cmakeCustomOptions.push("CMAKE_GENERATOR_TOOLSET=" + process.env.CUDA_PATH);
|
|
26
28
|
if (process.env.LLAMA_MPI === "1")
|
|
27
29
|
cmakeCustomOptions.push("LLAMA_MPI=1");
|
|
28
30
|
if (process.env.LLAMA_OPENBLAS === "1")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compileLLamaCpp.js","sourceRoot":"","sources":["../../src/utils/compileLLamaCpp.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"compileLLamaCpp.js","sourceRoot":"","sources":["../../src/utils/compileLLamaCpp.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GbnfGrammarGenerator.js","sourceRoot":"","sources":["../../../src/utils/gbnfJson/GbnfGrammarGenerator.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,oBAAoB;IACtB,KAAK,GAAG,IAAI,GAAG,EAAyB,CAAC;IACxC,MAAM,GAAW,CAAC,CAAC;IAEpB,gBAAgB;QACnB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,OAAO,OAAO,MAAM,EAAE,CAAC;IAC3B,CAAC;CACJ"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { GbnfGrammarGenerator } from "./GbnfGrammarGenerator.js";
|
|
2
|
+
export declare abstract class GbnfTerminal {
|
|
3
|
+
private _ruleName;
|
|
4
|
+
getRuleName(grammarGenerator: GbnfGrammarGenerator): string;
|
|
5
|
+
abstract getGrammar(grammarGenerator: GbnfGrammarGenerator): string;
|
|
6
|
+
resolve(grammarGenerator: GbnfGrammarGenerator): string;
|
|
7
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export class GbnfTerminal {
|
|
2
|
+
_ruleName = null;
|
|
3
|
+
getRuleName(grammarGenerator) {
|
|
4
|
+
if (this._ruleName != null)
|
|
5
|
+
return this._ruleName;
|
|
6
|
+
const ruleName = grammarGenerator.generateRuleName();
|
|
7
|
+
this._ruleName = ruleName;
|
|
8
|
+
return ruleName;
|
|
9
|
+
}
|
|
10
|
+
resolve(grammarGenerator) {
|
|
11
|
+
const ruleName = this.getRuleName(grammarGenerator);
|
|
12
|
+
if (!grammarGenerator.rules.has(ruleName))
|
|
13
|
+
grammarGenerator.rules.set(ruleName, this.getGrammar(grammarGenerator));
|
|
14
|
+
return ruleName;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=GbnfTerminal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GbnfTerminal.js","sourceRoot":"","sources":["../../../src/utils/gbnfJson/GbnfTerminal.ts"],"names":[],"mappings":"AAGA,MAAM,OAAgB,YAAY;IACtB,SAAS,GAAkB,IAAI,CAAC;IAEjC,WAAW,CAAC,gBAAsC;QACrD,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI;YACtB,OAAO,IAAI,CAAC,SAAS,CAAC;QAE1B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,gBAAgB,EAAE,CAAC;QACrD,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAE1B,OAAO,QAAQ,CAAC;IACpB,CAAC;IAIM,OAAO,CAAC,gBAAsC;QACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;QAEpD,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YACrC,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAE5E,OAAO,QAAQ,CAAC;IACpB,CAAC;CACJ"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { GbnfTerminal } from "../GbnfTerminal.js";
|
|
2
|
+
import { GbnfGrammarGenerator } from "../GbnfGrammarGenerator.js";
|
|
3
|
+
export declare class GbnfArray extends GbnfTerminal {
|
|
4
|
+
readonly items: GbnfTerminal;
|
|
5
|
+
constructor(items: GbnfTerminal);
|
|
6
|
+
getGrammar(grammarGenerator: GbnfGrammarGenerator): string;
|
|
7
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { GbnfTerminal } from "../GbnfTerminal.js";
|
|
2
|
+
import { GbnfWhitespace } from "./GbnfWhitespace.js";
|
|
3
|
+
import { GbnfGrammar } from "./GbnfGrammar.js";
|
|
4
|
+
import { GbnfOr } from "./GbnfOr.js";
|
|
5
|
+
export class GbnfArray extends GbnfTerminal {
|
|
6
|
+
items;
|
|
7
|
+
constructor(items) {
|
|
8
|
+
super();
|
|
9
|
+
this.items = items;
|
|
10
|
+
}
|
|
11
|
+
getGrammar(grammarGenerator) {
|
|
12
|
+
const whitespaceRuleName = new GbnfWhitespace().resolve(grammarGenerator);
|
|
13
|
+
const itemsGrammarRuleName = this.items.resolve(grammarGenerator);
|
|
14
|
+
return new GbnfGrammar([
|
|
15
|
+
'"["', whitespaceRuleName,
|
|
16
|
+
new GbnfOr([
|
|
17
|
+
new GbnfGrammar([
|
|
18
|
+
"(", itemsGrammarRuleName, ")",
|
|
19
|
+
"(", '","', whitespaceRuleName, itemsGrammarRuleName, ")*"
|
|
20
|
+
]),
|
|
21
|
+
new GbnfGrammar([
|
|
22
|
+
"(", itemsGrammarRuleName, ")?"
|
|
23
|
+
])
|
|
24
|
+
]).getGrammar(grammarGenerator),
|
|
25
|
+
whitespaceRuleName, '"]"'
|
|
26
|
+
]).getGrammar();
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=GbnfArray.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GbnfArray.js","sourceRoot":"","sources":["../../../../src/utils/gbnfJson/terminals/GbnfArray.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAGnC,MAAM,OAAO,SAAU,SAAQ,YAAY;IACvB,KAAK,CAAe;IAEpC,YAAmB,KAAmB;QAClC,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,UAAU,CAAC,gBAAsC;QAC7C,MAAM,kBAAkB,GAAG,IAAI,cAAc,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC1E,MAAM,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAElE,OAAO,IAAI,WAAW,CAAC;YACnB,KAAK,EAAE,kBAAkB;YACzB,IAAI,MAAM,CAAC;gBACP,IAAI,WAAW,CAAC;oBACZ,GAAG,EAAE,oBAAoB,EAAE,GAAG;oBAC9B,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,IAAI;iBAC7D,CAAC;gBACF,IAAI,WAAW,CAAC;oBACZ,GAAG,EAAE,oBAAoB,EAAE,IAAI;iBAClC,CAAC;aACL,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC;YAC/B,kBAAkB,EAAE,KAAK;SAC5B,CAAC,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;CACJ"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { GbnfTerminal } from "../GbnfTerminal.js";
|
|
2
|
+
import { GbnfOr } from "./GbnfOr.js";
|
|
3
|
+
import { GbnfGrammar } from "./GbnfGrammar.js";
|
|
4
|
+
import { reservedRuleNames } from "./gbnfConsts.js";
|
|
5
|
+
export class GbnfBoolean extends GbnfTerminal {
|
|
6
|
+
getGrammar(grammarGenerator) {
|
|
7
|
+
return new GbnfOr([
|
|
8
|
+
new GbnfGrammar('"true"'),
|
|
9
|
+
new GbnfGrammar('"false"')
|
|
10
|
+
]).getGrammar(grammarGenerator);
|
|
11
|
+
}
|
|
12
|
+
getRuleName() {
|
|
13
|
+
return reservedRuleNames.boolean;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=GbnfBoolean.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GbnfBoolean.js","sourceRoot":"","sources":["../../../../src/utils/gbnfJson/terminals/GbnfBoolean.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AACnC,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAC,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAGlD,MAAM,OAAO,WAAY,SAAQ,YAAY;IACzC,UAAU,CAAC,gBAAsC;QAC7C,OAAO,IAAI,MAAM,CAAC;YACd,IAAI,WAAW,CAAC,QAAQ,CAAC;YACzB,IAAI,WAAW,CAAC,SAAS,CAAC;SAC7B,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACpC,CAAC;IAEQ,WAAW;QAChB,OAAO,iBAAiB,CAAC,OAAO,CAAC;IACrC,CAAC;CACJ"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { GbnfTerminal } from "../GbnfTerminal.js";
|
|
2
|
+
export class GbnfBooleanValue extends GbnfTerminal {
|
|
3
|
+
value;
|
|
4
|
+
constructor(value) {
|
|
5
|
+
super();
|
|
6
|
+
this.value = value;
|
|
7
|
+
}
|
|
8
|
+
getGrammar() {
|
|
9
|
+
if (this.value)
|
|
10
|
+
return '"true"';
|
|
11
|
+
return '"false"';
|
|
12
|
+
}
|
|
13
|
+
resolve() {
|
|
14
|
+
return this.getGrammar();
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=GbnfBooleanValue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GbnfBooleanValue.js","sourceRoot":"","sources":["../../../../src/utils/gbnfJson/terminals/GbnfBooleanValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAGhD,MAAM,OAAO,gBAAiB,SAAQ,YAAY;IAC9B,KAAK,CAAU;IAE/B,YAAmB,KAAc;QAC7B,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,UAAU;QACN,IAAI,IAAI,CAAC,KAAK;YACV,OAAO,QAAQ,CAAC;QAEpB,OAAO,SAAS,CAAC;IACrB,CAAC;IAEe,OAAO;QACnB,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;IAC7B,CAAC;CACJ"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { GbnfTerminal } from "../GbnfTerminal.js";
|
|
2
|
+
export class GbnfGrammar extends GbnfTerminal {
|
|
3
|
+
grammar;
|
|
4
|
+
constructor(grammar) {
|
|
5
|
+
super();
|
|
6
|
+
this.grammar = grammar;
|
|
7
|
+
}
|
|
8
|
+
getGrammar() {
|
|
9
|
+
if (this.grammar instanceof Array)
|
|
10
|
+
return this.grammar
|
|
11
|
+
.filter((item) => item !== "")
|
|
12
|
+
.join(" ");
|
|
13
|
+
return this.grammar;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=GbnfGrammar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GbnfGrammar.js","sourceRoot":"","sources":["../../../../src/utils/gbnfJson/terminals/GbnfGrammar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAGhD,MAAM,OAAO,WAAY,SAAQ,YAAY;IACzB,OAAO,CAAoB;IAE3C,YAAmB,OAA0B;QACzC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,UAAU;QACN,IAAI,IAAI,CAAC,OAAO,YAAY,KAAK;YAC7B,OAAO,IAAI,CAAC,OAAO;iBACd,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC;iBAC7B,IAAI,CAAC,GAAG,CAAC,CAAC;QAEnB,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;CACJ"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { GbnfTerminal } from "../GbnfTerminal.js";
|
|
2
|
+
import { reservedRuleNames } from "./gbnfConsts.js";
|
|
3
|
+
export class GbnfNull extends GbnfTerminal {
|
|
4
|
+
getGrammar() {
|
|
5
|
+
return '"null"';
|
|
6
|
+
}
|
|
7
|
+
getRuleName() {
|
|
8
|
+
return reservedRuleNames.null;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=GbnfNull.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GbnfNull.js","sourceRoot":"","sources":["../../../../src/utils/gbnfJson/terminals/GbnfNull.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAC,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAGlD,MAAM,OAAO,QAAS,SAAQ,YAAY;IACtC,UAAU;QACN,OAAO,QAAQ,CAAC;IACpB,CAAC;IAEQ,WAAW;QAChB,OAAO,iBAAiB,CAAC,IAAI,CAAC;IAClC,CAAC;CACJ"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { GbnfTerminal } from "../GbnfTerminal.js";
|
|
2
|
+
export declare class GbnfNumber extends GbnfTerminal {
|
|
3
|
+
readonly allowFractional: boolean;
|
|
4
|
+
constructor({ allowFractional }: {
|
|
5
|
+
allowFractional: boolean;
|
|
6
|
+
});
|
|
7
|
+
getGrammar(): string;
|
|
8
|
+
getRuleName(): string;
|
|
9
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { GbnfTerminal } from "../GbnfTerminal.js";
|
|
2
|
+
import { reservedRuleNames } from "./gbnfConsts.js";
|
|
3
|
+
export class GbnfNumber extends GbnfTerminal {
|
|
4
|
+
allowFractional;
|
|
5
|
+
constructor({ allowFractional = true }) {
|
|
6
|
+
super();
|
|
7
|
+
this.allowFractional = allowFractional;
|
|
8
|
+
}
|
|
9
|
+
getGrammar() {
|
|
10
|
+
const numberGrammar = '("-"? ([0-9] | [1-9] [0-9]*))';
|
|
11
|
+
if (this.allowFractional)
|
|
12
|
+
return numberGrammar + ' ("." [0-9]+)? ([eE] [-+]? [0-9]+)?';
|
|
13
|
+
return numberGrammar;
|
|
14
|
+
}
|
|
15
|
+
getRuleName() {
|
|
16
|
+
if (this.allowFractional)
|
|
17
|
+
return reservedRuleNames.number.fractional;
|
|
18
|
+
return reservedRuleNames.number.integer;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=GbnfNumber.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GbnfNumber.js","sourceRoot":"","sources":["../../../../src/utils/gbnfJson/terminals/GbnfNumber.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAC,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAGlD,MAAM,OAAO,UAAW,SAAQ,YAAY;IACxB,eAAe,CAAU;IAEzC,YAAmB,EAAC,eAAe,GAAG,IAAI,EAA+B;QACrE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IAC3C,CAAC;IAED,UAAU;QACN,MAAM,aAAa,GAAG,+BAA+B,CAAC;QAEtD,IAAI,IAAI,CAAC,eAAe;YACpB,OAAO,aAAa,GAAG,qCAAqC,CAAC;QAEjE,OAAO,aAAa,CAAC;IACzB,CAAC;IAEQ,WAAW;QAChB,IAAI,IAAI,CAAC,eAAe;YACpB,OAAO,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC;QAE/C,OAAO,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC;IAC5C,CAAC;CACJ"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { GbnfTerminal } from "../GbnfTerminal.js";
|
|
2
|
+
export class GbnfNumberValue extends GbnfTerminal {
|
|
3
|
+
value;
|
|
4
|
+
constructor(value) {
|
|
5
|
+
super();
|
|
6
|
+
this.value = value;
|
|
7
|
+
}
|
|
8
|
+
getGrammar() {
|
|
9
|
+
return '"' + JSON.stringify(this.value) + '"';
|
|
10
|
+
}
|
|
11
|
+
resolve() {
|
|
12
|
+
return this.getGrammar();
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=GbnfNumberValue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GbnfNumberValue.js","sourceRoot":"","sources":["../../../../src/utils/gbnfJson/terminals/GbnfNumberValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAGhD,MAAM,OAAO,eAAgB,SAAQ,YAAY;IAC7B,KAAK,CAAS;IAE9B,YAAmB,KAAa;QAC5B,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAEQ,UAAU;QACf,OAAO,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC;IAClD,CAAC;IAEe,OAAO;QACnB,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;IAC7B,CAAC;CACJ"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { GbnfTerminal } from "../GbnfTerminal.js";
|
|
2
|
+
import { GbnfGrammarGenerator } from "../GbnfGrammarGenerator.js";
|
|
3
|
+
import { GbnfString } from "./GbnfString.js";
|
|
4
|
+
import { GbnfStringValue } from "./GbnfStringValue.js";
|
|
5
|
+
export declare class GbnfObjectMap extends GbnfTerminal {
|
|
6
|
+
readonly fields: Array<Readonly<{
|
|
7
|
+
key: GbnfString | GbnfStringValue;
|
|
8
|
+
value: GbnfTerminal;
|
|
9
|
+
required: true;
|
|
10
|
+
}>>;
|
|
11
|
+
constructor(fields: Array<Readonly<{
|
|
12
|
+
key: GbnfString | GbnfStringValue;
|
|
13
|
+
value: GbnfTerminal;
|
|
14
|
+
required: true;
|
|
15
|
+
}>>);
|
|
16
|
+
getGrammar(grammarGenerator: GbnfGrammarGenerator): string;
|
|
17
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { GbnfTerminal } from "../GbnfTerminal.js";
|
|
2
|
+
import { GbnfWhitespace } from "./GbnfWhitespace.js";
|
|
3
|
+
import { GbnfGrammar } from "./GbnfGrammar.js";
|
|
4
|
+
export class GbnfObjectMap extends GbnfTerminal {
|
|
5
|
+
fields;
|
|
6
|
+
constructor(fields) {
|
|
7
|
+
super();
|
|
8
|
+
this.fields = fields;
|
|
9
|
+
}
|
|
10
|
+
getGrammar(grammarGenerator) {
|
|
11
|
+
const whitespaceRuleName = new GbnfWhitespace().resolve(grammarGenerator);
|
|
12
|
+
return new GbnfGrammar([
|
|
13
|
+
'"{"', whitespaceRuleName,
|
|
14
|
+
...this.fields.map(({ key, value }, index) => {
|
|
15
|
+
return new GbnfGrammar([
|
|
16
|
+
key.getGrammar(), '":"', "[ ]?", value.resolve(grammarGenerator),
|
|
17
|
+
index < this.fields.length - 1 ? '","' : "",
|
|
18
|
+
whitespaceRuleName
|
|
19
|
+
]).getGrammar();
|
|
20
|
+
}),
|
|
21
|
+
'"}"'
|
|
22
|
+
]).getGrammar();
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=GbnfObjectMap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GbnfObjectMap.js","sourceRoot":"","sources":["../../../../src/utils/gbnfJson/terminals/GbnfObjectMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAIhD,OAAO,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAG7C,MAAM,OAAO,aAAc,SAAQ,YAAY;IAC3B,MAAM,CAA8F;IAEpH,YAAmB,MAAmG;QAClH,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED,UAAU,CAAC,gBAAsC;QAC7C,MAAM,kBAAkB,GAAG,IAAI,cAAc,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAE1E,OAAO,IAAI,WAAW,CAAC;YACnB,KAAK,EAAE,kBAAkB;YACzB,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAC,GAAG,EAAE,KAAK,EAAC,EAAE,KAAK,EAAE,EAAE;gBACvC,OAAO,IAAI,WAAW,CAAC;oBACnB,GAAG,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC;oBAChE,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;oBAC3C,kBAAkB;iBACrB,CAAC,CAAC,UAAU,EAAE,CAAC;YACpB,CAAC,CAAC;YACF,KAAK;SACR,CAAC,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;CACJ"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { GbnfTerminal } from "../GbnfTerminal.js";
|
|
2
|
+
import { GbnfGrammarGenerator } from "../GbnfGrammarGenerator.js";
|
|
3
|
+
export declare class GbnfOr extends GbnfTerminal {
|
|
4
|
+
readonly values: readonly GbnfTerminal[];
|
|
5
|
+
constructor(values: readonly GbnfTerminal[]);
|
|
6
|
+
getGrammar(grammarGenerator: GbnfGrammarGenerator): string;
|
|
7
|
+
resolve(grammarGenerator: GbnfGrammarGenerator): string;
|
|
8
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { GbnfTerminal } from "../GbnfTerminal.js";
|
|
2
|
+
import { grammarNoValue } from "./gbnfConsts.js";
|
|
3
|
+
export class GbnfOr extends GbnfTerminal {
|
|
4
|
+
values;
|
|
5
|
+
constructor(values) {
|
|
6
|
+
super();
|
|
7
|
+
this.values = values;
|
|
8
|
+
}
|
|
9
|
+
getGrammar(grammarGenerator) {
|
|
10
|
+
const mappedValues = this.values
|
|
11
|
+
.map(v => v.resolve(grammarGenerator))
|
|
12
|
+
.filter(value => value !== "" && value !== grammarNoValue);
|
|
13
|
+
if (mappedValues.length === 0)
|
|
14
|
+
return grammarNoValue;
|
|
15
|
+
else if (mappedValues.length === 1)
|
|
16
|
+
return mappedValues[0];
|
|
17
|
+
return "( " + mappedValues.join(" | ") + " )";
|
|
18
|
+
}
|
|
19
|
+
resolve(grammarGenerator) {
|
|
20
|
+
const mappedValues = this.values
|
|
21
|
+
.map(v => v.resolve(grammarGenerator))
|
|
22
|
+
.filter(value => value !== "" && value !== grammarNoValue);
|
|
23
|
+
if (mappedValues.length === 0)
|
|
24
|
+
return grammarNoValue;
|
|
25
|
+
else if (mappedValues.length === 1)
|
|
26
|
+
return mappedValues[0];
|
|
27
|
+
return super.resolve(grammarGenerator);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=GbnfOr.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GbnfOr.js","sourceRoot":"","sources":["../../../../src/utils/gbnfJson/terminals/GbnfOr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAEhD,OAAO,EAAC,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAG/C,MAAM,OAAO,MAAO,SAAQ,YAAY;IACpB,MAAM,CAA0B;IAEhD,YAAmB,MAA+B;QAC9C,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED,UAAU,CAAC,gBAAsC;QAC7C,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM;aAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;aACrC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,cAAc,CAAC,CAAC;QAE/D,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YACzB,OAAO,cAAc,CAAC;aACrB,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YAC9B,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC;QAE3B,OAAO,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAClD,CAAC;IAEQ,OAAO,CAAC,gBAAsC;QACnD,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM;aAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;aACrC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,cAAc,CAAC,CAAC;QAE/D,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YACzB,OAAO,cAAc,CAAC;aACrB,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YAC9B,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC;QAE3B,OAAO,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC3C,CAAC;CACJ"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { GbnfTerminal } from "../GbnfTerminal.js";
|
|
2
|
+
import { reservedRuleNames } from "./gbnfConsts.js";
|
|
3
|
+
export class GbnfString extends GbnfTerminal {
|
|
4
|
+
getGrammar() {
|
|
5
|
+
return '"\\"" ( ' +
|
|
6
|
+
'[^"\\\\]' +
|
|
7
|
+
" | " +
|
|
8
|
+
'"\\\\" (["\\\\/bfnrt] | "u" [0-9a-fA-F] [0-9a-fA-F] [0-9a-fA-F] [0-9a-fA-F])' + // escape sequences
|
|
9
|
+
')* "\\""';
|
|
10
|
+
}
|
|
11
|
+
getRuleName() {
|
|
12
|
+
return reservedRuleNames.string;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=GbnfString.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GbnfString.js","sourceRoot":"","sources":["../../../../src/utils/gbnfJson/terminals/GbnfString.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAC,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAGlD,MAAM,OAAO,UAAW,SAAQ,YAAY;IACxC,UAAU;QACN,OAAO,UAAU;YACb,UAAU;YACV,KAAK;YACL,8EAA8E,GAAG,mBAAmB;YACpG,UAAU,CAAC;IACnB,CAAC;IAEQ,WAAW;QAChB,OAAO,iBAAiB,CAAC,MAAM,CAAC;IACpC,CAAC;CACJ"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { GbnfTerminal } from "../GbnfTerminal.js";
|
|
2
|
+
export class GbnfStringValue extends GbnfTerminal {
|
|
3
|
+
value;
|
|
4
|
+
constructor(value) {
|
|
5
|
+
super();
|
|
6
|
+
this.value = value;
|
|
7
|
+
}
|
|
8
|
+
getGrammar() {
|
|
9
|
+
return [
|
|
10
|
+
"\"",
|
|
11
|
+
this.value
|
|
12
|
+
.replaceAll("\\", "\\\\")
|
|
13
|
+
.replaceAll("\t", "\\t")
|
|
14
|
+
.replaceAll("\r", "\\r")
|
|
15
|
+
.replaceAll("\n", "\\n")
|
|
16
|
+
.replaceAll('"', "\\\\" + '\\"'),
|
|
17
|
+
"\""
|
|
18
|
+
].join("");
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=GbnfStringValue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GbnfStringValue.js","sourceRoot":"","sources":["../../../../src/utils/gbnfJson/terminals/GbnfStringValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAGhD,MAAM,OAAO,eAAgB,SAAQ,YAAY;IAC7B,KAAK,CAAS;IAE9B,YAAmB,KAAa;QAC5B,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAEQ,UAAU;QACf,OAAO;YACH,IAAI;YACJ,IAAI,CAAC,KAAK;iBACL,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC;iBACxB,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC;iBACvB,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC;iBACvB,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC;iBACvB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAC;YACpC,IAAI;SACP,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;CACJ"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { GbnfTerminal } from "../GbnfTerminal.js";
|
|
2
|
+
export declare class GbnfWhitespace extends GbnfTerminal {
|
|
3
|
+
readonly newLinesAllowed: boolean;
|
|
4
|
+
constructor({ newLinesAllowed }?: {
|
|
5
|
+
newLinesAllowed?: boolean;
|
|
6
|
+
});
|
|
7
|
+
getGrammar(): string;
|
|
8
|
+
getRuleName(): string;
|
|
9
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { GbnfTerminal } from "../GbnfTerminal.js";
|
|
2
|
+
import { reservedRuleNames } from "./gbnfConsts.js";
|
|
3
|
+
export class GbnfWhitespace extends GbnfTerminal {
|
|
4
|
+
newLinesAllowed;
|
|
5
|
+
constructor({ newLinesAllowed = true } = {}) {
|
|
6
|
+
super();
|
|
7
|
+
this.newLinesAllowed = newLinesAllowed;
|
|
8
|
+
}
|
|
9
|
+
getGrammar() {
|
|
10
|
+
if (this.newLinesAllowed)
|
|
11
|
+
return "[\\n]? [ \\t]* [\\n]?";
|
|
12
|
+
return "[ \\t]*";
|
|
13
|
+
}
|
|
14
|
+
getRuleName() {
|
|
15
|
+
if (this.newLinesAllowed)
|
|
16
|
+
return reservedRuleNames.whitespace.withNewLines;
|
|
17
|
+
return reservedRuleNames.whitespace.withoutNewLines;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=GbnfWhitespace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GbnfWhitespace.js","sourceRoot":"","sources":["../../../../src/utils/gbnfJson/terminals/GbnfWhitespace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAC,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAGlD,MAAM,OAAO,cAAe,SAAQ,YAAY;IAC5B,eAAe,CAAU;IAEzC,YAAmB,EAAC,eAAe,GAAG,IAAI,KAAmC,EAAE;QAC3E,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IAC3C,CAAC;IAED,UAAU;QACN,IAAI,IAAI,CAAC,eAAe;YACpB,OAAO,uBAAuB,CAAC;QAEnC,OAAO,SAAS,CAAC;IACrB,CAAC;IAEQ,WAAW;QAChB,IAAI,IAAI,CAAC,eAAe;YACpB,OAAO,iBAAiB,CAAC,UAAU,CAAC,YAAY,CAAC;QAErD,OAAO,iBAAiB,CAAC,UAAU,CAAC,eAAe,CAAC;IACxD,CAAC;CACJ"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare const grammarNoValue = "\"\"";
|
|
2
|
+
export declare const reservedRuleNames: {
|
|
3
|
+
readonly null: "null-rule";
|
|
4
|
+
readonly boolean: "boolean-rule";
|
|
5
|
+
readonly number: {
|
|
6
|
+
readonly fractional: "fractional-number-rule";
|
|
7
|
+
readonly integer: "integer-number-rule";
|
|
8
|
+
};
|
|
9
|
+
readonly string: "string-rule";
|
|
10
|
+
readonly whitespace: {
|
|
11
|
+
readonly withNewLines: "whitespace-new-lines-rule";
|
|
12
|
+
readonly withoutNewLines: "whitespace-no-new-lines-rule";
|
|
13
|
+
};
|
|
14
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export const grammarNoValue = '""';
|
|
2
|
+
export const reservedRuleNames = {
|
|
3
|
+
null: "null-rule",
|
|
4
|
+
boolean: "boolean-rule",
|
|
5
|
+
number: {
|
|
6
|
+
fractional: "fractional-number-rule",
|
|
7
|
+
integer: "integer-number-rule"
|
|
8
|
+
},
|
|
9
|
+
string: "string-rule",
|
|
10
|
+
whitespace: {
|
|
11
|
+
withNewLines: "whitespace-new-lines-rule",
|
|
12
|
+
withoutNewLines: "whitespace-no-new-lines-rule"
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=gbnfConsts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gbnfConsts.js","sourceRoot":"","sources":["../../../../src/utils/gbnfJson/terminals/gbnfConsts.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC;AACnC,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC7B,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,cAAc;IACvB,MAAM,EAAE;QACJ,UAAU,EAAE,wBAAwB;QACpC,OAAO,EAAE,qBAAqB;KACjC;IACD,MAAM,EAAE,aAAa;IACrB,UAAU,EAAE;QACR,YAAY,EAAE,2BAA2B;QACzC,eAAe,EAAE,8BAA8B;KAClD;CACK,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
export type GbnfJsonSchemaImmutableType = "string" | "number" | "integer" | "boolean" | "null";
|
|
2
|
+
export type GbnfJsonSchema = GbnfJsonBasicSchema | GbnfJsonConstSchema | GbnfJsonEnumSchema | GbnfJsonOneOfSchema | GbnfJsonObjectSchema | GbnfJsonArraySchema;
|
|
3
|
+
export type GbnfJsonBasicSchema = {
|
|
4
|
+
type: GbnfJsonSchemaImmutableType | readonly GbnfJsonSchemaImmutableType[];
|
|
5
|
+
};
|
|
6
|
+
export type GbnfJsonConstSchema = {
|
|
7
|
+
const: string | number | boolean | null;
|
|
8
|
+
};
|
|
9
|
+
export type GbnfJsonEnumSchema = {
|
|
10
|
+
enum: readonly (string | number | boolean | null)[];
|
|
11
|
+
};
|
|
12
|
+
export type GbnfJsonOneOfSchema = {
|
|
13
|
+
oneOf: readonly GbnfJsonSchema[];
|
|
14
|
+
};
|
|
15
|
+
export type GbnfJsonObjectSchema<Keys extends string = string> = {
|
|
16
|
+
type: "object";
|
|
17
|
+
properties: Readonly<{
|
|
18
|
+
[key in Keys]: GbnfJsonSchema;
|
|
19
|
+
}>;
|
|
20
|
+
required?: readonly Keys[];
|
|
21
|
+
};
|
|
22
|
+
export type GbnfJsonArraySchema = {
|
|
23
|
+
type: "array";
|
|
24
|
+
items: GbnfJsonSchema;
|
|
25
|
+
};
|
|
26
|
+
export type GbnfJsonSchemaToType<T> = GbnfJsonSchemaToTSType<T>;
|
|
27
|
+
export type GbnfJsonSchemaToTSType<T> = T extends GbnfJsonBasicSchema ? GbnfJsonBasicSchemaToType<T["type"]> : T extends GbnfJsonConstSchema ? T["const"] : T extends GbnfJsonEnumSchema ? T["enum"][number] : T extends GbnfJsonOneOfSchema ? GbnfJsonSchemaToType<T["oneOf"][number]> : T extends GbnfJsonObjectSchema ? GbnfJsonObjectSchemaToType<T["properties"]> : T extends GbnfJsonArraySchema ? GbnfJsonSchemaToType<T["items"]>[] : never;
|
|
28
|
+
type GbnfJsonBasicSchemaToType<T> = T extends GbnfJsonSchemaImmutableType ? ImmutableTypeToType<T> : T extends GbnfJsonSchemaImmutableType[] ? ImmutableTypeToType<T[number]> : never;
|
|
29
|
+
type ImmutableTypeToType<T> = T extends "string" ? string : T extends "number" ? number : T extends "integer" ? number : T extends "boolean" ? boolean : T extends "null" ? null : never;
|
|
30
|
+
type GbnfJsonObjectSchemaToType<Props> = {
|
|
31
|
+
[P in keyof Props]: GbnfJsonSchemaToType<Props[P]>;
|
|
32
|
+
};
|
|
33
|
+
export declare function isGbnfJsonConstSchema(schema: GbnfJsonSchema): schema is GbnfJsonConstSchema;
|
|
34
|
+
export declare function isGbnfJsonEnumSchema(schema: GbnfJsonSchema): schema is GbnfJsonEnumSchema;
|
|
35
|
+
export declare function isGbnfJsonOneOfSchema(schema: GbnfJsonSchema): schema is GbnfJsonOneOfSchema;
|
|
36
|
+
export declare function isGbnfJsonObjectSchema(schema: GbnfJsonSchema): schema is GbnfJsonObjectSchema;
|
|
37
|
+
export declare function isGbnfJsonArraySchema(schema: GbnfJsonSchema): schema is GbnfJsonArraySchema;
|
|
38
|
+
export declare function isGbnfJsonBasicSchemaIncludesType<T extends GbnfJsonSchemaImmutableType>(schema: GbnfJsonBasicSchema, type: T): schema is GbnfJsonBasicSchema & {
|
|
39
|
+
type: T | (T | GbnfJsonSchemaImmutableType)[];
|
|
40
|
+
};
|
|
41
|
+
export {};
|