type Args … // New returns default arguments for the generator. func New() *Args { … } // AddFlags add the generator flags to the flag set. func (args *Args) AddFlags(fs *pflag.FlagSet) { … } // Validate checks the given arguments. func (args *Args) Validate() error { … }