parameter.go
func NewParameter(name string, value reflect.Value) *Parameter {
	parameter := Parameter{
		Name:  name,
		Value: value,
	}
	return &parameter
}
func NewParameter(name string, value reflect.Value) *Parameter {
	parameter := Parameter{
		Name:  name,
		Value: value,
	}
	return &parameter
}
// A capacity of 2 seems to be a good guess for the number of aliases.