Skip to content

Commit 8574a33

Browse files
author
Alexander Schmutz
committed
Renamings
1 parent b725a0b commit 8574a33

6 files changed

Lines changed: 51 additions & 43 deletions

File tree

Sources/StructBuilderMacro/BuildableMacro.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,17 @@ public struct BuildableMacro: PeerMacro {
1616
in context: Context
1717
) throws -> [SwiftSyntax.DeclSyntax] where Context : SwiftSyntaxMacros.MacroExpansionContext, Declaration : SwiftSyntax.DeclSyntaxProtocol {
1818
if let structDecl = declaration.as(StructDeclSyntax.self) {
19-
let structBuilder = makeStructBuilder(structDecl: structDecl)
19+
let structBuilder = generateBuilderFromStruct(structDecl: structDecl)
2020
return [DeclSyntax(structBuilder)]
2121
}
2222

2323
if let enumDecl = declaration.as(EnumDeclSyntax.self) {
24-
let enumBuilder = try makeEnumBuilder(enumDecl: enumDecl)
24+
let enumBuilder = try generateBuilderFromEnum(enumDecl: enumDecl)
2525
return [DeclSyntax(enumBuilder)]
2626
}
2727

2828
if let classDecl = declaration.as(ClassDeclSyntax.self) {
29-
let classBuilder = try makeClassBuilder(classDecl: classDecl)
29+
let classBuilder = try generateBuilderFromClass(classDecl: classDecl)
3030
return [DeclSyntax(classBuilder)]
3131
}
3232

Sources/StructBuilderMacro/Enum/MakeEnumBuilder.swift renamed to Sources/StructBuilderMacro/Enum/GenerateBuilderFromEnum.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
//
2-
// MakeEnumBuilder.swift
2+
// GenerateBuilderFromEnum.swift
33
//
44
//
55
// Created by Alexander Schmutz on 09.02.24.
66
//
77

88
import SwiftSyntax
99

10-
func makeEnumBuilder(enumDecl: EnumDeclSyntax) throws -> StructDeclSyntax {
10+
func generateBuilderFromEnum(enumDecl: EnumDeclSyntax) throws -> StructDeclSyntax {
1111
let enumMember = EnumMember(
1212
identifier: TokenSyntax(stringLiteral: "value"),
1313
type: TypeSyntax(stringLiteral: enumDecl.name.text),

Sources/StructBuilderMacro/StructAndClass/MakeClassBuilder.swift renamed to Sources/StructBuilderMacro/StructAndClass/GenerateBuilderFromClass.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
//
2-
// MakeClassBuilder.swift
2+
// GenerateBuilderFromClass.swift
33
//
44
//
55
// Created by Alexander Schmutz on 09.02.24.
66
//
77

88
import SwiftSyntax
99

10-
func makeClassBuilder(classDecl: ClassDeclSyntax) throws -> StructDeclSyntax {
10+
func generateBuilderFromClass(classDecl: ClassDeclSyntax) throws -> StructDeclSyntax {
1111
guard let initialiserDecl = getFirstInitialiser(from: classDecl.memberBlock) else {
1212
throw "Missing initialiser"
1313
}
1414
let structMembers = extractInitializerMembers(from: initialiserDecl)
1515

16-
return makeStructBuilderFrom(structName: classDecl.name, structMembers: structMembers)
16+
return makeStructBuilder(withStructName: classDecl.name, and: structMembers)
1717
}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
//
2+
// GenerateBuilderFromStruct.swift
3+
//
4+
//
5+
// Created by Alexander Schmutz on 09.02.24.
6+
//
7+
8+
import SwiftSyntax
9+
10+
func generateBuilderFromStruct(structDecl: StructDeclSyntax) -> StructDeclSyntax {
11+
let structMembers = getStructMembers(structDecl: structDecl)
12+
return makeStructBuilder(withStructName: structDecl.name, and: structMembers)
13+
}
14+
15+
private func getStructMembers(structDecl: StructDeclSyntax) -> [StructMember] {
16+
if let initialiserDecl = getFirstInitialiser(from: structDecl.memberBlock) {
17+
return extractInitializerMembers(from: initialiserDecl)
18+
} else {
19+
return extractMembersFrom(structDecl.memberBlock.members)
20+
}
21+
}
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
//
2+
// MakeStructBuilder.swift
3+
//
4+
//
5+
// Created by Alexander Schmutz on 13.02.24.
6+
//
7+
8+
import SwiftSyntax
9+
10+
func makeStructBuilder(withStructName structName: TokenSyntax, and structMembers: [StructMember]) -> StructDeclSyntax {
11+
StructDeclSyntax(name: getStructBuilderName(from: structName)) {
12+
MemberBlockItemListSyntax {
13+
for structMember in structMembers {
14+
MemberBlockItemSyntax(decl: makeVariableDecl(structMember: structMember))
15+
}
16+
MemberBlockItemSyntax(
17+
leadingTrivia: .newlines(2),
18+
decl: makeFunctionDecl(name: structName, structMembers: structMembers)
19+
)
20+
}
21+
}
22+
}

Sources/StructBuilderMacro/StructAndClass/MakeStructBuilder.swift

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

0 commit comments

Comments
 (0)