Add more items to rust outline query

Max Brunsfeld created

Change summary

crates/zed/languages/rust/outline.scm | 56 ++++++++++++++++++++++++++--
1 file changed, 51 insertions(+), 5 deletions(-)

Detailed changes

crates/zed/languages/rust/outline.scm 🔗

@@ -1,17 +1,63 @@
+(struct_item
+    (visibility_modifier)? @context
+    "struct" @context
+    name: (_) @name) @item
+
+(enum_item
+    (visibility_modifier)? @context
+    "enum" @context
+    name: (_) @name) @item
+
+(enum_variant
+    (visibility_modifier)? @context
+    name: (_) @name) @item
+
 (impl_item
     "impl" @context
+    trait: (_)? @context
+    "for"? @context
     type: (_) @name) @item
 
+(trait_item
+    (visibility_modifier)? @context
+    "trait" @context
+    name: (_) @name) @item
+
 (function_item
     (visibility_modifier)? @context
+    (function_modifiers)? @context
     "fn" @context
-    name: (identifier) @name) @item
+    name: (_) @name) @item
 
-(struct_item
+(function_signature_item
     (visibility_modifier)? @context
-    "struct" @context
-    name: (type_identifier) @name) @item
+    (function_modifiers)? @context
+    "fn" @context
+    name: (_) @name) @item
+
+(macro_definition
+    . "macro_rules!" @context
+    name: (_) @name) @item
+
+(mod_item
+    (visibility_modifier)? @context
+    "mod"
+    name: (_) @name) @item
+
+(type_item
+    (visibility_modifier)? @context
+    "type" @context
+    name: (_) @name) @item
+
+(associated_type
+    "type" @context
+    name: (_) @name) @item
+
+(const_item
+    (visibility_modifier)? @context
+    "const" @context
+    name: (_) @name) @item
 
 (field_declaration
     (visibility_modifier)? @context
-    name: (field_identifier) @name) @item
+    name: (_) @name) @item