Made error types public
All checks were successful
/ test (push) Successful in 15s

This commit is contained in:
Eduard Urbach 2025-07-03 17:41:28 +02:00
parent 85cea5cbee
commit 72ace483e4
Signed by: akyoto
GPG key ID: 49226B848C78F6C8
3 changed files with 19 additions and 22 deletions

View file

@ -41,7 +41,7 @@ func newBuildFromArgs(args []string) (*build.Build, error) {
i++
if i >= len(args) {
return b, &expectedParameterError{Parameter: "arch"}
return b, &ExpectedParameter{Parameter: "arch"}
}
switch args[i] {
@ -50,7 +50,7 @@ func newBuildFromArgs(args []string) (*build.Build, error) {
case "x86":
b.Arch = build.X86
default:
return b, &invalidValueError{Value: args[i], Parameter: "arch"}
return b, &InvalidValue{Value: args[i], Parameter: "arch"}
}
case "--dry":
@ -60,7 +60,7 @@ func newBuildFromArgs(args []string) (*build.Build, error) {
i++
if i >= len(args) {
return b, &expectedParameterError{Parameter: "os"}
return b, &ExpectedParameter{Parameter: "os"}
}
switch args[i] {
@ -71,7 +71,7 @@ func newBuildFromArgs(args []string) (*build.Build, error) {
case "windows":
b.OS = build.Windows
default:
return b, &invalidValueError{Value: args[i], Parameter: "os"}
return b, &InvalidValue{Value: args[i], Parameter: "os"}
}
case "-v", "--verbose":
@ -79,7 +79,7 @@ func newBuildFromArgs(args []string) (*build.Build, error) {
default:
if strings.HasPrefix(args[i], "-") {
return b, &unknownParameterError{Parameter: args[i]}
return b, &UnknownParameter{Parameter: 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 {
return b, &invalidValueError{Value: runtime.GOOS, Parameter: "os"}
return b, &InvalidValue{Value: runtime.GOOS, Parameter: "os"}
}
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 {

View file

@ -2,33 +2,30 @@ package cli
import "fmt"
// expectedParameterError is created when a command line parameter is missing.
type expectedParameterError struct {
// ExpectedParameter is created when a command line parameter is missing.
type ExpectedParameter struct {
Parameter string
}
// Error implements the error interface.
func (err *expectedParameterError) Error() string {
func (err *ExpectedParameter) Error() string {
return fmt.Sprintf("Expected parameter '%s'", err.Parameter)
}
// invalidValueError is created when a parameter has an invalid value.
type invalidValueError struct {
// InvalidValue is created when a parameter has an invalid value.
type InvalidValue struct {
Value string
Parameter string
}
// Error implements the error interface.
func (err *invalidValueError) Error() string {
func (err *InvalidValue) Error() string {
return fmt.Sprintf("Invalid value '%s' for parameter '%s'", err.Value, err.Parameter)
}
// unknownParameterError is created when a command line parameter is not recognized.
type unknownParameterError struct {
// UnknownParameter is created when a command line parameter is not recognized.
type UnknownParameter struct {
Parameter string
}
// Error implements the error interface.
func (err *unknownParameterError) Error() string {
func (err *UnknownParameter) Error() string {
return fmt.Sprintf("Unknown parameter '%s'", err.Parameter)
}

View file

@ -17,9 +17,9 @@ func exit(err error) int {
var (
exit *exec.ExitError
expectedParameter *expectedParameterError
unknownParameter *unknownParameterError
invalidValue *invalidValueError
expectedParameter *ExpectedParameter
unknownParameter *UnknownParameter
invalidValue *InvalidValue
)
if errors.As(err, &exit) {