github.com/gobuffalo/buffalo-cli/v2@v2.0.0-alpha.15.0.20200919213536-a7350c8e6799/cli/internal/plugins/plush/generators/resource/flags.go (about)

     1  package resource
     2  
     3  import (
     4  	"io"
     5  
     6  	"github.com/spf13/pflag"
     7  )
     8  
     9  func (g *Generator) Flags() *pflag.FlagSet {
    10  	if g.flags != nil {
    11  		return g.flags
    12  	}
    13  	flags := pflag.NewFlagSet(g.PluginName(), pflag.ContinueOnError)
    14  	flags.StringVarP(&g.modelName, "model-name", "n", "", "name of the model to use [defaults to resource name]")
    15  
    16  	g.flags = flags
    17  	return g.flags
    18  }
    19  
    20  func (g *Generator) ResourceFlags() []*pflag.Flag {
    21  	var values []*pflag.Flag
    22  	flags := g.Flags()
    23  	flags.VisitAll(func(f *pflag.Flag) {
    24  		values = append(values, f)
    25  	})
    26  	return values
    27  }
    28  
    29  func (g *Generator) PrintFlags(w io.Writer) error {
    30  	flags := g.Flags()
    31  	flags.SetOutput(w)
    32  	flags.PrintDefaults()
    33  	return nil
    34  }