main
Last change
on this file since d24f17c was d24f17c, checked in by Aleksandar Panovski <apano77@…>, 15 months ago |
Initial commit
|
-
Property mode
set to
100644
|
File size:
1.5 KB
|
Rev | Line | |
---|
[d24f17c] | 1 | 'use strict'
|
---|
| 2 |
|
---|
| 3 | module.exports = cypher
|
---|
| 4 | cypher.displayName = 'cypher'
|
---|
| 5 | cypher.aliases = []
|
---|
| 6 | function cypher(Prism) {
|
---|
| 7 | Prism.languages.cypher = {
|
---|
| 8 | // https://neo4j.com/docs/cypher-manual/current/syntax/comments/
|
---|
| 9 | comment: /\/\/.*/,
|
---|
| 10 | string: {
|
---|
| 11 | pattern: /"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/,
|
---|
| 12 | greedy: true
|
---|
| 13 | },
|
---|
| 14 | 'class-name': {
|
---|
| 15 | pattern: /(:\s*)(?:\w+|`(?:[^`\\\r\n])*`)(?=\s*[{):])/,
|
---|
| 16 | lookbehind: true,
|
---|
| 17 | greedy: true
|
---|
| 18 | },
|
---|
| 19 | relationship: {
|
---|
| 20 | pattern:
|
---|
| 21 | /(-\[\s*(?:\w+\s*|`(?:[^`\\\r\n])*`\s*)?:\s*|\|\s*:\s*)(?:\w+|`(?:[^`\\\r\n])*`)/,
|
---|
| 22 | lookbehind: true,
|
---|
| 23 | greedy: true,
|
---|
| 24 | alias: 'property'
|
---|
| 25 | },
|
---|
| 26 | identifier: {
|
---|
| 27 | pattern: /`(?:[^`\\\r\n])*`/,
|
---|
| 28 | greedy: true
|
---|
| 29 | },
|
---|
| 30 | variable: /\$\w+/,
|
---|
| 31 | // https://neo4j.com/docs/cypher-manual/current/syntax/reserved/
|
---|
| 32 | keyword:
|
---|
| 33 | /\b(?:ADD|ALL|AND|AS|ASC|ASCENDING|ASSERT|BY|CALL|CASE|COMMIT|CONSTRAINT|CONTAINS|CREATE|CSV|DELETE|DESC|DESCENDING|DETACH|DISTINCT|DO|DROP|ELSE|END|ENDS|EXISTS|FOR|FOREACH|IN|INDEX|IS|JOIN|KEY|LIMIT|LOAD|MANDATORY|MATCH|MERGE|NODE|NOT|OF|ON|OPTIONAL|OR|ORDER(?=\s+BY)|PERIODIC|REMOVE|REQUIRE|RETURN|SCALAR|SCAN|SET|SKIP|START|STARTS|THEN|UNION|UNIQUE|UNWIND|USING|WHEN|WHERE|WITH|XOR|YIELD)\b/i,
|
---|
| 34 | function: /\b\w+\b(?=\s*\()/,
|
---|
| 35 | boolean: /\b(?:false|null|true)\b/i,
|
---|
| 36 | number: /\b(?:0x[\da-fA-F]+|\d+(?:\.\d+)?(?:[eE][+-]?\d+)?)\b/,
|
---|
| 37 | // https://neo4j.com/docs/cypher-manual/current/syntax/operators/
|
---|
| 38 | operator: /:|<--?|--?>?|<>|=~?|[<>]=?|[+*/%^|]|\.\.\.?/,
|
---|
| 39 | punctuation: /[()[\]{},;.]/
|
---|
| 40 | }
|
---|
| 41 | }
|
---|
Note:
See
TracBrowser
for help on using the repository browser.