mirror of
https://github.com/divkit/divkit.git
synced 2026-06-06 20:07:59 +00:00
37 lines
867 B
Swift
37 lines
867 B
Swift
import Foundation
|
|
|
|
private var externalLogger: (DivErrorLevel, String) -> Void = { _,_ in }
|
|
|
|
public enum DivKitLogger {
|
|
public static var isEnabled: Bool = false
|
|
|
|
public static func error(_ message: String) {
|
|
if isEnabled {
|
|
print("[DivKit] [ERROR] \(message)")
|
|
externalLogger(.error, message)
|
|
}
|
|
}
|
|
|
|
static func failure(_ message: String) {
|
|
if isEnabled {
|
|
error(message)
|
|
assertionFailure(message)
|
|
}
|
|
}
|
|
|
|
public static func warning(_ message: String) {
|
|
if isEnabled {
|
|
print("[DivKit] [WARNING] \(message)")
|
|
externalLogger(.warning, message)
|
|
}
|
|
}
|
|
|
|
public static func setLogger(_ logger: @escaping (DivErrorLevel, String) -> Void) {
|
|
Thread.assertIsMain()
|
|
externalLogger = logger
|
|
}
|
|
public static func setLogger(_ logger: @escaping (String) -> Void) {
|
|
setLogger({ logger($1) })
|
|
}
|
|
}
|