反正有没有制作日志功能?

时间:2016-04-01 17:04:06

标签: swift inline

我想用一种方法打印#file#function#line

我尝试了以下代码,但问题在这里。 无论我在哪里呼叫logm(),它始终会打印logm方法本身的信息,即使我将其声明为@inline

@inline(__always) func logm(items: Any...) {
    if let f = #file.componentsSeparatedByString("/").last {
        print("[\(f)][\(#function)][\(#line)]:", items)
    } else {
        print("[\(#function)][\(#line)]: ", items)
    }
}

反正有没有实现这种事情?为什么@inline按预期工作?

1 个答案:

答案 0 :(得分:1)

您可以将文件,行和函数作为参数传递,并将指令作为默认值:

!object.Equals(_content[_size - 1], default(T))