blob: a48c007ed0d8ffe0552aa0347788ed3cff59e86c (
plain) (
blame)
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
|
; Preproc
[
(unique_id)
(top_level_annotation_body)
] @keyword.directive
; Includes
[
"import"
"$import"
"embed"
"using"
] @keyword.import
(import_path) @string.special.path
; Keywords
"extends" @keyword
[
"struct"
"interface"
"union"
"enum"
"annotation"
"group"
"namespace"
] @keyword.type
; Builtins
"const" @keyword.modifier
[
(primitive_type)
"List"
] @type.builtin
; Typedefs
(type_definition) @type.definition
; Labels (@number, @number!)
(field_version) @label
; Methods
[
(annotation_definition_identifier)
(method_identifier)
] @function.method
; Fields
(field_identifier) @variable.member
; Properties
(property) @property
; Parameters
[
(param_identifier)
(return_identifier)
] @variable.parameter
(annotation_target) @variable.parameter.builtin
; Constants
[
(const_identifier)
(local_const)
(enum_member)
] @constant
(void) @constant.builtin
; Types
[
(enum_identifier)
(extend_type)
(type_identifier)
] @type
; Attributes
[
(annotation_identifier)
(attribute)
] @attribute
; Operators
"=" @operator
; Literals
[
(string)
(concatenated_string)
(block_text)
(namespace)
] @string
(namespace) @string.special
(escape_sequence) @string.escape
(data_string) @string.special
(number) @number
(float) @number.float
(boolean) @boolean
(data_hex) @string.special.symbol
; Punctuation
[
"*"
"$"
":"
] @punctuation.special
[
"{"
"}"
] @punctuation.bracket
[
"("
")"
] @punctuation.bracket
[
"["
"]"
] @punctuation.bracket
[
"."
","
";"
"->"
] @punctuation.delimiter
; Comments
(comment) @comment @spell
|