小编典典

使用swift记录方法签名

swift

我想重写我的日志记录类,我想知道如何在一个快速文件中替换 PRETTY_FUNCTION
或NSStringFromSelector(_cmd)以便跟踪方法调用?


阅读 302

收藏
2020-07-07

共1个答案

小编典典

查看我刚刚发布的新库:https//github.com/DaveWoodCom/XCGLogger

这是Swift的调试日志记录库。

能够使用#function宏的关键是将它们设置为日志记录功能的默认值。然后,编译器将使用期望值填充它们。

func log(logMessage: String, functionName: String = #function) {
    print("\(functionName): \(logMessage)")
}

然后只需致电:

log("my message")

它可以按预期工作,为您提供以下信息:

whateverFunction(): my message

有关其工作原理的更多信息:https :
//www.cerebralgardens.com/blog/entry/2014/06/09/the-first-essential-
swift-3rd-party-library-to-include-in-your-
project

2020-07-07