@traqula/rules-sparql-1-1 0.0.22 → 0.0.24
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 +35 -58
- package/dist/cjs/lib/MinimalSparqlParser.js.map +1 -0
- package/dist/cjs/lib/Sparql11types.js +2 -15
- package/dist/cjs/lib/Sparql11types.js.map +1 -0
- package/dist/cjs/lib/astFactory.js +107 -119
- package/dist/cjs/lib/astFactory.js.map +1 -0
- package/dist/cjs/lib/expressionHelpers.js +181 -191
- package/dist/cjs/lib/expressionHelpers.js.map +1 -0
- package/dist/cjs/lib/factoryMixins/ContextFactory.js +30 -52
- package/dist/cjs/lib/factoryMixins/ContextFactory.js.map +1 -0
- package/dist/cjs/lib/factoryMixins/ExpressionFactory.js +83 -102
- package/dist/cjs/lib/factoryMixins/ExpressionFactory.js.map +1 -0
- package/dist/cjs/lib/factoryMixins/GraphRefFactory.js +51 -73
- package/dist/cjs/lib/factoryMixins/GraphRefFactory.js.map +1 -0
- package/dist/cjs/lib/factoryMixins/PathFactory.js +68 -87
- package/dist/cjs/lib/factoryMixins/PathFactory.js.map +1 -0
- package/dist/cjs/lib/factoryMixins/Patternfactory.js +98 -120
- package/dist/cjs/lib/factoryMixins/Patternfactory.js.map +1 -0
- package/dist/cjs/lib/factoryMixins/QueryFactory.js +43 -65
- package/dist/cjs/lib/factoryMixins/QueryFactory.js.map +1 -0
- package/dist/cjs/lib/factoryMixins/SolutionModifiersFactory.js +55 -77
- package/dist/cjs/lib/factoryMixins/SolutionModifiersFactory.js.map +1 -0
- package/dist/cjs/lib/factoryMixins/TermFactory.js +81 -102
- package/dist/cjs/lib/factoryMixins/TermFactory.js.map +1 -0
- package/dist/cjs/lib/factoryMixins/UpdateOperationFactory.js +126 -147
- package/dist/cjs/lib/factoryMixins/UpdateOperationFactory.js.map +1 -0
- package/dist/cjs/lib/factoryMixins/mixins.js +21 -38
- package/dist/cjs/lib/factoryMixins/mixins.js.map +1 -0
- package/dist/cjs/lib/grammar/builtIn.js +277 -377
- package/dist/cjs/lib/grammar/builtIn.js.map +1 -0
- package/dist/cjs/lib/grammar/dataSetClause.js +110 -109
- package/dist/cjs/lib/grammar/dataSetClause.js.map +1 -0
- package/dist/cjs/lib/grammar/expression.js +387 -358
- package/dist/cjs/lib/grammar/expression.js.map +1 -0
- package/dist/cjs/lib/grammar/general.js +173 -158
- package/dist/cjs/lib/grammar/general.js.map +1 -0
- package/dist/cjs/lib/grammar/index.js +94 -111
- package/dist/cjs/lib/grammar/index.js.map +1 -0
- package/dist/cjs/lib/grammar/literals.js +282 -266
- package/dist/cjs/lib/grammar/literals.js.map +1 -0
- package/dist/cjs/lib/grammar/propertyPaths.js +206 -193
- package/dist/cjs/lib/grammar/propertyPaths.js.map +1 -0
- package/dist/cjs/lib/grammar/queryUnit.js +395 -372
- package/dist/cjs/lib/grammar/queryUnit.js.map +1 -0
- package/dist/cjs/lib/grammar/solutionModifier.js +281 -265
- package/dist/cjs/lib/grammar/solutionModifier.js.map +1 -0
- package/dist/cjs/lib/grammar/tripleBlock.js +390 -355
- package/dist/cjs/lib/grammar/tripleBlock.js.map +1 -0
- package/dist/cjs/lib/grammar/updateUnit.js +551 -519
- package/dist/cjs/lib/grammar/updateUnit.js.map +1 -0
- package/dist/cjs/lib/grammar/whereClause.js +486 -459
- package/dist/cjs/lib/grammar/whereClause.js.map +1 -0
- package/dist/cjs/lib/index.js +47 -54
- package/dist/cjs/lib/index.js.map +1 -0
- package/dist/cjs/lib/lexer/BuiltInCalls.js +188 -333
- package/dist/cjs/lib/lexer/BuiltInCalls.js.map +1 -0
- package/dist/cjs/lib/lexer/graph.js +10 -40
- package/dist/cjs/lib/lexer/graph.js.map +1 -0
- package/dist/cjs/lib/lexer/index.js +43 -48
- package/dist/cjs/lib/lexer/index.js.map +1 -0
- package/dist/cjs/lib/lexer/lexer.js +84 -195
- package/dist/cjs/lib/lexer/lexer.js.map +1 -0
- package/dist/cjs/lib/lexer/lexerPatterns.js +40 -132
- package/dist/cjs/lib/lexer/lexerPatterns.js.map +1 -0
- package/dist/cjs/lib/lexer/symbols.js +31 -106
- package/dist/cjs/lib/lexer/symbols.js.map +1 -0
- package/dist/cjs/lib/lexer/terminals.js +100 -102
- package/dist/cjs/lib/lexer/terminals.js.map +1 -0
- package/dist/cjs/lib/sparql11HelperTypes.js +2 -15
- package/dist/cjs/lib/sparql11HelperTypes.js.map +1 -0
- package/dist/cjs/lib/utils.js +40 -58
- package/dist/cjs/lib/utils.js.map +1 -0
- package/dist/cjs/lib/validation/validators.js +197 -186
- package/dist/cjs/lib/validation/validators.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/package.json +10 -9
|
@@ -1,123 +1,101 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
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 Patternfactory_exports = {};
|
|
20
|
-
__export(Patternfactory_exports, {
|
|
21
|
-
PatternFactoryMixin: () => PatternFactoryMixin
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(Patternfactory_exports);
|
|
24
|
-
const nodeType = "pattern";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PatternFactoryMixin = PatternFactoryMixin;
|
|
4
|
+
const nodeType = 'pattern';
|
|
5
|
+
// eslint-disable-next-line ts/explicit-function-return-type
|
|
25
6
|
function PatternFactoryMixin(Base) {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
7
|
+
return class PatternFactory extends Base {
|
|
8
|
+
isPattern(obj) {
|
|
9
|
+
return this.isOfType(obj, nodeType);
|
|
10
|
+
}
|
|
11
|
+
patternBgp(triples, loc) {
|
|
12
|
+
return { type: nodeType, subType: 'bgp', triples, loc };
|
|
13
|
+
}
|
|
14
|
+
isPatternBgp(obj) {
|
|
15
|
+
return this.isOfSubType(obj, nodeType, 'bgp');
|
|
16
|
+
}
|
|
17
|
+
patternGroup(patterns, loc) {
|
|
18
|
+
return { type: nodeType, subType: 'group', patterns, loc };
|
|
19
|
+
}
|
|
20
|
+
isPatternGroup(obj) {
|
|
21
|
+
return this.isOfSubType(obj, nodeType, 'group');
|
|
22
|
+
}
|
|
23
|
+
patternGraph(name, patterns, loc) {
|
|
24
|
+
return { type: nodeType, subType: 'graph', name, patterns, loc };
|
|
25
|
+
}
|
|
26
|
+
isPatternGraph(obj) {
|
|
27
|
+
return this.isOfSubType(obj, nodeType, 'graph');
|
|
28
|
+
}
|
|
29
|
+
patternOptional(patterns, loc) {
|
|
30
|
+
return { type: nodeType, subType: 'optional', patterns, loc };
|
|
31
|
+
}
|
|
32
|
+
isPatternOptional(obj) {
|
|
33
|
+
return this.isOfSubType(obj, nodeType, 'optional');
|
|
34
|
+
}
|
|
35
|
+
patternValues(variables, values, loc) {
|
|
36
|
+
return { type: nodeType, subType: 'values', variables, values, loc };
|
|
37
|
+
}
|
|
38
|
+
isPatternValues(obj) {
|
|
39
|
+
return this.isOfSubType(obj, nodeType, 'values');
|
|
40
|
+
}
|
|
41
|
+
patternFilter(expression, loc) {
|
|
42
|
+
return {
|
|
43
|
+
type: nodeType,
|
|
44
|
+
subType: 'filter',
|
|
45
|
+
expression,
|
|
46
|
+
loc,
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
isPatternFilter(obj) {
|
|
50
|
+
return this.isOfSubType(obj, nodeType, 'filter');
|
|
51
|
+
}
|
|
52
|
+
patternBind(expression, variable, loc) {
|
|
53
|
+
return {
|
|
54
|
+
type: nodeType,
|
|
55
|
+
subType: 'bind',
|
|
56
|
+
expression,
|
|
57
|
+
variable,
|
|
58
|
+
loc,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
isPatternBind(obj) {
|
|
62
|
+
return this.isOfSubType(obj, nodeType, 'bind');
|
|
63
|
+
}
|
|
64
|
+
patternUnion(patterns, loc) {
|
|
65
|
+
return {
|
|
66
|
+
type: nodeType,
|
|
67
|
+
subType: 'union',
|
|
68
|
+
patterns,
|
|
69
|
+
loc,
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
isPatternUnion(obj) {
|
|
73
|
+
return this.isOfSubType(obj, nodeType, 'union');
|
|
74
|
+
}
|
|
75
|
+
patternMinus(patterns, loc) {
|
|
76
|
+
return {
|
|
77
|
+
type: nodeType,
|
|
78
|
+
subType: 'minus',
|
|
79
|
+
patterns,
|
|
80
|
+
loc,
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
isPatternMinus(obj) {
|
|
84
|
+
return this.isOfSubType(obj, nodeType, 'minus');
|
|
85
|
+
}
|
|
86
|
+
patternService(name, patterns, silent, loc) {
|
|
87
|
+
return {
|
|
88
|
+
type: nodeType,
|
|
89
|
+
subType: 'service',
|
|
90
|
+
silent,
|
|
91
|
+
name,
|
|
92
|
+
patterns,
|
|
93
|
+
loc,
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
isPatternService(obj) {
|
|
97
|
+
return this.isOfSubType(obj, nodeType, 'service');
|
|
98
|
+
}
|
|
99
|
+
};
|
|
119
100
|
}
|
|
120
|
-
|
|
121
|
-
0 && (module.exports = {
|
|
122
|
-
PatternFactoryMixin
|
|
123
|
-
});
|
|
101
|
+
//# sourceMappingURL=Patternfactory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Patternfactory.js","sourceRoot":"","sources":["../../../../lib/factoryMixins/Patternfactory.ts"],"names":[],"mappings":"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","sourcesContent":["import type { AstCoreFactory, SourceLocation, Typed, SubTyped } from '@traqula/core';\nimport type {\n BasicGraphPattern,\n Expression,\n Pattern,\n PatternBgp,\n PatternBind,\n PatternFilter,\n PatternGraph,\n PatternGroup,\n PatternMinus,\n PatternOptional,\n PatternService,\n PatternUnion,\n PatternValues,\n TermIri,\n TermVariable,\n ValuePatternRow,\n} from '../Sparql11types.js';\nimport type { Constructor } from './mixins.js';\n\ntype NodeType = 'pattern';\nconst nodeType: NodeType = 'pattern';\n\n// eslint-disable-next-line ts/explicit-function-return-type\nexport function PatternFactoryMixin<TBase extends Constructor<AstCoreFactory>>(Base: TBase) {\n return class PatternFactory extends Base {\n public isPattern(obj: object): obj is Typed<NodeType> {\n return this.isOfType(obj, nodeType);\n }\n\n public patternBgp(triples: BasicGraphPattern, loc: SourceLocation): PatternBgp {\n return { type: nodeType, subType: 'bgp', triples, loc };\n }\n\n public isPatternBgp(obj: object): obj is SubTyped<NodeType, 'bgp'> {\n return this.isOfSubType(obj, nodeType, 'bgp');\n }\n\n public patternGroup(patterns: Pattern[], loc: SourceLocation): PatternGroup {\n return { type: nodeType, subType: 'group', patterns, loc };\n }\n\n public isPatternGroup(obj: object): obj is SubTyped<NodeType, 'group'> {\n return this.isOfSubType(obj, nodeType, 'group');\n }\n\n public patternGraph(name: TermIri | TermVariable, patterns: Pattern[], loc: SourceLocation): PatternGraph {\n return { type: nodeType, subType: 'graph', name, patterns, loc };\n }\n\n public isPatternGraph(obj: object): obj is SubTyped<NodeType, 'graph'> {\n return this.isOfSubType(obj, nodeType, 'graph');\n }\n\n public patternOptional(patterns: Pattern[], loc: SourceLocation): PatternOptional {\n return { type: nodeType, subType: 'optional', patterns, loc };\n }\n\n public isPatternOptional(obj: object): obj is SubTyped<NodeType, 'optional'> {\n return this.isOfSubType(obj, nodeType, 'optional');\n }\n\n public patternValues(variables: TermVariable[], values: ValuePatternRow[], loc: SourceLocation): PatternValues {\n return { type: nodeType, subType: 'values', variables, values, loc };\n }\n\n public isPatternValues(obj: object): obj is SubTyped<NodeType, 'values'> {\n return this.isOfSubType(obj, nodeType, 'values');\n }\n\n public patternFilter(expression: Expression, loc: SourceLocation): PatternFilter {\n return {\n type: nodeType,\n subType: 'filter',\n expression,\n loc,\n };\n }\n\n public isPatternFilter(obj: object): obj is SubTyped<NodeType, 'filter'> {\n return this.isOfSubType(obj, nodeType, 'filter');\n }\n\n public patternBind(\n expression: Expression,\n variable: TermVariable,\n loc: SourceLocation,\n ): PatternBind {\n return {\n type: nodeType,\n subType: 'bind',\n expression,\n variable,\n loc,\n };\n }\n\n public isPatternBind(obj: object): obj is SubTyped<NodeType, 'bind'> {\n return this.isOfSubType(obj, nodeType, 'bind');\n }\n\n public patternUnion(patterns: PatternGroup[], loc: SourceLocation): PatternUnion {\n return {\n type: nodeType,\n subType: 'union',\n patterns,\n loc,\n };\n }\n\n public isPatternUnion(obj: object): obj is SubTyped<NodeType, 'union'> {\n return this.isOfSubType(obj, nodeType, 'union');\n }\n\n public patternMinus(patterns: Pattern[], loc: SourceLocation): PatternMinus {\n return {\n type: nodeType,\n subType: 'minus',\n patterns,\n loc,\n };\n }\n\n public isPatternMinus(obj: object): obj is SubTyped<NodeType, 'minus'> {\n return this.isOfSubType(obj, nodeType, 'minus');\n }\n\n public patternService(\n name: TermIri | TermVariable,\n patterns: Pattern[],\n silent: boolean,\n loc: SourceLocation,\n ): PatternService {\n return {\n type: nodeType,\n subType: 'service',\n silent,\n name,\n patterns,\n loc,\n };\n }\n\n public isPatternService(obj: object): obj is SubTyped<NodeType, 'service'> {\n return this.isOfSubType(obj, nodeType, 'service');\n }\n };\n}\n"]}
|
|
@@ -1,68 +1,46 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
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 QueryFactory_exports = {};
|
|
20
|
-
__export(QueryFactory_exports, {
|
|
21
|
-
QueryFactoryMixin: () => QueryFactoryMixin
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(QueryFactory_exports);
|
|
24
|
-
const nodeType = "query";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.QueryFactoryMixin = QueryFactoryMixin;
|
|
4
|
+
const nodeType = 'query';
|
|
5
|
+
// eslint-disable-next-line ts/explicit-function-return-type
|
|
25
6
|
function QueryFactoryMixin(Base) {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
7
|
+
return class QueryFactory extends Base {
|
|
8
|
+
isQuery(obj) {
|
|
9
|
+
return this.isOfType(obj, nodeType);
|
|
10
|
+
}
|
|
11
|
+
isQuerySelect(obj) {
|
|
12
|
+
return this.isOfSubType(obj, nodeType, 'select');
|
|
13
|
+
}
|
|
14
|
+
queryConstruct(loc, context, template, where, solutionModifiers, datasets, values) {
|
|
15
|
+
return {
|
|
16
|
+
type: 'query',
|
|
17
|
+
subType: 'construct',
|
|
18
|
+
context,
|
|
19
|
+
template,
|
|
20
|
+
where,
|
|
21
|
+
solutionModifiers,
|
|
22
|
+
datasets,
|
|
23
|
+
values,
|
|
24
|
+
loc,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
isQueryConstruct(obj) {
|
|
28
|
+
return this.isOfSubType(obj, nodeType, 'construct');
|
|
29
|
+
}
|
|
30
|
+
isQueryDescribe(obj) {
|
|
31
|
+
return this.isOfSubType(obj, nodeType, 'describe');
|
|
32
|
+
}
|
|
33
|
+
isQueryAsk(obj) {
|
|
34
|
+
return this.isOfSubType(obj, nodeType, 'ask');
|
|
35
|
+
}
|
|
36
|
+
querySelect(arg, loc) {
|
|
37
|
+
return {
|
|
38
|
+
type: nodeType,
|
|
39
|
+
subType: 'select',
|
|
40
|
+
...arg,
|
|
41
|
+
loc,
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
};
|
|
64
45
|
}
|
|
65
|
-
|
|
66
|
-
0 && (module.exports = {
|
|
67
|
-
QueryFactoryMixin
|
|
68
|
-
});
|
|
46
|
+
//# sourceMappingURL=QueryFactory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueryFactory.js","sourceRoot":"","sources":["../../../../lib/factoryMixins/QueryFactory.ts"],"names":[],"mappings":";;AAiBA,8CAqDC;AAxDD,MAAM,QAAQ,GAAa,OAAO,CAAC;AAEnC,4DAA4D;AAC5D,SAAgB,iBAAiB,CAA4C,IAAW;IACtF,OAAO,MAAM,YAAa,SAAQ,IAAI;QAC7B,OAAO,CAAC,GAAW;YACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACtC,CAAC;QAEM,aAAa,CAAC,GAAW;YAC9B,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACnD,CAAC;QAEM,cAAc,CACnB,GAAmB,EACnB,OAA4B,EAC5B,QAAoB,EACpB,KAAmB,EACnB,iBAAoC,EACpC,QAAwB,EACxB,MAAsB;YAEtB,OAAO;gBACL,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,WAAW;gBACpB,OAAO;gBACP,QAAQ;gBACR,KAAK;gBACL,iBAAiB;gBACjB,QAAQ;gBACR,MAAM;gBACN,GAAG;aACJ,CAAC;QACJ,CAAC;QAEM,gBAAgB,CAAC,GAAW;YACjC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtD,CAAC;QAEM,eAAe,CAAC,GAAW;YAChC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;QACrD,CAAC;QAEM,UAAU,CAAC,GAAW;YAC3B,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAChD,CAAC;QAEM,WAAW,CAAC,GAAkD,EAAE,GAAmB;YACxF,OAAO;gBACL,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,QAAQ;gBACjB,GAAG,GAAG;gBACN,GAAG;aACJ,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["import type { AstCoreFactory, SourceLocation, Typed, SubTyped } from '@traqula/core';\nimport type {\n ContextDefinition,\n DatasetClauses,\n PatternBgp,\n PatternGroup,\n PatternValues,\n QueryConstruct,\n QuerySelect,\n SolutionModifiers,\n} from '../Sparql11types.js';\nimport type { Constructor } from './mixins.js';\n\ntype NodeType = 'query';\nconst nodeType: NodeType = 'query';\n\n// eslint-disable-next-line ts/explicit-function-return-type\nexport function QueryFactoryMixin<TBase extends Constructor<AstCoreFactory>>(Base: TBase) {\n return class QueryFactory extends Base {\n public isQuery(obj: object): obj is Typed<NodeType> {\n return this.isOfType(obj, nodeType);\n }\n\n public isQuerySelect(obj: object): obj is SubTyped<NodeType, 'select'> {\n return this.isOfSubType(obj, nodeType, 'select');\n }\n\n public queryConstruct(\n loc: SourceLocation,\n context: ContextDefinition[],\n template: PatternBgp,\n where: PatternGroup,\n solutionModifiers: SolutionModifiers,\n datasets: DatasetClauses,\n values?: PatternValues,\n ): QueryConstruct {\n return {\n type: 'query',\n subType: 'construct',\n context,\n template,\n where,\n solutionModifiers,\n datasets,\n values,\n loc,\n };\n }\n\n public isQueryConstruct(obj: object): obj is SubTyped<NodeType, 'construct'> {\n return this.isOfSubType(obj, nodeType, 'construct');\n }\n\n public isQueryDescribe(obj: object): obj is SubTyped<NodeType, 'describe'> {\n return this.isOfSubType(obj, nodeType, 'describe');\n }\n\n public isQueryAsk(obj: object): obj is SubTyped<NodeType, 'ask'> {\n return this.isOfSubType(obj, nodeType, 'ask');\n }\n\n public querySelect(arg: Omit<QuerySelect, 'type' | 'subType' | 'loc'>, loc: SourceLocation): QuerySelect {\n return {\n type: nodeType,\n subType: 'select',\n ...arg,\n loc,\n };\n }\n };\n}\n"]}
|
|
@@ -1,80 +1,58 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
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 SolutionModifiersFactory_exports = {};
|
|
20
|
-
__export(SolutionModifiersFactory_exports, {
|
|
21
|
-
SolutionModifiersFactoryMixin: () => SolutionModifiersFactoryMixin
|
|
22
|
-
});
|
|
23
|
-
module.exports = __toCommonJS(SolutionModifiersFactory_exports);
|
|
24
|
-
const nodeType = "solutionModifier";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SolutionModifiersFactoryMixin = SolutionModifiersFactoryMixin;
|
|
4
|
+
const nodeType = 'solutionModifier';
|
|
5
|
+
// eslint-disable-next-line ts/explicit-function-return-type
|
|
25
6
|
function SolutionModifiersFactoryMixin(Base) {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
7
|
+
return class SolutionModifiersFactory extends Base {
|
|
8
|
+
isSolutionModifier(obj) {
|
|
9
|
+
return this.isOfType(obj, nodeType);
|
|
10
|
+
}
|
|
11
|
+
solutionModifierHaving(having, loc) {
|
|
12
|
+
return {
|
|
13
|
+
type: nodeType,
|
|
14
|
+
subType: 'having',
|
|
15
|
+
having,
|
|
16
|
+
loc,
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
isSolutionModifierHaving(obj) {
|
|
20
|
+
return this.isOfSubType(obj, nodeType, 'having');
|
|
21
|
+
}
|
|
22
|
+
solutionModifierOrder(orderDefs, loc) {
|
|
23
|
+
return {
|
|
24
|
+
type: nodeType,
|
|
25
|
+
subType: 'order',
|
|
26
|
+
orderDefs,
|
|
27
|
+
loc,
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
isSolutionModifierOrder(obj) {
|
|
31
|
+
return this.isOfSubType(obj, nodeType, 'order');
|
|
32
|
+
}
|
|
33
|
+
solutionModifierLimitOffset(limit, offset, loc) {
|
|
34
|
+
return {
|
|
35
|
+
type: nodeType,
|
|
36
|
+
subType: 'limitOffset',
|
|
37
|
+
limit,
|
|
38
|
+
offset,
|
|
39
|
+
loc,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
isSolutionModifierLimitOffset(obj) {
|
|
43
|
+
return this.isOfSubType(obj, nodeType, 'limitOffset');
|
|
44
|
+
}
|
|
45
|
+
solutionModifierGroup(groupings, loc) {
|
|
46
|
+
return {
|
|
47
|
+
type: 'solutionModifier',
|
|
48
|
+
subType: 'group',
|
|
49
|
+
groupings,
|
|
50
|
+
loc,
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
isSolutionModifierGroup(obj) {
|
|
54
|
+
return this.isOfSubType(obj, nodeType, 'group');
|
|
55
|
+
}
|
|
56
|
+
};
|
|
76
57
|
}
|
|
77
|
-
|
|
78
|
-
0 && (module.exports = {
|
|
79
|
-
SolutionModifiersFactoryMixin
|
|
80
|
-
});
|
|
58
|
+
//# sourceMappingURL=SolutionModifiersFactory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SolutionModifiersFactory.js","sourceRoot":"","sources":["../../../../lib/factoryMixins/SolutionModifiersFactory.ts"],"names":[],"mappings":";;AAgBA,sEAgEC;AAnED,MAAM,QAAQ,GAAa,kBAAkB,CAAC;AAE9C,4DAA4D;AAC5D,SAAgB,6BAA6B,CAA4C,IAAW;IAClG,OAAO,MAAM,wBAAyB,SAAQ,IAAI;QACzC,kBAAkB,CAAC,GAAW;YACnC,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACtC,CAAC;QAEM,sBAAsB,CAAC,MAAoB,EAAE,GAAmB;YACrE,OAAO;gBACL,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,QAAQ;gBACjB,MAAM;gBACN,GAAG;aACJ,CAAC;QACJ,CAAC;QAEM,wBAAwB,CAAC,GAAW;YACzC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACnD,CAAC;QAEM,qBAAqB,CAAC,SAAqB,EAAE,GAAmB;YACrE,OAAO;gBACL,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,OAAO;gBAChB,SAAS;gBACT,GAAG;aACJ,CAAC;QACJ,CAAC;QAEM,uBAAuB,CAAC,GAAW;YACxC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAClD,CAAC;QAEM,2BAA2B,CAChC,KAAyB,EACzB,MAA0B,EAC1B,GAAmB;YAEnB,OAAO;gBACL,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,aAAa;gBACtB,KAAK;gBACL,MAAM;gBACN,GAAG;aACJ,CAAC;QACJ,CAAC;QAEM,6BAA6B,CAAC,GAAW;YAC9C,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;QACxD,CAAC;QAEM,qBAAqB,CAAC,SAAqD,EAAE,GAAmB;YAErG,OAAO;gBACL,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE,OAAO;gBAChB,SAAS;gBACT,GAAG;aACJ,CAAC;QACJ,CAAC;QAEM,uBAAuB,CAAC,GAAW;YACxC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAClD,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["import type { AstCoreFactory, SourceLocation, Typed, SubTyped } from '@traqula/core';\nimport type {\n Expression,\n Ordering,\n SolutionModifierGroup,\n SolutionModifierGroupBind,\n SolutionModifierHaving,\n SolutionModifierLimitOffset,\n SolutionModifierOrder,\n} from '../Sparql11types.js';\nimport type { Constructor } from './mixins.js';\n\ntype NodeType = 'solutionModifier';\nconst nodeType: NodeType = 'solutionModifier';\n\n// eslint-disable-next-line ts/explicit-function-return-type\nexport function SolutionModifiersFactoryMixin<TBase extends Constructor<AstCoreFactory>>(Base: TBase) {\n return class SolutionModifiersFactory extends Base {\n public isSolutionModifier(obj: object): obj is Typed<NodeType> {\n return this.isOfType(obj, nodeType);\n }\n\n public solutionModifierHaving(having: Expression[], loc: SourceLocation): SolutionModifierHaving {\n return {\n type: nodeType,\n subType: 'having',\n having,\n loc,\n };\n }\n\n public isSolutionModifierHaving(obj: object): obj is SubTyped<NodeType, 'having'> {\n return this.isOfSubType(obj, nodeType, 'having');\n }\n\n public solutionModifierOrder(orderDefs: Ordering[], loc: SourceLocation): SolutionModifierOrder {\n return {\n type: nodeType,\n subType: 'order',\n orderDefs,\n loc,\n };\n }\n\n public isSolutionModifierOrder(obj: object): obj is SubTyped<NodeType, 'order'> {\n return this.isOfSubType(obj, nodeType, 'order');\n }\n\n public solutionModifierLimitOffset(\n limit: number | undefined,\n offset: number | undefined,\n loc: SourceLocation,\n ): SolutionModifierLimitOffset {\n return {\n type: nodeType,\n subType: 'limitOffset',\n limit,\n offset,\n loc,\n };\n }\n\n public isSolutionModifierLimitOffset(obj: object): obj is SubTyped<NodeType, 'limitOffset'> {\n return this.isOfSubType(obj, nodeType, 'limitOffset');\n }\n\n public solutionModifierGroup(groupings: (Expression | SolutionModifierGroupBind)[], loc: SourceLocation):\n SolutionModifierGroup {\n return {\n type: 'solutionModifier',\n subType: 'group',\n groupings,\n loc,\n };\n }\n\n public isSolutionModifierGroup(obj: object): obj is SubTyped<NodeType, 'group'> {\n return this.isOfSubType(obj, nodeType, 'group');\n }\n };\n}\n"]}
|