#[non_exhaustive]#[repr(u16)]pub enum SyntaxKind {
Show 167 variants
WHITESPACE = 0,
LINE_COMMENT = 1,
BLOCK_COMMENT = 2,
IDENT = 16,
QUOTED_IDENT = 17,
INT_LITERAL = 18,
FLOAT_LITERAL = 19,
STRING_LITERAL = 20,
PARAM = 21,
BOOL_LITERAL = 22,
NULL_LITERAL = 23,
L_PAREN = 48,
R_PAREN = 49,
L_BRACK = 50,
R_BRACK = 51,
L_BRACE = 52,
R_BRACE = 53,
COMMA = 54,
SEMI = 55,
COLON = 56,
DOUBLE_COLON = 57,
DOT = 58,
DOT_DOT = 59,
PIPE = 60,
STAR = 61,
PLUS = 62,
MINUS = 63,
SLASH = 64,
PERCENT = 65,
CARET = 66,
EQ = 67,
NEQ = 68,
BANG_EQ = 69,
LT = 70,
LE = 71,
GT = 72,
GE = 73,
ARROW_R = 74,
ARROW_L = 75,
REGEX_EQ = 76,
DOLLAR = 77,
BANG = 78,
AMP = 79,
MATCH_KW = 128,
OPTIONAL_KW = 129,
WHERE_KW = 130,
WITH_KW = 131,
RETURN_KW = 132,
CREATE_KW = 133,
MERGE_KW = 134,
DELETE_KW = 135,
DETACH_KW = 136,
SET_KW = 137,
REMOVE_KW = 138,
UNWIND_KW = 139,
CALL_KW = 140,
YIELD_KW = 141,
ON_KW = 142,
AS_KW = 143,
AND_KW = 144,
OR_KW = 145,
XOR_KW = 146,
NOT_KW = 147,
IN_KW = 148,
IS_KW = 149,
NULL_KW = 150,
TRUE_KW = 151,
FALSE_KW = 152,
CASE_KW = 153,
WHEN_KW = 154,
THEN_KW = 155,
ELSE_KW = 156,
END_KW = 157,
ORDER_KW = 158,
BY_KW = 159,
ASC_KW = 160,
ASCENDING_KW = 161,
DESC_KW = 162,
DESCENDING_KW = 163,
SKIP_KW = 164,
LIMIT_KW = 165,
DISTINCT_KW = 166,
UNION_KW = 167,
ALL_KW = 168,
STARTS_KW = 169,
ENDS_KW = 170,
CONTAINS_KW = 171,
DIV_KW = 172,
MOD_KW = 173,
COUNT_KW = 174,
EXISTS_KW = 175,
SHORTESTPATH_KW = 176,
ALLSHORTESTPATHS_KW = 177,
ANY_KW = 178,
NONE_KW = 179,
SINGLE_KW = 180,
SOURCE_FILE = 320,
STATEMENT = 321,
MATCH_CLAUSE = 322,
OPTIONAL_MATCH_CLAUSE = 323,
WHERE_CLAUSE = 324,
WITH_CLAUSE = 325,
RETURN_CLAUSE = 326,
CREATE_CLAUSE = 327,
MERGE_CLAUSE = 328,
SET_CLAUSE = 329,
REMOVE_CLAUSE = 330,
DELETE_CLAUSE = 331,
UNWIND_CLAUSE = 332,
CALL_CLAUSE = 333,
UNION_TAIL = 334,
MERGE_ACTION = 335,
RETURN_BODY = 336,
RETURN_ITEMS = 337,
RETURN_ITEM = 338,
ORDER_BY = 339,
ORDER_ITEM = 340,
SKIP_SUBCLAUSE = 341,
LIMIT_SUBCLAUSE = 342,
PATTERN = 343,
PATTERN_PART = 344,
NAMED_PATTERN_PART = 345,
NODE_PATTERN = 346,
REL_PATTERN = 347,
REL_DETAIL = 348,
REL_LENGTH = 349,
LABEL_EXPR = 350,
REL_TYPE_EXPR = 351,
PROPERTY_MAP = 352,
SET_ITEM = 353,
REMOVE_ITEM = 354,
YIELD_SUBCLAUSE = 355,
YIELD_ITEM = 356,
PROCEDURE_NAME = 357,
BINARY_EXPR = 358,
UNARY_EXPR = 359,
POSTFIX_EXPR = 360,
LITERAL_EXPR = 361,
VAR_EXPR = 362,
PROP_ACCESS_EXPR = 363,
SUBSCRIPT_EXPR = 364,
LIST_LITERAL = 365,
MAP_LITERAL = 366,
MAP_PROJECTION = 367,
MAP_PROJECTION_ITEM = 368,
CASE_EXPR = 369,
CASE_WHEN_ARM = 370,
CASE_ELSE_ARM = 371,
FUNCTION_CALL = 372,
CALL_ARGS = 373,
PAREN_EXPR = 374,
LIST_COMPREHENSION = 375,
PATTERN_COMPREHENSION = 376,
PATTERN_PREDICATE = 377,
PARAM_EXPR = 378,
IS_NULL_EXPR = 379,
IN_EXPR = 380,
REGEX_MATCH_EXPR = 381,
STRING_OP_EXPR = 382,
NAME = 383,
ARG_LIST = 384,
INDEX_EXPR = 385,
SLICE_EXPR = 386,
LIST_PREDICATE_EXPR = 387,
SHORTEST_PATH_PATTERN = 388,
ERROR = 768,
EOF = 769,
}Expand description
Every syntactic category in Cypher: tokens, nodes, and meta.
repr(u16) so it can be used directly as a rowan kind.
Marked #[non_exhaustive] per spec §4.4: consumers must use a
wildcard arm when matching, so the grammar can grow without
breaking every downstream match.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
WHITESPACE = 0
LINE_COMMENT = 1
BLOCK_COMMENT = 2
IDENT = 16
QUOTED_IDENT = 17
INT_LITERAL = 18
FLOAT_LITERAL = 19
STRING_LITERAL = 20
PARAM = 21
BOOL_LITERAL = 22
NULL_LITERAL = 23
L_PAREN = 48
R_PAREN = 49
L_BRACK = 50
R_BRACK = 51
L_BRACE = 52
R_BRACE = 53
COMMA = 54
SEMI = 55
COLON = 56
DOUBLE_COLON = 57
DOT = 58
DOT_DOT = 59
PIPE = 60
STAR = 61
PLUS = 62
MINUS = 63
SLASH = 64
PERCENT = 65
CARET = 66
EQ = 67
NEQ = 68
BANG_EQ = 69
LT = 70
LE = 71
GT = 72
GE = 73
ARROW_R = 74
ARROW_L = 75
REGEX_EQ = 76
DOLLAR = 77
BANG = 78
AMP = 79
MATCH_KW = 128
OPTIONAL_KW = 129
WHERE_KW = 130
WITH_KW = 131
RETURN_KW = 132
CREATE_KW = 133
MERGE_KW = 134
DELETE_KW = 135
DETACH_KW = 136
SET_KW = 137
REMOVE_KW = 138
UNWIND_KW = 139
CALL_KW = 140
YIELD_KW = 141
ON_KW = 142
AS_KW = 143
AND_KW = 144
OR_KW = 145
XOR_KW = 146
NOT_KW = 147
IN_KW = 148
IS_KW = 149
NULL_KW = 150
TRUE_KW = 151
FALSE_KW = 152
CASE_KW = 153
WHEN_KW = 154
THEN_KW = 155
ELSE_KW = 156
END_KW = 157
ORDER_KW = 158
BY_KW = 159
ASC_KW = 160
ASCENDING_KW = 161
DESC_KW = 162
DESCENDING_KW = 163
SKIP_KW = 164
LIMIT_KW = 165
DISTINCT_KW = 166
UNION_KW = 167
ALL_KW = 168
STARTS_KW = 169
ENDS_KW = 170
CONTAINS_KW = 171
DIV_KW = 172
MOD_KW = 173
COUNT_KW = 174
EXISTS_KW = 175
SHORTESTPATH_KW = 176
ALLSHORTESTPATHS_KW = 177
ANY_KW = 178
NONE_KW = 179
SINGLE_KW = 180
SOURCE_FILE = 320
STATEMENT = 321
MATCH_CLAUSE = 322
OPTIONAL_MATCH_CLAUSE = 323
WHERE_CLAUSE = 324
WITH_CLAUSE = 325
RETURN_CLAUSE = 326
CREATE_CLAUSE = 327
MERGE_CLAUSE = 328
SET_CLAUSE = 329
REMOVE_CLAUSE = 330
DELETE_CLAUSE = 331
UNWIND_CLAUSE = 332
CALL_CLAUSE = 333
UNION_TAIL = 334
MERGE_ACTION = 335
RETURN_BODY = 336
RETURN_ITEMS = 337
RETURN_ITEM = 338
ORDER_BY = 339
ORDER_ITEM = 340
SKIP_SUBCLAUSE = 341
LIMIT_SUBCLAUSE = 342
PATTERN = 343
PATTERN_PART = 344
NAMED_PATTERN_PART = 345
NODE_PATTERN = 346
REL_PATTERN = 347
REL_DETAIL = 348
REL_LENGTH = 349
LABEL_EXPR = 350
REL_TYPE_EXPR = 351
PROPERTY_MAP = 352
SET_ITEM = 353
REMOVE_ITEM = 354
YIELD_SUBCLAUSE = 355
YIELD_ITEM = 356
PROCEDURE_NAME = 357
BINARY_EXPR = 358
UNARY_EXPR = 359
POSTFIX_EXPR = 360
LITERAL_EXPR = 361
VAR_EXPR = 362
PROP_ACCESS_EXPR = 363
SUBSCRIPT_EXPR = 364
LIST_LITERAL = 365
MAP_LITERAL = 366
MAP_PROJECTION = 367
MAP_PROJECTION_ITEM = 368
CASE_EXPR = 369
CASE_WHEN_ARM = 370
CASE_ELSE_ARM = 371
FUNCTION_CALL = 372
CALL_ARGS = 373
PAREN_EXPR = 374
LIST_COMPREHENSION = 375
PATTERN_COMPREHENSION = 376
PATTERN_PREDICATE = 377
PARAM_EXPR = 378
IS_NULL_EXPR = 379
IN_EXPR = 380
REGEX_MATCH_EXPR = 381
STRING_OP_EXPR = 382
NAME = 383
ARG_LIST = 384
INDEX_EXPR = 385
SLICE_EXPR = 386
LIST_PREDICATE_EXPR = 387
SHORTEST_PATH_PATTERN = 388
ERROR = 768
EOF = 769
Implementations§
Source§impl SyntaxKind
impl SyntaxKind
Sourcepub fn from_u16(raw: u16) -> Option<Self>
pub fn from_u16(raw: u16) -> Option<Self>
Convert a raw u16 back into a SyntaxKind. Returns None for
values not in the enumeration.
Sourcepub const fn is_trivia(self) -> bool
pub const fn is_trivia(self) -> bool
Returns true for the trivia zone (whitespace and comments).
use cyrs_syntax::SyntaxKind;
assert!(SyntaxKind::WHITESPACE.is_trivia());
assert!(!SyntaxKind::IDENT.is_trivia());Sourcepub const fn is_keyword(self) -> bool
pub const fn is_keyword(self) -> bool
Returns true for the keyword zone (MATCH_KW..=SINGLE_KW).
Sourcepub const fn is_literal(self) -> bool
pub const fn is_literal(self) -> bool
Returns true for literal-shaped tokens: numeric, string, boolean,
null, and parameter tokens ($name / $0).
Trait Implementations§
Source§impl Clone for SyntaxKind
impl Clone for SyntaxKind
Source§fn clone(&self) -> SyntaxKind
fn clone(&self) -> SyntaxKind
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SyntaxKind
impl Debug for SyntaxKind
Source§impl Hash for SyntaxKind
impl Hash for SyntaxKind
Source§impl Ord for SyntaxKind
impl Ord for SyntaxKind
Source§fn cmp(&self, other: &SyntaxKind) -> Ordering
fn cmp(&self, other: &SyntaxKind) -> Ordering
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq for SyntaxKind
impl PartialEq for SyntaxKind
Source§fn eq(&self, other: &SyntaxKind) -> bool
fn eq(&self, other: &SyntaxKind) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl PartialOrd for SyntaxKind
impl PartialOrd for SyntaxKind
impl Copy for SyntaxKind
impl Eq for SyntaxKind
impl StructuralPartialEq for SyntaxKind
Auto Trait Implementations§
impl Freeze for SyntaxKind
impl RefUnwindSafe for SyntaxKind
impl Send for SyntaxKind
impl Sync for SyntaxKind
impl Unpin for SyntaxKind
impl UnsafeUnpin for SyntaxKind
impl UnwindSafe for SyntaxKind
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more