1 Star 0 Fork 0

蒙蒙的男孩/eosc

Create your Gitee Account
Explore and code with more than 13.5 million developers,Free private repositories !:)
Sign up
文件
Clone or Download
register.go 1001 Bytes
Copy Edit Raw Blame History
蒙蒙的男孩 authored 2024-01-10 13:49 +08:00 . 重定义项目地址
package extends
import (
"fmt"
"gitee.com/meng_mengs_boys/eosc"
)
type IExtenderRegister interface {
eosc.IExtenderDriverManager
eosc.IExtenderDrivers
}
type ExtenderRegister struct {
group string
project string
data map[string]eosc.IExtenderDriverFactory
}
func NewExtenderRegister(group string, project string) *ExtenderRegister {
return &ExtenderRegister{group: group, project: project, data: make(map[string]eosc.IExtenderDriverFactory)}
}
func (r *ExtenderRegister) RegisterExtenderDriver(name string, factory eosc.IExtenderDriverFactory) error {
_, has := r.data[name]
if has {
return fmt.Errorf("%s:%w", name, ErrorExtenderNameDuplicate)
}
r.data[name] = factory
return nil
}
func (r *ExtenderRegister) RegisterTo(register eosc.IExtenderDriverRegister) {
for n, f := range r.data {
id := FormatDriverId(r.group, r.project, n)
register.RegisterExtenderDriver(id, f)
}
}
func (r *ExtenderRegister) All() map[string]eosc.IExtenderDriverFactory {
return r.data
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/meng_mengs_boys/eosc.git
git@gitee.com:meng_mengs_boys/eosc.git
meng_mengs_boys
eosc
eosc
v1.15.7

Search