Skip to content

Commit fa9ce54

Browse files
committed
change cursor generation to throwing
1 parent 4bcfc78 commit fa9ce54

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

Sources/Graphiti/Connection/Connection.swift

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -34,19 +34,19 @@ public extension EventLoopFuture where Value : Sequence, Value.Element : Encodab
3434
}
3535

3636
public extension EventLoopFuture where Value: Sequence, Value.Element: Encodable {
37-
func connection(from arguments: Paginatable, makeCursor: @escaping (Value.Element) -> String) -> EventLoopFuture<Connection<Value.Element>> {
37+
func connection(from arguments: Paginatable, makeCursor: @escaping (Value.Element) throws -> String) -> EventLoopFuture<Connection<Value.Element>> {
3838
flatMapThrowing { value in
3939
try value.connection(from: arguments, makeCursor: makeCursor)
4040
}
4141
}
4242

43-
func connection(from arguments: ForwardPaginatable, makeCursor: @escaping (Value.Element) -> String) -> EventLoopFuture<Connection<Value.Element>> {
43+
func connection(from arguments: ForwardPaginatable, makeCursor: @escaping (Value.Element) throws -> String) -> EventLoopFuture<Connection<Value.Element>> {
4444
flatMapThrowing { value in
4545
try value.connection(from: arguments, makeCursor: makeCursor)
4646
}
4747
}
4848

49-
func connection(from arguments: BackwardPaginatable, makeCursor: @escaping (Value.Element) -> String) -> EventLoopFuture<Connection<Value.Element>> {
49+
func connection(from arguments: BackwardPaginatable, makeCursor: @escaping (Value.Element) throws -> String) -> EventLoopFuture<Connection<Value.Element>> {
5050
flatMapThrowing { value in
5151
try value.connection(from: arguments, makeCursor: makeCursor)
5252
}
@@ -69,26 +69,26 @@ public extension Sequence where Element : Encodable & Identifiable, Element.ID :
6969
}
7070

7171
public extension Sequence where Element : Encodable {
72-
func connection(from arguments: Paginatable, makeCursor: @escaping (Element) -> String) throws -> Connection<Element> {
72+
func connection(from arguments: Paginatable, makeCursor: @escaping (Element) throws -> String) throws -> Connection<Element> {
7373
try connect(to: Array(self), arguments: PaginationArguments(arguments), makeCursor: makeCursor)
7474
}
7575

76-
func connection(from arguments: ForwardPaginatable, makeCursor: @escaping (Element) -> String) throws -> Connection<Element> {
76+
func connection(from arguments: ForwardPaginatable, makeCursor: @escaping (Element) throws -> String) throws -> Connection<Element> {
7777
try connect(to: Array(self), arguments: PaginationArguments(arguments), makeCursor: makeCursor)
7878
}
7979

80-
func connection(from arguments: BackwardPaginatable, makeCursor: @escaping (Element) -> String) throws -> Connection<Element> {
80+
func connection(from arguments: BackwardPaginatable, makeCursor: @escaping (Element) throws -> String) throws -> Connection<Element> {
8181
try connect(to: Array(self), arguments: PaginationArguments(arguments), makeCursor: makeCursor)
8282
}
8383
}
8484

8585
func connect<Node>(
8686
to elements: [Node],
8787
arguments: PaginationArguments,
88-
makeCursor: @escaping (Node) -> String
88+
makeCursor: @escaping (Node) throws -> String
8989
) throws -> Connection<Node> where Node : Encodable {
90-
let edges = elements.map { element in
91-
Edge<Node>(node: element, cursor: makeCursor(element))
90+
let edges = try elements.map { element in
91+
Edge<Node>(node: element, cursor: try makeCursor(element))
9292
}
9393

9494
let cursorEdges = slicingCursor(edges: edges, arguments: arguments)

0 commit comments

Comments
 (0)