//nolint package bank import ( sdk "github.com/cosmos/cosmos-sdk/types" ) // Coin errors reserve 100 ~ 199. const ( CodeInvalidInput sdk.CodeType = 101 CodeInvalidOutput sdk.CodeType = 102 ) // NOTE: Don't stringer this, we'll put better messages in later. func codeToDefaultMsg(code sdk.CodeType) string { switch code { case CodeInvalidInput: return "Invalid input coins" case CodeInvalidOutput: return "Invalid output coins" default: return sdk.CodeToDefaultMsg(code) } } //---------------------------------------- // Error constructors func ErrInvalidInput(msg string) sdk.Error { return newError(CodeInvalidInput, msg) } func ErrNoInputs() sdk.Error { return newError(CodeInvalidInput, "") } func ErrInvalidOutput(msg string) sdk.Error { return newError(CodeInvalidOutput, msg) } func ErrNoOutputs() sdk.Error { return newError(CodeInvalidOutput, "") } //---------------------------------------- func msgOrDefaultMsg(msg string, code sdk.CodeType) string { if msg != "" { return msg } return codeToDefaultMsg(code) } func newError(code sdk.CodeType, msg string) sdk.Error { msg = msgOrDefaultMsg(msg, code) return sdk.NewError(code, msg) }