@traqula/rules-sparql-1-1 0.0.20 → 0.0.22
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/dist/cjs/lib/MinimalSparqlParser.js +64 -0
- package/dist/cjs/lib/Sparql11types.js +16 -0
- package/dist/cjs/lib/astFactory.js +121 -0
- package/dist/cjs/lib/expressionHelpers.js +215 -0
- package/dist/cjs/lib/factoryMixins/ContextFactory.js +55 -0
- package/dist/cjs/lib/factoryMixins/ExpressionFactory.js +105 -0
- package/dist/cjs/lib/factoryMixins/GraphRefFactory.js +76 -0
- package/dist/cjs/lib/factoryMixins/PathFactory.js +90 -0
- package/dist/cjs/lib/factoryMixins/Patternfactory.js +123 -0
- package/dist/cjs/lib/factoryMixins/QueryFactory.js +68 -0
- package/dist/cjs/lib/factoryMixins/SolutionModifiersFactory.js +80 -0
- package/dist/cjs/lib/factoryMixins/TermFactory.js +105 -0
- package/dist/cjs/lib/factoryMixins/UpdateOperationFactory.js +150 -0
- package/dist/cjs/lib/factoryMixins/mixins.js +43 -0
- package/dist/cjs/lib/grammar/builtIn.js +385 -0
- package/dist/cjs/lib/grammar/dataSetClause.js +118 -0
- package/dist/cjs/lib/grammar/expression.js +384 -0
- package/dist/cjs/lib/grammar/general.js +168 -0
- package/dist/cjs/lib/grammar/index.js +115 -0
- package/dist/cjs/lib/grammar/literals.js +282 -0
- package/dist/cjs/lib/grammar/propertyPaths.js +206 -0
- package/dist/cjs/lib/grammar/queryUnit.js +390 -0
- package/dist/cjs/lib/grammar/solutionModifier.js +280 -0
- package/dist/cjs/lib/grammar/tripleBlock.js +384 -0
- package/dist/cjs/lib/grammar/updateUnit.js +546 -0
- package/dist/cjs/lib/grammar/whereClause.js +483 -0
- package/dist/cjs/lib/index.js +56 -0
- package/dist/cjs/lib/lexer/BuiltInCalls.js +337 -0
- package/dist/cjs/lib/lexer/graph.js +41 -0
- package/dist/cjs/lib/lexer/index.js +50 -0
- package/dist/cjs/lib/lexer/lexer.js +199 -0
- package/dist/cjs/lib/lexer/lexerPatterns.js +133 -0
- package/dist/cjs/lib/lexer/symbols.js +107 -0
- package/dist/cjs/lib/lexer/terminals.js +103 -0
- package/dist/cjs/lib/sparql11HelperTypes.js +16 -0
- package/dist/cjs/lib/utils.js +64 -0
- package/dist/cjs/lib/validation/validators.js +214 -0
- package/dist/esm/lib/MinimalSparqlParser.js.map +1 -0
- package/dist/esm/lib/Sparql11types.js.map +1 -0
- package/dist/esm/lib/astFactory.js.map +1 -0
- package/{lib → dist/esm/lib}/expressionHelpers.d.ts +1 -1
- package/dist/esm/lib/expressionHelpers.js.map +1 -0
- package/dist/esm/lib/factoryMixins/ContextFactory.js.map +1 -0
- package/dist/esm/lib/factoryMixins/ExpressionFactory.js.map +1 -0
- package/dist/esm/lib/factoryMixins/GraphRefFactory.js.map +1 -0
- package/dist/esm/lib/factoryMixins/PathFactory.js.map +1 -0
- package/dist/esm/lib/factoryMixins/Patternfactory.js.map +1 -0
- package/dist/esm/lib/factoryMixins/QueryFactory.js.map +1 -0
- package/dist/esm/lib/factoryMixins/SolutionModifiersFactory.js.map +1 -0
- package/dist/esm/lib/factoryMixins/TermFactory.js.map +1 -0
- package/dist/esm/lib/factoryMixins/UpdateOperationFactory.js.map +1 -0
- package/dist/esm/lib/factoryMixins/mixins.js.map +1 -0
- package/{lib → dist/esm/lib}/grammar/builtIn.d.ts +1 -1
- package/dist/esm/lib/grammar/builtIn.js.map +1 -0
- package/{lib → dist/esm/lib}/grammar/dataSetClause.d.ts +1 -1
- package/dist/esm/lib/grammar/dataSetClause.js.map +1 -0
- package/dist/esm/lib/grammar/expression.js.map +1 -0
- package/dist/esm/lib/grammar/general.js.map +1 -0
- package/dist/esm/lib/grammar/index.js.map +1 -0
- package/dist/esm/lib/grammar/literals.js.map +1 -0
- package/{lib → dist/esm/lib}/grammar/propertyPaths.d.ts +1 -1
- package/dist/esm/lib/grammar/propertyPaths.js.map +1 -0
- package/dist/esm/lib/grammar/queryUnit.js.map +1 -0
- package/dist/esm/lib/grammar/solutionModifier.js.map +1 -0
- package/dist/esm/lib/grammar/tripleBlock.js.map +1 -0
- package/dist/esm/lib/grammar/updateUnit.js.map +1 -0
- package/dist/esm/lib/grammar/whereClause.js.map +1 -0
- package/dist/esm/lib/index.js.map +1 -0
- package/dist/esm/lib/lexer/BuiltInCalls.js.map +1 -0
- package/dist/esm/lib/lexer/graph.js.map +1 -0
- package/dist/esm/lib/lexer/index.js.map +1 -0
- package/dist/esm/lib/lexer/lexer.js.map +1 -0
- package/dist/esm/lib/lexer/lexerPatterns.js.map +1 -0
- package/dist/esm/lib/lexer/symbols.js.map +1 -0
- package/{lib → dist/esm/lib}/lexer/terminals.js +1 -1
- package/dist/esm/lib/lexer/terminals.js.map +1 -0
- package/dist/esm/lib/sparql11HelperTypes.js.map +1 -0
- package/dist/esm/lib/utils.js.map +1 -0
- package/{lib → dist/esm/lib}/validation/validators.js +0 -1
- package/dist/esm/lib/validation/validators.js.map +1 -0
- package/package.json +13 -18
- package/lib/MinimalSparqlParser.js.map +0 -1
- package/lib/Sparql11types.js.map +0 -1
- package/lib/astFactory.js.map +0 -1
- package/lib/expressionHelpers.js.map +0 -1
- package/lib/factoryMixins/ContextFactory.js.map +0 -1
- package/lib/factoryMixins/ExpressionFactory.js.map +0 -1
- package/lib/factoryMixins/GraphRefFactory.js.map +0 -1
- package/lib/factoryMixins/PathFactory.js.map +0 -1
- package/lib/factoryMixins/Patternfactory.js.map +0 -1
- package/lib/factoryMixins/QueryFactory.js.map +0 -1
- package/lib/factoryMixins/SolutionModifiersFactory.js.map +0 -1
- package/lib/factoryMixins/TermFactory.js.map +0 -1
- package/lib/factoryMixins/UpdateOperationFactory.js.map +0 -1
- package/lib/factoryMixins/mixins.js.map +0 -1
- package/lib/grammar/builtIn.js.map +0 -1
- package/lib/grammar/dataSetClause.js.map +0 -1
- package/lib/grammar/expression.js.map +0 -1
- package/lib/grammar/general.js.map +0 -1
- package/lib/grammar/index.js.map +0 -1
- package/lib/grammar/literals.js.map +0 -1
- package/lib/grammar/propertyPaths.js.map +0 -1
- package/lib/grammar/queryUnit.js.map +0 -1
- package/lib/grammar/solutionModifier.js.map +0 -1
- package/lib/grammar/tripleBlock.js.map +0 -1
- package/lib/grammar/updateUnit.js.map +0 -1
- package/lib/grammar/whereClause.js.map +0 -1
- package/lib/index.cjs +0 -14665
- package/lib/index.js.map +0 -1
- package/lib/lexer/BuiltInCalls.js.map +0 -1
- package/lib/lexer/graph.js.map +0 -1
- package/lib/lexer/index.js.map +0 -1
- package/lib/lexer/lexer.js.map +0 -1
- package/lib/lexer/lexerPatterns.js.map +0 -1
- package/lib/lexer/symbols.js.map +0 -1
- package/lib/lexer/terminals.js.map +0 -1
- package/lib/sparql11HelperTypes.js.map +0 -1
- package/lib/utils.js.map +0 -1
- package/lib/validation/validators.js.map +0 -1
- /package/{lib → dist/esm/lib}/MinimalSparqlParser.d.ts +0 -0
- /package/{lib → dist/esm/lib}/MinimalSparqlParser.js +0 -0
- /package/{lib → dist/esm/lib}/Sparql11types.d.ts +0 -0
- /package/{lib → dist/esm/lib}/Sparql11types.js +0 -0
- /package/{lib → dist/esm/lib}/astFactory.d.ts +0 -0
- /package/{lib → dist/esm/lib}/astFactory.js +0 -0
- /package/{lib → dist/esm/lib}/expressionHelpers.js +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/ContextFactory.d.ts +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/ContextFactory.js +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/ExpressionFactory.d.ts +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/ExpressionFactory.js +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/GraphRefFactory.d.ts +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/GraphRefFactory.js +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/PathFactory.d.ts +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/PathFactory.js +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/Patternfactory.d.ts +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/Patternfactory.js +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/QueryFactory.d.ts +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/QueryFactory.js +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/SolutionModifiersFactory.d.ts +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/SolutionModifiersFactory.js +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/TermFactory.d.ts +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/TermFactory.js +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/UpdateOperationFactory.d.ts +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/UpdateOperationFactory.js +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/mixins.d.ts +0 -0
- /package/{lib → dist/esm/lib}/factoryMixins/mixins.js +0 -0
- /package/{lib → dist/esm/lib}/grammar/builtIn.js +0 -0
- /package/{lib → dist/esm/lib}/grammar/dataSetClause.js +0 -0
- /package/{lib → dist/esm/lib}/grammar/expression.d.ts +0 -0
- /package/{lib → dist/esm/lib}/grammar/expression.js +0 -0
- /package/{lib → dist/esm/lib}/grammar/general.d.ts +0 -0
- /package/{lib → dist/esm/lib}/grammar/general.js +0 -0
- /package/{lib → dist/esm/lib}/grammar/index.d.ts +0 -0
- /package/{lib → dist/esm/lib}/grammar/index.js +0 -0
- /package/{lib → dist/esm/lib}/grammar/literals.d.ts +0 -0
- /package/{lib → dist/esm/lib}/grammar/literals.js +0 -0
- /package/{lib → dist/esm/lib}/grammar/propertyPaths.js +0 -0
- /package/{lib → dist/esm/lib}/grammar/queryUnit.d.ts +0 -0
- /package/{lib → dist/esm/lib}/grammar/queryUnit.js +0 -0
- /package/{lib → dist/esm/lib}/grammar/solutionModifier.d.ts +0 -0
- /package/{lib → dist/esm/lib}/grammar/solutionModifier.js +0 -0
- /package/{lib → dist/esm/lib}/grammar/tripleBlock.d.ts +0 -0
- /package/{lib → dist/esm/lib}/grammar/tripleBlock.js +0 -0
- /package/{lib → dist/esm/lib}/grammar/updateUnit.d.ts +0 -0
- /package/{lib → dist/esm/lib}/grammar/updateUnit.js +0 -0
- /package/{lib → dist/esm/lib}/grammar/whereClause.d.ts +0 -0
- /package/{lib → dist/esm/lib}/grammar/whereClause.js +0 -0
- /package/{lib → dist/esm/lib}/index.d.ts +0 -0
- /package/{lib → dist/esm/lib}/index.js +0 -0
- /package/{lib → dist/esm/lib}/lexer/BuiltInCalls.d.ts +0 -0
- /package/{lib → dist/esm/lib}/lexer/BuiltInCalls.js +0 -0
- /package/{lib → dist/esm/lib}/lexer/graph.d.ts +0 -0
- /package/{lib → dist/esm/lib}/lexer/graph.js +0 -0
- /package/{lib → dist/esm/lib}/lexer/index.d.ts +0 -0
- /package/{lib → dist/esm/lib}/lexer/index.js +0 -0
- /package/{lib → dist/esm/lib}/lexer/lexer.d.ts +0 -0
- /package/{lib → dist/esm/lib}/lexer/lexer.js +0 -0
- /package/{lib → dist/esm/lib}/lexer/lexerPatterns.d.ts +0 -0
- /package/{lib → dist/esm/lib}/lexer/lexerPatterns.js +0 -0
- /package/{lib → dist/esm/lib}/lexer/symbols.d.ts +0 -0
- /package/{lib → dist/esm/lib}/lexer/symbols.js +0 -0
- /package/{lib → dist/esm/lib}/lexer/terminals.d.ts +0 -0
- /package/{lib → dist/esm/lib}/sparql11HelperTypes.d.ts +0 -0
- /package/{lib → dist/esm/lib}/sparql11HelperTypes.js +0 -0
- /package/{lib → dist/esm/lib}/utils.d.ts +0 -0
- /package/{lib → dist/esm/lib}/utils.js +0 -0
- /package/{lib → dist/esm/lib}/validation/validators.d.ts +0 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var MinimalSparqlParser_exports = {};
|
|
20
|
+
__export(MinimalSparqlParser_exports, {
|
|
21
|
+
MinimalSparqlParser: () => MinimalSparqlParser,
|
|
22
|
+
completeParseContext: () => completeParseContext
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(MinimalSparqlParser_exports);
|
|
25
|
+
var import_core = require("@traqula/core");
|
|
26
|
+
var import_astFactory = require("./astFactory.js");
|
|
27
|
+
function completeParseContext(context) {
|
|
28
|
+
return {
|
|
29
|
+
astFactory: context.astFactory ?? new import_astFactory.AstFactory(),
|
|
30
|
+
baseIRI: context.baseIRI,
|
|
31
|
+
prefixes: { ...context.prefixes },
|
|
32
|
+
origSource: context.origSource ?? "",
|
|
33
|
+
offset: context.offset,
|
|
34
|
+
parseMode: context.parseMode ? new Set(context.parseMode) : /* @__PURE__ */ new Set(["canParseVars", "canCreateBlankNodes"]),
|
|
35
|
+
skipValidation: context.skipValidation ?? false,
|
|
36
|
+
[import_core.traqulaIndentation]: context[import_core.traqulaIndentation] ?? 0,
|
|
37
|
+
indentInc: context.indentInc ?? 2
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
class MinimalSparqlParser {
|
|
41
|
+
parser;
|
|
42
|
+
constructor(parser) {
|
|
43
|
+
this.parser = parser;
|
|
44
|
+
}
|
|
45
|
+
F = new import_astFactory.AstFactory();
|
|
46
|
+
parse(query, context = {}) {
|
|
47
|
+
return this.parser.queryOrUpdate(query, completeParseContext(context));
|
|
48
|
+
}
|
|
49
|
+
parsePath(query, context = {}) {
|
|
50
|
+
const result = this.parser.path(query, completeParseContext(context));
|
|
51
|
+
if (this.F.isPathPure(result)) {
|
|
52
|
+
return {
|
|
53
|
+
...result,
|
|
54
|
+
prefixes: {}
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
return result;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
61
|
+
0 && (module.exports = {
|
|
62
|
+
MinimalSparqlParser,
|
|
63
|
+
completeParseContext
|
|
64
|
+
});
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __copyProps = (to, from, except, desc) => {
|
|
7
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
8
|
+
for (let key of __getOwnPropNames(from))
|
|
9
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
10
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
11
|
+
}
|
|
12
|
+
return to;
|
|
13
|
+
};
|
|
14
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
15
|
+
var Sparql11types_exports = {};
|
|
16
|
+
module.exports = __toCommonJS(Sparql11types_exports);
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var astFactory_exports = {};
|
|
20
|
+
__export(astFactory_exports, {
|
|
21
|
+
AstFactory: () => AstFactory
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(astFactory_exports);
|
|
24
|
+
var import_core = require("@traqula/core");
|
|
25
|
+
var import_ContextFactory = require("./factoryMixins/ContextFactory.js");
|
|
26
|
+
var import_ExpressionFactory = require("./factoryMixins/ExpressionFactory.js");
|
|
27
|
+
var import_GraphRefFactory = require("./factoryMixins/GraphRefFactory.js");
|
|
28
|
+
var import_mixins = require("./factoryMixins/mixins.js");
|
|
29
|
+
var import_PathFactory = require("./factoryMixins/PathFactory.js");
|
|
30
|
+
var import_Patternfactory = require("./factoryMixins/Patternfactory.js");
|
|
31
|
+
var import_QueryFactory = require("./factoryMixins/QueryFactory.js");
|
|
32
|
+
var import_SolutionModifiersFactory = require("./factoryMixins/SolutionModifiersFactory.js");
|
|
33
|
+
var import_TermFactory = require("./factoryMixins/TermFactory.js");
|
|
34
|
+
var import_UpdateOperationFactory = require("./factoryMixins/UpdateOperationFactory.js");
|
|
35
|
+
class AstFactory extends (0, import_mixins.asArg)(import_core.AstCoreFactory).call(import_ContextFactory.ContextFactoryMixin).call(import_ExpressionFactory.ExpressionFactoryMixin).call(import_GraphRefFactory.GraphRefFactoryMixin).call(import_PathFactory.PathFactoryMixin).call(import_Patternfactory.PatternFactoryMixin).call(import_QueryFactory.QueryFactoryMixin).call(import_SolutionModifiersFactory.SolutionModifiersFactoryMixin).call(import_TermFactory.TermFactoryMixin).call(import_UpdateOperationFactory.UpdateOperationFactoryMixin).returns() {
|
|
36
|
+
alwaysSparql11(obj) {
|
|
37
|
+
return true;
|
|
38
|
+
}
|
|
39
|
+
isPath(obj) {
|
|
40
|
+
return this.isPathPure(obj) || this.isTermNamed(obj);
|
|
41
|
+
}
|
|
42
|
+
isExpression(obj) {
|
|
43
|
+
return this.isExpressionPure(obj) || this.isTermNamed(obj) || this.isTermVariable(obj) || this.isTermLiteral(obj);
|
|
44
|
+
}
|
|
45
|
+
graphNodeIdentifier(graphNode) {
|
|
46
|
+
return graphNode.type === "tripleCollection" ? graphNode.identifier : graphNode;
|
|
47
|
+
}
|
|
48
|
+
triple(subject, predicate, object, loc) {
|
|
49
|
+
return {
|
|
50
|
+
type: "triple",
|
|
51
|
+
subject,
|
|
52
|
+
predicate,
|
|
53
|
+
object,
|
|
54
|
+
loc: loc ?? this.sourceLocation(subject, predicate, object)
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
isTriple(obj) {
|
|
58
|
+
return this.isOfType(obj, "triple");
|
|
59
|
+
}
|
|
60
|
+
datasetClauses(clauses, loc) {
|
|
61
|
+
return {
|
|
62
|
+
type: "datasetClauses",
|
|
63
|
+
clauses,
|
|
64
|
+
loc
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
isDatasetClauses(obj) {
|
|
68
|
+
return this.isOfType(obj, "datasetClauses");
|
|
69
|
+
}
|
|
70
|
+
wildcard(loc) {
|
|
71
|
+
return { type: "wildcard", loc };
|
|
72
|
+
}
|
|
73
|
+
isWildcard(obj) {
|
|
74
|
+
return this.isOfType(obj, "wildcard");
|
|
75
|
+
}
|
|
76
|
+
isTripleCollection(obj) {
|
|
77
|
+
return this.isOfType(obj, "tripleCollection");
|
|
78
|
+
}
|
|
79
|
+
tripleCollectionBlankNodeProperties(identifier, triples, loc) {
|
|
80
|
+
return {
|
|
81
|
+
type: "tripleCollection",
|
|
82
|
+
subType: "blankNodeProperties",
|
|
83
|
+
identifier,
|
|
84
|
+
triples,
|
|
85
|
+
loc
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
isTripleCollectionBlankNodeProperties(obj) {
|
|
89
|
+
return this.isOfSubType(obj, "tripleCollection", "blankNodeProperties");
|
|
90
|
+
}
|
|
91
|
+
tripleCollectionList(identifier, triples, loc) {
|
|
92
|
+
return {
|
|
93
|
+
type: "tripleCollection",
|
|
94
|
+
subType: "list",
|
|
95
|
+
identifier,
|
|
96
|
+
triples,
|
|
97
|
+
loc
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
isTripleCollectionList(obj) {
|
|
101
|
+
return this.isOfSubType(obj, "tripleCollection", "list");
|
|
102
|
+
}
|
|
103
|
+
graphQuads(graph, triples, loc) {
|
|
104
|
+
return {
|
|
105
|
+
type: "graph",
|
|
106
|
+
graph,
|
|
107
|
+
triples,
|
|
108
|
+
loc
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
isGraphQuads(obj) {
|
|
112
|
+
return super.isOfType(obj, "graph");
|
|
113
|
+
}
|
|
114
|
+
isUpdate(obj) {
|
|
115
|
+
return super.isOfType(obj, "update");
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
119
|
+
0 && (module.exports = {
|
|
120
|
+
AstFactory
|
|
121
|
+
});
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var expressionHelpers_exports = {};
|
|
30
|
+
__export(expressionHelpers_exports, {
|
|
31
|
+
baseAggregateFunc: () => baseAggregateFunc,
|
|
32
|
+
funcExpr1: () => funcExpr1,
|
|
33
|
+
funcExpr2: () => funcExpr2,
|
|
34
|
+
funcExpr2or3: () => funcExpr2or3,
|
|
35
|
+
funcExpr3: () => funcExpr3,
|
|
36
|
+
funcExpr3or4: () => funcExpr3or4,
|
|
37
|
+
funcExprList1: () => funcExprList1,
|
|
38
|
+
funcExprOrNil1: () => funcExprOrNil1,
|
|
39
|
+
funcGroupGraphPattern: () => funcGroupGraphPattern,
|
|
40
|
+
funcNil1: () => funcNil1,
|
|
41
|
+
funcVar1: () => funcVar1
|
|
42
|
+
});
|
|
43
|
+
module.exports = __toCommonJS(expressionHelpers_exports);
|
|
44
|
+
var import_core = require("@traqula/core");
|
|
45
|
+
var import_grammar = require("./grammar/index.js");
|
|
46
|
+
var l = __toESM(require("./lexer/index.js"), 1);
|
|
47
|
+
function funcExpr1(func) {
|
|
48
|
+
return {
|
|
49
|
+
name: (0, import_core.unCapitalize)(func.name),
|
|
50
|
+
impl: ({ ACTION, SUBRULE, CONSUME }) => (C) => {
|
|
51
|
+
const operator = CONSUME(func);
|
|
52
|
+
CONSUME(l.symbols.LParen);
|
|
53
|
+
const arg = SUBRULE(import_grammar.expression);
|
|
54
|
+
const close = CONSUME(l.symbols.RParen);
|
|
55
|
+
return ACTION(() => C.astFactory.expressionOperation(operator.image, [arg], C.astFactory.sourceLocation(operator, close)));
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
function funcExpr2(func) {
|
|
60
|
+
return {
|
|
61
|
+
name: (0, import_core.unCapitalize)(func.name),
|
|
62
|
+
impl: ({ ACTION, CONSUME, SUBRULE1, SUBRULE2 }) => (C) => {
|
|
63
|
+
const operator = CONSUME(func);
|
|
64
|
+
CONSUME(l.symbols.LParen);
|
|
65
|
+
const arg1 = SUBRULE1(import_grammar.expression);
|
|
66
|
+
CONSUME(l.symbols.comma);
|
|
67
|
+
const arg2 = SUBRULE2(import_grammar.expression);
|
|
68
|
+
const close = CONSUME(l.symbols.RParen);
|
|
69
|
+
return ACTION(() => C.astFactory.expressionOperation(operator.image, [arg1, arg2], C.astFactory.sourceLocation(operator, close)));
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
function funcExpr3(func) {
|
|
74
|
+
return {
|
|
75
|
+
name: (0, import_core.unCapitalize)(func.name),
|
|
76
|
+
impl: ({ ACTION, CONSUME, CONSUME1, CONSUME2, SUBRULE1, SUBRULE2, SUBRULE3 }) => (C) => {
|
|
77
|
+
const operator = CONSUME(func);
|
|
78
|
+
CONSUME(l.symbols.LParen);
|
|
79
|
+
const arg1 = SUBRULE1(import_grammar.expression);
|
|
80
|
+
CONSUME1(l.symbols.comma);
|
|
81
|
+
const arg2 = SUBRULE2(import_grammar.expression);
|
|
82
|
+
CONSUME2(l.symbols.comma);
|
|
83
|
+
const arg3 = SUBRULE3(import_grammar.expression);
|
|
84
|
+
const close = CONSUME(l.symbols.RParen);
|
|
85
|
+
return ACTION(() => C.astFactory.expressionOperation(operator.image, [arg1, arg2, arg3], C.astFactory.sourceLocation(operator, close)));
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
function funcVar1(func) {
|
|
90
|
+
return {
|
|
91
|
+
name: (0, import_core.unCapitalize)(func.name),
|
|
92
|
+
impl: ({ ACTION, SUBRULE, CONSUME }) => (C) => {
|
|
93
|
+
const operator = CONSUME(func);
|
|
94
|
+
CONSUME(l.symbols.LParen);
|
|
95
|
+
const arg = SUBRULE(import_grammar.var_);
|
|
96
|
+
const close = CONSUME(l.symbols.RParen);
|
|
97
|
+
return ACTION(() => C.astFactory.expressionOperation(operator.image, [arg], C.astFactory.sourceLocation(operator, close)));
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
function funcExprOrNil1(func) {
|
|
102
|
+
return {
|
|
103
|
+
name: (0, import_core.unCapitalize)(func.name),
|
|
104
|
+
impl: ({ ACTION, CONSUME, OR, SUBRULE }) => (C) => {
|
|
105
|
+
const operator = CONSUME(func);
|
|
106
|
+
return OR([
|
|
107
|
+
{ ALT: () => {
|
|
108
|
+
CONSUME(l.symbols.LParen);
|
|
109
|
+
const arg = SUBRULE(import_grammar.expression);
|
|
110
|
+
const close = CONSUME(l.symbols.RParen);
|
|
111
|
+
return ACTION(() => C.astFactory.expressionOperation(operator.image, [arg], C.astFactory.sourceLocation(operator, close)));
|
|
112
|
+
} },
|
|
113
|
+
{ ALT: () => {
|
|
114
|
+
const nil = CONSUME(l.terminals.nil);
|
|
115
|
+
return ACTION(() => C.astFactory.expressionOperation(operator.image, [], C.astFactory.sourceLocation(operator, nil)));
|
|
116
|
+
} }
|
|
117
|
+
]);
|
|
118
|
+
}
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
function funcNil1(func) {
|
|
122
|
+
return {
|
|
123
|
+
name: (0, import_core.unCapitalize)(func.name),
|
|
124
|
+
impl: ({ ACTION, CONSUME }) => (C) => {
|
|
125
|
+
const operator = CONSUME(func);
|
|
126
|
+
const nil = CONSUME(l.terminals.nil);
|
|
127
|
+
return ACTION(() => C.astFactory.expressionOperation(operator.image, [], C.astFactory.sourceLocation(operator, nil)));
|
|
128
|
+
}
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
function funcExprList1(func) {
|
|
132
|
+
return {
|
|
133
|
+
name: (0, import_core.unCapitalize)(func.name),
|
|
134
|
+
impl: ({ ACTION, CONSUME, SUBRULE }) => (C) => {
|
|
135
|
+
const operator = CONSUME(func);
|
|
136
|
+
const args = SUBRULE(import_grammar.expressionList);
|
|
137
|
+
return ACTION(() => C.astFactory.expressionOperation(operator.image, args.val, C.astFactory.sourceLocation(operator, args)));
|
|
138
|
+
}
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
function funcExpr2or3(func) {
|
|
142
|
+
return {
|
|
143
|
+
name: (0, import_core.unCapitalize)(func.name),
|
|
144
|
+
impl: ({ ACTION, CONSUME, SUBRULE1, SUBRULE2, SUBRULE3, CONSUME1, OPTION, CONSUME2 }) => (C) => {
|
|
145
|
+
const operator = CONSUME(func);
|
|
146
|
+
CONSUME(l.symbols.LParen);
|
|
147
|
+
const arg1 = SUBRULE1(import_grammar.expression);
|
|
148
|
+
CONSUME1(l.symbols.comma);
|
|
149
|
+
const arg2 = SUBRULE2(import_grammar.expression);
|
|
150
|
+
const arg3 = OPTION(() => {
|
|
151
|
+
CONSUME2(l.symbols.comma);
|
|
152
|
+
return SUBRULE3(import_grammar.expression);
|
|
153
|
+
});
|
|
154
|
+
const close = CONSUME(l.symbols.RParen);
|
|
155
|
+
return ACTION(() => C.astFactory.expressionOperation(operator.image, arg3 ? [arg1, arg2, arg3] : [arg1, arg2], C.astFactory.sourceLocation(operator, close)));
|
|
156
|
+
}
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
function funcExpr3or4(func) {
|
|
160
|
+
return {
|
|
161
|
+
name: (0, import_core.unCapitalize)(func.name),
|
|
162
|
+
impl: ({ ACTION, CONSUME, SUBRULE1, SUBRULE2, SUBRULE3, SUBRULE4, CONSUME1, OPTION, CONSUME2, CONSUME3 }) => (C) => {
|
|
163
|
+
const operator = CONSUME(func);
|
|
164
|
+
CONSUME(l.symbols.LParen);
|
|
165
|
+
const arg1 = SUBRULE1(import_grammar.expression);
|
|
166
|
+
CONSUME1(l.symbols.comma);
|
|
167
|
+
const arg2 = SUBRULE2(import_grammar.expression);
|
|
168
|
+
CONSUME2(l.symbols.comma);
|
|
169
|
+
const arg3 = SUBRULE3(import_grammar.expression);
|
|
170
|
+
const arg4 = OPTION(() => {
|
|
171
|
+
CONSUME3(l.symbols.comma);
|
|
172
|
+
return SUBRULE4(import_grammar.expression);
|
|
173
|
+
});
|
|
174
|
+
const close = CONSUME(l.symbols.RParen);
|
|
175
|
+
return ACTION(() => C.astFactory.expressionOperation(operator.image, arg4 ? [arg1, arg2, arg3, arg4] : [arg1, arg2, arg3], C.astFactory.sourceLocation(operator, close)));
|
|
176
|
+
}
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
function funcGroupGraphPattern(func) {
|
|
180
|
+
return {
|
|
181
|
+
name: (0, import_core.unCapitalize)(func.name),
|
|
182
|
+
impl: ({ ACTION, SUBRULE, CONSUME }) => (C) => {
|
|
183
|
+
const operator = CONSUME(func);
|
|
184
|
+
const group = SUBRULE(import_grammar.groupGraphPattern);
|
|
185
|
+
return ACTION(() => C.astFactory.expressionPatternOperation(operator.image, group, C.astFactory.sourceLocation(operator, group)));
|
|
186
|
+
}
|
|
187
|
+
};
|
|
188
|
+
}
|
|
189
|
+
function baseAggregateFunc(func) {
|
|
190
|
+
return {
|
|
191
|
+
name: (0, import_core.unCapitalize)(func.name),
|
|
192
|
+
impl: ({ ACTION, CONSUME, SUBRULE, OPTION }) => (C) => {
|
|
193
|
+
const operator = CONSUME(func);
|
|
194
|
+
CONSUME(l.symbols.LParen);
|
|
195
|
+
const distinct = OPTION(() => CONSUME(l.distinct));
|
|
196
|
+
const expr1 = SUBRULE(import_grammar.expression);
|
|
197
|
+
const close = CONSUME(l.symbols.RParen);
|
|
198
|
+
return ACTION(() => C.astFactory.aggregate(operator.image, distinct !== void 0, expr1, void 0, C.astFactory.sourceLocation(operator, close)));
|
|
199
|
+
}
|
|
200
|
+
};
|
|
201
|
+
}
|
|
202
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
203
|
+
0 && (module.exports = {
|
|
204
|
+
baseAggregateFunc,
|
|
205
|
+
funcExpr1,
|
|
206
|
+
funcExpr2,
|
|
207
|
+
funcExpr2or3,
|
|
208
|
+
funcExpr3,
|
|
209
|
+
funcExpr3or4,
|
|
210
|
+
funcExprList1,
|
|
211
|
+
funcExprOrNil1,
|
|
212
|
+
funcGroupGraphPattern,
|
|
213
|
+
funcNil1,
|
|
214
|
+
funcVar1
|
|
215
|
+
});
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var ContextFactory_exports = {};
|
|
20
|
+
__export(ContextFactory_exports, {
|
|
21
|
+
ContextFactoryMixin: () => ContextFactoryMixin
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(ContextFactory_exports);
|
|
24
|
+
const nodeType = "contextDef";
|
|
25
|
+
function ContextFactoryMixin(Base) {
|
|
26
|
+
return class ContextFactory extends Base {
|
|
27
|
+
contextDefinitionPrefix(loc, key, value) {
|
|
28
|
+
return {
|
|
29
|
+
type: nodeType,
|
|
30
|
+
subType: "prefix",
|
|
31
|
+
key,
|
|
32
|
+
value,
|
|
33
|
+
loc
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
isContextDefinitionPrefix(contextDef) {
|
|
37
|
+
return this.isOfSubType(contextDef, nodeType, "prefix");
|
|
38
|
+
}
|
|
39
|
+
contextDefinitionBase(loc, value) {
|
|
40
|
+
return {
|
|
41
|
+
type: "contextDef",
|
|
42
|
+
subType: "base",
|
|
43
|
+
value,
|
|
44
|
+
loc
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
isContextDefinitionBase(contextDef) {
|
|
48
|
+
return this.isOfSubType(contextDef, nodeType, "base");
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
53
|
+
0 && (module.exports = {
|
|
54
|
+
ContextFactoryMixin
|
|
55
|
+
});
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var ExpressionFactory_exports = {};
|
|
20
|
+
__export(ExpressionFactory_exports, {
|
|
21
|
+
ExpressionFactoryMixin: () => ExpressionFactoryMixin
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(ExpressionFactory_exports);
|
|
24
|
+
const nodeType = "expression";
|
|
25
|
+
function ExpressionFactoryMixin(Base) {
|
|
26
|
+
return class ExpressionFactory extends Base {
|
|
27
|
+
isExpressionPure(obj) {
|
|
28
|
+
return this.isOfType(obj, nodeType);
|
|
29
|
+
}
|
|
30
|
+
formatOperator(operator) {
|
|
31
|
+
return operator.toLowerCase().replaceAll(" ", "");
|
|
32
|
+
}
|
|
33
|
+
expressionOperation(operator, args, loc) {
|
|
34
|
+
return {
|
|
35
|
+
type: nodeType,
|
|
36
|
+
subType: "operation",
|
|
37
|
+
operator: this.formatOperator(operator),
|
|
38
|
+
args,
|
|
39
|
+
loc
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
isExpressionOperator(obj) {
|
|
43
|
+
return this.isOfSubType(obj, nodeType, "operation");
|
|
44
|
+
}
|
|
45
|
+
expressionFunctionCall(functionOp, args, distinct, loc) {
|
|
46
|
+
return {
|
|
47
|
+
type: "expression",
|
|
48
|
+
subType: "functionCall",
|
|
49
|
+
function: functionOp,
|
|
50
|
+
args,
|
|
51
|
+
distinct,
|
|
52
|
+
loc
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
isExpressionFunctionCall(obj) {
|
|
56
|
+
return this.isOfSubType(obj, nodeType, "functionCall");
|
|
57
|
+
}
|
|
58
|
+
expressionPatternOperation(operator, args, loc) {
|
|
59
|
+
return {
|
|
60
|
+
type: nodeType,
|
|
61
|
+
subType: "patternOperation",
|
|
62
|
+
operator: this.formatOperator(operator),
|
|
63
|
+
args,
|
|
64
|
+
loc
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
isExpressionPatternOperation(obj) {
|
|
68
|
+
return this.isOfSubType(obj, nodeType, "patternOperation");
|
|
69
|
+
}
|
|
70
|
+
aggregate(aggregation, distinct, arg, separator, loc) {
|
|
71
|
+
const base = {
|
|
72
|
+
type: "expression",
|
|
73
|
+
subType: "aggregate",
|
|
74
|
+
aggregation: this.formatOperator(aggregation),
|
|
75
|
+
distinct,
|
|
76
|
+
loc
|
|
77
|
+
};
|
|
78
|
+
if (this.isOfType(arg, "wildcard")) {
|
|
79
|
+
return { ...base, expression: [arg] };
|
|
80
|
+
}
|
|
81
|
+
if (separator === void 0) {
|
|
82
|
+
return { ...base, expression: [arg] };
|
|
83
|
+
}
|
|
84
|
+
return { ...base, expression: [arg], separator };
|
|
85
|
+
}
|
|
86
|
+
isExpressionAggregate(obj) {
|
|
87
|
+
return this.isOfSubType(obj, nodeType, "aggregate");
|
|
88
|
+
}
|
|
89
|
+
isExpressionAggregateSeparator(obj) {
|
|
90
|
+
return this.isOfSubType(obj, nodeType, "aggregate") && typeof obj.separator === "string";
|
|
91
|
+
}
|
|
92
|
+
isExpressionAggregateOnWildcard(obj) {
|
|
93
|
+
const casted = obj;
|
|
94
|
+
return this.isOfSubType(obj, nodeType, "aggregate") && Array.isArray(casted.expression) && casted.expression.length === 1 && this.isOfType(casted.expression[0], "wildcard");
|
|
95
|
+
}
|
|
96
|
+
isExpressionAggregateDefault(obj) {
|
|
97
|
+
const casted = obj;
|
|
98
|
+
return this.isOfSubType(obj, nodeType, "operation") && Array.isArray(casted.expression) && casted.expression.length === 1 && !this.isOfType(casted.expression[0], "wildcard");
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
103
|
+
0 && (module.exports = {
|
|
104
|
+
ExpressionFactoryMixin
|
|
105
|
+
});
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var GraphRefFactory_exports = {};
|
|
20
|
+
__export(GraphRefFactory_exports, {
|
|
21
|
+
GraphRefFactoryMixin: () => GraphRefFactoryMixin
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(GraphRefFactory_exports);
|
|
24
|
+
const nodeType = "graphRef";
|
|
25
|
+
function GraphRefFactoryMixin(Base) {
|
|
26
|
+
return class GraphRefFactory extends Base {
|
|
27
|
+
isGraphRef(obj) {
|
|
28
|
+
return this.isOfType(obj, nodeType);
|
|
29
|
+
}
|
|
30
|
+
graphRefDefault(loc) {
|
|
31
|
+
return {
|
|
32
|
+
type: nodeType,
|
|
33
|
+
subType: "default",
|
|
34
|
+
loc
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
isGraphRefDefault(graphRef) {
|
|
38
|
+
return this.isOfSubType(graphRef, nodeType, "default");
|
|
39
|
+
}
|
|
40
|
+
graphRefNamed(loc) {
|
|
41
|
+
return {
|
|
42
|
+
type: nodeType,
|
|
43
|
+
subType: "named",
|
|
44
|
+
loc
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
isGraphRefNamed(graphRef) {
|
|
48
|
+
return this.isOfSubType(graphRef, nodeType, "named");
|
|
49
|
+
}
|
|
50
|
+
graphRefAll(loc) {
|
|
51
|
+
return {
|
|
52
|
+
type: nodeType,
|
|
53
|
+
subType: "all",
|
|
54
|
+
loc
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
isGraphRefAll(graphRef) {
|
|
58
|
+
return this.isOfSubType(graphRef, nodeType, "all");
|
|
59
|
+
}
|
|
60
|
+
graphRefSpecific(graph, loc) {
|
|
61
|
+
return {
|
|
62
|
+
type: nodeType,
|
|
63
|
+
subType: "specific",
|
|
64
|
+
graph,
|
|
65
|
+
loc
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
isGraphRefSpecific(graphRef) {
|
|
69
|
+
return this.isOfSubType(graphRef, nodeType, "specific");
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
74
|
+
0 && (module.exports = {
|
|
75
|
+
GraphRefFactoryMixin
|
|
76
|
+
});
|