Generates builder pattern code for Go structs. That's it.
go install github.com/ARUMANDESU/gobuildergen@latest
Add //go:generate above your struct:
//go:generate gobuildergen --type MyStruct
type MyStruct struct {
Name string
Age int
Email string `builder:"default=\"unknown\""`
secret string `builder:"-"`
}Run:
go generate ./...
This creates myfile_builder_gen.go with a fluent builder:
s := NewMyStructBuilder().
WithDefault().
Name("John").
Age(30).
Build()builder:"default=value"— sets a default value (applied viaWithDefault())builder:"-"— skips the field entirely