1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
#[derive(Debug, PartialEq, Eq, Clone, Copy, Hash, PartialOrd, Ord)]
#[allow(non_camel_case_types)]
#[repr(u16)]
pub enum SyntaxKind {
ERROR = 0,
MISSING,
WHITESPACE,
PREAMBLE_TYPE,
STRING_TYPE,
COMMENT_TYPE,
ENTRY_TYPE,
WORD,
L_CURLY,
R_CURLY,
L_PAREN,
R_PAREN,
COMMA,
HASH,
QUOTE,
EQUALITY_SIGN,
COMMAND_NAME,
JUNK,
PREAMBLE,
STRING,
COMMENT,
ENTRY,
FIELD,
VALUE,
TOKEN,
BRACE_GROUP,
QUOTE_GROUP,
ROOT,
}
impl SyntaxKind {
pub fn is_type(&self) -> bool {
use SyntaxKind::*;
matches!(
self,
PREAMBLE_TYPE | STRING_TYPE | COMMENT_TYPE | ENTRY_TYPE
)
}
}
impl From<SyntaxKind> for cstree::SyntaxKind {
fn from(kind: SyntaxKind) -> Self {
Self(kind as u16)
}
}
|