【发布时间】:2019-11-25 06:25:17
【问题描述】:
在我的例子中,“RequestHandlerProxy”是一个结构,其字段作为接口“IAdapter”,接口有可能被调用的方法,该方法的输入作为结构“RequestHandlerProxy”。请帮我解决这个问题?如何定义值来构造“RequestHandlerProxy”并通过?
下面是我的接口结构和方法:接口“IAdapter”在文件“适配器”中
type RequestHandlerProxy struct {
TestMode bool
coreInstanceId string
adapter adapters.IAdapter
coreProxy adapterif.CoreProxy
}
func NewRequestHandlerProxy(coreInstanceId string, iadapter adapters.IAdapter, cProxy adapterif.CoreProxy) *RequestHandlerProxy {
var proxy RequestHandlerProxy
proxy.coreInstanceId = coreInstanceId
proxy.adapter = iadapter
proxy.coreProxy = cProxy
return &proxy
}
func (rhp *RequestHandlerProxy) Adapter_descriptor() (*empty.Empty, error) {
return new(empty.Empty), nil
}
func (rhp *RequestHandlerProxy) Device_types() (*voltha.DeviceTypes, error) {
return nil, nil
}
func (rhp *RequestHandlerProxy) Health() (*voltha.HealthStatus, error) {
return nil, nil
}
下面是我在适配器文件中的接口:
type IAdapter interface {
Adapter_descriptor() error
Device_types() (*voltha.DeviceTypes, error)
Health() (*voltha.HealthStatus, error)
}
【问题讨论】:
-
请使用 go fmt 格式化您的代码,然后您想参加 Go tour tour.golang.org/welcome/1
-
如果您需要语言基础方面的帮助,请提供一个最小示例。
-
感谢您的回复。我正在制作 UT 案例,所以我无法使用 fmt。
标签: go methods struct interface field