你如何标记一个方法是致命的,比如“fatalError”?
How can you mark a method that it is fatal, like `fatalError`?
我们有一个特殊的日志记录函数来表示特定类型的崩溃,因此,它在内部调用 fatalError
。但是,与 fatalError
不同的是,当我们在 guard
语句中使用它时,它仍然会抱怨我们没有退出 guard
.
的范围
我检查了源代码和 fatalError
returns -> Never
所以我试过了,但也没有用。我也没有看到任何应用于它的属性可能会告诉编译器 'this is the end of the road'.
那么是否可以拥有自己的 fatalError
类方法?
func myFatalError(memberName:String = #function) -> Never {
let message = "Failed in \(memberName)"
NSLog(message)
fatalError(message)
}
正如其他人所指出的,问题出在我的机器上。以下(返回 'Never')按预期工作。
func myFatalError() -> Never {
print("Doing something fatal")
}
我们有一个特殊的日志记录函数来表示特定类型的崩溃,因此,它在内部调用 fatalError
。但是,与 fatalError
不同的是,当我们在 guard
语句中使用它时,它仍然会抱怨我们没有退出 guard
.
我检查了源代码和 fatalError
returns -> Never
所以我试过了,但也没有用。我也没有看到任何应用于它的属性可能会告诉编译器 'this is the end of the road'.
那么是否可以拥有自己的 fatalError
类方法?
func myFatalError(memberName:String = #function) -> Never {
let message = "Failed in \(memberName)"
NSLog(message)
fatalError(message)
}
正如其他人所指出的,问题出在我的机器上。以下(返回 'Never')按预期工作。
func myFatalError() -> Never {
print("Doing something fatal")
}