diff --git a/crates/squawk_ide/src/code_actions/add_explicit_alias.rs b/crates/squawk_ide/src/code_actions/add_explicit_alias.rs index 9655e06f..43abf8ce 100644 --- a/crates/squawk_ide/src/code_actions/add_explicit_alias.rs +++ b/crates/squawk_ide/src/code_actions/add_explicit_alias.rs @@ -1,5 +1,6 @@ use rowan::TextSize; use salsa::Database as Db; +use squawk_linter::Edit; use squawk_syntax::ast::{self, AstNode}; use squawk_syntax::quote::quote_column_alias; @@ -35,7 +36,7 @@ pub(super) fn add_explicit_alias( actions.push(CodeAction { title: "Add explicit alias".to_owned(), - edits: vec![squawk_linter::Edit::insert(replacement, expr_end)], + edits: vec![Edit::insert(replacement, expr_end)], kind: ActionKind::RefactorRewrite, }); diff --git a/crates/squawk_ide/src/code_actions/add_schema.rs b/crates/squawk_ide/src/code_actions/add_schema.rs index 56dffad5..96a4de0f 100644 --- a/crates/squawk_ide/src/code_actions/add_schema.rs +++ b/crates/squawk_ide/src/code_actions/add_schema.rs @@ -1,5 +1,6 @@ use rowan::TextSize; use salsa::Database as Db; +use squawk_linter::Edit; use squawk_syntax::ast::{self, AstNode}; use super::{ActionKind, CodeAction}; @@ -45,7 +46,7 @@ pub(super) fn add_schema( actions.push(CodeAction { title: "Add schema".to_owned(), - edits: vec![squawk_linter::Edit::insert(replacement, position)], + edits: vec![Edit::insert(replacement, position)], kind: ActionKind::RefactorRewrite, }); diff --git a/crates/squawk_ide/src/code_actions/quote_identifier.rs b/crates/squawk_ide/src/code_actions/quote_identifier.rs index 2e4e574c..2374745d 100644 --- a/crates/squawk_ide/src/code_actions/quote_identifier.rs +++ b/crates/squawk_ide/src/code_actions/quote_identifier.rs @@ -1,5 +1,6 @@ use rowan::TextSize; use salsa::Database as Db; +use squawk_linter::Edit; use squawk_syntax::ast::{self, AstNode}; use crate::{db::File, offsets::token_from_offset}; @@ -35,7 +36,7 @@ pub(super) fn quote_identifier( actions.push(CodeAction { title: "Quote identifier".to_owned(), - edits: vec![squawk_linter::Edit::replace(text_range, quoted)], + edits: vec![Edit::replace(text_range, quoted)], kind: ActionKind::RefactorRewrite, }); diff --git a/crates/squawk_ide/src/code_actions/remove_redundant_alias.rs b/crates/squawk_ide/src/code_actions/remove_redundant_alias.rs index f8c3a622..7c010997 100644 --- a/crates/squawk_ide/src/code_actions/remove_redundant_alias.rs +++ b/crates/squawk_ide/src/code_actions/remove_redundant_alias.rs @@ -1,5 +1,6 @@ use rowan::{TextRange, TextSize}; use salsa::Database as Db; +use squawk_linter::Edit; use squawk_syntax::ast::{self, AstNode}; use crate::{column_name::ColumnName, db::File, offsets::token_from_offset, symbols::Name}; @@ -30,9 +31,7 @@ pub(super) fn remove_redundant_alias( actions.push(CodeAction { title: "Remove redundant alias".to_owned(), - edits: vec![squawk_linter::Edit::delete(TextRange::new( - expr_end, alias_end, - ))], + edits: vec![Edit::delete(TextRange::new(expr_end, alias_end))], kind: ActionKind::QuickFix, }); diff --git a/crates/squawk_ide/src/code_actions/rewrite_as_dollar_quoted_string.rs b/crates/squawk_ide/src/code_actions/rewrite_as_dollar_quoted_string.rs index f91ebee4..c4097b6b 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_as_dollar_quoted_string.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_as_dollar_quoted_string.rs @@ -1,5 +1,6 @@ use rowan::TextSize; use salsa::Database as Db; +use squawk_linter::Edit; use squawk_syntax::{SyntaxKind, ast::AstNode}; use crate::db::{File, parse}; @@ -21,10 +22,7 @@ pub(super) fn rewrite_as_dollar_quoted_string( let replacement = string_to_dollar_quoted(string.text())?; actions.push(CodeAction { title: "Rewrite as dollar-quoted string".to_owned(), - edits: vec![squawk_linter::Edit::replace( - string.text_range(), - replacement, - )], + edits: vec![Edit::replace(string.text_range(), replacement)], kind: ActionKind::RefactorRewrite, }); diff --git a/crates/squawk_ide/src/code_actions/rewrite_as_regular_string.rs b/crates/squawk_ide/src/code_actions/rewrite_as_regular_string.rs index 51439744..b5dc1cf5 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_as_regular_string.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_as_regular_string.rs @@ -1,5 +1,6 @@ use rowan::TextSize; use salsa::Database as Db; +use squawk_linter::Edit; use squawk_syntax::{SyntaxKind, ast::AstNode}; use crate::db::{File, parse}; @@ -21,10 +22,7 @@ pub(super) fn rewrite_as_regular_string( let replacement = dollar_quoted_to_string(dollar_string.text())?; actions.push(CodeAction { title: "Rewrite as regular string".to_owned(), - edits: vec![squawk_linter::Edit::replace( - dollar_string.text_range(), - replacement, - )], + edits: vec![Edit::replace(dollar_string.text_range(), replacement)], kind: ActionKind::RefactorRewrite, }); diff --git a/crates/squawk_ide/src/code_actions/rewrite_between_as_binary_expression.rs b/crates/squawk_ide/src/code_actions/rewrite_between_as_binary_expression.rs index 6651f0f9..3b246fe1 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_between_as_binary_expression.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_between_as_binary_expression.rs @@ -1,5 +1,6 @@ use rowan::TextSize; use salsa::Database as Db; +use squawk_linter::Edit; use squawk_syntax::ast::AstNode; use crate::{db::File, offsets::token_from_offset}; @@ -45,7 +46,7 @@ pub(super) fn rewrite_between_as_binary_expression( actions.push(CodeAction { title: "Rewrite as binary expression".to_owned(), - edits: vec![squawk_linter::Edit::replace( + edits: vec![Edit::replace( between_expr.syntax().text_range(), replacement, )], diff --git a/crates/squawk_ide/src/code_actions/rewrite_cast_to_double_colon.rs b/crates/squawk_ide/src/code_actions/rewrite_cast_to_double_colon.rs index c0a48b6d..6f859523 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_cast_to_double_colon.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_cast_to_double_colon.rs @@ -1,5 +1,6 @@ use rowan::TextSize; use salsa::Database as Db; +use squawk_linter::Edit; use squawk_syntax::ast::{self, AstNode}; use crate::{db::File, offsets::token_from_offset}; @@ -29,10 +30,7 @@ pub(super) fn rewrite_cast_to_double_colon( actions.push(CodeAction { title: "Rewrite as cast operator `::`".to_owned(), - edits: vec![squawk_linter::Edit::replace( - cast_expr.syntax().text_range(), - replacement, - )], + edits: vec![Edit::replace(cast_expr.syntax().text_range(), replacement)], kind: ActionKind::RefactorRewrite, }); diff --git a/crates/squawk_ide/src/code_actions/rewrite_double_colon_to_cast.rs b/crates/squawk_ide/src/code_actions/rewrite_double_colon_to_cast.rs index 75cf9afa..4d88ecf7 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_double_colon_to_cast.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_double_colon_to_cast.rs @@ -1,5 +1,6 @@ use rowan::TextSize; use salsa::Database as Db; +use squawk_linter::Edit; use squawk_syntax::ast::{self, AstNode}; use crate::{db::File, offsets::token_from_offset}; @@ -29,10 +30,7 @@ pub(super) fn rewrite_double_colon_to_cast( actions.push(CodeAction { title: "Rewrite as cast function `cast()`".to_owned(), - edits: vec![squawk_linter::Edit::replace( - cast_expr.syntax().text_range(), - replacement, - )], + edits: vec![Edit::replace(cast_expr.syntax().text_range(), replacement)], kind: ActionKind::RefactorRewrite, }); diff --git a/crates/squawk_ide/src/code_actions/rewrite_from.rs b/crates/squawk_ide/src/code_actions/rewrite_from.rs index 071d5f44..7341ca7f 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_from.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_from.rs @@ -1,5 +1,6 @@ use rowan::TextSize; use salsa::Database as Db; +use squawk_linter::Edit; use squawk_syntax::ast::{self, AstNode}; use crate::{db::File, offsets::token_from_offset}; @@ -23,7 +24,7 @@ pub(super) fn rewrite_from( actions.push(CodeAction { title: "Insert leading `select *`".to_owned(), - edits: vec![squawk_linter::Edit::insert( + edits: vec![Edit::insert( "select * ".to_owned(), select.syntax().text_range().start(), )], diff --git a/crates/squawk_ide/src/code_actions/rewrite_leading_from.rs b/crates/squawk_ide/src/code_actions/rewrite_leading_from.rs index e6461763..c8945aa7 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_leading_from.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_leading_from.rs @@ -1,5 +1,6 @@ use rowan::{TextRange, TextSize}; use salsa::Database as Db; +use squawk_linter::Edit; use squawk_syntax::{ SyntaxKind, ast::{self, AstNode}, @@ -38,8 +39,8 @@ pub(super) fn rewrite_leading_from( actions.push(CodeAction { title: "Swap `from` and `select` clauses".to_owned(), edits: vec![ - squawk_linter::Edit::delete(select_with_ws), - squawk_linter::Edit::insert( + Edit::delete(select_with_ws), + Edit::insert( format!("{} ", select_text), from_clause.syntax().text_range().start(), ), diff --git a/crates/squawk_ide/src/code_actions/rewrite_not_equals_operator.rs b/crates/squawk_ide/src/code_actions/rewrite_not_equals_operator.rs index d5a39e59..678be99f 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_not_equals_operator.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_not_equals_operator.rs @@ -1,5 +1,6 @@ use rowan::TextSize; use salsa::Database as Db; +use squawk_linter::Edit; use squawk_syntax::ast::{self, AstNode}; use crate::{db::File, offsets::token_from_offset}; @@ -23,10 +24,7 @@ pub(super) fn rewrite_not_equals_operator( actions.push(CodeAction { title: title.to_owned(), - edits: vec![squawk_linter::Edit::replace( - op_token.text_range(), - replacement.to_owned(), - )], + edits: vec![Edit::replace(op_token.text_range(), replacement.to_owned())], kind: ActionKind::RefactorRewrite, }); diff --git a/crates/squawk_ide/src/code_actions/rewrite_select_as_table.rs b/crates/squawk_ide/src/code_actions/rewrite_select_as_table.rs index 5f6898fd..cc25b560 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_select_as_table.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_select_as_table.rs @@ -1,5 +1,6 @@ use rowan::TextSize; use salsa::Database as Db; +use squawk_linter::Edit; use squawk_syntax::ast::{self, AstNode}; use crate::{db::File, offsets::token_from_offset}; @@ -34,10 +35,7 @@ pub(super) fn rewrite_select_as_table( actions.push(CodeAction { title: "Rewrite as `table`".to_owned(), - edits: vec![squawk_linter::Edit::replace( - select.syntax().text_range(), - replacement, - )], + edits: vec![Edit::replace(select.syntax().text_range(), replacement)], kind: ActionKind::RefactorRewrite, }); diff --git a/crates/squawk_ide/src/code_actions/rewrite_select_as_values.rs b/crates/squawk_ide/src/code_actions/rewrite_select_as_values.rs index 3bc7642e..1fd4b27c 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_select_as_values.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_select_as_values.rs @@ -1,5 +1,6 @@ use rowan::{TextRange, TextSize}; use salsa::Database as Db; +use squawk_linter::Edit; use squawk_syntax::ast::{self, AstNode}; use crate::{ @@ -61,7 +62,7 @@ pub(super) fn rewrite_select_as_values( actions.push(CodeAction { title: "Rewrite as `values`".to_owned(), - edits: vec![squawk_linter::Edit::replace(select_range, values_stmt)], + edits: vec![Edit::replace(select_range, values_stmt)], kind: ActionKind::RefactorRewrite, }); diff --git a/crates/squawk_ide/src/code_actions/rewrite_table_as_select.rs b/crates/squawk_ide/src/code_actions/rewrite_table_as_select.rs index 43568ae4..e0230dbb 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_table_as_select.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_table_as_select.rs @@ -1,5 +1,6 @@ use rowan::TextSize; use salsa::Database as Db; +use squawk_linter::Edit; use squawk_syntax::ast::{self, AstNode}; use crate::{db::File, offsets::token_from_offset}; @@ -21,10 +22,7 @@ pub(super) fn rewrite_table_as_select( actions.push(CodeAction { title: "Rewrite as `select`".to_owned(), - edits: vec![squawk_linter::Edit::replace( - table.syntax().text_range(), - replacement, - )], + edits: vec![Edit::replace(table.syntax().text_range(), replacement)], kind: ActionKind::RefactorRewrite, }); diff --git a/crates/squawk_ide/src/code_actions/rewrite_timestamp_type.rs b/crates/squawk_ide/src/code_actions/rewrite_timestamp_type.rs index 174ac1da..e1304efa 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_timestamp_type.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_timestamp_type.rs @@ -1,5 +1,6 @@ use rowan::TextSize; use salsa::Database as Db; +use squawk_linter::Edit; use squawk_syntax::ast::{self, AstNode}; use crate::{db::File, offsets::token_from_offset}; @@ -34,10 +35,7 @@ pub(super) fn rewrite_timestamp_type( actions.push(CodeAction { title: format!("Rewrite as `{replacement}`"), - edits: vec![squawk_linter::Edit::replace( - time_type.syntax().text_range(), - replacement, - )], + edits: vec![Edit::replace(time_type.syntax().text_range(), replacement)], kind: ActionKind::RefactorRewrite, }); diff --git a/crates/squawk_ide/src/code_actions/rewrite_values_as_select.rs b/crates/squawk_ide/src/code_actions/rewrite_values_as_select.rs index 9df102d5..aa5c21f2 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_values_as_select.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_values_as_select.rs @@ -1,6 +1,7 @@ use itertools::Itertools; use rowan::{TextRange, TextSize}; use salsa::Database as Db; +use squawk_linter::Edit; use squawk_syntax::ast::{self, AstNode}; use crate::{db::File, offsets::token_from_offset}; @@ -51,7 +52,7 @@ pub(super) fn rewrite_values_as_select( actions.push(CodeAction { title: "Rewrite as `select`".to_owned(), - edits: vec![squawk_linter::Edit::replace(values_range, select_stmt)], + edits: vec![Edit::replace(values_range, select_stmt)], kind: ActionKind::RefactorRewrite, }); diff --git a/crates/squawk_ide/src/code_actions/unquote_identifier.rs b/crates/squawk_ide/src/code_actions/unquote_identifier.rs index c6acee65..19050569 100644 --- a/crates/squawk_ide/src/code_actions/unquote_identifier.rs +++ b/crates/squawk_ide/src/code_actions/unquote_identifier.rs @@ -2,6 +2,7 @@ use rowan::TextSize; use salsa::Database as Db; use squawk_syntax::ast::{self, AstNode}; +use squawk_linter::Edit; use squawk_syntax::quote::unquote_ident; use crate::{db::File, offsets::token_from_offset}; @@ -29,10 +30,7 @@ pub(super) fn unquote_identifier( actions.push(CodeAction { title: "Unquote identifier".to_owned(), - edits: vec![squawk_linter::Edit::replace( - name_node.text_range(), - unquoted, - )], + edits: vec![Edit::replace(name_node.text_range(), unquoted)], kind: ActionKind::RefactorRewrite, });