DatabaseReader
extension DatabaseReader
Combine extensions on DatabaseReader.
-
Returns a Publisher that asynchronously completes with a fetched value.
// DatabasePublishers.Read<[Player]> let players = dbQueue.readPublisher { db in try Player.fetchAll(db) }
Its value and completion are emitted on the main dispatch queue.
Declaration
Swift
public func readPublisher<Output>( value: @escaping (Database) throws -> Output) -> DatabasePublishers.Read<Output>
Parameters
value
A closure which accesses the database.
-
Returns a Publisher that asynchronously completes with a fetched value.
// DatabasePublishers.Read<[Player]> let players = dbQueue.readPublisher( receiveOn: DispatchQueue.global(), value: { db in try Player.fetchAll(db) })
Its value and completion are emitted on
scheduler
.Declaration
Swift
public func readPublisher<S, Output>( receiveOn scheduler: S, value: @escaping (Database) throws -> Output) -> DatabasePublishers.Read<Output> where S : Scheduler
Parameters
scheduler
A Combine Scheduler.
value
A closure which accesses the database.