mirror of
https://github.com/rocky-linux/peridot.git
synced 2024-10-19 15:55:08 +00:00
60 lines
1.8 KiB
Go
60 lines
1.8 KiB
Go
|
package expression
|
||
|
|
||
|
import (
|
||
|
"fmt"
|
||
|
)
|
||
|
|
||
|
// InvalidParameterError is returned if invalid parameters are encountered. This
|
||
|
// error specifically refers to situations where parameters are non-empty but
|
||
|
// have an invalid syntax/format. The error message includes the function
|
||
|
// that returned the error originally and the parameter type that was deemed
|
||
|
// invalid.
|
||
|
//
|
||
|
// Example:
|
||
|
//
|
||
|
// // err is of type InvalidParameterError
|
||
|
// _, err := expression.Name("foo..bar").BuildOperand()
|
||
|
type InvalidParameterError struct {
|
||
|
parameterType string
|
||
|
functionName string
|
||
|
}
|
||
|
|
||
|
func (ipe InvalidParameterError) Error() string {
|
||
|
return fmt.Sprintf("%s error: invalid parameter: %s", ipe.functionName, ipe.parameterType)
|
||
|
}
|
||
|
|
||
|
func newInvalidParameterError(funcName, paramType string) InvalidParameterError {
|
||
|
return InvalidParameterError{
|
||
|
parameterType: paramType,
|
||
|
functionName: funcName,
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// UnsetParameterError is returned if parameters are empty and uninitialized.
|
||
|
// This error is returned if opaque structs (ConditionBuilder, NameBuilder,
|
||
|
// Builder, etc) are initialized outside of functions in the package, since all
|
||
|
// structs in the package are designed to be initialized with functions.
|
||
|
//
|
||
|
// Example:
|
||
|
//
|
||
|
// // err is of type UnsetParameterError
|
||
|
// _, err := expression.Builder{}.Build()
|
||
|
// _, err := expression.NewBuilder().
|
||
|
// WithCondition(expression.ConditionBuilder{}).
|
||
|
// Build()
|
||
|
type UnsetParameterError struct {
|
||
|
parameterType string
|
||
|
functionName string
|
||
|
}
|
||
|
|
||
|
func (upe UnsetParameterError) Error() string {
|
||
|
return fmt.Sprintf("%s error: unset parameter: %s", upe.functionName, upe.parameterType)
|
||
|
}
|
||
|
|
||
|
func newUnsetParameterError(funcName, paramType string) UnsetParameterError {
|
||
|
return UnsetParameterError{
|
||
|
parameterType: paramType,
|
||
|
functionName: funcName,
|
||
|
}
|
||
|
}
|