//go:build wireinject // +build wireinject package main import ( "github.com/gin-gonic/gin" "github.com/google/wire" "github.com/spf13/viper" "whois-go/internal/handler" "whois-go/internal/repository" "whois-go/internal/server" "whois-go/internal/service" "whois-go/pkg/log" ) var ServerSet = wire.NewSet(server.NewServerHTTP) var RepositorySet = wire.NewSet( repository.NewDb, repository.NewRepository, ) var ServiceSet = wire.NewSet( service.NewService, service.NewUserService, service.NewSystemService, ) var HandlerSet = wire.NewSet( handler.NewHandler, handler.NewUserHandler, handler.NewSystemHandler, ) func newApp(*viper.Viper, *log.Logger) (*gin.Engine, func(), error) { panic(wire.Build( ServerSet, //RepositorySet, ServiceSet, HandlerSet, )) }