Skip to content

Commit 91d9806

Browse files
authored
Merge pull request #17 from GoodRequest/fix/default-logger
fix: Default logger implementation
2 parents 9c8750c + 9555831 commit 91d9806

File tree

4 files changed

+15
-29
lines changed

4 files changed

+15
-29
lines changed

Package.resolved

Lines changed: 1 addition & 10 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Sources/GoodReactor/Logger/ReactorLogger.swift

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,23 @@
88
import Foundation
99

1010
public enum LogLevel {
11+
1112
case debug
13+
1214
}
1315

1416
public protocol ReactorLogger: Sendable {
1517

1618
func logReactorEvent(_ message: Any, level: LogLevel, fileName: String, lineNumber: Int)
1719

1820
}
21+
22+
// we need default implementation, otherwise Swift
23+
// optimizes out the protocol for some reason
24+
public struct PrintReactorLogger: ReactorLogger {
25+
26+
public func logReactorEvent(_ message: Any, level: LogLevel, fileName: String, lineNumber: Int) {
27+
print(message)
28+
}
29+
30+
}

Sources/GoodReactor/Reactor.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ public extension Reactor {
235235

236236
typealias Event = GoodReactor.Event<Action, Mutation, Destination>
237237

238-
static var logger: ReactorLogger? {
238+
static var logger: (any ReactorLogger)? {
239239
MapTables.loggers.forceCastedValue(forKey: self, default: makeLogger())
240240
}
241241

@@ -253,7 +253,7 @@ public extension Reactor {
253253
}
254254

255255
static func makeLogger() -> ReactorLogger? {
256-
ReactorConfiguration.logger
256+
return PrintReactorLogger()
257257
}
258258

259259
func transform() {}

Sources/GoodReactor/ReactorConfiguration.swift

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

0 commit comments

Comments
 (0)