@@ -65,21 +65,23 @@ pub(crate) fn completions(
65
65
let ctx = CompletionContext :: new ( db, position, config) ?;
66
66
67
67
let mut acc = Completions :: default ( ) ;
68
-
69
- complete_fn_param:: complete_fn_param ( & mut acc, & ctx) ;
70
- complete_keyword:: complete_expr_keyword ( & mut acc, & ctx) ;
71
- complete_keyword:: complete_use_tree_keyword ( & mut acc, & ctx) ;
72
- complete_snippet:: complete_expr_snippet ( & mut acc, & ctx) ;
73
- complete_snippet:: complete_item_snippet ( & mut acc, & ctx) ;
74
- complete_qualified_path:: complete_qualified_path ( & mut acc, & ctx) ;
75
- complete_unqualified_path:: complete_unqualified_path ( & mut acc, & ctx) ;
76
- complete_dot:: complete_dot ( & mut acc, & ctx) ;
77
- complete_record:: complete_record ( & mut acc, & ctx) ;
78
- complete_pattern:: complete_pattern ( & mut acc, & ctx) ;
79
- complete_postfix:: complete_postfix ( & mut acc, & ctx) ;
80
- complete_macro_in_item_position:: complete_macro_in_item_position ( & mut acc, & ctx) ;
81
- complete_trait_impl:: complete_trait_impl ( & mut acc, & ctx) ;
82
- complete_attribute:: complete_attribute ( & mut acc, & ctx) ;
68
+ if ctx. attribute_under_caret . is_some ( ) {
69
+ complete_attribute:: complete_attribute ( & mut acc, & ctx) ;
70
+ } else {
71
+ complete_fn_param:: complete_fn_param ( & mut acc, & ctx) ;
72
+ complete_keyword:: complete_expr_keyword ( & mut acc, & ctx) ;
73
+ complete_keyword:: complete_use_tree_keyword ( & mut acc, & ctx) ;
74
+ complete_snippet:: complete_expr_snippet ( & mut acc, & ctx) ;
75
+ complete_snippet:: complete_item_snippet ( & mut acc, & ctx) ;
76
+ complete_qualified_path:: complete_qualified_path ( & mut acc, & ctx) ;
77
+ complete_unqualified_path:: complete_unqualified_path ( & mut acc, & ctx) ;
78
+ complete_dot:: complete_dot ( & mut acc, & ctx) ;
79
+ complete_record:: complete_record ( & mut acc, & ctx) ;
80
+ complete_pattern:: complete_pattern ( & mut acc, & ctx) ;
81
+ complete_postfix:: complete_postfix ( & mut acc, & ctx) ;
82
+ complete_macro_in_item_position:: complete_macro_in_item_position ( & mut acc, & ctx) ;
83
+ complete_trait_impl:: complete_trait_impl ( & mut acc, & ctx) ;
84
+ }
83
85
84
86
Some ( acc)
85
87
}
0 commit comments