Skip to content

Modules

type UserService struct{ repo Repo }
func NewUserService(repo Repo) *UserService { return &UserService{repo: repo} }
var Module = &dygo.Module{
Name: "users",
Imports: []*dygo.Module{store.Module},
Providers: []dygo.Provider{
dygo.Provide(NewStoreRepo, dygo.As[Repo]()), // bind *StoreRepo to the Repo interface
dygo.Provide(NewUserService),
},
Exports: []dygo.Token{dygo.TypeOf[*UserService]()},
}