]> git.lizzy.rs Git - rust.git/commitdiff
use GroupLabel for type safety
authorAleksey Kladov <aleksey.kladov@gmail.com>
Tue, 5 May 2020 18:34:45 +0000 (20:34 +0200)
committerAleksey Kladov <aleksey.kladov@gmail.com>
Tue, 5 May 2020 18:34:45 +0000 (20:34 +0200)
crates/ra_assists/src/assist_ctx.rs

index 1020fed290ffc365d1d247630c26c7587a436a26..d88ae441356c600e90187d7d089914e328bd0a4e 100644 (file)
@@ -116,7 +116,8 @@ pub(crate) fn add_assist(
     }
 
     pub(crate) fn add_assist_group(self, group_name: impl Into<String>) -> AssistGroup<'a> {
-        AssistGroup { ctx: self, group: group_name.into(), assists: Vec::new() }
+        let group = GroupLabel(group_name.into());
+        AssistGroup { ctx: self, group, assists: Vec::new() }
     }
 
     pub(crate) fn token_at_offset(&self) -> TokenAtOffset<SyntaxToken> {
@@ -146,7 +147,7 @@ pub(crate) fn covering_node_for_range(&self, range: TextRange) -> SyntaxElement
 
 pub(crate) struct AssistGroup<'a> {
     ctx: AssistCtx<'a>,
-    group: String,
+    group: GroupLabel,
     assists: Vec<AssistInfo>,
 }
 
@@ -159,7 +160,7 @@ pub(crate) fn add_assist(
     ) {
         let label = AssistLabel::new(id, label.into());
 
-        let mut info = AssistInfo::new(label).with_group(GroupLabel(self.group.clone()));
+        let mut info = AssistInfo::new(label).with_group(self.group.clone());
         if self.ctx.should_compute_edit {
             let action = {
                 let mut edit = ActionBuilder::new(&self.ctx);