package pflag

import 

// -- uint32 value
type uint32Value uint32

func newUint32Value( uint32,  *uint32) *uint32Value {
	* = 
	return (*uint32Value)()
}

func ( *uint32Value) ( string) error {
	,  := strconv.ParseUint(, 0, 32)
	* = uint32Value()
	return 
}

func ( *uint32Value) () string {
	return "uint32"
}

func ( *uint32Value) () string { return strconv.FormatUint(uint64(*), 10) }

func uint32Conv( string) (interface{}, error) {
	,  := strconv.ParseUint(, 0, 32)
	if  != nil {
		return 0, 
	}
	return uint32(), nil
}

// GetUint32 return the uint32 value of a flag with the given name
func ( *FlagSet) ( string) (uint32, error) {
	,  := .getFlagType(, "uint32", uint32Conv)
	if  != nil {
		return 0, 
	}
	return .(uint32), nil
}

// Uint32Var defines a uint32 flag with specified name, default value, and usage string.
// The argument p points to a uint32 variable in which to store the value of the flag.
func ( *FlagSet) ( *uint32,  string,  uint32,  string) {
	.VarP(newUint32Value(, ), , "", )
}

// Uint32VarP is like Uint32Var, but accepts a shorthand letter that can be used after a single dash.
func ( *FlagSet) ( *uint32, ,  string,  uint32,  string) {
	.VarP(newUint32Value(, ), , , )
}

// Uint32Var defines a uint32 flag with specified name, default value, and usage string.
// The argument p points to a uint32  variable in which to store the value of the flag.
func ( *uint32,  string,  uint32,  string) {
	CommandLine.VarP(newUint32Value(, ), , "", )
}

// Uint32VarP is like Uint32Var, but accepts a shorthand letter that can be used after a single dash.
func ( *uint32, ,  string,  uint32,  string) {
	CommandLine.VarP(newUint32Value(, ), , , )
}

// Uint32 defines a uint32 flag with specified name, default value, and usage string.
// The return value is the address of a uint32  variable that stores the value of the flag.
func ( *FlagSet) ( string,  uint32,  string) *uint32 {
	 := new(uint32)
	.Uint32VarP(, , "", , )
	return 
}

// Uint32P is like Uint32, but accepts a shorthand letter that can be used after a single dash.
func ( *FlagSet) (,  string,  uint32,  string) *uint32 {
	 := new(uint32)
	.Uint32VarP(, , , , )
	return 
}

// Uint32 defines a uint32 flag with specified name, default value, and usage string.
// The return value is the address of a uint32  variable that stores the value of the flag.
func ( string,  uint32,  string) *uint32 {
	return CommandLine.Uint32P(, "", , )
}

// Uint32P is like Uint32, but accepts a shorthand letter that can be used after a single dash.
func (,  string,  uint32,  string) *uint32 {
	return CommandLine.Uint32P(, , , )
}