1(attribute_item) @annotation
2(line_comment) @annotation
3
4(struct_item
5 (visibility_modifier)? @context
6 "struct" @context
7 name: (_) @name) @item
8
9(enum_item
10 (visibility_modifier)? @context
11 "enum" @context
12 name: (_) @name) @item
13
14(enum_variant
15 (visibility_modifier)? @context
16 name: (_) @name) @item
17
18(impl_item
19 "impl" @context
20 trait: (_)? @name
21 "for"? @context
22 type: (_) @name
23 body: (_ . "{" @open "}" @close .)) @item
24
25(trait_item
26 (visibility_modifier)? @context
27 "trait" @context
28 name: (_) @name) @item
29
30(function_item
31 (visibility_modifier)? @context
32 (function_modifiers)? @context
33 "fn" @context
34 name: (_) @name
35 body: (_ . "{" @open "}" @close .)) @item
36
37(function_signature_item
38 (visibility_modifier)? @context
39 (function_modifiers)? @context
40 "fn" @context
41 name: (_) @name) @item
42
43(macro_definition
44 . "macro_rules!" @context
45 name: (_) @name) @item
46
47(mod_item
48 (visibility_modifier)? @context
49 "mod" @context
50 name: (_) @name) @item
51
52(type_item
53 (visibility_modifier)? @context
54 "type" @context
55 name: (_) @name) @item
56
57(associated_type
58 "type" @context
59 name: (_) @name) @item
60
61(const_item
62 (visibility_modifier)? @context
63 "const" @context
64 name: (_) @name) @item
65
66(static_item
67 (visibility_modifier)? @context
68 "static" @context
69 name: (_) @name) @item
70
71(field_declaration
72 (visibility_modifier)? @context
73 name: (_) @name) @item