args

package
v1.4.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 29, 2016 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

Package args has common command-line flags for generation programs.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DefaultSourceTree

func DefaultSourceTree() string

DefaultSourceTree returns the /src directory of the first entry in $GOPATH. If $GOPATH is empty, it returns "./". Useful as a default output location.

Types

type GeneratorArgs

type GeneratorArgs struct {
	// Which directories to parse.
	InputDirs []string

	// Source tree to write results to.
	OutputBase string

	// Package path within the source tree.
	OutputPackagePath string

	// Output file name.
	OutputFileBaseName string

	// Where to get copyright header text.
	GoHeaderFilePath string

	// If true, only verify, don't write anything.
	VerifyOnly bool

	// GeneratedBuildTag is the tag used to identify code generated by execution
	// of this type. Each generator should use a different tag, and different
	// groups of generators (external API that depends on Kube generations) should
	// keep tags distinct as well.
	GeneratedBuildTag string

	// Any custom arguments go here
	CustomArgs interface{}
}

GeneratorArgs has arguments that are passed to generators.

func Default

func Default() *GeneratorArgs

Default returns a defaulted GeneratorArgs. You may change the defaults before calling AddFlags.

func (*GeneratorArgs) AddFlags

func (g *GeneratorArgs) AddFlags(fs *pflag.FlagSet)

func (*GeneratorArgs) Execute

func (g *GeneratorArgs) Execute(nameSystems namer.NameSystems, defaultSystem string, pkgs func(*generator.Context, *GeneratorArgs) generator.Packages) error

Execute implements main(). If you don't need any non-default behavior, use as: args.Default().Execute(...)

func (*GeneratorArgs) InputIncludes

func (g *GeneratorArgs) InputIncludes(p *types.Package) bool

InputIncludes returns true if the given package is a (sub) package of one of the InputDirs.

func (*GeneratorArgs) LoadGoBoilerplate

func (g *GeneratorArgs) LoadGoBoilerplate() ([]byte, error)

LoadGoBoilerplate loads the boilerplate file passed to --go-header-file.

func (*GeneratorArgs) NewBuilder

func (g *GeneratorArgs) NewBuilder() (*parser.Builder, error)

NewBuilder makes a new parser.Builder and populates it with the input directories.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL