Files
divkit/client/ios/DivKit/DivKitLogger.swift
T
mrcov 9a8b8351b1 Accumulate div block modeling warnings
Accumulate div block modeling warnings

Не фатальные ошибки (при наличии фоллбэка) поменял на ворнинги, которые так же репортятся в externalLogger с другим префиксом и дополнительно собираются в контексте. Добавил им path. Дополнительно поменял репорт ошибки в логгер на выброс исключения при попытке создания divCircleShape, который не поддерживается - кажется, так будет правильней.
2022-10-28 20:08:47 +03:00

34 lines
706 B
Swift

import Foundation
private var externalLogger: (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(message)
}
}
static func failure(_ message: String) {
if isEnabled {
error(message)
assertionFailure(message)
}
}
static func warning(_ message: String) {
if isEnabled {
print("[DivKit] [WARNING] \(message)")
externalLogger(message)
}
}
public static func setLogger(_ logger: @escaping (String) -> Void) {
Thread.assertIsMain()
externalLogger = logger
}
}