diff --git a/crates/zed/languages/rust/outline.scm b/crates/zed/languages/rust/outline.scm index 3f3cf62fc0..bf92b3fdfa 100644 --- a/crates/zed/languages/rust/outline.scm +++ b/crates/zed/languages/rust/outline.scm @@ -1,17 +1,63 @@ -(impl_item - "impl" @context - type: (_) @name) @item - -(function_item - (visibility_modifier)? @context - "fn" @context - name: (identifier) @name) @item - (struct_item (visibility_modifier)? @context "struct" @context - name: (type_identifier) @name) @item + 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: (_) @name) @item + +(function_signature_item + (visibility_modifier)? @context + (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