在oc 中我们可以写出优雅的log 方式,在swift 我们也可以通过extension来实现
符号 | 类型 | 描述 |
---|---|---|
#file | String | 包含这个符号的文件的路径 |
#line | Int | 符号出现处的列 |
#column | String | 包含这个符号的方法名字 |
1
2
3
4
5
6
7
8
9
10
extension String {
func log(
file: String = #file,
line: Int = #line,
column: Int = #column,
method: String = #function
) {
print("[\((file as NSString).lastPathComponent)][\(line)][\(column)] - \(method): \(self)")
}
}
Call
"log".log()
当我们调试的时候,DEBUG 需要详细的log信息,我们可以通过T来实现
1
2
3
4
5
6
7
8
func log<T>(_ message: T,
file: String = #file,
line: Int = #line,
column: Int = #column,
method: String = #function
) {
print("[\((file as NSString).lastPathComponent)][\(line)][\(column)] - \(method): \(message)")
}
log("sun")