annotate vendor/github.com/alecthomas/chroma/v2/lexers/cql.go @ 66:787b5ee0289d draft

Use vendored modules Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>
author yakumo.izuru
date Sun, 23 Jul 2023 13:18:53 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
66
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
1 package lexers
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
2
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
3 import (
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
4 . "github.com/alecthomas/chroma/v2" // nolint
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
5 )
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
6
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
7 // CassandraCQL lexer.
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
8 var CassandraCQL = Register(MustNewLexer(
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
9 &Config{
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
10 Name: "Cassandra CQL",
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
11 Aliases: []string{"cassandra", "cql"},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
12 Filenames: []string{"*.cql"},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
13 MimeTypes: []string{"text/x-cql"},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
14 NotMultiline: true,
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
15 CaseInsensitive: true,
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
16 },
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
17 cassandraCQLRules,
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
18 ))
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
19
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
20 func cassandraCQLRules() Rules {
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
21 return Rules{
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
22 "root": {
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
23 {`\s+`, TextWhitespace, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
24 {`(--|\/\/).*\n?`, CommentSingle, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
25 {`/\*`, CommentMultiline, Push("multiline-comments")},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
26 {`(ascii|bigint|blob|boolean|counter|date|decimal|double|float|frozen|inet|int|list|map|set|smallint|text|time|timestamp|timeuuid|tinyint|tuple|uuid|varchar|varint)\b`, NameBuiltin, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
27 {Words(``, `\b`, `ADD`, `AGGREGATE`, `ALL`, `ALLOW`, `ALTER`, `AND`, `ANY`, `APPLY`, `AS`, `ASC`, `AUTHORIZE`, `BATCH`, `BEGIN`, `BY`, `CLUSTERING`, `COLUMNFAMILY`, `COMPACT`, `CONSISTENCY`, `COUNT`, `CREATE`, `CUSTOM`, `DELETE`, `DESC`, `DISTINCT`, `DROP`, `EACH_QUORUM`, `ENTRIES`, `EXISTS`, `FILTERING`, `FROM`, `FULL`, `GRANT`, `IF`, `IN`, `INDEX`, `INFINITY`, `INSERT`, `INTO`, `KEY`, `KEYS`, `KEYSPACE`, `KEYSPACES`, `LEVEL`, `LIMIT`, `LOCAL_ONE`, `LOCAL_QUORUM`, `MATERIALIZED`, `MODIFY`, `NAN`, `NORECURSIVE`, `NOSUPERUSER`, `NOT`, `OF`, `ON`, `ONE`, `ORDER`, `PARTITION`, `PASSWORD`, `PER`, `PERMISSION`, `PERMISSIONS`, `PRIMARY`, `QUORUM`, `RENAME`, `REVOKE`, `SCHEMA`, `SELECT`, `STATIC`, `STORAGE`, `SUPERUSER`, `TABLE`, `THREE`, `TO`, `TOKEN`, `TRUNCATE`, `TTL`, `TWO`, `TYPE`, `UNLOGGED`, `UPDATE`, `USE`, `USER`, `USERS`, `USING`, `VALUES`, `VIEW`, `WHERE`, `WITH`, `WRITETIME`, `REPLICATION`, `OR`, `REPLACE`, `FUNCTION`, `CALLED`, `INPUT`, `RETURNS`, `LANGUAGE`, `ROLE`, `ROLES`, `TRIGGER`, `DURABLE_WRITES`, `LOGIN`, `OPTIONS`, `LOGGED`, `SFUNC`, `STYPE`, `FINALFUNC`, `INITCOND`, `IS`, `CONTAINS`, `JSON`, `PAGING`, `OFF`), Keyword, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
28 {"[+*/<>=~!@#%^&|`?-]+", Operator, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
29 {
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
30 `(?s)(java|javascript)(\s+)(AS)(\s+)('|\$\$)(.*?)(\5)`,
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
31 UsingByGroup(1, 6,
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
32 NameBuiltin, TextWhitespace, Keyword, TextWhitespace,
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
33 LiteralStringHeredoc, LiteralStringHeredoc, LiteralStringHeredoc),
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
34 nil,
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
35 },
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
36 {`(true|false|null)\b`, KeywordConstant, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
37 {`0x[0-9a-f]+`, LiteralNumberHex, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
38 {`[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}`, LiteralNumberHex, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
39 {`\.[0-9]+(e[+-]?[0-9]+)?`, Error, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
40 {`-?[0-9]+(\.[0-9])?(e[+-]?[0-9]+)?`, LiteralNumberFloat, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
41 {`[0-9]+`, LiteralNumberInteger, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
42 {`'`, LiteralStringSingle, Push("string")},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
43 {`"`, LiteralStringName, Push("quoted-ident")},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
44 {`\$\$`, LiteralStringHeredoc, Push("dollar-string")},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
45 {`[a-z_]\w*`, Name, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
46 {`:(['"]?)[a-z]\w*\b\1`, NameVariable, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
47 {`[;:()\[\]\{\},.]`, Punctuation, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
48 },
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
49 "multiline-comments": {
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
50 {`/\*`, CommentMultiline, Push("multiline-comments")},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
51 {`\*/`, CommentMultiline, Pop(1)},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
52 {`[^/*]+`, CommentMultiline, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
53 {`[/*]`, CommentMultiline, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
54 },
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
55 "string": {
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
56 {`[^']+`, LiteralStringSingle, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
57 {`''`, LiteralStringSingle, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
58 {`'`, LiteralStringSingle, Pop(1)},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
59 },
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
60 "quoted-ident": {
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
61 {`[^"]+`, LiteralStringName, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
62 {`""`, LiteralStringName, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
63 {`"`, LiteralStringName, Pop(1)},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
64 },
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
65 "dollar-string": {
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
66 {`[^\$]+`, LiteralStringHeredoc, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
67 {`\$\$`, LiteralStringHeredoc, Pop(1)},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
68 },
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
69 }
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
70 }