Skip to content

Commit 2cf5193

Browse files
committed
[SwiftRefactor] PackageManifest: Switch refactoring actions to EditRefactoringProvider
Since `PackageEdit` is gone all of the package manifest refactoring actions can now conform to `EditRefactoringProvider` directly.
1 parent 7801646 commit 2cf5193

File tree

9 files changed

+24
-51
lines changed

9 files changed

+24
-51
lines changed

Sources/SwiftRefactor/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ add_swift_syntax_library(SwiftRefactor
3030
PackageManifest/AddSwiftSetting.swift
3131
PackageManifest/AddTargetDependency.swift
3232
PackageManifest/ManifestEditError.swift
33-
PackageManifest/ManifestEditRefactoringProvider.swift
3433
PackageManifest/ManifestSyntaxRepresentable.swift
3534
PackageManifest/PackageDependency.swift
3635
PackageManifest/PackageTarget.swift

Sources/SwiftRefactor/PackageManifest/AddPackageDependency.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import SwiftSyntaxBuilder
1616

1717
/// Add a package dependency to a package manifest's source code.
1818
@_spi(PackageRefactor)
19-
public struct AddPackageDependency: ManifestEditRefactoringProvider {
19+
public struct AddPackageDependency: EditRefactoringProvider {
2020
public struct Context {
2121
public var dependency: PackageDependency
2222

@@ -36,7 +36,7 @@ public struct AddPackageDependency: ManifestEditRefactoringProvider {
3636

3737
/// Produce the set of source edits needed to add the given package
3838
/// dependency to the given manifest file.
39-
public static func manifestRefactor(
39+
public static func textRefactor(
4040
syntax manifest: SourceFileSyntax,
4141
in context: Context
4242
) throws -> [SourceEdit] {

Sources/SwiftRefactor/PackageManifest/AddPackageTarget.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import SwiftSyntaxBuilder
1616

1717
/// Add a target to a manifest's source code.
1818
@_spi(PackageRefactor)
19-
public struct AddPackageTarget: ManifestEditRefactoringProvider {
19+
public struct AddPackageTarget: EditRefactoringProvider {
2020
public struct Context {
2121
public let target: PackageTarget
2222
public var testHarness: TestHarness
@@ -57,7 +57,7 @@ public struct AddPackageTarget: ManifestEditRefactoringProvider {
5757
/// Add the given target to the manifest, producing a set of edit results
5858
/// that updates the manifest and adds some source files to stub out the
5959
/// new target.
60-
public static func manifestRefactor(
60+
public static func textRefactor(
6161
syntax manifest: SourceFileSyntax,
6262
in context: Context
6363
) throws -> [SourceEdit] {

Sources/SwiftRefactor/PackageManifest/AddPluginUsage.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import SwiftSyntaxBuilder
1717
/// Add a plugin usage to a particular target in the manifest's source
1818
/// code.
1919
@_spi(PackageRefactor)
20-
public struct AddPluginUsage: ManifestEditRefactoringProvider {
20+
public struct AddPluginUsage: EditRefactoringProvider {
2121
public struct Context {
2222
public let targetName: String
2323
public let pluginUsage: PackageTarget.PluginUsage
@@ -30,7 +30,7 @@ public struct AddPluginUsage: ManifestEditRefactoringProvider {
3030

3131
/// Produce the set of source edits needed to add the given package
3232
/// dependency to the given manifest file.
33-
public static func manifestRefactor(
33+
public static func textRefactor(
3434
syntax manifest: SourceFileSyntax,
3535
in context: Context
3636
) throws -> [SourceEdit] {

Sources/SwiftRefactor/PackageManifest/AddProduct.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import SwiftSyntaxBuilder
1616

1717
/// Add a product to the manifest's source code.
1818
@_spi(PackageRefactor)
19-
public struct AddProduct: ManifestEditRefactoringProvider {
19+
public struct AddProduct: EditRefactoringProvider {
2020
public struct Context {
2121
public let product: ProductDescription
2222

@@ -36,7 +36,7 @@ public struct AddProduct: ManifestEditRefactoringProvider {
3636

3737
/// Produce the set of source edits needed to add the given package
3838
/// dependency to the given manifest file.
39-
public static func manifestRefactor(
39+
public static func textRefactor(
4040
syntax manifest: SourceFileSyntax,
4141
in context: Context
4242
) throws -> [SourceEdit] {

Sources/SwiftRefactor/PackageManifest/AddSwiftSetting.swift

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import SwiftSyntaxBuilder
1616

1717
/// Add a swift setting to a manifest's source code.
1818
@_spi(PackageRefactor)
19-
public struct AddSwiftSetting: ManifestEditRefactoringProvider {
19+
public struct AddSwiftSetting: EditRefactoringProvider {
2020
public struct Context {
2121
let target: String
2222
let setting: String
@@ -35,7 +35,7 @@ public struct AddSwiftSetting: ManifestEditRefactoringProvider {
3535
name: String,
3636
manifest: SourceFileSyntax
3737
) throws -> [SourceEdit] {
38-
try manifestRefactor(
38+
try textRefactor(
3939
syntax: manifest,
4040
in: .init(
4141
target: target,
@@ -50,7 +50,7 @@ public struct AddSwiftSetting: ManifestEditRefactoringProvider {
5050
name: String,
5151
manifest: SourceFileSyntax
5252
) throws -> [SourceEdit] {
53-
try manifestRefactor(
53+
try textRefactor(
5454
syntax: manifest,
5555
in: .init(
5656
target: target,
@@ -75,7 +75,7 @@ public struct AddSwiftSetting: ManifestEditRefactoringProvider {
7575
mode = ".version(\"\(rawMode)\")"
7676
}
7777

78-
return try manifestRefactor(
78+
return try textRefactor(
7979
syntax: manifest,
8080
in: .init(
8181
target: target,
@@ -89,7 +89,7 @@ public struct AddSwiftSetting: ManifestEditRefactoringProvider {
8989
to target: String,
9090
manifest: SourceFileSyntax
9191
) throws -> [SourceEdit] {
92-
try manifestRefactor(
92+
try textRefactor(
9393
syntax: manifest,
9494
in: .init(
9595
target: target,
@@ -99,7 +99,7 @@ public struct AddSwiftSetting: ManifestEditRefactoringProvider {
9999
)
100100
}
101101

102-
public static func manifestRefactor(
102+
public static func textRefactor(
103103
syntax manifest: SourceFileSyntax,
104104
in context: Context
105105
) throws -> [SourceEdit] {

Sources/SwiftRefactor/PackageManifest/AddTargetDependency.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import SwiftSyntaxBuilder
1616

1717
/// Add a target dependency to a manifest's source code.
1818
@_spi(PackageRefactor)
19-
public struct AddTargetDependency: ManifestEditRefactoringProvider {
19+
public struct AddTargetDependency: EditRefactoringProvider {
2020
public struct Context {
2121
/// The dependency to add.
2222
public var dependency: PackageTarget.Dependency
@@ -48,7 +48,7 @@ public struct AddTargetDependency: ManifestEditRefactoringProvider {
4848

4949
/// Produce the set of source edits needed to add the given target
5050
/// dependency to the given manifest file.
51-
public static func manifestRefactor(
51+
public static func textRefactor(
5252
syntax manifest: SourceFileSyntax,
5353
in context: Context
5454
) throws -> [SourceEdit] {

Sources/SwiftRefactor/PackageManifest/ManifestEditRefactoringProvider.swift

Lines changed: 0 additions & 26 deletions
This file was deleted.

Tests/SwiftRefactorTest/ManifestEditTests.swift

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ final class ManifestEditTests: XCTestCase {
160160

161161
func testAddPackageDependencyDuplicates() throws {
162162
XCTAssertThrowsError(
163-
try AddPackageDependency.manifestRefactor(
163+
try AddPackageDependency.textRefactor(
164164
syntax: """
165165
// swift-tools-version: 5.5
166166
let package = Package(
@@ -351,7 +351,7 @@ final class ManifestEditTests: XCTestCase {
351351

352352
func testAddPackageDependencyErrors() {
353353
XCTAssertThrowsError(
354-
try AddPackageDependency.manifestRefactor(
354+
try AddPackageDependency.textRefactor(
355355
syntax: """
356356
// swift-tools-version: 5.5
357357
let package: Package = .init(
@@ -368,7 +368,7 @@ final class ManifestEditTests: XCTestCase {
368368
}
369369

370370
XCTAssertThrowsError(
371-
try AddPackageDependency.manifestRefactor(
371+
try AddPackageDependency.textRefactor(
372372
syntax: """
373373
// swift-tools-version: 5.5
374374
let package = Package(
@@ -969,21 +969,21 @@ final class ManifestEditTests: XCTestCase {
969969

970970
/// Assert that applying the given edit/refactor operation to the manifest
971971
/// produces the expected manifest source file.
972-
func assertManifestRefactor<Provider: ManifestEditRefactoringProvider>(
973-
_ originalManifest: SourceFileSyntax,
974-
expectedManifest: SourceFileSyntax,
972+
func assertManifestRefactor<Provider: EditRefactoringProvider>(
973+
_ originalManifest: Provider.Input,
974+
expectedManifest: Provider.Input,
975975
provider: Provider.Type,
976976
context: Provider.Context,
977977
file: StaticString = #filePath,
978978
line: UInt = #line
979-
) throws {
979+
) throws where Provider.Input == SourceFileSyntax {
980980
return try assertManifestRefactor(
981981
originalManifest,
982982
expectedManifest: expectedManifest,
983983
file: file,
984984
line: line
985985
) { (manifest) in
986-
try provider.manifestRefactor(syntax: manifest, in: context)
986+
try provider.textRefactor(syntax: manifest, in: context)
987987
}
988988
}
989989

0 commit comments

Comments
 (0)