123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- package errors
- import "errors"
- // General exit codes
- const (
- CodeOk int = iota // Used when the program exits without errors
- CodeUnknown // Used when no other exit code is appropriate
- )
- // Taskfile related exit codes
- const (
- CodeTaskfileNotFound int = iota + 100
- CodeTaskfileAlreadyExists
- CodeTaskfileDecode
- CodeTaskfileFetchFailed
- CodeTaskfileNotTrusted
- CodeTaskfileNotSecure
- CodeTaskfileCacheNotFound
- CodeTaskfileVersionCheckError
- CodeTaskfileNetworkTimeout
- CodeTaskfileInvalid
- CodeTaskfileCycle
- )
- // Task related exit codes
- const (
- CodeTaskNotFound int = iota + 200
- CodeTaskRunError
- CodeTaskInternal
- CodeTaskNameConflict
- CodeTaskCalledTooManyTimes
- CodeTaskCancelled
- CodeTaskMissingRequiredVars
- CodeTaskNotAllowedVars
- )
- // TaskError extends the standard error interface with a Code method. This code will
- // be used as the exit code of the program which allows the user to distinguish
- // between different types of errors.
- type TaskError interface {
- error
- Code() int
- }
- // New returns an error that formats as the given text. Each call to New returns
- // a distinct error value even if the text is identical. This wraps the standard
- // errors.New function so that we don't need to alias that package.
- func New(text string) error {
- return errors.New(text)
- }
- // Is wraps the standard errors.Is function so that we don't need to alias that package.
- func Is(err, target error) bool {
- return errors.Is(err, target)
- }
- // As wraps the standard errors.As function so that we don't need to alias that package.
- func As(err error, target any) bool {
- return errors.As(err, target)
- }
- // Unwrap wraps the standard errors.Unwrap function so that we don't need to alias that package.
- func Unwrap(err error) error {
- return errors.Unwrap(err)
- }
|