138 lines
1.4 KiB
Scheme
138 lines
1.4 KiB
Scheme
(type_identifier) @type
|
|
|
|
(identifier) @variable
|
|
|
|
[
|
|
(primitive_type)
|
|
(alph_token_id)
|
|
] @type.builtin
|
|
|
|
(var_declaration) @variable
|
|
|
|
(struct_field
|
|
(identifier) @variable.member)
|
|
|
|
(arg_def
|
|
(identifier) @variable.parameter)
|
|
|
|
(event_field
|
|
(identifier) @variable.parameter)
|
|
|
|
(struct_constructor_field
|
|
(identifier) @variable.parameter)
|
|
|
|
[
|
|
(hex_num)
|
|
(integer)
|
|
(typed_num)
|
|
] @number
|
|
|
|
[
|
|
(bool)
|
|
(bytes)
|
|
(address)
|
|
] @constant.builtin
|
|
|
|
(func_id
|
|
[
|
|
(identifier)
|
|
"!"
|
|
] @function)
|
|
|
|
(annotation
|
|
[
|
|
"@"
|
|
(identifier)
|
|
] @attribute)
|
|
|
|
(map_def
|
|
(identifier) @variable.parameter)
|
|
|
|
"fn" @keyword.function
|
|
|
|
[
|
|
"Contract"
|
|
"TxScript"
|
|
"Interface"
|
|
"AssetScript"
|
|
"struct"
|
|
"enum"
|
|
"event"
|
|
"mapping"
|
|
] @keyword.type
|
|
|
|
[
|
|
"pub"
|
|
"Abstract"
|
|
(mutable)
|
|
] @keyword.modifier
|
|
|
|
[
|
|
"while"
|
|
"for"
|
|
] @keyword.repeat
|
|
|
|
"return" @keyword.return
|
|
|
|
[
|
|
"if"
|
|
"else"
|
|
] @keyword.conditional
|
|
|
|
[
|
|
"const"
|
|
"let"
|
|
"emit"
|
|
"extends"
|
|
"embeds"
|
|
"implements"
|
|
] @keyword
|
|
|
|
[
|
|
"("
|
|
")"
|
|
"["
|
|
"]"
|
|
"{"
|
|
"}"
|
|
] @punctuation.bracket
|
|
|
|
[
|
|
"."
|
|
","
|
|
":"
|
|
";"
|
|
] @punctuation.delimiter
|
|
|
|
[
|
|
"="
|
|
"->"
|
|
(op_byte_vec_add)
|
|
(op_add)
|
|
(op_sub)
|
|
(op_mul)
|
|
(op_exp)
|
|
(op_mod_exp)
|
|
(op_div)
|
|
(op_mod)
|
|
(op_mod_add)
|
|
(op_mod_sub)
|
|
(op_mod_mul)
|
|
(op_shl)
|
|
(op_shr)
|
|
(op_bit_and)
|
|
(op_xor)
|
|
(op_bit_or)
|
|
(op_eq)
|
|
(op_ne)
|
|
(op_lt)
|
|
(op_le)
|
|
(op_gt)
|
|
(op_ge)
|
|
(op_and)
|
|
(op_or)
|
|
(op_not)
|
|
] @operator
|
|
|
|
(line_comment) @comment @spell
|