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) @item
35
36(function_signature_item
37 (visibility_modifier)? @context
38 (function_modifiers)? @context
39 "fn" @context
40 name: (_) @name) @item
41
42(macro_definition
43 . "macro_rules!" @context
44 name: (_) @name) @item
45
46(mod_item
47 (visibility_modifier)? @context
48 "mod" @context
49 name: (_) @name) @item
50
51(type_item
52 (visibility_modifier)? @context
53 "type" @context
54 name: (_) @name) @item
55
56(associated_type
57 "type" @context
58 name: (_) @name) @item
59
60(const_item
61 (visibility_modifier)? @context
62 "const" @context
63 name: (_) @name) @item
64
65(static_item
66 (visibility_modifier)? @context
67 "static" @context
68 name: (_) @name) @item
69
70(field_declaration
71 (visibility_modifier)? @context
72 name: (_) @name) @item