Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/syntax/src/ast/edit_in_place.rs')
-rw-r--r--crates/syntax/src/ast/edit_in_place.rs124
1 files changed, 0 insertions, 124 deletions
diff --git a/crates/syntax/src/ast/edit_in_place.rs b/crates/syntax/src/ast/edit_in_place.rs
index f1286e7aa2..ffe9f16cfd 100644
--- a/crates/syntax/src/ast/edit_in_place.rs
+++ b/crates/syntax/src/ast/edit_in_place.rs
@@ -909,30 +909,6 @@ fn get_or_insert_comma_after(syntax: &SyntaxNode) -> SyntaxToken {
}
}
-impl ast::VariantList {
- pub fn add_variant(&self, variant: ast::Variant) {
- let (indent, position) = match self.variants().last() {
- Some(last_item) => (
- IndentLevel::from_node(last_item.syntax()),
- Position::after(get_or_insert_comma_after(last_item.syntax())),
- ),
- None => match self.l_curly_token() {
- Some(l_curly) => {
- normalize_ws_between_braces(self.syntax());
- (IndentLevel::from_token(&l_curly) + 1, Position::after(&l_curly))
- }
- None => (IndentLevel::single(), Position::last_child_of(self.syntax())),
- },
- };
- let elements: Vec<SyntaxElement> = vec![
- make::tokens::whitespace(&format!("{}{indent}", "\n")).into(),
- variant.syntax().clone().into(),
- ast::make::token(T![,]).into(),
- ];
- ted::insert_all(position, elements);
- }
-}
-
fn normalize_ws_between_braces(node: &SyntaxNode) -> Option<()> {
let l = node
.children_with_tokens()
@@ -1055,8 +1031,6 @@ mod tests {
use std::fmt;
use parser::Edition;
- use stdx::trim_indent;
- use test_utils::assert_eq_text;
use crate::SourceFile;
@@ -1170,102 +1144,4 @@ mod tests {
check("let a: u8 = 3;", "let a = 3;", None);
check("let a: = 3;", "let a = 3;", None);
}
-
- #[test]
- fn add_variant_to_empty_enum() {
- let variant = make::variant(make::name("Bar"), None).clone_for_update();
-
- check_add_variant(
- r#"
-enum Foo {}
-"#,
- r#"
-enum Foo {
- Bar,
-}
-"#,
- variant,
- );
- }
-
- #[test]
- fn add_variant_to_non_empty_enum() {
- let variant = make::variant(make::name("Baz"), None).clone_for_update();
-
- check_add_variant(
- r#"
-enum Foo {
- Bar,
-}
-"#,
- r#"
-enum Foo {
- Bar,
- Baz,
-}
-"#,
- variant,
- );
- }
-
- #[test]
- fn add_variant_with_tuple_field_list() {
- let variant = make::variant(
- make::name("Baz"),
- Some(ast::FieldList::TupleFieldList(make::tuple_field_list(std::iter::once(
- make::tuple_field(None, make::ty("bool")),
- )))),
- )
- .clone_for_update();
-
- check_add_variant(
- r#"
-enum Foo {
- Bar,
-}
-"#,
- r#"
-enum Foo {
- Bar,
- Baz(bool),
-}
-"#,
- variant,
- );
- }
-
- #[test]
- fn add_variant_with_record_field_list() {
- let variant = make::variant(
- make::name("Baz"),
- Some(ast::FieldList::RecordFieldList(make::record_field_list(std::iter::once(
- make::record_field(None, make::name("x"), make::ty("bool")),
- )))),
- )
- .clone_for_update();
-
- check_add_variant(
- r#"
-enum Foo {
- Bar,
-}
-"#,
- r#"
-enum Foo {
- Bar,
- Baz { x: bool },
-}
-"#,
- variant,
- );
- }
-
- fn check_add_variant(before: &str, expected: &str, variant: ast::Variant) {
- let enum_ = ast_mut_from_text::<ast::Enum>(before);
- if let Some(it) = enum_.variant_list() {
- it.add_variant(variant)
- }
- let after = enum_.to_string();
- assert_eq_text!(&trim_indent(expected.trim()), &trim_indent(after.trim()));
- }
}