【发布时间】:2015-07-01 17:44:13
【问题描述】:
我正在尝试使用go-errors 来包含带有我生成的错误的堆栈跟踪。我有一个自定义的HttpError 类型,我还想包含堆栈跟踪。我最初的想法是使用嵌入来执行此操作,但我似乎无法嵌入它,因为类的名称 (Error) 与其中一个方法的名称相同。
package netutil
import (
"github.com/go-errors/errors"
)
type HttpError struct {
status int
*errors.Error
}
func (h *HttpError) Error() string {
return "Failed"
}
func NewHttpError(status int, message string) *HttpError {
return &HttpError{
status,
errors.New(message),
}
}
我收到以下错误:
tmp_error.go:12: type HttpError has both field and method named Error
有什么建议吗?
【问题讨论】:
标签: go stack-trace embedding