updated default logger to still run assertions even on optimized (-O) builds

This commit is contained in:
John Rommel Estropia
2015-08-08 22:12:08 +09:00
parent 59ad525786
commit 83c724f584
4 changed files with 20 additions and 15 deletions

View File

@@ -76,7 +76,12 @@ public final class DefaultLogger: CoreStoreLogger {
public func assert(@autoclosure condition: () -> Bool, message: String, fileName: StaticString, lineNumber: Int, functionName: StaticString) {
#if DEBUG
Swift.assert(condition, "❗ [CoreStore: Assertion Failure] \(message)", file: fileName, line: numericCast(lineNumber))
if condition() {
return
}
Swift.print("❗ [CoreStore: Assertion Failure] \((fileName.stringValue as NSString).lastPathComponent):\(lineNumber) \(functionName)\n ↪︎ \(message)\n")
Swift.fatalError()
#endif
}
}