5
是否可以获取从调用范围返回函数的行号?获取返回函数的行号
例子:
func callee() error {
if cond {
return errors.New("whoops!")
}
return nil
}
func caller() {
// Possible to retrieve the line number of callee return here?
callee()
}
我认为这是不可能的,因为它应该从栈中已被删除,但也许它仍然缓存的地方?
用例是我有一个HTTP处理程序,我想记录返回错误的行和文件名,而不必乱丢代码。
+1我只是写了一些类似的代码,并即将发布它作为答案,只是看到不再有任何需要。 –
是的,我已经考虑过包装功能选项。如果看起来没有更好的选择,那么会使用它。 –