@traqula/rules-sparql-1-1 0.0.17 → 0.0.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/grammar/propertyPaths.d.ts +2 -2
- package/lib/grammar/tripleBlock.d.ts +4 -4
- package/lib/grammar/updateUnit.js +4 -5
- package/lib/grammar/updateUnit.js.map +1 -1
- package/lib/index.cjs +64 -45
- package/lib/lexer/BuiltInCalls.d.ts +1 -1
- package/lib/lexer/graph.d.ts +1 -1
- package/lib/lexer/lexer.d.ts +5 -3
- package/lib/lexer/lexer.js +19 -5
- package/lib/lexer/lexer.js.map +1 -1
- package/lib/lexer/lexerPatterns.d.ts +36 -0
- package/lib/lexer/lexerPatterns.js +38 -0
- package/lib/lexer/lexerPatterns.js.map +1 -0
- package/lib/lexer/symbols.d.ts +1 -1
- package/lib/lexer/terminals.d.ts +1 -1
- package/lib/lexer/terminals.js +2 -36
- package/lib/lexer/terminals.js.map +1 -1
- package/package.json +3 -3
|
@@ -14,11 +14,11 @@ export declare const pathEltOrInverse: SparqlGrammarRule<'pathEltOrInverse', Pat
|
|
|
14
14
|
/**
|
|
15
15
|
* [[90]](https://www.w3.org/TR/sparql11-query/#rPathSequence)
|
|
16
16
|
*/
|
|
17
|
-
export declare const pathSequence: SparqlGrammarRule<"pathSequence", import("../Sparql11types.js").TermIriFull | import("../Sparql11types.js").TermIriPrefixed | import("../Sparql11types.js").PropertyPathChain
|
|
17
|
+
export declare const pathSequence: SparqlGrammarRule<"pathSequence", import("../Sparql11types.js").TermIriFull | import("../Sparql11types.js").TermIriPrefixed | PathNegated | PathModified | import("../Sparql11types.js").PropertyPathChain>;
|
|
18
18
|
/**
|
|
19
19
|
* [[89]](https://www.w3.org/TR/sparql11-query/#rPathAlternative)
|
|
20
20
|
*/
|
|
21
|
-
export declare const pathAlternative: SparqlGrammarRule<"pathAlternative", import("../Sparql11types.js").TermIriFull | import("../Sparql11types.js").TermIriPrefixed | import("../Sparql11types.js").PropertyPathChain
|
|
21
|
+
export declare const pathAlternative: SparqlGrammarRule<"pathAlternative", import("../Sparql11types.js").TermIriFull | import("../Sparql11types.js").TermIriPrefixed | PathNegated | PathModified | import("../Sparql11types.js").PropertyPathChain>;
|
|
22
22
|
/**
|
|
23
23
|
* [[91]](https://www.w3.org/TR/sparql11-query/#rPathElt)
|
|
24
24
|
*/
|
|
@@ -22,10 +22,10 @@ export declare const verbPath: SparqlGrammarRule<'verbPath', Path>;
|
|
|
22
22
|
* [[85]](https://www.w3.org/TR/sparql11-query/#rVerbSimple)
|
|
23
23
|
*/
|
|
24
24
|
export declare const verbSimple: SparqlGrammarRule<'verbSimple', TermVariable>;
|
|
25
|
-
export declare const objectList: SparqlGrammarRule<"objectList", TripleNesting[], [GraphNode, import("../Sparql11types.js").TermIriFull | import("../Sparql11types.js").TermIriPrefixed | TermVariable | import("../Sparql11types.js").
|
|
26
|
-
export declare const objectListPath: SparqlGrammarRule<"objectListPath", TripleNesting[], [GraphNode, import("../Sparql11types.js").TermIriFull | import("../Sparql11types.js").TermIriPrefixed | TermVariable | import("../Sparql11types.js").
|
|
27
|
-
export declare const object: SparqlGrammarRule<"object", TripleNesting, [GraphNode, import("../Sparql11types.js").TermIriFull | import("../Sparql11types.js").TermIriPrefixed | TermVariable | import("../Sparql11types.js").
|
|
28
|
-
export declare const objectPath: SparqlGrammarRule<"objectPath", TripleNesting, [GraphNode, import("../Sparql11types.js").TermIriFull | import("../Sparql11types.js").TermIriPrefixed | TermVariable | import("../Sparql11types.js").
|
|
25
|
+
export declare const objectList: SparqlGrammarRule<"objectList", TripleNesting[], [GraphNode, import("../Sparql11types.js").TermIriFull | import("../Sparql11types.js").TermIriPrefixed | TermVariable | import("../Sparql11types.js").PathNegated | import("../Sparql11types.js").PathModified | import("../Sparql11types.js").PropertyPathChain]>;
|
|
26
|
+
export declare const objectListPath: SparqlGrammarRule<"objectListPath", TripleNesting[], [GraphNode, import("../Sparql11types.js").TermIriFull | import("../Sparql11types.js").TermIriPrefixed | TermVariable | import("../Sparql11types.js").PathNegated | import("../Sparql11types.js").PathModified | import("../Sparql11types.js").PropertyPathChain]>;
|
|
27
|
+
export declare const object: SparqlGrammarRule<"object", TripleNesting, [GraphNode, import("../Sparql11types.js").TermIriFull | import("../Sparql11types.js").TermIriPrefixed | TermVariable | import("../Sparql11types.js").PathNegated | import("../Sparql11types.js").PathModified | import("../Sparql11types.js").PropertyPathChain]>;
|
|
28
|
+
export declare const objectPath: SparqlGrammarRule<"objectPath", TripleNesting, [GraphNode, import("../Sparql11types.js").TermIriFull | import("../Sparql11types.js").TermIriPrefixed | TermVariable | import("../Sparql11types.js").PathNegated | import("../Sparql11types.js").PathModified | import("../Sparql11types.js").PropertyPathChain]>;
|
|
29
29
|
export declare const collection: SparqlRule<"collection", TripleCollectionList>;
|
|
30
30
|
export declare const collectionPath: SparqlRule<"collectionPath", TripleCollectionList>;
|
|
31
31
|
export declare const triplesNode: SparqlRule<"triplesNode", TripleCollection>;
|
|
@@ -260,12 +260,11 @@ export const quadData = {
|
|
|
260
260
|
return ACTION(() => C.astFactory.wrap(val.val, C.astFactory.sourceLocation(open, close)));
|
|
261
261
|
},
|
|
262
262
|
};
|
|
263
|
-
function insertDeleteDelWhere(name, subType, cons1,
|
|
263
|
+
function insertDeleteDelWhere(name, subType, cons1, dataRule) {
|
|
264
264
|
return {
|
|
265
265
|
name,
|
|
266
266
|
impl: ({ ACTION, SUBRULE1, CONSUME }) => (C) => {
|
|
267
267
|
const insDelToken = CONSUME(cons1);
|
|
268
|
-
CONSUME(cons2);
|
|
269
268
|
let couldCreateBlankNodes = true;
|
|
270
269
|
if (name !== 'insertData') {
|
|
271
270
|
couldCreateBlankNodes = ACTION(() => C.parseMode.delete('canCreateBlankNodes'));
|
|
@@ -302,15 +301,15 @@ function insertDeleteDelWhere(name, subType, cons1, cons2, dataRule) {
|
|
|
302
301
|
/**
|
|
303
302
|
* [[38]](https://www.w3.org/TR/sparql11-query/#rInsertData)
|
|
304
303
|
*/
|
|
305
|
-
export const insertData = insertDeleteDelWhere('insertData', 'insertdata', l.
|
|
304
|
+
export const insertData = insertDeleteDelWhere('insertData', 'insertdata', l.insertDataClause, quadData);
|
|
306
305
|
/**
|
|
307
306
|
* [[39]](https://www.w3.org/TR/sparql11-query/#rDeleteData)
|
|
308
307
|
*/
|
|
309
|
-
export const deleteData = insertDeleteDelWhere('deleteData', 'deletedata', l.
|
|
308
|
+
export const deleteData = insertDeleteDelWhere('deleteData', 'deletedata', l.deleteDataClause, quadData);
|
|
310
309
|
/**
|
|
311
310
|
* [[40]](https://www.w3.org/TR/sparql11-query/#rDeleteWhere)
|
|
312
311
|
*/
|
|
313
|
-
export const deleteWhere = insertDeleteDelWhere('deleteWhere', 'deletewhere', l.
|
|
312
|
+
export const deleteWhere = insertDeleteDelWhere('deleteWhere', 'deletewhere', l.deleteWhereClause, quadPattern);
|
|
314
313
|
/**
|
|
315
314
|
* [[41]](https://www.w3.org/TR/sparql11-query/#rModify)
|
|
316
315
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateUnit.js","sourceRoot":"","sources":["updateUnit.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Localized, RuleDefReturn, Wrap } from '@traqula/core';\nimport { traqulaIndentation, unCapitalize } from '@traqula/core';\nimport type { IToken, TokenType } from 'chevrotain';\nimport * as l from '../lexer/index.js';\nimport type { SparqlGrammarRule, SparqlRule } from '../sparql11HelperTypes.js';\nimport type {\n GraphQuads,\n GraphRef,\n GraphRefDefault,\n GraphRefSpecific,\n Quads,\n Update,\n UpdateOperation,\n UpdateOperationAdd,\n UpdateOperationClear,\n UpdateOperationCopy,\n UpdateOperationCreate,\n UpdateOperationDeleteData,\n UpdateOperationDeleteWhere,\n UpdateOperationDrop,\n UpdateOperationInsertData,\n UpdateOperationLoad,\n UpdateOperationModify,\n UpdateOperationMove,\n} from '../Sparql11types.js';\nimport { updateNoReuseBlankNodeLabels } from '../validation/validators.js';\nimport { usingClauseStar } from './dataSetClause.js';\nimport { prologue, varOrIri, varOrTerm } from './general.js';\nimport { iri } from './literals.js';\nimport { triplesBlock, triplesTemplate } from './tripleBlock.js';\nimport { groupGraphPattern } from './whereClause.js';\n\n/**\n * [[3]](https://www.w3.org/TR/sparql11-query/#rUpdateUnit)\n */\nexport const updateUnit: SparqlGrammarRule<'updateUnit', Update> = <const> {\n name: 'updateUnit',\n impl: ({ SUBRULE }) => () => SUBRULE(update),\n};\n\n/**\n * [[29]](https://www.w3.org/TR/sparql11-query/#rUpdate)\n */\nexport const update: SparqlRule<'update', Update> = <const> {\n name: 'update',\n impl: ({ ACTION, SUBRULE, SUBRULE1, SUBRULE2, CONSUME, OPTION1, MANY }) => (C) => {\n // Override prologueValues on new reads of prologue and sink them into updates later\n const updates: Update['updates'] = [];\n const prologueValues = SUBRULE1(prologue);\n updates.push({ context: prologueValues });\n\n let parsedSemi = true;\n MANY({\n GATE: () => parsedSemi,\n DEF: () => {\n parsedSemi = false;\n updates.at(-1)!.operation = SUBRULE(update1);\n\n OPTION1(() => {\n CONSUME(l.symbols.semi);\n\n parsedSemi = true;\n const innerPrologue = SUBRULE2(prologue);\n updates.push({ context: innerPrologue });\n });\n },\n });\n return ACTION(() => {\n const update = {\n type: 'update',\n updates,\n loc: C.astFactory.sourceLocation(\n ...updates[0].context,\n updates[0].operation,\n ...updates.at(-1)!.context,\n updates.at(-1)?.operation,\n ),\n } satisfies Update;\n updateNoReuseBlankNodeLabels(update);\n return update;\n });\n },\n gImpl: ({ SUBRULE, PRINT_WORD }) => (ast, { astFactory: F }) => {\n const [ head, ...tail ] = ast.updates;\n if (head) {\n SUBRULE(prologue, head.context);\n if (head.operation) {\n SUBRULE(update1, head.operation);\n }\n }\n for (const update of tail) {\n F.printFilter(ast, () => PRINT_WORD(';\\n'));\n SUBRULE(prologue, update.context);\n if (update.operation) {\n SUBRULE(update1, update.operation);\n }\n }\n },\n};\n\n/**\n * [[30]](https://www.w3.org/TR/sparql11-query/#rUpdate1)\n */\nexport const update1: SparqlRule<'update1', UpdateOperation> = <const> {\n name: 'update1',\n impl: ({ SUBRULE, OR }) => () => OR<UpdateOperation>([\n { ALT: () => SUBRULE(load) },\n { ALT: () => SUBRULE(clear) },\n { ALT: () => SUBRULE(drop) },\n { ALT: () => SUBRULE(add) },\n { ALT: () => SUBRULE(move) },\n { ALT: () => SUBRULE(copy) },\n { ALT: () => SUBRULE(create) },\n { ALT: () => SUBRULE(insertData) },\n { ALT: () => SUBRULE(deleteData) },\n { ALT: () => SUBRULE(deleteWhere) },\n { ALT: () => SUBRULE(modify) },\n ]),\n gImpl: ({ SUBRULE }) => (ast) => {\n switch (ast.subType) {\n case ('load'):\n SUBRULE(load, ast);\n break;\n case ('clear'):\n SUBRULE(clear, ast);\n break;\n case ('drop'):\n SUBRULE(drop, ast);\n break;\n case ('add'):\n SUBRULE(add, ast);\n break;\n case ('move'):\n SUBRULE(move, ast);\n break;\n case ('copy'):\n SUBRULE(copy, ast);\n break;\n case ('create'):\n SUBRULE(create, ast);\n break;\n case ('insertdata'):\n SUBRULE(insertData, ast);\n break;\n case ('deletedata'):\n SUBRULE(deleteData, ast);\n break;\n case ('deletewhere'):\n SUBRULE(deleteWhere, ast);\n break;\n case ('modify'):\n SUBRULE(modify, ast);\n break;\n }\n },\n};\n\n/**\n * [[31]](https://www.w3.org/TR/sparql11-query/#rLoad)\n */\nexport const load: SparqlRule<'load', UpdateOperationLoad> = <const> {\n name: 'load',\n impl: ({ ACTION, SUBRULE1, CONSUME, OPTION1, OPTION2 }) => (C) => {\n const loadToken = CONSUME(l.load);\n const silent = OPTION1(() => CONSUME(l.silent));\n const source = SUBRULE1(iri);\n const destination = OPTION2(() => {\n CONSUME(l.loadInto);\n return SUBRULE1(graphRef);\n });\n return ACTION(() => C.astFactory.updateOperationLoad(\n C.astFactory.sourceLocation(loadToken, source, destination),\n source,\n Boolean(silent),\n destination,\n ));\n },\n gImpl: ({ SUBRULE, PRINT_WORD }) => (ast, { astFactory: F }) => {\n F.printFilter(ast, () => {\n PRINT_WORD('LOAD');\n if (ast.silent) {\n PRINT_WORD('SILENT');\n }\n });\n SUBRULE(iri, ast.source);\n if (ast.destination) {\n F.printFilter(ast, () => PRINT_WORD('INTO'));\n SUBRULE(graphRefAll, ast.destination);\n }\n },\n};\n\nfunction clearOrDrop<T extends 'Clear' | 'Drop'>(operation: TokenType & { name: T }):\nSparqlRule<Uncapitalize<T>, UpdateOperationClear | UpdateOperationDrop> {\n return {\n name: unCapitalize(operation.name),\n impl: ({ ACTION, SUBRULE1, CONSUME, OPTION }) => (C) => {\n const opToken = CONSUME(operation);\n const silent = OPTION(() => CONSUME(l.silent));\n const destination = SUBRULE1(graphRefAll);\n return ACTION(() => C.astFactory.updateOperationClearDrop(\n unCapitalize(operation.name),\n Boolean(silent),\n destination,\n C.astFactory.sourceLocation(opToken, destination),\n ));\n },\n gImpl: ({ SUBRULE, PRINT_WORD }) => (ast, { astFactory: F }) => {\n F.printFilter(ast, () => {\n PRINT_WORD(operation.name.toUpperCase());\n if (ast.silent) {\n PRINT_WORD('SILENT');\n }\n });\n SUBRULE(graphRefAll, ast.destination);\n },\n };\n}\n\n/**\n * [[32]](https://www.w3.org/TR/sparql11-query/#rClear)\n */\nexport const clear = clearOrDrop(l.clear);\n\n/**\n * [[33]](https://www.w3.org/TR/sparql11-query/#rDrop)\n */\nexport const drop = clearOrDrop(l.drop);\n\n/**\n * [[34]](https://www.w3.org/TR/sparql11-query/#rCreate)\n */\nexport const create: SparqlRule<'create', UpdateOperationCreate> = <const> {\n name: 'create',\n impl: ({ ACTION, SUBRULE1, CONSUME, OPTION }) => (C) => {\n const createToken = CONSUME(l.create);\n const silent = OPTION(() => CONSUME(l.silent));\n const destination = SUBRULE1(graphRef);\n\n return ACTION(() => C.astFactory.updateOperationCreate(\n destination,\n Boolean(silent),\n C.astFactory.sourceLocation(createToken, destination),\n ));\n },\n gImpl: ({ SUBRULE, PRINT_WORD }) => (ast, { astFactory: F }) => {\n F.printFilter(ast, () => {\n PRINT_WORD('CREATE');\n if (ast.silent) {\n PRINT_WORD('SILENT');\n }\n });\n SUBRULE(graphRefAll, ast.destination);\n },\n};\n\nfunction copyMoveAddOperation<T extends 'Copy' | 'Move' | 'Add'>(operation: TokenType & { name: T }):\nSparqlRule<Uncapitalize<T>, UpdateOperationAdd | UpdateOperationMove | UpdateOperationCopy> {\n return {\n name: unCapitalize(operation.name),\n impl: ({ ACTION, CONSUME, SUBRULE1, SUBRULE2, OPTION }) => (C) => {\n const op = CONSUME(operation);\n const silent = OPTION(() => CONSUME(l.silent));\n const source = SUBRULE1(graphOrDefault);\n CONSUME(l.to);\n const destination = SUBRULE2(graphOrDefault);\n\n return ACTION(() => C.astFactory.updateOperationAddMoveCopy(\n unCapitalize(operation.name),\n source,\n destination,\n Boolean(silent),\n C.astFactory.sourceLocation(op, destination),\n ));\n },\n gImpl: ({ SUBRULE, PRINT_WORD }) => (ast, { astFactory: F }) => {\n F.printFilter(ast, () => {\n PRINT_WORD(operation.name.toUpperCase());\n if (ast.silent) {\n PRINT_WORD('SILENT');\n }\n });\n SUBRULE(graphRefAll, ast.source);\n F.printFilter(ast, () => PRINT_WORD('TO'));\n SUBRULE(graphRefAll, ast.destination);\n },\n };\n}\n\n/**\n * [[35]](https://www.w3.org/TR/sparql11-query/#rAdd)\n */\nexport const add = copyMoveAddOperation(l.add);\n\n/**\n * [[36]](https://www.w3.org/TR/sparql11-query/#rMove)\n */\nexport const move = copyMoveAddOperation(l.move);\n\n/**\n * [[37]](https://www.w3.org/TR/sparql11-query/#rCopy)\n */\nexport const copy = copyMoveAddOperation(l.copy);\n\n/**\n * [[48]](https://www.w3.org/TR/sparql11-query/#rQuadPattern)\n */\nexport const quadPattern: SparqlGrammarRule<'quadPattern', Wrap<Quads[]>> = <const> {\n name: 'quadPattern',\n impl: ({ ACTION, SUBRULE1, CONSUME }) => (C) => {\n const open = CONSUME(l.symbols.LCurly);\n const val = SUBRULE1(quads);\n const close = CONSUME(l.symbols.RCurly);\n return ACTION(() => C.astFactory.wrap(val.val, C.astFactory.sourceLocation(open, close)));\n },\n};\n\n/**\n * [[49]](https://www.w3.org/TR/sparql11-query/#rQuadData)\n */\nexport const quadData: SparqlGrammarRule<'quadData', Wrap<Quads[]>> = <const> {\n name: 'quadData',\n impl: ({ ACTION, SUBRULE1, CONSUME }) => (C) => {\n const open = CONSUME(l.symbols.LCurly);\n\n const couldParseVars = ACTION(() => C.parseMode.delete('canParseVars'));\n const val = SUBRULE1(quads);\n ACTION(() => couldParseVars && C.parseMode.add('canParseVars'));\n\n const close = CONSUME(l.symbols.RCurly);\n return ACTION(() => C.astFactory.wrap(val.val, C.astFactory.sourceLocation(open, close)));\n },\n};\n\nfunction insertDeleteDelWhere<T extends string>(\n name: T,\n subType: 'insertdata' | 'deletedata' | 'deletewhere',\n cons1: TokenType,\n cons2: TokenType,\n dataRule: SparqlGrammarRule<any, Wrap<Quads[]>>,\n): SparqlRule<T, UpdateOperationInsertData | UpdateOperationDeleteData | UpdateOperationDeleteWhere> {\n return {\n name,\n impl: ({ ACTION, SUBRULE1, CONSUME }) => (C) => {\n const insDelToken = CONSUME(cons1);\n CONSUME(cons2);\n\n let couldCreateBlankNodes = true;\n if (name !== 'insertData') {\n couldCreateBlankNodes = ACTION(() => C.parseMode.delete('canCreateBlankNodes'));\n }\n const data = SUBRULE1(dataRule);\n if (name !== 'insertData') {\n ACTION(() => couldCreateBlankNodes && C.parseMode.add('canCreateBlankNodes'));\n }\n\n return ACTION(() =>\n C.astFactory.updateOperationInsDelDataWhere(subType, data.val, C.astFactory.sourceLocation(insDelToken, data)));\n },\n gImpl: ({ SUBRULE, PRINT_WORD, PRINT_ON_EMPTY }) => (ast, C) => {\n const { astFactory: F, indentInc } = C;\n F.printFilter(ast, () => {\n C[traqulaIndentation] += indentInc;\n if (subType === 'insertdata') {\n PRINT_WORD('INSERT DATA');\n } else if (subType === 'deletedata') {\n PRINT_WORD('DELETE DATA');\n } else if (subType === 'deletewhere') {\n PRINT_WORD('DELETE WHERE');\n }\n PRINT_WORD('{\\n');\n });\n SUBRULE(quads, F.wrap(ast.data, ast.loc));\n F.printFilter(ast, () => {\n C[traqulaIndentation] -= indentInc;\n PRINT_ON_EMPTY('}\\n');\n });\n },\n };\n}\n\n/**\n * [[38]](https://www.w3.org/TR/sparql11-query/#rInsertData)\n */\nexport const insertData = insertDeleteDelWhere('insertData', 'insertdata', l.insertClause, l.dataClause, quadData);\n\n/**\n * [[39]](https://www.w3.org/TR/sparql11-query/#rDeleteData)\n */\nexport const deleteData = insertDeleteDelWhere('deleteData', 'deletedata', l.deleteClause, l.dataClause, quadData);\n\n/**\n * [[40]](https://www.w3.org/TR/sparql11-query/#rDeleteWhere)\n */\nexport const deleteWhere = insertDeleteDelWhere('deleteWhere', 'deletewhere', l.deleteClause, l.where, quadPattern);\n\n/**\n * [[41]](https://www.w3.org/TR/sparql11-query/#rModify)\n */\nexport const modify: SparqlRule<'modify', UpdateOperationModify> = <const> {\n name: 'modify',\n impl: ({ ACTION, CONSUME, SUBRULE1, SUBRULE2, OPTION1, OPTION2, OR }) => (C) => {\n const graph = OPTION1(() => {\n const withToken = CONSUME(l.modifyWith);\n const graph = SUBRULE1(iri);\n return { withToken, graph };\n });\n const { insert, del } = OR<{\n del: RuleDefReturn<typeof deleteClause> | undefined;\n insert: RuleDefReturn<typeof insertClause> | undefined;\n }>([\n { ALT: () => {\n const del = SUBRULE1(deleteClause);\n const insert = OPTION2(() => SUBRULE1(insertClause));\n return { del, insert };\n } },\n { ALT: () => {\n const insert = SUBRULE2(insertClause);\n return { insert, del: undefined };\n } },\n ]);\n const using = SUBRULE1(usingClauseStar);\n CONSUME(l.where);\n const where = SUBRULE1(groupGraphPattern);\n\n return ACTION(() => C.astFactory.updateOperationModify(\n C.astFactory.sourceLocation(graph?.withToken, del, insert, where),\n insert?.val ?? [],\n del?.val ?? [],\n where,\n using,\n graph?.graph,\n ));\n },\n gImpl: ({ SUBRULE, PRINT_WORD, PRINT_ON_EMPTY }) => (ast, C) => {\n const { astFactory: F, indentInc } = C;\n if (ast.graph) {\n F.printFilter(ast, () => PRINT_WORD('WITH'));\n SUBRULE(iri, ast.graph);\n }\n if (ast.delete.length > 0) {\n F.printFilter(ast, () => {\n C[traqulaIndentation] += indentInc;\n PRINT_WORD('DELETE', '{\\n');\n });\n SUBRULE(quads, F.wrap(ast.delete, ast.loc));\n F.printFilter(ast, () => {\n C[traqulaIndentation] -= indentInc;\n PRINT_ON_EMPTY('}\\n');\n });\n }\n if (ast.insert.length > 0) {\n F.printFilter(ast, () => {\n C[traqulaIndentation] += indentInc;\n PRINT_WORD('INSERT', '{\\n');\n });\n SUBRULE(quads, F.wrap(ast.insert, ast.loc));\n F.printFilter(ast, () => {\n C[traqulaIndentation] -= indentInc;\n PRINT_ON_EMPTY('}\\n');\n });\n }\n SUBRULE(usingClauseStar, ast.from);\n F.printFilter(ast, () => PRINT_WORD('WHERE'));\n SUBRULE(groupGraphPattern, ast.where);\n },\n};\n\n/**\n * [[42]](https://www.w3.org/TR/sparql11-query/#rDeleteClause)\n */\nexport const deleteClause: SparqlGrammarRule<'deleteClause', Wrap<Quads[]>> = <const> {\n name: 'deleteClause',\n impl: ({ ACTION, SUBRULE, CONSUME }) => (C) => {\n const delToken = CONSUME(l.deleteClause);\n const couldCreateBlankNodes = ACTION(() => C.parseMode.delete('canCreateBlankNodes'));\n const del = SUBRULE(quadPattern);\n ACTION(() => couldCreateBlankNodes && C.parseMode.add('canCreateBlankNodes'));\n\n return ACTION(() => C.astFactory.wrap(del.val, C.astFactory.sourceLocation(delToken, del)));\n },\n};\n\n/**\n * [[43]](https://www.w3.org/TR/sparql11-query/#rInsertClause)\n */\nexport const insertClause: SparqlGrammarRule<'insertClause', Wrap<Quads[]>> = <const> {\n name: 'insertClause',\n impl: ({ ACTION, SUBRULE, CONSUME }) => (C) => {\n const insertToken = CONSUME(l.insertClause);\n const insert = SUBRULE(quadPattern);\n\n return ACTION(() => C.astFactory.wrap(insert.val, C.astFactory.sourceLocation(insertToken, insert)));\n },\n};\n\n/**\n * [[45]](https://www.w3.org/TR/sparql11-query/#rGraphOrDefault)\n */\nexport const graphOrDefault: SparqlGrammarRule<'graphOrDefault', GraphRefDefault | GraphRefSpecific> = <const> {\n name: 'graphOrDefault',\n impl: ({ ACTION, SUBRULE1, CONSUME, OPTION, OR }) => C => OR<GraphRefDefault | GraphRefSpecific>([\n { ALT: () => {\n const def = CONSUME(l.graph.default_);\n return ACTION(() => C.astFactory.graphRefDefault(C.astFactory.sourceLocation(def)));\n } },\n { ALT: () => {\n const graph = OPTION(() => CONSUME(l.graph.graph));\n const name = SUBRULE1(iri);\n return ACTION(() =>\n C.astFactory.graphRefSpecific(name, C.astFactory.sourceLocation(graph, name)));\n } },\n ]),\n};\n\n/**\n * [[46]](https://www.w3.org/TR/sparql11-query/#rGraphRef)\n */\nexport const graphRef: SparqlRule<'graphRef', GraphRefSpecific> = <const> {\n name: 'graphRef',\n impl: ({ ACTION, SUBRULE, CONSUME }) => (C) => {\n const graph = CONSUME(l.graph.graph);\n const val = SUBRULE(iri);\n return ACTION(() => C.astFactory.graphRefSpecific(val, C.astFactory.sourceLocation(graph, val)));\n },\n gImpl: ({ SUBRULE, PRINT_WORD }) => (ast, { astFactory: F }) => {\n F.printFilter(ast, () => PRINT_WORD('GRAPH'));\n SUBRULE(iri, ast.graph);\n },\n};\n\n/**\n * [[47]](https://www.w3.org/TR/sparql11-query/#rGraphRefAll)\n */\nexport const graphRefAll: SparqlRule<'graphRefAll', GraphRef> = <const> {\n name: 'graphRefAll',\n impl: ({ ACTION, SUBRULE, CONSUME, OR }) => C => OR<GraphRef>([\n { ALT: () => SUBRULE(graphRef) },\n { ALT: () => {\n const def = CONSUME(l.graph.default_);\n return ACTION(() => C.astFactory.graphRefDefault(C.astFactory.sourceLocation(def)));\n } },\n { ALT: () => {\n const named = CONSUME(l.graph.named);\n return ACTION(() => C.astFactory.graphRefNamed(C.astFactory.sourceLocation(named)));\n } },\n { ALT: () => {\n const graphAll = CONSUME(l.graph.graphAll);\n return ACTION(() => C.astFactory.graphRefAll(C.astFactory.sourceLocation(graphAll)));\n } },\n ]),\n gImpl: ({ SUBRULE, PRINT_WORD }) => (ast, { astFactory: F }) => {\n if (F.isGraphRefSpecific(ast)) {\n SUBRULE(graphRef, ast);\n } else if (F.isGraphRefDefault(ast)) {\n F.printFilter(ast, () => PRINT_WORD('DEFAULT'));\n } else if (F.isGraphRefNamed(ast)) {\n F.printFilter(ast, () => PRINT_WORD('NAMED'));\n } else if (F.isGraphRefAll(ast)) {\n F.printFilter(ast, () => PRINT_WORD('ALL'));\n }\n },\n};\n\n/**\n * [[50]](https://www.w3.org/TR/sparql11-query/#rQuads)\n */\nexport const quads: SparqlRule<'quads', Wrap<Quads[]>> = <const> {\n name: 'quads',\n impl: ({ ACTION, SUBRULE, CONSUME, MANY, SUBRULE1, SUBRULE2, OPTION1, OPTION2, OPTION3 }) => (C) => {\n const quads: Quads[] = [];\n let last: IToken | Localized | undefined;\n\n OPTION1(() => {\n const triples = SUBRULE1(triplesTemplate);\n last = triples;\n ACTION(() => quads.push(triples));\n });\n\n MANY(() => {\n const notTriples = SUBRULE(quadsNotTriples);\n last = notTriples;\n quads.push(notTriples);\n OPTION2(() => {\n const dotToken = CONSUME(l.symbols.dot);\n last = dotToken;\n return dotToken;\n });\n OPTION3(() => {\n const triples = SUBRULE2(triplesTemplate);\n last = triples;\n ACTION(() => quads.push(triples));\n });\n });\n\n return ACTION(() => C.astFactory.wrap(quads, C.astFactory.sourceLocation(quads.at(0), last)));\n },\n gImpl: ({ SUBRULE }) => (ast, { astFactory: F }) => {\n for (const quad of ast.val) {\n if (F.isPattern(quad)) {\n SUBRULE(triplesBlock, quad);\n } else {\n SUBRULE(quadsNotTriples, quad);\n }\n }\n },\n};\n\n/**\n * [[51]](https://www.w3.org/TR/sparql11-query/#rQuadsNotTriples)\n */\nexport const quadsNotTriples: SparqlRule<'quadsNotTriples', GraphQuads> = <const> {\n name: 'quadsNotTriples',\n impl: ({ ACTION, SUBRULE1, CONSUME, OPTION }) => (C) => {\n const graph = CONSUME(l.graph.graph);\n const name = SUBRULE1(varOrIri);\n CONSUME(l.symbols.LCurly);\n const triples = OPTION(() => SUBRULE1(triplesTemplate));\n const close = CONSUME(l.symbols.RCurly);\n\n return ACTION(() => C.astFactory.graphQuads(\n name,\n triples ?? C.astFactory.patternBgp([], C.astFactory.sourceLocationNoMaterialize()),\n C.astFactory.sourceLocation(graph, close),\n ));\n },\n gImpl: ({ SUBRULE, PRINT_WORD, PRINT_ON_EMPTY }) => (ast, C) => {\n const { astFactory: F, indentInc } = C;\n F.printFilter(ast, () => PRINT_WORD('GRAPH'));\n SUBRULE(varOrTerm, ast.graph);\n F.printFilter(ast, () => {\n C[traqulaIndentation] += indentInc;\n PRINT_WORD('{\\n');\n });\n SUBRULE(triplesBlock, ast.triples);\n F.printFilter(ast, () => {\n C[traqulaIndentation] -= indentInc;\n PRINT_ON_EMPTY('}\\n');\n });\n },\n};\n"]}
|
|
1
|
+
{"version":3,"file":"updateUnit.js","sourceRoot":"","sources":["updateUnit.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Localized, RuleDefReturn, Wrap } from '@traqula/core';\nimport { traqulaIndentation, unCapitalize } from '@traqula/core';\nimport type { IToken, TokenType } from 'chevrotain';\nimport * as l from '../lexer/index.js';\nimport type { SparqlGrammarRule, SparqlRule } from '../sparql11HelperTypes.js';\nimport type {\n GraphQuads,\n GraphRef,\n GraphRefDefault,\n GraphRefSpecific,\n Quads,\n Update,\n UpdateOperation,\n UpdateOperationAdd,\n UpdateOperationClear,\n UpdateOperationCopy,\n UpdateOperationCreate,\n UpdateOperationDeleteData,\n UpdateOperationDeleteWhere,\n UpdateOperationDrop,\n UpdateOperationInsertData,\n UpdateOperationLoad,\n UpdateOperationModify,\n UpdateOperationMove,\n} from '../Sparql11types.js';\nimport { updateNoReuseBlankNodeLabels } from '../validation/validators.js';\nimport { usingClauseStar } from './dataSetClause.js';\nimport { prologue, varOrIri, varOrTerm } from './general.js';\nimport { iri } from './literals.js';\nimport { triplesBlock, triplesTemplate } from './tripleBlock.js';\nimport { groupGraphPattern } from './whereClause.js';\n\n/**\n * [[3]](https://www.w3.org/TR/sparql11-query/#rUpdateUnit)\n */\nexport const updateUnit: SparqlGrammarRule<'updateUnit', Update> = <const> {\n name: 'updateUnit',\n impl: ({ SUBRULE }) => () => SUBRULE(update),\n};\n\n/**\n * [[29]](https://www.w3.org/TR/sparql11-query/#rUpdate)\n */\nexport const update: SparqlRule<'update', Update> = <const> {\n name: 'update',\n impl: ({ ACTION, SUBRULE, SUBRULE1, SUBRULE2, CONSUME, OPTION1, MANY }) => (C) => {\n // Override prologueValues on new reads of prologue and sink them into updates later\n const updates: Update['updates'] = [];\n const prologueValues = SUBRULE1(prologue);\n updates.push({ context: prologueValues });\n\n let parsedSemi = true;\n MANY({\n GATE: () => parsedSemi,\n DEF: () => {\n parsedSemi = false;\n updates.at(-1)!.operation = SUBRULE(update1);\n\n OPTION1(() => {\n CONSUME(l.symbols.semi);\n\n parsedSemi = true;\n const innerPrologue = SUBRULE2(prologue);\n updates.push({ context: innerPrologue });\n });\n },\n });\n return ACTION(() => {\n const update = {\n type: 'update',\n updates,\n loc: C.astFactory.sourceLocation(\n ...updates[0].context,\n updates[0].operation,\n ...updates.at(-1)!.context,\n updates.at(-1)?.operation,\n ),\n } satisfies Update;\n updateNoReuseBlankNodeLabels(update);\n return update;\n });\n },\n gImpl: ({ SUBRULE, PRINT_WORD }) => (ast, { astFactory: F }) => {\n const [ head, ...tail ] = ast.updates;\n if (head) {\n SUBRULE(prologue, head.context);\n if (head.operation) {\n SUBRULE(update1, head.operation);\n }\n }\n for (const update of tail) {\n F.printFilter(ast, () => PRINT_WORD(';\\n'));\n SUBRULE(prologue, update.context);\n if (update.operation) {\n SUBRULE(update1, update.operation);\n }\n }\n },\n};\n\n/**\n * [[30]](https://www.w3.org/TR/sparql11-query/#rUpdate1)\n */\nexport const update1: SparqlRule<'update1', UpdateOperation> = <const> {\n name: 'update1',\n impl: ({ SUBRULE, OR }) => () => OR<UpdateOperation>([\n { ALT: () => SUBRULE(load) },\n { ALT: () => SUBRULE(clear) },\n { ALT: () => SUBRULE(drop) },\n { ALT: () => SUBRULE(add) },\n { ALT: () => SUBRULE(move) },\n { ALT: () => SUBRULE(copy) },\n { ALT: () => SUBRULE(create) },\n { ALT: () => SUBRULE(insertData) },\n { ALT: () => SUBRULE(deleteData) },\n { ALT: () => SUBRULE(deleteWhere) },\n { ALT: () => SUBRULE(modify) },\n ]),\n gImpl: ({ SUBRULE }) => (ast) => {\n switch (ast.subType) {\n case ('load'):\n SUBRULE(load, ast);\n break;\n case ('clear'):\n SUBRULE(clear, ast);\n break;\n case ('drop'):\n SUBRULE(drop, ast);\n break;\n case ('add'):\n SUBRULE(add, ast);\n break;\n case ('move'):\n SUBRULE(move, ast);\n break;\n case ('copy'):\n SUBRULE(copy, ast);\n break;\n case ('create'):\n SUBRULE(create, ast);\n break;\n case ('insertdata'):\n SUBRULE(insertData, ast);\n break;\n case ('deletedata'):\n SUBRULE(deleteData, ast);\n break;\n case ('deletewhere'):\n SUBRULE(deleteWhere, ast);\n break;\n case ('modify'):\n SUBRULE(modify, ast);\n break;\n }\n },\n};\n\n/**\n * [[31]](https://www.w3.org/TR/sparql11-query/#rLoad)\n */\nexport const load: SparqlRule<'load', UpdateOperationLoad> = <const> {\n name: 'load',\n impl: ({ ACTION, SUBRULE1, CONSUME, OPTION1, OPTION2 }) => (C) => {\n const loadToken = CONSUME(l.load);\n const silent = OPTION1(() => CONSUME(l.silent));\n const source = SUBRULE1(iri);\n const destination = OPTION2(() => {\n CONSUME(l.loadInto);\n return SUBRULE1(graphRef);\n });\n return ACTION(() => C.astFactory.updateOperationLoad(\n C.astFactory.sourceLocation(loadToken, source, destination),\n source,\n Boolean(silent),\n destination,\n ));\n },\n gImpl: ({ SUBRULE, PRINT_WORD }) => (ast, { astFactory: F }) => {\n F.printFilter(ast, () => {\n PRINT_WORD('LOAD');\n if (ast.silent) {\n PRINT_WORD('SILENT');\n }\n });\n SUBRULE(iri, ast.source);\n if (ast.destination) {\n F.printFilter(ast, () => PRINT_WORD('INTO'));\n SUBRULE(graphRefAll, ast.destination);\n }\n },\n};\n\nfunction clearOrDrop<T extends 'Clear' | 'Drop'>(operation: TokenType & { name: T }):\nSparqlRule<Uncapitalize<T>, UpdateOperationClear | UpdateOperationDrop> {\n return {\n name: unCapitalize(operation.name),\n impl: ({ ACTION, SUBRULE1, CONSUME, OPTION }) => (C) => {\n const opToken = CONSUME(operation);\n const silent = OPTION(() => CONSUME(l.silent));\n const destination = SUBRULE1(graphRefAll);\n return ACTION(() => C.astFactory.updateOperationClearDrop(\n unCapitalize(operation.name),\n Boolean(silent),\n destination,\n C.astFactory.sourceLocation(opToken, destination),\n ));\n },\n gImpl: ({ SUBRULE, PRINT_WORD }) => (ast, { astFactory: F }) => {\n F.printFilter(ast, () => {\n PRINT_WORD(operation.name.toUpperCase());\n if (ast.silent) {\n PRINT_WORD('SILENT');\n }\n });\n SUBRULE(graphRefAll, ast.destination);\n },\n };\n}\n\n/**\n * [[32]](https://www.w3.org/TR/sparql11-query/#rClear)\n */\nexport const clear = clearOrDrop(l.clear);\n\n/**\n * [[33]](https://www.w3.org/TR/sparql11-query/#rDrop)\n */\nexport const drop = clearOrDrop(l.drop);\n\n/**\n * [[34]](https://www.w3.org/TR/sparql11-query/#rCreate)\n */\nexport const create: SparqlRule<'create', UpdateOperationCreate> = <const> {\n name: 'create',\n impl: ({ ACTION, SUBRULE1, CONSUME, OPTION }) => (C) => {\n const createToken = CONSUME(l.create);\n const silent = OPTION(() => CONSUME(l.silent));\n const destination = SUBRULE1(graphRef);\n\n return ACTION(() => C.astFactory.updateOperationCreate(\n destination,\n Boolean(silent),\n C.astFactory.sourceLocation(createToken, destination),\n ));\n },\n gImpl: ({ SUBRULE, PRINT_WORD }) => (ast, { astFactory: F }) => {\n F.printFilter(ast, () => {\n PRINT_WORD('CREATE');\n if (ast.silent) {\n PRINT_WORD('SILENT');\n }\n });\n SUBRULE(graphRefAll, ast.destination);\n },\n};\n\nfunction copyMoveAddOperation<T extends 'Copy' | 'Move' | 'Add'>(operation: TokenType & { name: T }):\nSparqlRule<Uncapitalize<T>, UpdateOperationAdd | UpdateOperationMove | UpdateOperationCopy> {\n return {\n name: unCapitalize(operation.name),\n impl: ({ ACTION, CONSUME, SUBRULE1, SUBRULE2, OPTION }) => (C) => {\n const op = CONSUME(operation);\n const silent = OPTION(() => CONSUME(l.silent));\n const source = SUBRULE1(graphOrDefault);\n CONSUME(l.to);\n const destination = SUBRULE2(graphOrDefault);\n\n return ACTION(() => C.astFactory.updateOperationAddMoveCopy(\n unCapitalize(operation.name),\n source,\n destination,\n Boolean(silent),\n C.astFactory.sourceLocation(op, destination),\n ));\n },\n gImpl: ({ SUBRULE, PRINT_WORD }) => (ast, { astFactory: F }) => {\n F.printFilter(ast, () => {\n PRINT_WORD(operation.name.toUpperCase());\n if (ast.silent) {\n PRINT_WORD('SILENT');\n }\n });\n SUBRULE(graphRefAll, ast.source);\n F.printFilter(ast, () => PRINT_WORD('TO'));\n SUBRULE(graphRefAll, ast.destination);\n },\n };\n}\n\n/**\n * [[35]](https://www.w3.org/TR/sparql11-query/#rAdd)\n */\nexport const add = copyMoveAddOperation(l.add);\n\n/**\n * [[36]](https://www.w3.org/TR/sparql11-query/#rMove)\n */\nexport const move = copyMoveAddOperation(l.move);\n\n/**\n * [[37]](https://www.w3.org/TR/sparql11-query/#rCopy)\n */\nexport const copy = copyMoveAddOperation(l.copy);\n\n/**\n * [[48]](https://www.w3.org/TR/sparql11-query/#rQuadPattern)\n */\nexport const quadPattern: SparqlGrammarRule<'quadPattern', Wrap<Quads[]>> = <const> {\n name: 'quadPattern',\n impl: ({ ACTION, SUBRULE1, CONSUME }) => (C) => {\n const open = CONSUME(l.symbols.LCurly);\n const val = SUBRULE1(quads);\n const close = CONSUME(l.symbols.RCurly);\n return ACTION(() => C.astFactory.wrap(val.val, C.astFactory.sourceLocation(open, close)));\n },\n};\n\n/**\n * [[49]](https://www.w3.org/TR/sparql11-query/#rQuadData)\n */\nexport const quadData: SparqlGrammarRule<'quadData', Wrap<Quads[]>> = <const> {\n name: 'quadData',\n impl: ({ ACTION, SUBRULE1, CONSUME }) => (C) => {\n const open = CONSUME(l.symbols.LCurly);\n\n const couldParseVars = ACTION(() => C.parseMode.delete('canParseVars'));\n const val = SUBRULE1(quads);\n ACTION(() => couldParseVars && C.parseMode.add('canParseVars'));\n\n const close = CONSUME(l.symbols.RCurly);\n return ACTION(() => C.astFactory.wrap(val.val, C.astFactory.sourceLocation(open, close)));\n },\n};\n\nfunction insertDeleteDelWhere<T extends string>(\n name: T,\n subType: 'insertdata' | 'deletedata' | 'deletewhere',\n cons1: TokenType,\n dataRule: SparqlGrammarRule<any, Wrap<Quads[]>>,\n): SparqlRule<T, UpdateOperationInsertData | UpdateOperationDeleteData | UpdateOperationDeleteWhere> {\n return {\n name,\n impl: ({ ACTION, SUBRULE1, CONSUME }) => (C) => {\n const insDelToken = CONSUME(cons1);\n\n let couldCreateBlankNodes = true;\n if (name !== 'insertData') {\n couldCreateBlankNodes = ACTION(() => C.parseMode.delete('canCreateBlankNodes'));\n }\n const data = SUBRULE1(dataRule);\n if (name !== 'insertData') {\n ACTION(() => couldCreateBlankNodes && C.parseMode.add('canCreateBlankNodes'));\n }\n\n return ACTION(() =>\n C.astFactory.updateOperationInsDelDataWhere(subType, data.val, C.astFactory.sourceLocation(insDelToken, data)));\n },\n gImpl: ({ SUBRULE, PRINT_WORD, PRINT_ON_EMPTY }) => (ast, C) => {\n const { astFactory: F, indentInc } = C;\n F.printFilter(ast, () => {\n C[traqulaIndentation] += indentInc;\n if (subType === 'insertdata') {\n PRINT_WORD('INSERT DATA');\n } else if (subType === 'deletedata') {\n PRINT_WORD('DELETE DATA');\n } else if (subType === 'deletewhere') {\n PRINT_WORD('DELETE WHERE');\n }\n PRINT_WORD('{\\n');\n });\n SUBRULE(quads, F.wrap(ast.data, ast.loc));\n F.printFilter(ast, () => {\n C[traqulaIndentation] -= indentInc;\n PRINT_ON_EMPTY('}\\n');\n });\n },\n };\n}\n\n/**\n * [[38]](https://www.w3.org/TR/sparql11-query/#rInsertData)\n */\nexport const insertData = insertDeleteDelWhere('insertData', 'insertdata', l.insertDataClause, quadData);\n\n/**\n * [[39]](https://www.w3.org/TR/sparql11-query/#rDeleteData)\n */\nexport const deleteData = insertDeleteDelWhere('deleteData', 'deletedata', l.deleteDataClause, quadData);\n\n/**\n * [[40]](https://www.w3.org/TR/sparql11-query/#rDeleteWhere)\n */\nexport const deleteWhere = insertDeleteDelWhere('deleteWhere', 'deletewhere', l.deleteWhereClause, quadPattern);\n\n/**\n * [[41]](https://www.w3.org/TR/sparql11-query/#rModify)\n */\nexport const modify: SparqlRule<'modify', UpdateOperationModify> = <const> {\n name: 'modify',\n impl: ({ ACTION, CONSUME, SUBRULE1, SUBRULE2, OPTION1, OPTION2, OR }) => (C) => {\n const graph = OPTION1(() => {\n const withToken = CONSUME(l.modifyWith);\n const graph = SUBRULE1(iri);\n return { withToken, graph };\n });\n const { insert, del } = OR<{\n del: RuleDefReturn<typeof deleteClause> | undefined;\n insert: RuleDefReturn<typeof insertClause> | undefined;\n }>([\n { ALT: () => {\n const del = SUBRULE1(deleteClause);\n const insert = OPTION2(() => SUBRULE1(insertClause));\n return { del, insert };\n } },\n { ALT: () => {\n const insert = SUBRULE2(insertClause);\n return { insert, del: undefined };\n } },\n ]);\n const using = SUBRULE1(usingClauseStar);\n CONSUME(l.where);\n const where = SUBRULE1(groupGraphPattern);\n\n return ACTION(() => C.astFactory.updateOperationModify(\n C.astFactory.sourceLocation(graph?.withToken, del, insert, where),\n insert?.val ?? [],\n del?.val ?? [],\n where,\n using,\n graph?.graph,\n ));\n },\n gImpl: ({ SUBRULE, PRINT_WORD, PRINT_ON_EMPTY }) => (ast, C) => {\n const { astFactory: F, indentInc } = C;\n if (ast.graph) {\n F.printFilter(ast, () => PRINT_WORD('WITH'));\n SUBRULE(iri, ast.graph);\n }\n if (ast.delete.length > 0) {\n F.printFilter(ast, () => {\n C[traqulaIndentation] += indentInc;\n PRINT_WORD('DELETE', '{\\n');\n });\n SUBRULE(quads, F.wrap(ast.delete, ast.loc));\n F.printFilter(ast, () => {\n C[traqulaIndentation] -= indentInc;\n PRINT_ON_EMPTY('}\\n');\n });\n }\n if (ast.insert.length > 0) {\n F.printFilter(ast, () => {\n C[traqulaIndentation] += indentInc;\n PRINT_WORD('INSERT', '{\\n');\n });\n SUBRULE(quads, F.wrap(ast.insert, ast.loc));\n F.printFilter(ast, () => {\n C[traqulaIndentation] -= indentInc;\n PRINT_ON_EMPTY('}\\n');\n });\n }\n SUBRULE(usingClauseStar, ast.from);\n F.printFilter(ast, () => PRINT_WORD('WHERE'));\n SUBRULE(groupGraphPattern, ast.where);\n },\n};\n\n/**\n * [[42]](https://www.w3.org/TR/sparql11-query/#rDeleteClause)\n */\nexport const deleteClause: SparqlGrammarRule<'deleteClause', Wrap<Quads[]>> = <const> {\n name: 'deleteClause',\n impl: ({ ACTION, SUBRULE, CONSUME }) => (C) => {\n const delToken = CONSUME(l.deleteClause);\n const couldCreateBlankNodes = ACTION(() => C.parseMode.delete('canCreateBlankNodes'));\n const del = SUBRULE(quadPattern);\n ACTION(() => couldCreateBlankNodes && C.parseMode.add('canCreateBlankNodes'));\n\n return ACTION(() => C.astFactory.wrap(del.val, C.astFactory.sourceLocation(delToken, del)));\n },\n};\n\n/**\n * [[43]](https://www.w3.org/TR/sparql11-query/#rInsertClause)\n */\nexport const insertClause: SparqlGrammarRule<'insertClause', Wrap<Quads[]>> = <const> {\n name: 'insertClause',\n impl: ({ ACTION, SUBRULE, CONSUME }) => (C) => {\n const insertToken = CONSUME(l.insertClause);\n const insert = SUBRULE(quadPattern);\n\n return ACTION(() => C.astFactory.wrap(insert.val, C.astFactory.sourceLocation(insertToken, insert)));\n },\n};\n\n/**\n * [[45]](https://www.w3.org/TR/sparql11-query/#rGraphOrDefault)\n */\nexport const graphOrDefault: SparqlGrammarRule<'graphOrDefault', GraphRefDefault | GraphRefSpecific> = <const> {\n name: 'graphOrDefault',\n impl: ({ ACTION, SUBRULE1, CONSUME, OPTION, OR }) => C => OR<GraphRefDefault | GraphRefSpecific>([\n { ALT: () => {\n const def = CONSUME(l.graph.default_);\n return ACTION(() => C.astFactory.graphRefDefault(C.astFactory.sourceLocation(def)));\n } },\n { ALT: () => {\n const graph = OPTION(() => CONSUME(l.graph.graph));\n const name = SUBRULE1(iri);\n return ACTION(() =>\n C.astFactory.graphRefSpecific(name, C.astFactory.sourceLocation(graph, name)));\n } },\n ]),\n};\n\n/**\n * [[46]](https://www.w3.org/TR/sparql11-query/#rGraphRef)\n */\nexport const graphRef: SparqlRule<'graphRef', GraphRefSpecific> = <const> {\n name: 'graphRef',\n impl: ({ ACTION, SUBRULE, CONSUME }) => (C) => {\n const graph = CONSUME(l.graph.graph);\n const val = SUBRULE(iri);\n return ACTION(() => C.astFactory.graphRefSpecific(val, C.astFactory.sourceLocation(graph, val)));\n },\n gImpl: ({ SUBRULE, PRINT_WORD }) => (ast, { astFactory: F }) => {\n F.printFilter(ast, () => PRINT_WORD('GRAPH'));\n SUBRULE(iri, ast.graph);\n },\n};\n\n/**\n * [[47]](https://www.w3.org/TR/sparql11-query/#rGraphRefAll)\n */\nexport const graphRefAll: SparqlRule<'graphRefAll', GraphRef> = <const> {\n name: 'graphRefAll',\n impl: ({ ACTION, SUBRULE, CONSUME, OR }) => C => OR<GraphRef>([\n { ALT: () => SUBRULE(graphRef) },\n { ALT: () => {\n const def = CONSUME(l.graph.default_);\n return ACTION(() => C.astFactory.graphRefDefault(C.astFactory.sourceLocation(def)));\n } },\n { ALT: () => {\n const named = CONSUME(l.graph.named);\n return ACTION(() => C.astFactory.graphRefNamed(C.astFactory.sourceLocation(named)));\n } },\n { ALT: () => {\n const graphAll = CONSUME(l.graph.graphAll);\n return ACTION(() => C.astFactory.graphRefAll(C.astFactory.sourceLocation(graphAll)));\n } },\n ]),\n gImpl: ({ SUBRULE, PRINT_WORD }) => (ast, { astFactory: F }) => {\n if (F.isGraphRefSpecific(ast)) {\n SUBRULE(graphRef, ast);\n } else if (F.isGraphRefDefault(ast)) {\n F.printFilter(ast, () => PRINT_WORD('DEFAULT'));\n } else if (F.isGraphRefNamed(ast)) {\n F.printFilter(ast, () => PRINT_WORD('NAMED'));\n } else if (F.isGraphRefAll(ast)) {\n F.printFilter(ast, () => PRINT_WORD('ALL'));\n }\n },\n};\n\n/**\n * [[50]](https://www.w3.org/TR/sparql11-query/#rQuads)\n */\nexport const quads: SparqlRule<'quads', Wrap<Quads[]>> = <const> {\n name: 'quads',\n impl: ({ ACTION, SUBRULE, CONSUME, MANY, SUBRULE1, SUBRULE2, OPTION1, OPTION2, OPTION3 }) => (C) => {\n const quads: Quads[] = [];\n let last: IToken | Localized | undefined;\n\n OPTION1(() => {\n const triples = SUBRULE1(triplesTemplate);\n last = triples;\n ACTION(() => quads.push(triples));\n });\n\n MANY(() => {\n const notTriples = SUBRULE(quadsNotTriples);\n last = notTriples;\n quads.push(notTriples);\n OPTION2(() => {\n const dotToken = CONSUME(l.symbols.dot);\n last = dotToken;\n return dotToken;\n });\n OPTION3(() => {\n const triples = SUBRULE2(triplesTemplate);\n last = triples;\n ACTION(() => quads.push(triples));\n });\n });\n\n return ACTION(() => C.astFactory.wrap(quads, C.astFactory.sourceLocation(quads.at(0), last)));\n },\n gImpl: ({ SUBRULE }) => (ast, { astFactory: F }) => {\n for (const quad of ast.val) {\n if (F.isPattern(quad)) {\n SUBRULE(triplesBlock, quad);\n } else {\n SUBRULE(quadsNotTriples, quad);\n }\n }\n },\n};\n\n/**\n * [[51]](https://www.w3.org/TR/sparql11-query/#rQuadsNotTriples)\n */\nexport const quadsNotTriples: SparqlRule<'quadsNotTriples', GraphQuads> = <const> {\n name: 'quadsNotTriples',\n impl: ({ ACTION, SUBRULE1, CONSUME, OPTION }) => (C) => {\n const graph = CONSUME(l.graph.graph);\n const name = SUBRULE1(varOrIri);\n CONSUME(l.symbols.LCurly);\n const triples = OPTION(() => SUBRULE1(triplesTemplate));\n const close = CONSUME(l.symbols.RCurly);\n\n return ACTION(() => C.astFactory.graphQuads(\n name,\n triples ?? C.astFactory.patternBgp([], C.astFactory.sourceLocationNoMaterialize()),\n C.astFactory.sourceLocation(graph, close),\n ));\n },\n gImpl: ({ SUBRULE, PRINT_WORD, PRINT_ON_EMPTY }) => (ast, C) => {\n const { astFactory: F, indentInc } = C;\n F.printFilter(ast, () => PRINT_WORD('GRAPH'));\n SUBRULE(varOrTerm, ast.graph);\n F.printFilter(ast, () => {\n C[traqulaIndentation] += indentInc;\n PRINT_WORD('{\\n');\n });\n SUBRULE(triplesBlock, ast.triples);\n F.printFilter(ast, () => {\n C[traqulaIndentation] -= indentInc;\n PRINT_ON_EMPTY('}\\n');\n });\n },\n};\n"]}
|
package/lib/index.cjs
CHANGED
|
@@ -284,8 +284,9 @@ __export(lexer_exports, {
|
|
|
284
284
|
construct: () => construct,
|
|
285
285
|
copy: () => copy,
|
|
286
286
|
create: () => create,
|
|
287
|
-
dataClause: () => dataClause,
|
|
288
287
|
deleteClause: () => deleteClause,
|
|
288
|
+
deleteDataClause: () => deleteDataClause,
|
|
289
|
+
deleteWhereClause: () => deleteWhereClause,
|
|
289
290
|
describe: () => describe,
|
|
290
291
|
distinct: () => distinct,
|
|
291
292
|
drop: () => drop2,
|
|
@@ -297,6 +298,7 @@ __export(lexer_exports, {
|
|
|
297
298
|
having: () => having,
|
|
298
299
|
in_: () => in_,
|
|
299
300
|
insertClause: () => insertClause,
|
|
301
|
+
insertDataClause: () => insertDataClause,
|
|
300
302
|
limit: () => limit,
|
|
301
303
|
load: () => load,
|
|
302
304
|
loadInto: () => loadInto,
|
|
@@ -10267,6 +10269,44 @@ var graph = createToken2({ name: "Graph", pattern: /graph/i, label: "GRAPH" });
|
|
|
10267
10269
|
var graphAll = createToken2({ name: "GraphAll", pattern: /all/i, label: "ALL" });
|
|
10268
10270
|
var allGraphTokens = LexerBuilder.create().add(named, default_, graph, graphAll);
|
|
10269
10271
|
|
|
10272
|
+
// lib/lexer/lexerPatterns.js
|
|
10273
|
+
var pnCharsBasePattern = /[A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF]/;
|
|
10274
|
+
var pnCharsUPattern = new RegExp(`${pnCharsBasePattern.source}|_`);
|
|
10275
|
+
var varNamePattern = new RegExp(`((${pnCharsUPattern.source})|[0-9])((${pnCharsUPattern.source})|[0-9]|[\xB7\u0300-\u036F\u203F-\u2040])*`);
|
|
10276
|
+
var iriRefPattern = /<([^\u0000-\u0020"<>\\^`{|}])*>/;
|
|
10277
|
+
var pnCharsPattern = new RegExp(`(${pnCharsUPattern.source})|[\\-0-9\xB7\u0300-\u036F\u203F-\u2040]`);
|
|
10278
|
+
var pnPrefixPattern = new RegExp(`(${pnCharsBasePattern.source})(((${pnCharsPattern.source})|\\.)*(${pnCharsPattern.source}))?`);
|
|
10279
|
+
var pNameNsPattern = new RegExp(`(${pnPrefixPattern.source})?:`);
|
|
10280
|
+
var percentPattern = /%[\dA-Fa-f]{2}/;
|
|
10281
|
+
var pnLocalEscPattern = /\\[!#$%&'()*+,./;=?@\\_~-]/;
|
|
10282
|
+
var plxPattern = new RegExp(`(${percentPattern.source})|(${pnLocalEscPattern.source})`);
|
|
10283
|
+
var pnLocalPattern = new RegExp(`((${pnCharsUPattern.source})|:|[0-9]|(${plxPattern.source}))(((${pnCharsPattern.source})|\\.|:|(${plxPattern.source}))*((${pnCharsPattern.source})|:|(${plxPattern.source})))?`);
|
|
10284
|
+
var pNameLnPattern = new RegExp(`(${pNameNsPattern.source})(${pnLocalPattern.source})`);
|
|
10285
|
+
var blankNodeLabelPattern = new RegExp(`_:((${pnCharsUPattern.source})|[0-9])(((${pnCharsPattern.source})|\\.)*(${pnCharsPattern.source}))?`);
|
|
10286
|
+
var var1Pattern = new RegExp(`\\?(${varNamePattern.source})`);
|
|
10287
|
+
var var2Pattern = new RegExp(`\\$(${varNamePattern.source})`);
|
|
10288
|
+
var langTagPattern = /@[A-Za-z]+(-[\dA-Za-z]+)*/;
|
|
10289
|
+
var integerPattern = /\d+/;
|
|
10290
|
+
var decimalPattern2 = /\d+\.\d+/;
|
|
10291
|
+
var exponentPattern = /[Ee][+-]?\d+/;
|
|
10292
|
+
var doublePattern = new RegExp(`([0-9]+\\.[0-9]*(${exponentPattern.source}))|(\\.[0-9]+(${exponentPattern.source}))|([0-9]+(${exponentPattern.source}))`);
|
|
10293
|
+
var interferePositivePattern = new RegExp(`\\+${integerPattern.source}`);
|
|
10294
|
+
var decimalPositivePattern = new RegExp(`\\+${decimalPattern2.source}`);
|
|
10295
|
+
var doublePositivePattern = new RegExp(`\\+${doublePattern.source}`);
|
|
10296
|
+
var integerNegativePattern = new RegExp(`-${integerPattern.source}`);
|
|
10297
|
+
var decimalNegativePattern = new RegExp(`-${decimalPattern2.source}`);
|
|
10298
|
+
var doubleNegativePattern = new RegExp(`-${doublePattern.source}`);
|
|
10299
|
+
var echarPattern = /\\[\\"'bfnrt]/u;
|
|
10300
|
+
var stringLiteral1Pattern = new RegExp(`'(([^\\u0027\\u005C\\u000A\r])|(${echarPattern.source}))*'`);
|
|
10301
|
+
var stringLiteral2Pattern = new RegExp(`"(([^\\u0022\\u005C\\u000A\\u000D])|(${echarPattern.source}))*"`);
|
|
10302
|
+
var stringLiteralLong1Pattern = new RegExp(`'''(('|(''))?([^'\\\\]|(${echarPattern.source})))*'''`);
|
|
10303
|
+
var stringLiteralLong2Pattern = new RegExp(`"""(("|(""))?([^"\\\\]|(${echarPattern.source})))*"""`);
|
|
10304
|
+
var wsPattern = /[\u0009\u000A\u000D ]/;
|
|
10305
|
+
var nilPattern = new RegExp(`\\((${wsPattern.source})*\\)`);
|
|
10306
|
+
var anonPattern = new RegExp(`\\[(${wsPattern.source})*\\]`);
|
|
10307
|
+
var commentPattern = /#[^\n]*\n/;
|
|
10308
|
+
var atLeastOneBlankPattern = new RegExp(`((${wsPattern.source}+)|(${commentPattern.source}))+`);
|
|
10309
|
+
|
|
10270
10310
|
// lib/lexer/symbols.js
|
|
10271
10311
|
var symbols_exports = {};
|
|
10272
10312
|
__export(symbols_exports, {
|
|
@@ -10355,40 +10395,6 @@ __export(terminals_exports, {
|
|
|
10355
10395
|
var2: () => var2,
|
|
10356
10396
|
ws: () => ws
|
|
10357
10397
|
});
|
|
10358
|
-
var pnCharsBasePattern = /[A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF]/;
|
|
10359
|
-
var pnCharsUPattern = new RegExp(`${pnCharsBasePattern.source}|_`);
|
|
10360
|
-
var varNamePattern = new RegExp(`((${pnCharsUPattern.source})|[0-9])((${pnCharsUPattern.source})|[0-9]|[\xB7\u0300-\u036F\u203F-\u2040])*`);
|
|
10361
|
-
var iriRefPattern = /<([^\u0000-\u0020"<>\\^`{|}])*>/;
|
|
10362
|
-
var pnCharsPattern = new RegExp(`(${pnCharsUPattern.source})|[\\-0-9\xB7\u0300-\u036F\u203F-\u2040]`);
|
|
10363
|
-
var pnPrefixPattern = new RegExp(`(${pnCharsBasePattern.source})(((${pnCharsPattern.source})|\\.)*(${pnCharsPattern.source}))?`);
|
|
10364
|
-
var pNameNsPattern = new RegExp(`(${pnPrefixPattern.source})?:`);
|
|
10365
|
-
var percentPattern = /%[\dA-Fa-f]{2}/;
|
|
10366
|
-
var pnLocalEscPattern = /\\[!#$%&'()*+,./;=?@\\_~-]/;
|
|
10367
|
-
var plxPattern = new RegExp(`(${percentPattern.source})|(${pnLocalEscPattern.source})`);
|
|
10368
|
-
var pnLocalPattern = new RegExp(`((${pnCharsUPattern.source})|:|[0-9]|(${plxPattern.source}))(((${pnCharsPattern.source})|\\.|:|(${plxPattern.source}))*((${pnCharsPattern.source})|:|(${plxPattern.source})))?`);
|
|
10369
|
-
var pNameLnPattern = new RegExp(`(${pNameNsPattern.source})(${pnLocalPattern.source})`);
|
|
10370
|
-
var blankNodeLabelPattern = new RegExp(`_:((${pnCharsUPattern.source})|[0-9])(((${pnCharsPattern.source})|\\.)*(${pnCharsPattern.source}))?`);
|
|
10371
|
-
var var1Pattern = new RegExp(`\\?(${varNamePattern.source})`);
|
|
10372
|
-
var var2Pattern = new RegExp(`\\$(${varNamePattern.source})`);
|
|
10373
|
-
var langTagPattern = /@[A-Za-z]+(-[\dA-Za-z]+)*/;
|
|
10374
|
-
var integerPattern = /\d+/;
|
|
10375
|
-
var decimalPattern2 = /\d+\.\d+/;
|
|
10376
|
-
var exponentPattern = /[Ee][+-]?\d+/;
|
|
10377
|
-
var doublePattern = new RegExp(`([0-9]+\\.[0-9]*(${exponentPattern.source}))|(\\.[0-9]+(${exponentPattern.source}))|([0-9]+(${exponentPattern.source}))`);
|
|
10378
|
-
var interferePositivePattern = new RegExp(`\\+${integerPattern.source}`);
|
|
10379
|
-
var decimalPositivePattern = new RegExp(`\\+${decimalPattern2.source}`);
|
|
10380
|
-
var doublePositivePattern = new RegExp(`\\+${doublePattern.source}`);
|
|
10381
|
-
var integerNegativePattern = new RegExp(`-${integerPattern.source}`);
|
|
10382
|
-
var decimalNegativePattern = new RegExp(`-${decimalPattern2.source}`);
|
|
10383
|
-
var doubleNegativePattern = new RegExp(`-${doublePattern.source}`);
|
|
10384
|
-
var echarPattern = /\\[\\"'bfnrt]/u;
|
|
10385
|
-
var stringLiteral1Pattern = new RegExp(`'(([^\\u0027\\u005C\\u000A\r])|(${echarPattern.source}))*'`);
|
|
10386
|
-
var stringLiteral2Pattern = new RegExp(`"(([^\\u0022\\u005C\\u000A\\u000D])|(${echarPattern.source}))*"`);
|
|
10387
|
-
var stringLiteralLong1Pattern = new RegExp(`'''(('|(''))?([^'\\\\]|(${echarPattern.source})))*'''`);
|
|
10388
|
-
var stringLiteralLong2Pattern = new RegExp(`"""(("|(""))?([^"\\\\]|(${echarPattern.source})))*"""`);
|
|
10389
|
-
var wsPattern = /[\u0009\u000A\u000D ]/;
|
|
10390
|
-
var nilPattern = new RegExp(`\\((${wsPattern.source})*\\)`);
|
|
10391
|
-
var anonPattern = new RegExp(`\\[(${wsPattern.source})*\\]`);
|
|
10392
10398
|
var iriRef = createToken2({ name: "IriRef", pattern: iriRefPattern });
|
|
10393
10399
|
var pNameLn = createToken2({ name: "PNameLn", pattern: pNameLnPattern });
|
|
10394
10400
|
var pNameNs = createToken2({ name: "PNameNs", pattern: pNameNsPattern, longer_alt: [pNameLn] });
|
|
@@ -10410,7 +10416,7 @@ var stringLiteral2 = createToken2({ name: "StringLiteral2", pattern: stringLiter
|
|
|
10410
10416
|
var stringLiteralLong1 = createToken2({ name: "StringLiteralLong1", pattern: stringLiteralLong1Pattern });
|
|
10411
10417
|
var stringLiteralLong2 = createToken2({ name: "StringLiteralLong2", pattern: stringLiteralLong2Pattern });
|
|
10412
10418
|
var ws = createToken2({ name: "Ws", pattern: wsPattern, group: Lexer.SKIPPED });
|
|
10413
|
-
var comment = createToken2({ name: "Comment", pattern:
|
|
10419
|
+
var comment = createToken2({ name: "Comment", pattern: commentPattern, group: Lexer.SKIPPED });
|
|
10414
10420
|
var nil = createToken2({ name: "Nil", pattern: nilPattern });
|
|
10415
10421
|
var anon = createToken2({ name: "Anon", pattern: anonPattern });
|
|
10416
10422
|
var allTerminals = LexerBuilder.create().add(iriRef, pNameNs, pNameLn, blankNodeLabel, var1, var2, langTag, double, decimal, integer, integerPositive, decimalPositive, doublePositive, integerNegative, decimalNegative, doubleNegative, stringLiteralLong1, stringLiteralLong2, stringLiteral1, stringLiteral2, ws, comment, nil, anon);
|
|
@@ -10447,9 +10453,23 @@ var to = createToken2({ name: "To", pattern: /to/i, label: "TO" });
|
|
|
10447
10453
|
var move = createToken2({ name: "Move", pattern: /move/i, label: "MOVE" });
|
|
10448
10454
|
var copy = createToken2({ name: "Copy", pattern: /copy/i, label: "COPY" });
|
|
10449
10455
|
var modifyWith = createToken2({ name: "ModifyWith", pattern: /with/i, label: "WITH" });
|
|
10456
|
+
var deleteDataClause = createToken2({
|
|
10457
|
+
name: "DeleteDataClause",
|
|
10458
|
+
pattern: new RegExp(`delete(${atLeastOneBlankPattern.source})data`, "i"),
|
|
10459
|
+
label: "DELETE DATA"
|
|
10460
|
+
});
|
|
10461
|
+
var deleteWhereClause = createToken2({
|
|
10462
|
+
name: "DeleteWhereClause",
|
|
10463
|
+
pattern: new RegExp(`delete(${atLeastOneBlankPattern.source})where`, "i"),
|
|
10464
|
+
label: "DELETE WHERE"
|
|
10465
|
+
});
|
|
10450
10466
|
var deleteClause = createToken2({ name: "DeleteClause", pattern: /delete/i, label: "DELETE" });
|
|
10451
|
-
var
|
|
10452
|
-
|
|
10467
|
+
var insertDataClause = createToken2({
|
|
10468
|
+
name: "InsertDataClause",
|
|
10469
|
+
pattern: new RegExp(`insert(${atLeastOneBlankPattern.source})data`, "i"),
|
|
10470
|
+
label: "INSERT DATA"
|
|
10471
|
+
});
|
|
10472
|
+
var insertClause = createToken2({ name: "InsertClause", pattern: /insert/i, label: "insert" });
|
|
10453
10473
|
var usingClause = createToken2({ name: "UsingClause", pattern: /using/i, label: "USING" });
|
|
10454
10474
|
var optional = createToken2({ name: "Optional", pattern: /optional/i, label: "OPTIONAL" });
|
|
10455
10475
|
var service = createToken2({ name: "Service", pattern: /service/i, label: "SERVICE" });
|
|
@@ -10464,8 +10484,8 @@ var false_ = createToken2({ name: "False", pattern: /false/i, label: "false" });
|
|
|
10464
10484
|
var in_ = createToken2({ name: "In", pattern: /in/i, label: "IN" });
|
|
10465
10485
|
var notIn = createToken2({ name: "NotIn", pattern: /not[\u0020\u0009\u000D\u000A]+in/i, label: "NOT IN" });
|
|
10466
10486
|
var separator = createToken2({ name: "Separator", pattern: /separator/i, label: "SEPARATOR" });
|
|
10467
|
-
var allBaseTokens = LexerBuilder.create().add(baseDecl, prefixDecl, select, distinct, reduced, construct, describe, ask, from, where, having, groupByGroup, by, order, orderAsc, orderDesc, limit, offset, values2, load, silent, loadInto, clear, drop2, create, add, to, move, copy, modifyWith, deleteClause,
|
|
10468
|
-
var sparql11LexerBuilder = LexerBuilder.create(allTerminals).merge(allBaseTokens).merge(allBuiltInCalls).merge(allGraphTokens).merge(allSymbols).
|
|
10487
|
+
var allBaseTokens = LexerBuilder.create().add(baseDecl, prefixDecl, select, distinct, reduced, construct, describe, ask, from, where, having, groupByGroup, by, order, orderAsc, orderDesc, limit, offset, values2, load, silent, loadInto, clear, drop2, create, add, to, move, copy, modifyWith, deleteWhereClause, deleteDataClause, deleteClause, insertDataClause, insertClause, usingClause, optional, service, bind, undef, minus, union, filter2, as, a, true_, false_, in_, notIn, separator);
|
|
10488
|
+
var sparql11LexerBuilder = LexerBuilder.create(allTerminals).merge(allBaseTokens).merge(allBuiltInCalls).merge(allGraphTokens).merge(allSymbols).moveAfter(avg, a).moveBefore(a, graphAll).moveAfter(groupConcat, groupByGroup);
|
|
10469
10489
|
|
|
10470
10490
|
// lib/factoryMixins/ContextFactory.js
|
|
10471
10491
|
var nodeType = "contextDef";
|
|
@@ -14092,12 +14112,11 @@ var quadData = {
|
|
|
14092
14112
|
return ACTION(() => C.astFactory.wrap(val.val, C.astFactory.sourceLocation(open, close)));
|
|
14093
14113
|
}
|
|
14094
14114
|
};
|
|
14095
|
-
function insertDeleteDelWhere(name, subType, cons1,
|
|
14115
|
+
function insertDeleteDelWhere(name, subType, cons1, dataRule) {
|
|
14096
14116
|
return {
|
|
14097
14117
|
name,
|
|
14098
14118
|
impl: ({ ACTION, SUBRULE1, CONSUME }) => (C) => {
|
|
14099
14119
|
const insDelToken = CONSUME(cons1);
|
|
14100
|
-
CONSUME(cons2);
|
|
14101
14120
|
let couldCreateBlankNodes = true;
|
|
14102
14121
|
if (name !== "insertData") {
|
|
14103
14122
|
couldCreateBlankNodes = ACTION(() => C.parseMode.delete("canCreateBlankNodes"));
|
|
@@ -14129,9 +14148,9 @@ function insertDeleteDelWhere(name, subType, cons1, cons2, dataRule) {
|
|
|
14129
14148
|
}
|
|
14130
14149
|
};
|
|
14131
14150
|
}
|
|
14132
|
-
var insertData = insertDeleteDelWhere("insertData", "insertdata",
|
|
14133
|
-
var deleteData = insertDeleteDelWhere("deleteData", "deletedata",
|
|
14134
|
-
var deleteWhere = insertDeleteDelWhere("deleteWhere", "deletewhere",
|
|
14151
|
+
var insertData = insertDeleteDelWhere("insertData", "insertdata", insertDataClause, quadData);
|
|
14152
|
+
var deleteData = insertDeleteDelWhere("deleteData", "deletedata", deleteDataClause, quadData);
|
|
14153
|
+
var deleteWhere = insertDeleteDelWhere("deleteWhere", "deletewhere", deleteWhereClause, quadPattern);
|
|
14135
14154
|
var modify = {
|
|
14136
14155
|
name: "modify",
|
|
14137
14156
|
impl: ({ ACTION, CONSUME, SUBRULE1, SUBRULE2, OPTION1, OPTION2, OR }) => (C) => {
|
|
@@ -123,4 +123,4 @@ export declare const max: import("@traqula/core").NamedToken<"BuiltInMax">;
|
|
|
123
123
|
export declare const avg: import("@traqula/core").NamedToken<"BuiltInAvg">;
|
|
124
124
|
export declare const sample: import("@traqula/core").NamedToken<"BuiltInSample">;
|
|
125
125
|
export declare const groupConcat: import("@traqula/core").NamedToken<"BuiltInGroup_concat">;
|
|
126
|
-
export declare const allBuiltInCalls: LexerBuilder<"
|
|
126
|
+
export declare const allBuiltInCalls: LexerBuilder<"BuiltInLangmatches" | "BuiltInDatatype" | "BuiltInLang" | "BuiltInBound" | "BuiltInIri" | "BuiltInUri" | "BuiltInBnode" | "BuiltInRand" | "BuiltInAbs" | "BuiltInCeil" | "BuiltInFloor" | "BuiltInRound" | "BuiltInConcat" | "BuiltInStrlen" | "BuiltInUcase" | "BuiltInLcase" | "BuiltInEncode_for_uri" | "BuiltInContains" | "BuiltInStrstarts" | "BuiltInStrends" | "BuiltInStrbefore" | "BuiltInStrafter" | "BuiltInYear" | "BuiltInMonth" | "BuiltInDay" | "BuiltInHours" | "BuiltInMinutes" | "BuiltInSeconds" | "BuiltInTimezone" | "BuiltInTz" | "BuiltInNow" | "BuiltInUuid" | "BuiltInStruuid" | "BuiltInMd5" | "BuiltInSha1" | "BuiltInSha256" | "BuiltInSha384" | "BuiltInSha512" | "BuiltInCoalesce" | "BuiltInIf" | "BuiltInStrlang" | "BuiltInStrdt" | "BuiltInSameterm" | "BuiltInIsiri" | "BuiltInIsuri" | "BuiltInIsblank" | "BuiltInIsliteral" | "BuiltInIsnumeric" | "BuiltInRegex" | "BuiltInSubstr" | "BuiltInReplace" | "BuiltInExists" | "BuiltInNotexists" | "BuiltInCount" | "BuiltInSum" | "BuiltInMin" | "BuiltInMax" | "BuiltInAvg" | "BuiltInSample" | "BuiltInGroup_concat" | "BuiltInStr">;
|
package/lib/lexer/graph.d.ts
CHANGED
|
@@ -3,4 +3,4 @@ export declare const named: import("@traqula/core").NamedToken<"NamedGraph">;
|
|
|
3
3
|
export declare const default_: import("@traqula/core").NamedToken<"DefaultGraph">;
|
|
4
4
|
export declare const graph: import("@traqula/core").NamedToken<"Graph">;
|
|
5
5
|
export declare const graphAll: import("@traqula/core").NamedToken<"GraphAll">;
|
|
6
|
-
export declare const allGraphTokens: LexerBuilder<"
|
|
6
|
+
export declare const allGraphTokens: LexerBuilder<"Graph" | "NamedGraph" | "DefaultGraph" | "GraphAll">;
|
package/lib/lexer/lexer.d.ts
CHANGED
|
@@ -30,9 +30,11 @@ export declare const to: import("@traqula/core").NamedToken<"To">;
|
|
|
30
30
|
export declare const move: import("@traqula/core").NamedToken<"Move">;
|
|
31
31
|
export declare const copy: import("@traqula/core").NamedToken<"Copy">;
|
|
32
32
|
export declare const modifyWith: import("@traqula/core").NamedToken<"ModifyWith">;
|
|
33
|
+
export declare const deleteDataClause: import("@traqula/core").NamedToken<"DeleteDataClause">;
|
|
34
|
+
export declare const deleteWhereClause: import("@traqula/core").NamedToken<"DeleteWhereClause">;
|
|
33
35
|
export declare const deleteClause: import("@traqula/core").NamedToken<"DeleteClause">;
|
|
36
|
+
export declare const insertDataClause: import("@traqula/core").NamedToken<"InsertDataClause">;
|
|
34
37
|
export declare const insertClause: import("@traqula/core").NamedToken<"InsertClause">;
|
|
35
|
-
export declare const dataClause: import("@traqula/core").NamedToken<"DataClause">;
|
|
36
38
|
export declare const usingClause: import("@traqula/core").NamedToken<"UsingClause">;
|
|
37
39
|
export declare const optional: import("@traqula/core").NamedToken<"Optional">;
|
|
38
40
|
export declare const service: import("@traqula/core").NamedToken<"Service">;
|
|
@@ -47,8 +49,8 @@ export declare const false_: import("@traqula/core").NamedToken<"False">;
|
|
|
47
49
|
export declare const in_: import("@traqula/core").NamedToken<"In">;
|
|
48
50
|
export declare const notIn: import("@traqula/core").NamedToken<"NotIn">;
|
|
49
51
|
export declare const separator: import("@traqula/core").NamedToken<"Separator">;
|
|
50
|
-
export declare const allBaseTokens: LexerBuilder<"
|
|
52
|
+
export declare const allBaseTokens: LexerBuilder<"Where" | "Optional" | "Service" | "Silent" | "Bind" | "As" | "Values" | "Undef" | "Minus" | "Filter" | "Union" | "BaseDecl" | "PrefixDecl" | "From" | "UsingClause" | "Distinct" | "In" | "NotIn" | "GroupByGroup" | "By" | "Having" | "Order" | "OrderAsc" | "OrderDesc" | "Limit" | "Offset" | "Select" | "Reduced" | "Construct" | "Describe" | "Ask" | "Load" | "LoadInto" | "Clear" | "Drop" | "Create" | "Add" | "To" | "Move" | "Copy" | "ModifyWith" | "DeleteDataClause" | "DeleteWhereClause" | "DeleteClause" | "InsertDataClause" | "InsertClause" | "a" | "True" | "False" | "Separator">;
|
|
51
53
|
/**
|
|
52
54
|
* [!!!ORDER MATTERS!!!](https://chevrotain.io/docs/tutorial/step1_lexing.html#creating-the-lexer)
|
|
53
55
|
*/
|
|
54
|
-
export declare const sparql11LexerBuilder: LexerBuilder<"
|
|
56
|
+
export declare const sparql11LexerBuilder: LexerBuilder<"Where" | "LCurly" | "RCurly" | "Optional" | "Graph" | "Service" | "Silent" | "Bind" | "LParen" | "As" | "RParen" | "Values" | "Nil" | "Undef" | "Minus" | "Filter" | "Dot" | "Union" | "Pipe" | "Slash" | "Question" | "Star" | "OpPlus" | "Hat" | "Exclamation" | "PNameNs" | "PNameLn" | "Var1" | "Var2" | "BaseDecl" | "PrefixDecl" | "From" | "UsingClause" | "NamedGraph" | "Distinct" | "Comma" | "Equal" | "NotEqual" | "LessThan" | "GreaterThan" | "LessThanEqual" | "GreaterThanEqual" | "In" | "NotIn" | "OpMinus" | "LogicOr" | "LogicAnd" | "Semi" | "LSquare" | "RSquare" | "Hathat" | "GroupByGroup" | "By" | "Having" | "Order" | "OrderAsc" | "OrderDesc" | "Limit" | "Integer" | "Offset" | "Select" | "Reduced" | "Construct" | "Describe" | "Ask" | "Load" | "LoadInto" | "Clear" | "Drop" | "Create" | "Add" | "To" | "Move" | "Copy" | "ModifyWith" | "DeleteDataClause" | "DeleteWhereClause" | "DeleteClause" | "InsertDataClause" | "InsertClause" | "a" | "True" | "False" | "Separator" | "IriRef" | "BlankNodeLabel" | "LangTag" | "Double" | "Decimal" | "InterferePositive" | "DecimalPositive" | "DoublePositive" | "IntegerNegative" | "DecimalNegative" | "DoubleNegative" | "StringLiteralLong1" | "StringLiteralLong2" | "StringLiteral1" | "StringLiteral2" | "Ws" | "Comment" | "Anon" | "BuiltInLangmatches" | "BuiltInDatatype" | "BuiltInLang" | "BuiltInBound" | "BuiltInIri" | "BuiltInUri" | "BuiltInBnode" | "BuiltInRand" | "BuiltInAbs" | "BuiltInCeil" | "BuiltInFloor" | "BuiltInRound" | "BuiltInConcat" | "BuiltInStrlen" | "BuiltInUcase" | "BuiltInLcase" | "BuiltInEncode_for_uri" | "BuiltInContains" | "BuiltInStrstarts" | "BuiltInStrends" | "BuiltInStrbefore" | "BuiltInStrafter" | "BuiltInYear" | "BuiltInMonth" | "BuiltInDay" | "BuiltInHours" | "BuiltInMinutes" | "BuiltInSeconds" | "BuiltInTimezone" | "BuiltInTz" | "BuiltInNow" | "BuiltInUuid" | "BuiltInStruuid" | "BuiltInMd5" | "BuiltInSha1" | "BuiltInSha256" | "BuiltInSha384" | "BuiltInSha512" | "BuiltInCoalesce" | "BuiltInIf" | "BuiltInStrlang" | "BuiltInStrdt" | "BuiltInSameterm" | "BuiltInIsiri" | "BuiltInIsuri" | "BuiltInIsblank" | "BuiltInIsliteral" | "BuiltInIsnumeric" | "BuiltInRegex" | "BuiltInSubstr" | "BuiltInReplace" | "BuiltInExists" | "BuiltInNotexists" | "BuiltInCount" | "BuiltInSum" | "BuiltInMin" | "BuiltInMax" | "BuiltInAvg" | "BuiltInSample" | "BuiltInGroup_concat" | "BuiltInStr" | "DefaultGraph" | "GraphAll">;
|
package/lib/lexer/lexer.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/* eslint-disable require-unicode-regexp */
|
|
2
2
|
import { LexerBuilder, createToken } from '@traqula/core';
|
|
3
|
-
import { allBuiltInCalls, avg,
|
|
3
|
+
import { allBuiltInCalls, avg, groupConcat } from './BuiltInCalls.js';
|
|
4
4
|
import { allGraphTokens, graphAll } from './graph.js';
|
|
5
|
+
import { atLeastOneBlankPattern } from './lexerPatterns.js';
|
|
5
6
|
import { allSymbols } from './symbols.js';
|
|
6
7
|
import { allTerminals } from './terminals.js';
|
|
7
8
|
export const baseDecl = createToken({ name: 'BaseDecl', pattern: /base/i, label: 'BASE' });
|
|
@@ -35,9 +36,23 @@ export const to = createToken({ name: 'To', pattern: /to/i, label: 'TO' });
|
|
|
35
36
|
export const move = createToken({ name: 'Move', pattern: /move/i, label: 'MOVE' });
|
|
36
37
|
export const copy = createToken({ name: 'Copy', pattern: /copy/i, label: 'COPY' });
|
|
37
38
|
export const modifyWith = createToken({ name: 'ModifyWith', pattern: /with/i, label: 'WITH' });
|
|
39
|
+
export const deleteDataClause = createToken({
|
|
40
|
+
name: 'DeleteDataClause',
|
|
41
|
+
pattern: new RegExp(`delete(${atLeastOneBlankPattern.source})data`, 'i'),
|
|
42
|
+
label: 'DELETE DATA',
|
|
43
|
+
});
|
|
44
|
+
export const deleteWhereClause = createToken({
|
|
45
|
+
name: 'DeleteWhereClause',
|
|
46
|
+
pattern: new RegExp(`delete(${atLeastOneBlankPattern.source})where`, 'i'),
|
|
47
|
+
label: 'DELETE WHERE',
|
|
48
|
+
});
|
|
38
49
|
export const deleteClause = createToken({ name: 'DeleteClause', pattern: /delete/i, label: 'DELETE' });
|
|
39
|
-
export const
|
|
40
|
-
|
|
50
|
+
export const insertDataClause = createToken({
|
|
51
|
+
name: 'InsertDataClause',
|
|
52
|
+
pattern: new RegExp(`insert(${atLeastOneBlankPattern.source})data`, 'i'),
|
|
53
|
+
label: 'INSERT DATA',
|
|
54
|
+
});
|
|
55
|
+
export const insertClause = createToken({ name: 'InsertClause', pattern: /insert/i, label: 'insert' });
|
|
41
56
|
export const usingClause = createToken({ name: 'UsingClause', pattern: /using/i, label: 'USING' });
|
|
42
57
|
export const optional = createToken({ name: 'Optional', pattern: /optional/i, label: 'OPTIONAL' });
|
|
43
58
|
export const service = createToken({ name: 'Service', pattern: /service/i, label: 'SERVICE' });
|
|
@@ -53,7 +68,7 @@ export const in_ = createToken({ name: 'In', pattern: /in/i, label: 'IN' });
|
|
|
53
68
|
// eslint-disable-next-line unicorn/better-regex,no-control-regex
|
|
54
69
|
export const notIn = createToken({ name: 'NotIn', pattern: /not[\u0020\u0009\u000D\u000A]+in/i, label: 'NOT IN' });
|
|
55
70
|
export const separator = createToken({ name: 'Separator', pattern: /separator/i, label: 'SEPARATOR' });
|
|
56
|
-
export const allBaseTokens = LexerBuilder.create().add(baseDecl, prefixDecl, select, distinct, reduced, construct, describe, ask, from, where, having, groupByGroup, by, order, orderAsc, orderDesc, limit, offset, values, load, silent, loadInto, clear, drop, create, add, to, move, copy, modifyWith, deleteClause,
|
|
71
|
+
export const allBaseTokens = LexerBuilder.create().add(baseDecl, prefixDecl, select, distinct, reduced, construct, describe, ask, from, where, having, groupByGroup, by, order, orderAsc, orderDesc, limit, offset, values, load, silent, loadInto, clear, drop, create, add, to, move, copy, modifyWith, deleteWhereClause, deleteDataClause, deleteClause, insertDataClause, insertClause, usingClause, optional, service, bind, undef, minus, union, filter, as, a, true_, false_, in_, notIn, separator);
|
|
57
72
|
/**
|
|
58
73
|
* [!!!ORDER MATTERS!!!](https://chevrotain.io/docs/tutorial/step1_lexing.html#creating-the-lexer)
|
|
59
74
|
*/
|
|
@@ -63,7 +78,6 @@ export const sparql11LexerBuilder = LexerBuilder
|
|
|
63
78
|
.merge(allBuiltInCalls)
|
|
64
79
|
.merge(allGraphTokens)
|
|
65
80
|
.merge(allSymbols)
|
|
66
|
-
.moveBefore(datatype, dataClause)
|
|
67
81
|
.moveAfter(avg, a)
|
|
68
82
|
.moveBefore(a, graphAll)
|
|
69
83
|
.moveAfter(groupConcat, groupByGroup);
|
package/lib/lexer/lexer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lexer.js","sourceRoot":"","sources":["lexer.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable require-unicode-regexp */\nimport { LexerBuilder, createToken } from '@traqula/core';\nimport { allBuiltInCalls, avg, datatype, groupConcat } from './BuiltInCalls.js';\nimport { allGraphTokens, graphAll } from './graph.js';\nimport { allSymbols } from './symbols.js';\nimport { allTerminals } from './terminals.js';\n\nexport const baseDecl = createToken({ name: 'BaseDecl', pattern: /base/i, label: 'BASE' });\nexport const prefixDecl = createToken({ name: 'PrefixDecl', pattern: /prefix/i, label: 'PREFIX' });\nexport const select = createToken({ name: 'Select', pattern: /select/i, label: 'SELECT' });\nexport const distinct = createToken({ name: 'Distinct', pattern: /distinct/i, label: 'DISTINCT' });\nexport const reduced = createToken({ name: 'Reduced', pattern: /reduced/i, label: 'REDUCED' });\nexport const as = createToken({ name: 'As', pattern: /as/i, label: 'AS' });\nexport const construct = createToken({ name: 'Construct', pattern: /construct/i, label: 'CONSTRUCT' });\nexport const describe = createToken({ name: 'Describe', pattern: /describe/i, label: 'DESCRIBE' });\nexport const ask = createToken({ name: 'Ask', pattern: /ask/i, label: 'ASK' });\nexport const from = createToken({ name: 'From', pattern: /from/i, label: 'FROM' });\nexport const where = createToken({ name: 'Where', pattern: /where/i, label: 'WHERE' });\nexport const groupByGroup = createToken({ name: 'GroupByGroup', pattern: /group/i, label: '_GROUP_ BY' });\nexport const by = createToken({ name: 'By', pattern: /by/i, label: 'BY' });\nexport const having = createToken({ name: 'Having', pattern: /having/i, label: 'HAVING' });\nexport const order = createToken({ name: 'Order', pattern: /order/i, label: '_ORDER_ BY' });\nexport const orderAsc = createToken({ name: 'OrderAsc', pattern: /asc/i, label: 'ASC' });\nexport const orderDesc = createToken({ name: 'OrderDesc', pattern: /desc/i, label: 'DESC' });\nexport const limit = createToken({ name: 'Limit', pattern: /limit/i, label: 'LIMIT' });\nexport const offset = createToken({ name: 'Offset', pattern: /offset/i, label: 'OFFSET' });\nexport const values = createToken({ name: 'Values', pattern: /values/i, label: 'VALUES' });\nexport const load = createToken({ name: 'Load', pattern: /load/i, label: 'LOAD' });\nexport const silent = createToken({ name: 'Silent', pattern: /silent/i, label: 'SILENT' });\nexport const loadInto = createToken({ name: 'LoadInto', pattern: /into/i, label: 'INTO' });\nexport const clear = createToken({ name: 'Clear', pattern: /clear/i, label: 'CLEAR' });\nexport const drop = createToken({ name: 'Drop', pattern: /drop/i, label: 'DROP' });\nexport const create = createToken({ name: 'Create', pattern: /create/i, label: 'CREATE' });\nexport const add = createToken({ name: 'Add', pattern: /add/i, label: 'ADD' });\nexport const to = createToken({ name: 'To', pattern: /to/i, label: 'TO' });\nexport const move = createToken({ name: 'Move', pattern: /move/i, label: 'MOVE' });\nexport const copy = createToken({ name: 'Copy', pattern: /copy/i, label: 'COPY' });\nexport const modifyWith = createToken({ name: 'ModifyWith', pattern: /with/i, label: 'WITH' });\nexport const deleteClause = createToken({ name: 'DeleteClause', pattern: /delete/i, label: 'DELETE' });\nexport const insertClause = createToken({ name: 'InsertClause', pattern: /insert/i, label: 'INSERT' });\nexport const dataClause = createToken({ name: 'DataClause', pattern: /data/i, label: 'DATA', longer_alt: datatype });\nexport const usingClause = createToken({ name: 'UsingClause', pattern: /using/i, label: 'USING' });\nexport const optional = createToken({ name: 'Optional', pattern: /optional/i, label: 'OPTIONAL' });\nexport const service = createToken({ name: 'Service', pattern: /service/i, label: 'SERVICE' });\nexport const bind = createToken({ name: 'Bind', pattern: /bind/i, label: 'BIND' });\nexport const undef = createToken({ name: 'Undef', pattern: /undef/i, label: 'UNDEF' });\nexport const minus = createToken({ name: 'Minus', pattern: /minus/i, label: 'MINUS' });\nexport const union = createToken({ name: 'Union', pattern: /union/i, label: 'UNION' });\nexport const filter = createToken({ name: 'Filter', pattern: /filter/i, label: 'FILTER' });\nexport const a = createToken({ name: 'a', pattern: 'a', label: 'type declaration \\'a\\'' });\nexport const true_ = createToken({ name: 'True', pattern: /true/i, label: 'true' });\nexport const false_ = createToken({ name: 'False', pattern: /false/i, label: 'false' });\nexport const in_ = createToken({ name: 'In', pattern: /in/i, label: 'IN' });\n// eslint-disable-next-line unicorn/better-regex,no-control-regex\nexport const notIn = createToken({ name: 'NotIn', pattern: /not[\\u0020\\u0009\\u000D\\u000A]+in/i, label: 'NOT IN' });\nexport const separator = createToken({ name: 'Separator', pattern: /separator/i, label: 'SEPARATOR' });\n\nexport const allBaseTokens = LexerBuilder.create().add(\n baseDecl,\n prefixDecl,\n select,\n distinct,\n reduced,\n construct,\n describe,\n ask,\n from,\n where,\n having,\n groupByGroup,\n by,\n order,\n orderAsc,\n orderDesc,\n limit,\n offset,\n values,\n load,\n silent,\n loadInto,\n clear,\n drop,\n create,\n add,\n to,\n move,\n copy,\n modifyWith,\n deleteClause,\n insertClause,\n dataClause,\n usingClause,\n optional,\n service,\n bind,\n undef,\n minus,\n union,\n filter,\n as,\n a,\n true_,\n false_,\n in_,\n notIn,\n separator,\n);\n\n/**\n * [!!!ORDER MATTERS!!!](https://chevrotain.io/docs/tutorial/step1_lexing.html#creating-the-lexer)\n */\nexport const sparql11LexerBuilder = LexerBuilder\n .create(allTerminals)\n .merge(allBaseTokens)\n .merge(allBuiltInCalls)\n .merge(allGraphTokens)\n .merge(allSymbols)\n .moveBefore(datatype, dataClause)\n .moveAfter(avg, a)\n .moveBefore(a, graphAll)\n .moveAfter(groupConcat, groupByGroup);\n"]}
|
|
1
|
+
{"version":3,"file":"lexer.js","sourceRoot":"","sources":["lexer.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable require-unicode-regexp */\nimport { LexerBuilder, createToken } from '@traqula/core';\nimport { allBuiltInCalls, avg, groupConcat } from './BuiltInCalls.js';\nimport { allGraphTokens, graphAll } from './graph.js';\nimport { atLeastOneBlankPattern } from './lexerPatterns.js';\nimport { allSymbols } from './symbols.js';\nimport { allTerminals } from './terminals.js';\n\nexport const baseDecl = createToken({ name: 'BaseDecl', pattern: /base/i, label: 'BASE' });\nexport const prefixDecl = createToken({ name: 'PrefixDecl', pattern: /prefix/i, label: 'PREFIX' });\nexport const select = createToken({ name: 'Select', pattern: /select/i, label: 'SELECT' });\nexport const distinct = createToken({ name: 'Distinct', pattern: /distinct/i, label: 'DISTINCT' });\nexport const reduced = createToken({ name: 'Reduced', pattern: /reduced/i, label: 'REDUCED' });\nexport const as = createToken({ name: 'As', pattern: /as/i, label: 'AS' });\nexport const construct = createToken({ name: 'Construct', pattern: /construct/i, label: 'CONSTRUCT' });\nexport const describe = createToken({ name: 'Describe', pattern: /describe/i, label: 'DESCRIBE' });\nexport const ask = createToken({ name: 'Ask', pattern: /ask/i, label: 'ASK' });\nexport const from = createToken({ name: 'From', pattern: /from/i, label: 'FROM' });\nexport const where = createToken({ name: 'Where', pattern: /where/i, label: 'WHERE' });\nexport const groupByGroup = createToken({ name: 'GroupByGroup', pattern: /group/i, label: '_GROUP_ BY' });\nexport const by = createToken({ name: 'By', pattern: /by/i, label: 'BY' });\nexport const having = createToken({ name: 'Having', pattern: /having/i, label: 'HAVING' });\nexport const order = createToken({ name: 'Order', pattern: /order/i, label: '_ORDER_ BY' });\nexport const orderAsc = createToken({ name: 'OrderAsc', pattern: /asc/i, label: 'ASC' });\nexport const orderDesc = createToken({ name: 'OrderDesc', pattern: /desc/i, label: 'DESC' });\nexport const limit = createToken({ name: 'Limit', pattern: /limit/i, label: 'LIMIT' });\nexport const offset = createToken({ name: 'Offset', pattern: /offset/i, label: 'OFFSET' });\nexport const values = createToken({ name: 'Values', pattern: /values/i, label: 'VALUES' });\nexport const load = createToken({ name: 'Load', pattern: /load/i, label: 'LOAD' });\nexport const silent = createToken({ name: 'Silent', pattern: /silent/i, label: 'SILENT' });\nexport const loadInto = createToken({ name: 'LoadInto', pattern: /into/i, label: 'INTO' });\nexport const clear = createToken({ name: 'Clear', pattern: /clear/i, label: 'CLEAR' });\nexport const drop = createToken({ name: 'Drop', pattern: /drop/i, label: 'DROP' });\nexport const create = createToken({ name: 'Create', pattern: /create/i, label: 'CREATE' });\nexport const add = createToken({ name: 'Add', pattern: /add/i, label: 'ADD' });\nexport const to = createToken({ name: 'To', pattern: /to/i, label: 'TO' });\nexport const move = createToken({ name: 'Move', pattern: /move/i, label: 'MOVE' });\nexport const copy = createToken({ name: 'Copy', pattern: /copy/i, label: 'COPY' });\nexport const modifyWith = createToken({ name: 'ModifyWith', pattern: /with/i, label: 'WITH' });\nexport const deleteDataClause = createToken({\n name: 'DeleteDataClause',\n pattern: new RegExp(`delete(${atLeastOneBlankPattern.source})data`, 'i'),\n label: 'DELETE DATA',\n});\nexport const deleteWhereClause = createToken({\n name: 'DeleteWhereClause',\n pattern: new RegExp(`delete(${atLeastOneBlankPattern.source})where`, 'i'),\n label: 'DELETE WHERE',\n});\nexport const deleteClause = createToken({ name: 'DeleteClause', pattern: /delete/i, label: 'DELETE' });\nexport const insertDataClause = createToken({\n name: 'InsertDataClause',\n pattern: new RegExp(`insert(${atLeastOneBlankPattern.source})data`, 'i'),\n label: 'INSERT DATA',\n});\nexport const insertClause = createToken({ name: 'InsertClause', pattern: /insert/i, label: 'insert' });\nexport const usingClause = createToken({ name: 'UsingClause', pattern: /using/i, label: 'USING' });\nexport const optional = createToken({ name: 'Optional', pattern: /optional/i, label: 'OPTIONAL' });\nexport const service = createToken({ name: 'Service', pattern: /service/i, label: 'SERVICE' });\nexport const bind = createToken({ name: 'Bind', pattern: /bind/i, label: 'BIND' });\nexport const undef = createToken({ name: 'Undef', pattern: /undef/i, label: 'UNDEF' });\nexport const minus = createToken({ name: 'Minus', pattern: /minus/i, label: 'MINUS' });\nexport const union = createToken({ name: 'Union', pattern: /union/i, label: 'UNION' });\nexport const filter = createToken({ name: 'Filter', pattern: /filter/i, label: 'FILTER' });\nexport const a = createToken({ name: 'a', pattern: 'a', label: 'type declaration \\'a\\'' });\nexport const true_ = createToken({ name: 'True', pattern: /true/i, label: 'true' });\nexport const false_ = createToken({ name: 'False', pattern: /false/i, label: 'false' });\nexport const in_ = createToken({ name: 'In', pattern: /in/i, label: 'IN' });\n// eslint-disable-next-line unicorn/better-regex,no-control-regex\nexport const notIn = createToken({ name: 'NotIn', pattern: /not[\\u0020\\u0009\\u000D\\u000A]+in/i, label: 'NOT IN' });\nexport const separator = createToken({ name: 'Separator', pattern: /separator/i, label: 'SEPARATOR' });\n\nexport const allBaseTokens = LexerBuilder.create().add(\n baseDecl,\n prefixDecl,\n select,\n distinct,\n reduced,\n construct,\n describe,\n ask,\n from,\n where,\n having,\n groupByGroup,\n by,\n order,\n orderAsc,\n orderDesc,\n limit,\n offset,\n values,\n load,\n silent,\n loadInto,\n clear,\n drop,\n create,\n add,\n to,\n move,\n copy,\n modifyWith,\n deleteWhereClause,\n deleteDataClause,\n deleteClause,\n insertDataClause,\n insertClause,\n usingClause,\n optional,\n service,\n bind,\n undef,\n minus,\n union,\n filter,\n as,\n a,\n true_,\n false_,\n in_,\n notIn,\n separator,\n);\n\n/**\n * [!!!ORDER MATTERS!!!](https://chevrotain.io/docs/tutorial/step1_lexing.html#creating-the-lexer)\n */\nexport const sparql11LexerBuilder = LexerBuilder\n .create(allTerminals)\n .merge(allBaseTokens)\n .merge(allBuiltInCalls)\n .merge(allGraphTokens)\n .merge(allSymbols)\n .moveAfter(avg, a)\n .moveBefore(a, graphAll)\n .moveAfter(groupConcat, groupByGroup);\n"]}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export declare const pnCharsBasePattern: RegExp;
|
|
2
|
+
export declare const pnCharsUPattern: RegExp;
|
|
3
|
+
export declare const varNamePattern: RegExp;
|
|
4
|
+
export declare const iriRefPattern: RegExp;
|
|
5
|
+
export declare const pnCharsPattern: RegExp;
|
|
6
|
+
export declare const pnPrefixPattern: RegExp;
|
|
7
|
+
export declare const pNameNsPattern: RegExp;
|
|
8
|
+
export declare const percentPattern: RegExp;
|
|
9
|
+
export declare const pnLocalEscPattern: RegExp;
|
|
10
|
+
export declare const plxPattern: RegExp;
|
|
11
|
+
export declare const pnLocalPattern: RegExp;
|
|
12
|
+
export declare const pNameLnPattern: RegExp;
|
|
13
|
+
export declare const blankNodeLabelPattern: RegExp;
|
|
14
|
+
export declare const var1Pattern: RegExp;
|
|
15
|
+
export declare const var2Pattern: RegExp;
|
|
16
|
+
export declare const langTagPattern: RegExp;
|
|
17
|
+
export declare const integerPattern: RegExp;
|
|
18
|
+
export declare const decimalPattern: RegExp;
|
|
19
|
+
export declare const exponentPattern: RegExp;
|
|
20
|
+
export declare const doublePattern: RegExp;
|
|
21
|
+
export declare const interferePositivePattern: RegExp;
|
|
22
|
+
export declare const decimalPositivePattern: RegExp;
|
|
23
|
+
export declare const doublePositivePattern: RegExp;
|
|
24
|
+
export declare const integerNegativePattern: RegExp;
|
|
25
|
+
export declare const decimalNegativePattern: RegExp;
|
|
26
|
+
export declare const doubleNegativePattern: RegExp;
|
|
27
|
+
export declare const echarPattern: RegExp;
|
|
28
|
+
export declare const stringLiteral1Pattern: RegExp;
|
|
29
|
+
export declare const stringLiteral2Pattern: RegExp;
|
|
30
|
+
export declare const stringLiteralLong1Pattern: RegExp;
|
|
31
|
+
export declare const stringLiteralLong2Pattern: RegExp;
|
|
32
|
+
export declare const wsPattern: RegExp;
|
|
33
|
+
export declare const nilPattern: RegExp;
|
|
34
|
+
export declare const anonPattern: RegExp;
|
|
35
|
+
export declare const commentPattern: RegExp;
|
|
36
|
+
export declare const atLeastOneBlankPattern: RegExp;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/* eslint-disable require-unicode-regexp,no-misleading-character-class,max-len,no-control-regex */
|
|
2
|
+
export const pnCharsBasePattern = /[A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF]/;
|
|
3
|
+
export const pnCharsUPattern = new RegExp(`${pnCharsBasePattern.source}|_`);
|
|
4
|
+
export const varNamePattern = new RegExp(`((${pnCharsUPattern.source})|[0-9])((${pnCharsUPattern.source})|[0-9]|[\u00B7\u0300-\u036F\u203F-\u2040])*`);
|
|
5
|
+
export const iriRefPattern = /<([^\u0000-\u0020"<>\\^`{|}])*>/;
|
|
6
|
+
export const pnCharsPattern = new RegExp(`(${pnCharsUPattern.source})|[\\-0-9\u00B7\u0300-\u036F\u203F-\u2040]`);
|
|
7
|
+
export const pnPrefixPattern = new RegExp(`(${pnCharsBasePattern.source})(((${pnCharsPattern.source})|\\.)*(${pnCharsPattern.source}))?`);
|
|
8
|
+
export const pNameNsPattern = new RegExp(`(${pnPrefixPattern.source})?:`);
|
|
9
|
+
export const percentPattern = /%[\dA-Fa-f]{2}/;
|
|
10
|
+
export const pnLocalEscPattern = /\\[!#$%&'()*+,./;=?@\\_~-]/;
|
|
11
|
+
export const plxPattern = new RegExp(`(${percentPattern.source})|(${pnLocalEscPattern.source})`);
|
|
12
|
+
export const pnLocalPattern = new RegExp(`((${pnCharsUPattern.source})|:|[0-9]|(${plxPattern.source}))(((${pnCharsPattern.source})|\\.|:|(${plxPattern.source}))*((${pnCharsPattern.source})|:|(${plxPattern.source})))?`);
|
|
13
|
+
export const pNameLnPattern = new RegExp(`(${pNameNsPattern.source})(${pnLocalPattern.source})`);
|
|
14
|
+
export const blankNodeLabelPattern = new RegExp(`_:((${pnCharsUPattern.source})|[0-9])(((${pnCharsPattern.source})|\\.)*(${pnCharsPattern.source}))?`);
|
|
15
|
+
export const var1Pattern = new RegExp(`\\?(${varNamePattern.source})`);
|
|
16
|
+
export const var2Pattern = new RegExp(`\\$(${varNamePattern.source})`);
|
|
17
|
+
export const langTagPattern = /@[A-Za-z]+(-[\dA-Za-z]+)*/;
|
|
18
|
+
export const integerPattern = /\d+/;
|
|
19
|
+
export const decimalPattern = /\d+\.\d+/;
|
|
20
|
+
export const exponentPattern = /[Ee][+-]?\d+/;
|
|
21
|
+
export const doublePattern = new RegExp(`([0-9]+\\.[0-9]*(${exponentPattern.source}))|(\\.[0-9]+(${exponentPattern.source}))|([0-9]+(${exponentPattern.source}))`);
|
|
22
|
+
export const interferePositivePattern = new RegExp(`\\+${integerPattern.source}`);
|
|
23
|
+
export const decimalPositivePattern = new RegExp(`\\+${decimalPattern.source}`);
|
|
24
|
+
export const doublePositivePattern = new RegExp(`\\+${doublePattern.source}`);
|
|
25
|
+
export const integerNegativePattern = new RegExp(`-${integerPattern.source}`);
|
|
26
|
+
export const decimalNegativePattern = new RegExp(`-${decimalPattern.source}`);
|
|
27
|
+
export const doubleNegativePattern = new RegExp(`-${doublePattern.source}`);
|
|
28
|
+
export const echarPattern = /\\[\\"'bfnrt]/u;
|
|
29
|
+
export const stringLiteral1Pattern = new RegExp(`'(([^\\u0027\\u005C\\u000A\u000D])|(${echarPattern.source}))*'`);
|
|
30
|
+
export const stringLiteral2Pattern = new RegExp(`"(([^\\u0022\\u005C\\u000A\\u000D])|(${echarPattern.source}))*"`);
|
|
31
|
+
export const stringLiteralLong1Pattern = new RegExp(`'''(('|(''))?([^'\\\\]|(${echarPattern.source})))*'''`);
|
|
32
|
+
export const stringLiteralLong2Pattern = new RegExp(`"""(("|(""))?([^"\\\\]|(${echarPattern.source})))*"""`);
|
|
33
|
+
export const wsPattern = /[\u0009\u000A\u000D ]/;
|
|
34
|
+
export const nilPattern = new RegExp(`\\((${wsPattern.source})*\\)`);
|
|
35
|
+
export const anonPattern = new RegExp(`\\[(${wsPattern.source})*\\]`);
|
|
36
|
+
export const commentPattern = /#[^\n]*\n/;
|
|
37
|
+
export const atLeastOneBlankPattern = new RegExp(`((${wsPattern.source}+)|(${commentPattern.source}))+`);
|
|
38
|
+
//# sourceMappingURL=lexerPatterns.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lexerPatterns.js","sourceRoot":"","sources":["lexerPatterns.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable require-unicode-regexp,no-misleading-character-class,max-len,no-control-regex */\n\nexport const pnCharsBasePattern = /[A-Za-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD]|[\\uD800-\\uDB7F][\\uDC00-\\uDFFF]/;\nexport const pnCharsUPattern = new RegExp(`${pnCharsBasePattern.source}|_`);\nexport const varNamePattern = new RegExp(`((${pnCharsUPattern.source})|[0-9])((${pnCharsUPattern.source})|[0-9]|[\\u00B7\\u0300-\\u036F\\u203F-\\u2040])*`);\nexport const iriRefPattern = /<([^\\u0000-\\u0020\"<>\\\\^`{|}])*>/;\nexport const pnCharsPattern = new RegExp(`(${pnCharsUPattern.source})|[\\\\-0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]`);\nexport const pnPrefixPattern = new RegExp(`(${pnCharsBasePattern.source})(((${pnCharsPattern.source})|\\\\.)*(${pnCharsPattern.source}))?`);\nexport const pNameNsPattern = new RegExp(`(${pnPrefixPattern.source})?:`);\nexport const percentPattern = /%[\\dA-Fa-f]{2}/;\nexport const pnLocalEscPattern = /\\\\[!#$%&'()*+,./;=?@\\\\_~-]/;\nexport const plxPattern = new RegExp(`(${percentPattern.source})|(${pnLocalEscPattern.source})`);\nexport const pnLocalPattern = new RegExp(`((${pnCharsUPattern.source})|:|[0-9]|(${plxPattern.source}))(((${pnCharsPattern.source})|\\\\.|:|(${plxPattern.source}))*((${pnCharsPattern.source})|:|(${plxPattern.source})))?`);\nexport const pNameLnPattern = new RegExp(`(${pNameNsPattern.source})(${pnLocalPattern.source})`);\nexport const blankNodeLabelPattern = new RegExp(`_:((${pnCharsUPattern.source})|[0-9])(((${pnCharsPattern.source})|\\\\.)*(${pnCharsPattern.source}))?`);\nexport const var1Pattern = new RegExp(`\\\\?(${varNamePattern.source})`);\nexport const var2Pattern = new RegExp(`\\\\$(${varNamePattern.source})`);\nexport const langTagPattern = /@[A-Za-z]+(-[\\dA-Za-z]+)*/;\nexport const integerPattern = /\\d+/;\nexport const decimalPattern = /\\d+\\.\\d+/;\nexport const exponentPattern = /[Ee][+-]?\\d+/;\nexport const doublePattern = new RegExp(`([0-9]+\\\\.[0-9]*(${exponentPattern.source}))|(\\\\.[0-9]+(${exponentPattern.source}))|([0-9]+(${exponentPattern.source}))`);\nexport const interferePositivePattern = new RegExp(`\\\\+${integerPattern.source}`);\nexport const decimalPositivePattern = new RegExp(`\\\\+${decimalPattern.source}`);\nexport const doublePositivePattern = new RegExp(`\\\\+${doublePattern.source}`);\nexport const integerNegativePattern = new RegExp(`-${integerPattern.source}`);\nexport const decimalNegativePattern = new RegExp(`-${decimalPattern.source}`);\nexport const doubleNegativePattern = new RegExp(`-${doublePattern.source}`);\nexport const echarPattern = /\\\\[\\\\\"'bfnrt]/u;\nexport const stringLiteral1Pattern = new RegExp(`'(([^\\\\u0027\\\\u005C\\\\u000A\\u000D])|(${echarPattern.source}))*'`);\nexport const stringLiteral2Pattern = new RegExp(`\"(([^\\\\u0022\\\\u005C\\\\u000A\\\\u000D])|(${echarPattern.source}))*\"`);\nexport const stringLiteralLong1Pattern = new RegExp(`'''(('|(''))?([^'\\\\\\\\]|(${echarPattern.source})))*'''`);\nexport const stringLiteralLong2Pattern = new RegExp(`\"\"\"((\"|(\"\"))?([^\"\\\\\\\\]|(${echarPattern.source})))*\"\"\"`);\nexport const wsPattern = /[\\u0009\\u000A\\u000D ]/;\nexport const nilPattern = new RegExp(`\\\\((${wsPattern.source})*\\\\)`);\nexport const anonPattern = new RegExp(`\\\\[(${wsPattern.source})*\\\\]`);\nexport const commentPattern = /#[^\\n]*\\n/;\n\nexport const atLeastOneBlankPattern = new RegExp(`((${wsPattern.source}+)|(${commentPattern.source}))+`);\n"]}
|
package/lib/lexer/symbols.d.ts
CHANGED
|
@@ -25,4 +25,4 @@ export declare const greaterThan: import("@traqula/core").NamedToken<"GreaterTha
|
|
|
25
25
|
export declare const lessThanEqual: import("@traqula/core").NamedToken<"LessThanEqual">;
|
|
26
26
|
export declare const greaterThanEqual: import("@traqula/core").NamedToken<"GreaterThanEqual">;
|
|
27
27
|
export declare const hathat: import("@traqula/core").NamedToken<"Hathat">;
|
|
28
|
-
export declare const allSymbols: LexerBuilder<"
|
|
28
|
+
export declare const allSymbols: LexerBuilder<"LCurly" | "RCurly" | "LParen" | "RParen" | "Dot" | "Pipe" | "Slash" | "Question" | "Star" | "OpPlus" | "Hat" | "Exclamation" | "Comma" | "Equal" | "NotEqual" | "LessThan" | "GreaterThan" | "LessThanEqual" | "GreaterThanEqual" | "OpMinus" | "LogicOr" | "LogicAnd" | "Semi" | "LSquare" | "RSquare" | "Hathat">;
|
package/lib/lexer/terminals.d.ts
CHANGED
|
@@ -92,4 +92,4 @@ export declare const nil: import("@traqula/core").NamedToken<"Nil">;
|
|
|
92
92
|
* [[163]](https://www.w3.org/TR/sparql11-query/#rANON)
|
|
93
93
|
*/
|
|
94
94
|
export declare const anon: import("@traqula/core").NamedToken<"Anon">;
|
|
95
|
-
export declare const allTerminals: LexerBuilder<"
|
|
95
|
+
export declare const allTerminals: LexerBuilder<"Nil" | "PNameNs" | "PNameLn" | "Var1" | "Var2" | "Integer" | "IriRef" | "BlankNodeLabel" | "LangTag" | "Double" | "Decimal" | "InterferePositive" | "DecimalPositive" | "DoublePositive" | "IntegerNegative" | "DecimalNegative" | "DoubleNegative" | "StringLiteralLong1" | "StringLiteralLong2" | "StringLiteral1" | "StringLiteral2" | "Ws" | "Comment" | "Anon">;
|
package/lib/lexer/terminals.js
CHANGED
|
@@ -1,40 +1,6 @@
|
|
|
1
|
-
/* eslint-disable require-unicode-regexp,no-misleading-character-class,max-len,no-control-regex */
|
|
2
1
|
import { LexerBuilder, createToken } from '@traqula/core';
|
|
3
2
|
import { Lexer } from 'chevrotain';
|
|
4
|
-
|
|
5
|
-
const pnCharsUPattern = new RegExp(`${pnCharsBasePattern.source}|_`);
|
|
6
|
-
const varNamePattern = new RegExp(`((${pnCharsUPattern.source})|[0-9])((${pnCharsUPattern.source})|[0-9]|[\u00B7\u0300-\u036F\u203F-\u2040])*`);
|
|
7
|
-
const iriRefPattern = /<([^\u0000-\u0020"<>\\^`{|}])*>/;
|
|
8
|
-
const pnCharsPattern = new RegExp(`(${pnCharsUPattern.source})|[\\-0-9\u00B7\u0300-\u036F\u203F-\u2040]`);
|
|
9
|
-
const pnPrefixPattern = new RegExp(`(${pnCharsBasePattern.source})(((${pnCharsPattern.source})|\\.)*(${pnCharsPattern.source}))?`);
|
|
10
|
-
const pNameNsPattern = new RegExp(`(${pnPrefixPattern.source})?:`);
|
|
11
|
-
const percentPattern = /%[\dA-Fa-f]{2}/;
|
|
12
|
-
const pnLocalEscPattern = /\\[!#$%&'()*+,./;=?@\\_~-]/;
|
|
13
|
-
const plxPattern = new RegExp(`(${percentPattern.source})|(${pnLocalEscPattern.source})`);
|
|
14
|
-
const pnLocalPattern = new RegExp(`((${pnCharsUPattern.source})|:|[0-9]|(${plxPattern.source}))(((${pnCharsPattern.source})|\\.|:|(${plxPattern.source}))*((${pnCharsPattern.source})|:|(${plxPattern.source})))?`);
|
|
15
|
-
const pNameLnPattern = new RegExp(`(${pNameNsPattern.source})(${pnLocalPattern.source})`);
|
|
16
|
-
const blankNodeLabelPattern = new RegExp(`_:((${pnCharsUPattern.source})|[0-9])(((${pnCharsPattern.source})|\\.)*(${pnCharsPattern.source}))?`);
|
|
17
|
-
const var1Pattern = new RegExp(`\\?(${varNamePattern.source})`);
|
|
18
|
-
const var2Pattern = new RegExp(`\\$(${varNamePattern.source})`);
|
|
19
|
-
const langTagPattern = /@[A-Za-z]+(-[\dA-Za-z]+)*/;
|
|
20
|
-
const integerPattern = /\d+/;
|
|
21
|
-
const decimalPattern = /\d+\.\d+/;
|
|
22
|
-
const exponentPattern = /[Ee][+-]?\d+/;
|
|
23
|
-
const doublePattern = new RegExp(`([0-9]+\\.[0-9]*(${exponentPattern.source}))|(\\.[0-9]+(${exponentPattern.source}))|([0-9]+(${exponentPattern.source}))`);
|
|
24
|
-
const interferePositivePattern = new RegExp(`\\+${integerPattern.source}`);
|
|
25
|
-
const decimalPositivePattern = new RegExp(`\\+${decimalPattern.source}`);
|
|
26
|
-
const doublePositivePattern = new RegExp(`\\+${doublePattern.source}`);
|
|
27
|
-
const integerNegativePattern = new RegExp(`-${integerPattern.source}`);
|
|
28
|
-
const decimalNegativePattern = new RegExp(`-${decimalPattern.source}`);
|
|
29
|
-
const doubleNegativePattern = new RegExp(`-${doublePattern.source}`);
|
|
30
|
-
const echarPattern = /\\[\\"'bfnrt]/u;
|
|
31
|
-
const stringLiteral1Pattern = new RegExp(`'(([^\\u0027\\u005C\\u000A\u000D])|(${echarPattern.source}))*'`);
|
|
32
|
-
const stringLiteral2Pattern = new RegExp(`"(([^\\u0022\\u005C\\u000A\\u000D])|(${echarPattern.source}))*"`);
|
|
33
|
-
const stringLiteralLong1Pattern = new RegExp(`'''(('|(''))?([^'\\\\]|(${echarPattern.source})))*'''`);
|
|
34
|
-
const stringLiteralLong2Pattern = new RegExp(`"""(("|(""))?([^"\\\\]|(${echarPattern.source})))*"""`);
|
|
35
|
-
const wsPattern = /[\u0009\u000A\u000D ]/;
|
|
36
|
-
const nilPattern = new RegExp(`\\((${wsPattern.source})*\\)`);
|
|
37
|
-
const anonPattern = new RegExp(`\\[(${wsPattern.source})*\\]`);
|
|
3
|
+
import { anonPattern, blankNodeLabelPattern, commentPattern, decimalNegativePattern, decimalPattern, decimalPositivePattern, doubleNegativePattern, doublePattern, doublePositivePattern, integerNegativePattern, integerPattern, interferePositivePattern, iriRefPattern, langTagPattern, nilPattern, pNameLnPattern, pNameNsPattern, stringLiteral1Pattern, stringLiteral2Pattern, stringLiteralLong1Pattern, stringLiteralLong2Pattern, var1Pattern, var2Pattern, wsPattern, } from './lexerPatterns.js';
|
|
38
4
|
/**
|
|
39
5
|
* [[139]](https://www.w3.org/TR/sparql11-query/#rIRIREF)
|
|
40
6
|
*/
|
|
@@ -119,7 +85,7 @@ export const stringLiteralLong2 = createToken({ name: 'StringLiteralLong2', patt
|
|
|
119
85
|
* https://www.w3.org/TR/sparql11-query/#rWS
|
|
120
86
|
*/
|
|
121
87
|
export const ws = createToken({ name: 'Ws', pattern: wsPattern, group: Lexer.SKIPPED });
|
|
122
|
-
export const comment = createToken({ name: 'Comment', pattern:
|
|
88
|
+
export const comment = createToken({ name: 'Comment', pattern: commentPattern, group: Lexer.SKIPPED });
|
|
123
89
|
/**
|
|
124
90
|
* [[161]](https://www.w3.org/TR/sparql11-query/#rNIL)
|
|
125
91
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminals.js","sourceRoot":"","sources":["terminals.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable require-unicode-regexp,no-misleading-character-class,max-len,no-control-regex */\nimport { LexerBuilder, createToken } from '@traqula/core';\nimport { Lexer } from 'chevrotain';\n\nconst pnCharsBasePattern = /[A-Za-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD]|[\\uD800-\\uDB7F][\\uDC00-\\uDFFF]/;\nconst pnCharsUPattern = new RegExp(`${pnCharsBasePattern.source}|_`);\nconst varNamePattern = new RegExp(`((${pnCharsUPattern.source})|[0-9])((${pnCharsUPattern.source})|[0-9]|[\\u00B7\\u0300-\\u036F\\u203F-\\u2040])*`);\nconst iriRefPattern = /<([^\\u0000-\\u0020\"<>\\\\^`{|}])*>/;\nconst pnCharsPattern = new RegExp(`(${pnCharsUPattern.source})|[\\\\-0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]`);\nconst pnPrefixPattern = new RegExp(`(${pnCharsBasePattern.source})(((${pnCharsPattern.source})|\\\\.)*(${pnCharsPattern.source}))?`);\nconst pNameNsPattern = new RegExp(`(${pnPrefixPattern.source})?:`);\nconst percentPattern = /%[\\dA-Fa-f]{2}/;\nconst pnLocalEscPattern = /\\\\[!#$%&'()*+,./;=?@\\\\_~-]/;\nconst plxPattern = new RegExp(`(${percentPattern.source})|(${pnLocalEscPattern.source})`);\nconst pnLocalPattern = new RegExp(`((${pnCharsUPattern.source})|:|[0-9]|(${plxPattern.source}))(((${pnCharsPattern.source})|\\\\.|:|(${plxPattern.source}))*((${pnCharsPattern.source})|:|(${plxPattern.source})))?`);\nconst pNameLnPattern = new RegExp(`(${pNameNsPattern.source})(${pnLocalPattern.source})`);\nconst blankNodeLabelPattern = new RegExp(`_:((${pnCharsUPattern.source})|[0-9])(((${pnCharsPattern.source})|\\\\.)*(${pnCharsPattern.source}))?`);\nconst var1Pattern = new RegExp(`\\\\?(${varNamePattern.source})`);\nconst var2Pattern = new RegExp(`\\\\$(${varNamePattern.source})`);\nconst langTagPattern = /@[A-Za-z]+(-[\\dA-Za-z]+)*/;\nconst integerPattern = /\\d+/;\nconst decimalPattern = /\\d+\\.\\d+/;\nconst exponentPattern = /[Ee][+-]?\\d+/;\nconst doublePattern = new RegExp(`([0-9]+\\\\.[0-9]*(${exponentPattern.source}))|(\\\\.[0-9]+(${exponentPattern.source}))|([0-9]+(${exponentPattern.source}))`);\nconst interferePositivePattern = new RegExp(`\\\\+${integerPattern.source}`);\nconst decimalPositivePattern = new RegExp(`\\\\+${decimalPattern.source}`);\nconst doublePositivePattern = new RegExp(`\\\\+${doublePattern.source}`);\nconst integerNegativePattern = new RegExp(`-${integerPattern.source}`);\nconst decimalNegativePattern = new RegExp(`-${decimalPattern.source}`);\nconst doubleNegativePattern = new RegExp(`-${doublePattern.source}`);\nconst echarPattern = /\\\\[\\\\\"'bfnrt]/u;\nconst stringLiteral1Pattern = new RegExp(`'(([^\\\\u0027\\\\u005C\\\\u000A\\u000D])|(${echarPattern.source}))*'`);\nconst stringLiteral2Pattern = new RegExp(`\"(([^\\\\u0022\\\\u005C\\\\u000A\\\\u000D])|(${echarPattern.source}))*\"`);\nconst stringLiteralLong1Pattern = new RegExp(`'''(('|(''))?([^'\\\\\\\\]|(${echarPattern.source})))*'''`);\nconst stringLiteralLong2Pattern = new RegExp(`\"\"\"((\"|(\"\"))?([^\"\\\\\\\\]|(${echarPattern.source})))*\"\"\"`);\nconst wsPattern = /[\\u0009\\u000A\\u000D ]/;\nconst nilPattern = new RegExp(`\\\\((${wsPattern.source})*\\\\)`);\nconst anonPattern = new RegExp(`\\\\[(${wsPattern.source})*\\\\]`);\n\n/**\n * [[139]](https://www.w3.org/TR/sparql11-query/#rIRIREF)\n */\nexport const iriRef = createToken({ name: 'IriRef', pattern: iriRefPattern });\n/**\n * [[141]](https://www.w3.org/TR/sparql11-query/#rPNAME_LN)\n */\nexport const pNameLn = createToken({ name: 'PNameLn', pattern: pNameLnPattern });\n/**\n * [[140]](https://www.w3.org/TR/sparql11-query/#rPNAME_NS)\n */\nexport const pNameNs = createToken({ name: 'PNameNs', pattern: pNameNsPattern, longer_alt: [ pNameLn ]});\n/**\n * [[142]](https://www.w3.org/TR/sparql11-query/#rBLANK_NODE_LABEL)\n */\nexport const blankNodeLabel = createToken({ name: 'BlankNodeLabel', pattern: blankNodeLabelPattern });\n/**\n * [[143]](https://www.w3.org/TR/sparql11-query/#rVAR1)\n */\nexport const var1 = createToken({ name: 'Var1', pattern: var1Pattern });\n/**\n * [[144]](https://www.w3.org/TR/sparql11-query/#rVAR1)\n */\nexport const var2 = createToken({ name: 'Var2', pattern: var2Pattern });\n/**\n * [[145]](https://www.w3.org/TR/sparql11-query/#rLANGTAG)\n */\nexport const langTag = createToken({ name: 'LangTag', pattern: langTagPattern });\n/**\n * [[146]](https://www.w3.org/TR/sparql11-query/#rINTEGER)\n */\nexport const integer = createToken({ name: 'Integer', pattern: integerPattern });\n/**\n * [[148]](https://www.w3.org/TR/sparql11-query/#rDOUBLE)\n */\nexport const decimal = createToken({ name: 'Decimal', pattern: decimalPattern });\n/**\n * [[148]](https://www.w3.org/TR/sparql11-query/#rDOUBLE)\n */\nexport const double = createToken({ name: 'Double', pattern: doublePattern });\n/**\n * [[149]](https://www.w3.org/TR/sparql11-query/#rINTEGER_POSITIVE)\n */\nexport const integerPositive = createToken({ name: 'InterferePositive', pattern: interferePositivePattern });\n/**\n * [[150]](https://www.w3.org/TR/sparql11-query/#rDECIMAL_POSITIVE)\n */\nexport const decimalPositive = createToken({ name: 'DecimalPositive', pattern: decimalPositivePattern });\n/**\n * [[151]](https://www.w3.org/TR/sparql11-query/#rDOUBLE_POSITIVE)\n */\nexport const doublePositive = createToken({ name: 'DoublePositive', pattern: doublePositivePattern });\n/**\n * [[152]](https://www.w3.org/TR/sparql11-query/#rINTEGER_NEGATIVE)\n */\nexport const integerNegative = createToken({ name: 'IntegerNegative', pattern: integerNegativePattern });\n/**\n * [[153]](https://www.w3.org/TR/sparql11-query/#rDECIMAL_NEGATIVE)\n */\nexport const decimalNegative = createToken({ name: 'DecimalNegative', pattern: decimalNegativePattern });\n/**\n * [[154]](https://www.w3.org/TR/sparql11-query/#rDOUBLE_NEGATIVE)\n */\nexport const doubleNegative = createToken({ name: 'DoubleNegative', pattern: doubleNegativePattern });\n/**\n * [[156]](https://www.w3.org/TR/sparql11-query/#rSTRING_LITERAL1)\n */\nexport const stringLiteral1 = createToken({ name: 'StringLiteral1', pattern: stringLiteral1Pattern });\n/**\n * [[157]](https://www.w3.org/TR/sparql11-query/#rSTRING_LITERAL1)\n */\nexport const stringLiteral2 = createToken({ name: 'StringLiteral2', pattern: stringLiteral2Pattern });\n/**\n * [[158]](https://www.w3.org/TR/sparql11-query/#rSTRING_LITERAL_LONG1)\n */\nexport const stringLiteralLong1 = createToken({ name: 'StringLiteralLong1', pattern: stringLiteralLong1Pattern });\n/**\n * [[159]]https://www.w3.org/TR/sparql11-query/#rSTRING_LITERAL_LONG2)\n */\nexport const stringLiteralLong2 = createToken({ name: 'StringLiteralLong2', pattern: stringLiteralLong2Pattern });\n/**\n * https://www.w3.org/TR/sparql11-query/#rWS\n */\nexport const ws = createToken({ name: 'Ws', pattern: wsPattern, group: Lexer.SKIPPED });\nexport const comment = createToken({ name: 'Comment', pattern: /#[^\\n]*/, group: Lexer.SKIPPED });\n/**\n * [[161]](https://www.w3.org/TR/sparql11-query/#rNIL)\n */\nexport const nil = createToken({ name: 'Nil', pattern: nilPattern });\n/**\n * [[163]](https://www.w3.org/TR/sparql11-query/#rANON)\n */\nexport const anon = createToken({ name: 'Anon', pattern: anonPattern });\n\nexport const allTerminals = LexerBuilder.create().add(\n iriRef,\n pNameNs,\n pNameLn,\n blankNodeLabel,\n var1,\n var2,\n langTag,\n double,\n decimal,\n integer,\n integerPositive,\n decimalPositive,\n doublePositive,\n integerNegative,\n decimalNegative,\n doubleNegative,\n stringLiteralLong1,\n stringLiteralLong2,\n stringLiteral1,\n stringLiteral2,\n ws,\n comment,\n nil,\n anon,\n);\n"]}
|
|
1
|
+
{"version":3,"file":"terminals.js","sourceRoot":"","sources":["terminals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EACL,WAAW,EACX,qBAAqB,EACrB,cAAc,EACd,sBAAsB,EACtB,cAAc,EACd,sBAAsB,EACtB,qBAAqB,EACrB,aAAa,EACb,qBAAqB,EACrB,sBAAsB,EACtB,cAAc,EACd,wBAAwB,EACxB,aAAa,EACb,cAAc,EACd,UAAU,EACV,cAAc,EACd,cAAc,EACd,qBAAqB,EACrB,qBAAqB,EACrB,yBAAyB,EACzB,yBAAyB,EACzB,WAAW,EACX,WAAW,EACX,SAAS,GACV,MAAM,oBAAoB,CAAC;AAE5B;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;AAC9E;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC;AACjF;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,CAAE,OAAO,CAAE,EAAC,CAAC,CAAC;AACzG;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC,CAAC;AACtG;;GAEG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;AACxE;;GAEG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;AACxE;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC;AACjF;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC;AACjF;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC;AACjF;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;AAC9E;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAC;AAC7G;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,sBAAsB,EAAE,CAAC,CAAC;AACzG;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC,CAAC;AACtG;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,sBAAsB,EAAE,CAAC,CAAC;AACzG;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,sBAAsB,EAAE,CAAC,CAAC;AACzG;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC,CAAC;AACtG;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC,CAAC;AACtG;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC,CAAC;AACtG;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC,CAAC;AAClH;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC,CAAC;AAClH;;GAEG;AACH,MAAM,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;AACxF,MAAM,CAAC,MAAM,OAAO,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;AACvG;;GAEG;AACH,MAAM,CAAC,MAAM,GAAG,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;AACrE;;GAEG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;AAExE,MAAM,CAAC,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,GAAG,CACnD,MAAM,EACN,OAAO,EACP,OAAO,EACP,cAAc,EACd,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,MAAM,EACN,OAAO,EACP,OAAO,EACP,eAAe,EACf,eAAe,EACf,cAAc,EACd,eAAe,EACf,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,EAAE,EACF,OAAO,EACP,GAAG,EACH,IAAI,CACL,CAAC","sourcesContent":["import { LexerBuilder, createToken } from '@traqula/core';\nimport { Lexer } from 'chevrotain';\nimport {\n anonPattern,\n blankNodeLabelPattern,\n commentPattern,\n decimalNegativePattern,\n decimalPattern,\n decimalPositivePattern,\n doubleNegativePattern,\n doublePattern,\n doublePositivePattern,\n integerNegativePattern,\n integerPattern,\n interferePositivePattern,\n iriRefPattern,\n langTagPattern,\n nilPattern,\n pNameLnPattern,\n pNameNsPattern,\n stringLiteral1Pattern,\n stringLiteral2Pattern,\n stringLiteralLong1Pattern,\n stringLiteralLong2Pattern,\n var1Pattern,\n var2Pattern,\n wsPattern,\n} from './lexerPatterns.js';\n\n/**\n * [[139]](https://www.w3.org/TR/sparql11-query/#rIRIREF)\n */\nexport const iriRef = createToken({ name: 'IriRef', pattern: iriRefPattern });\n/**\n * [[141]](https://www.w3.org/TR/sparql11-query/#rPNAME_LN)\n */\nexport const pNameLn = createToken({ name: 'PNameLn', pattern: pNameLnPattern });\n/**\n * [[140]](https://www.w3.org/TR/sparql11-query/#rPNAME_NS)\n */\nexport const pNameNs = createToken({ name: 'PNameNs', pattern: pNameNsPattern, longer_alt: [ pNameLn ]});\n/**\n * [[142]](https://www.w3.org/TR/sparql11-query/#rBLANK_NODE_LABEL)\n */\nexport const blankNodeLabel = createToken({ name: 'BlankNodeLabel', pattern: blankNodeLabelPattern });\n/**\n * [[143]](https://www.w3.org/TR/sparql11-query/#rVAR1)\n */\nexport const var1 = createToken({ name: 'Var1', pattern: var1Pattern });\n/**\n * [[144]](https://www.w3.org/TR/sparql11-query/#rVAR1)\n */\nexport const var2 = createToken({ name: 'Var2', pattern: var2Pattern });\n/**\n * [[145]](https://www.w3.org/TR/sparql11-query/#rLANGTAG)\n */\nexport const langTag = createToken({ name: 'LangTag', pattern: langTagPattern });\n/**\n * [[146]](https://www.w3.org/TR/sparql11-query/#rINTEGER)\n */\nexport const integer = createToken({ name: 'Integer', pattern: integerPattern });\n/**\n * [[148]](https://www.w3.org/TR/sparql11-query/#rDOUBLE)\n */\nexport const decimal = createToken({ name: 'Decimal', pattern: decimalPattern });\n/**\n * [[148]](https://www.w3.org/TR/sparql11-query/#rDOUBLE)\n */\nexport const double = createToken({ name: 'Double', pattern: doublePattern });\n/**\n * [[149]](https://www.w3.org/TR/sparql11-query/#rINTEGER_POSITIVE)\n */\nexport const integerPositive = createToken({ name: 'InterferePositive', pattern: interferePositivePattern });\n/**\n * [[150]](https://www.w3.org/TR/sparql11-query/#rDECIMAL_POSITIVE)\n */\nexport const decimalPositive = createToken({ name: 'DecimalPositive', pattern: decimalPositivePattern });\n/**\n * [[151]](https://www.w3.org/TR/sparql11-query/#rDOUBLE_POSITIVE)\n */\nexport const doublePositive = createToken({ name: 'DoublePositive', pattern: doublePositivePattern });\n/**\n * [[152]](https://www.w3.org/TR/sparql11-query/#rINTEGER_NEGATIVE)\n */\nexport const integerNegative = createToken({ name: 'IntegerNegative', pattern: integerNegativePattern });\n/**\n * [[153]](https://www.w3.org/TR/sparql11-query/#rDECIMAL_NEGATIVE)\n */\nexport const decimalNegative = createToken({ name: 'DecimalNegative', pattern: decimalNegativePattern });\n/**\n * [[154]](https://www.w3.org/TR/sparql11-query/#rDOUBLE_NEGATIVE)\n */\nexport const doubleNegative = createToken({ name: 'DoubleNegative', pattern: doubleNegativePattern });\n/**\n * [[156]](https://www.w3.org/TR/sparql11-query/#rSTRING_LITERAL1)\n */\nexport const stringLiteral1 = createToken({ name: 'StringLiteral1', pattern: stringLiteral1Pattern });\n/**\n * [[157]](https://www.w3.org/TR/sparql11-query/#rSTRING_LITERAL1)\n */\nexport const stringLiteral2 = createToken({ name: 'StringLiteral2', pattern: stringLiteral2Pattern });\n/**\n * [[158]](https://www.w3.org/TR/sparql11-query/#rSTRING_LITERAL_LONG1)\n */\nexport const stringLiteralLong1 = createToken({ name: 'StringLiteralLong1', pattern: stringLiteralLong1Pattern });\n/**\n * [[159]]https://www.w3.org/TR/sparql11-query/#rSTRING_LITERAL_LONG2)\n */\nexport const stringLiteralLong2 = createToken({ name: 'StringLiteralLong2', pattern: stringLiteralLong2Pattern });\n/**\n * https://www.w3.org/TR/sparql11-query/#rWS\n */\nexport const ws = createToken({ name: 'Ws', pattern: wsPattern, group: Lexer.SKIPPED });\nexport const comment = createToken({ name: 'Comment', pattern: commentPattern, group: Lexer.SKIPPED });\n/**\n * [[161]](https://www.w3.org/TR/sparql11-query/#rNIL)\n */\nexport const nil = createToken({ name: 'Nil', pattern: nilPattern });\n/**\n * [[163]](https://www.w3.org/TR/sparql11-query/#rANON)\n */\nexport const anon = createToken({ name: 'Anon', pattern: anonPattern });\n\nexport const allTerminals = LexerBuilder.create().add(\n iriRef,\n pNameNs,\n pNameLn,\n blankNodeLabel,\n var1,\n var2,\n langTag,\n double,\n decimal,\n integer,\n integerPositive,\n decimalPositive,\n doublePositive,\n integerNegative,\n decimalNegative,\n doubleNegative,\n stringLiteralLong1,\n stringLiteralLong2,\n stringLiteral1,\n stringLiteral2,\n ws,\n comment,\n nil,\n anon,\n);\n"]}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@traqula/rules-sparql-1-1",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.19",
|
|
5
5
|
"description": "TRAQULA Lexer and Grammar Rules for sparql 1.1",
|
|
6
6
|
"lsd:module": true,
|
|
7
7
|
"license": "MIT",
|
|
@@ -42,11 +42,11 @@
|
|
|
42
42
|
"build:transpile": " node \"../../node_modules/esbuild/bin/esbuild\" --format=cjs --bundle --log-level=error --outfile=lib/index.cjs lib/index.ts"
|
|
43
43
|
},
|
|
44
44
|
"dependencies": {
|
|
45
|
-
"@traqula/core": "^0.0.
|
|
45
|
+
"@traqula/core": "^0.0.19",
|
|
46
46
|
"chevrotain": "^11.0.3"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
49
|
"@chevrotain/types": "^11.0.3"
|
|
50
50
|
},
|
|
51
|
-
"gitHead": "
|
|
51
|
+
"gitHead": "095b4ba917f7602e6c26acbf763f44e86dd97862"
|
|
52
52
|
}
|