Unnamed repository; edit this file 'description' to name the repository.
fix: generate function by indet token
Hmikihiro 9 months ago
parent 5248c89 · commit cfd4103
-rw-r--r--crates/ide-assists/src/handlers/generate_function.rs30
1 files changed, 29 insertions, 1 deletions
diff --git a/crates/ide-assists/src/handlers/generate_function.rs b/crates/ide-assists/src/handlers/generate_function.rs
index efdb20c1e9..88ed6f9ce1 100644
--- a/crates/ide-assists/src/handlers/generate_function.rs
+++ b/crates/ide-assists/src/handlers/generate_function.rs
@@ -316,7 +316,7 @@ impl FunctionBuilder {
let current_module = ctx.sema.scope(call.syntax())?.module();
let visibility = calculate_necessary_visibility(current_module, target_module, ctx);
- let fn_name = make::name(&name.text());
+ let fn_name = make::name(name.ident_token()?.text());
let mut necessary_generic_params = FxHashSet::default();
necessary_generic_params.extend(receiver_ty.generic_params(ctx.db()));
let params = fn_args(
@@ -3131,4 +3131,32 @@ fn main() {
"#,
)
}
+
+ #[test]
+ fn no_generate_method_by_keyword() {
+ check_assist_not_applicable(
+ generate_function,
+ r#"
+fn main() {
+ s.super$0();
+}
+ "#,
+ );
+ check_assist_not_applicable(
+ generate_function,
+ r#"
+fn main() {
+ s.Self$0();
+}
+ "#,
+ );
+ check_assist_not_applicable(
+ generate_function,
+ r#"
+fn main() {
+ s.self$0();
+}
+ "#,
+ );
+ }
}