This commit is contained in:
parent
85cea5cbee
commit
72ace483e4
3 changed files with 19 additions and 22 deletions
|
@ -41,7 +41,7 @@ func newBuildFromArgs(args []string) (*build.Build, error) {
|
||||||
i++
|
i++
|
||||||
|
|
||||||
if i >= len(args) {
|
if i >= len(args) {
|
||||||
return b, &expectedParameterError{Parameter: "arch"}
|
return b, &ExpectedParameter{Parameter: "arch"}
|
||||||
}
|
}
|
||||||
|
|
||||||
switch args[i] {
|
switch args[i] {
|
||||||
|
@ -50,7 +50,7 @@ func newBuildFromArgs(args []string) (*build.Build, error) {
|
||||||
case "x86":
|
case "x86":
|
||||||
b.Arch = build.X86
|
b.Arch = build.X86
|
||||||
default:
|
default:
|
||||||
return b, &invalidValueError{Value: args[i], Parameter: "arch"}
|
return b, &InvalidValue{Value: args[i], Parameter: "arch"}
|
||||||
}
|
}
|
||||||
|
|
||||||
case "--dry":
|
case "--dry":
|
||||||
|
@ -60,7 +60,7 @@ func newBuildFromArgs(args []string) (*build.Build, error) {
|
||||||
i++
|
i++
|
||||||
|
|
||||||
if i >= len(args) {
|
if i >= len(args) {
|
||||||
return b, &expectedParameterError{Parameter: "os"}
|
return b, &ExpectedParameter{Parameter: "os"}
|
||||||
}
|
}
|
||||||
|
|
||||||
switch args[i] {
|
switch args[i] {
|
||||||
|
@ -71,7 +71,7 @@ func newBuildFromArgs(args []string) (*build.Build, error) {
|
||||||
case "windows":
|
case "windows":
|
||||||
b.OS = build.Windows
|
b.OS = build.Windows
|
||||||
default:
|
default:
|
||||||
return b, &invalidValueError{Value: args[i], Parameter: "os"}
|
return b, &InvalidValue{Value: args[i], Parameter: "os"}
|
||||||
}
|
}
|
||||||
|
|
||||||
case "-v", "--verbose":
|
case "-v", "--verbose":
|
||||||
|
@ -79,7 +79,7 @@ func newBuildFromArgs(args []string) (*build.Build, error) {
|
||||||
|
|
||||||
default:
|
default:
|
||||||
if strings.HasPrefix(args[i], "-") {
|
if strings.HasPrefix(args[i], "-") {
|
||||||
return b, &unknownParameterError{Parameter: args[i]}
|
return b, &UnknownParameter{Parameter: args[i]}
|
||||||
}
|
}
|
||||||
|
|
||||||
b.Files = append(b.Files, args[i])
|
b.Files = append(b.Files, args[i])
|
||||||
|
@ -87,11 +87,11 @@ func newBuildFromArgs(args []string) (*build.Build, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if b.OS == build.UnknownOS {
|
if b.OS == build.UnknownOS {
|
||||||
return b, &invalidValueError{Value: runtime.GOOS, Parameter: "os"}
|
return b, &InvalidValue{Value: runtime.GOOS, Parameter: "os"}
|
||||||
}
|
}
|
||||||
|
|
||||||
if b.Arch == build.UnknownArch {
|
if b.Arch == build.UnknownArch {
|
||||||
return b, &invalidValueError{Value: runtime.GOARCH, Parameter: "arch"}
|
return b, &InvalidValue{Value: runtime.GOARCH, Parameter: "arch"}
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(b.Files) == 0 {
|
if len(b.Files) == 0 {
|
||||||
|
|
|
@ -2,33 +2,30 @@ package cli
|
||||||
|
|
||||||
import "fmt"
|
import "fmt"
|
||||||
|
|
||||||
// expectedParameterError is created when a command line parameter is missing.
|
// ExpectedParameter is created when a command line parameter is missing.
|
||||||
type expectedParameterError struct {
|
type ExpectedParameter struct {
|
||||||
Parameter string
|
Parameter string
|
||||||
}
|
}
|
||||||
|
|
||||||
// Error implements the error interface.
|
func (err *ExpectedParameter) Error() string {
|
||||||
func (err *expectedParameterError) Error() string {
|
|
||||||
return fmt.Sprintf("Expected parameter '%s'", err.Parameter)
|
return fmt.Sprintf("Expected parameter '%s'", err.Parameter)
|
||||||
}
|
}
|
||||||
|
|
||||||
// invalidValueError is created when a parameter has an invalid value.
|
// InvalidValue is created when a parameter has an invalid value.
|
||||||
type invalidValueError struct {
|
type InvalidValue struct {
|
||||||
Value string
|
Value string
|
||||||
Parameter string
|
Parameter string
|
||||||
}
|
}
|
||||||
|
|
||||||
// Error implements the error interface.
|
func (err *InvalidValue) Error() string {
|
||||||
func (err *invalidValueError) Error() string {
|
|
||||||
return fmt.Sprintf("Invalid value '%s' for parameter '%s'", err.Value, err.Parameter)
|
return fmt.Sprintf("Invalid value '%s' for parameter '%s'", err.Value, err.Parameter)
|
||||||
}
|
}
|
||||||
|
|
||||||
// unknownParameterError is created when a command line parameter is not recognized.
|
// UnknownParameter is created when a command line parameter is not recognized.
|
||||||
type unknownParameterError struct {
|
type UnknownParameter struct {
|
||||||
Parameter string
|
Parameter string
|
||||||
}
|
}
|
||||||
|
|
||||||
// Error implements the error interface.
|
func (err *UnknownParameter) Error() string {
|
||||||
func (err *unknownParameterError) Error() string {
|
|
||||||
return fmt.Sprintf("Unknown parameter '%s'", err.Parameter)
|
return fmt.Sprintf("Unknown parameter '%s'", err.Parameter)
|
||||||
}
|
}
|
|
@ -17,9 +17,9 @@ func exit(err error) int {
|
||||||
|
|
||||||
var (
|
var (
|
||||||
exit *exec.ExitError
|
exit *exec.ExitError
|
||||||
expectedParameter *expectedParameterError
|
expectedParameter *ExpectedParameter
|
||||||
unknownParameter *unknownParameterError
|
unknownParameter *UnknownParameter
|
||||||
invalidValue *invalidValueError
|
invalidValue *InvalidValue
|
||||||
)
|
)
|
||||||
|
|
||||||
if errors.As(err, &exit) {
|
if errors.As(err, &exit) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue