From 7a76f714c4b96d31eb7b9997ef063e569768601d Mon Sep 17 00:00:00 2001 From: phimage Date: Tue, 15 Dec 2015 05:49:41 +0100 Subject: [PATCH] Allow to capture log using closure --- Source/Armchair.swift | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/Source/Armchair.swift b/Source/Armchair.swift index eafb212..13ddc23 100644 --- a/Source/Armchair.swift +++ b/Source/Armchair.swift @@ -1715,13 +1715,19 @@ public class Manager : ArmchairManager { // MARK: - // MARK: Debug + public typealias ArmchairLogger = (Manager, log: String, file: StaticString, function: StaticString, line: UInt) -> Void + let lockQueue = dispatch_queue_create("com.armchair.lockqueue", nil) - private func debugLog(log: String) { - if debugEnabled { - dispatch_sync(lockQueue, { + public var logger: ArmchairLogger = { manager, log, file, function, line in + if manager.debugEnabled { + dispatch_sync(manager.lockQueue, { print("[Armchair] \(log)") }) } } + private func debugLog(log: String, file: StaticString = __FILE__, function: StaticString = __FUNCTION__, line: UInt = __LINE__) { + logger(self, log: log, file: file, function: function, line: line) + } + }