Versions in this module Expand all Collapse all v1 v1.0.5 Oct 9, 2026 v1.0.4 Sep 26, 2026 v1.0.3 Sep 5, 2026 v1.0.2 Aug 26, 2026 v1.0.1 Aug 26, 2026 v1.0.0 Aug 26, 2026 Changes in this version + const CodeFunctionError + const CodeTypeMismatch + var ErrArgCount = ErrFunction.WithCause(goerrors.New("argument count mismatch")) + var ErrFunction = errors.New(CodeFunctionError, "function error") + var ErrMethodNotFound = ErrFunction.WithCause(goerrors.New("method not found")) + var ErrNilObject = ErrFunction.WithCause(goerrors.New("object is nil")) + var ErrNotFunc = ErrFunction.WithCause(goerrors.New("fn must be a function")) + var ErrReturnCount = ErrFunction.WithCause(goerrors.New("return count mismatch")) + var ErrTypeMismatch = errors.New(CodeTypeMismatch, "type mismatch") + func CastFunc[OUT Function](fn any, opts ...func(*FuncConfig)) (OUT, error) + func ConvertToType(value re.Value, targetType re.Type) (re.Value, error) + func ConvertToUniformType(val any) any + func EQ_BYTES_RUNES(state *EqStepState) (eq bool, ok bool) + func EQ_DEREF_POINTERS(state *EqStepState) (eq bool, retEq bool) + func EQ_DRIVER_VALUER(state *EqStepState) (eq bool, ok bool) + func EQ_ISZEROER(state *EqStepState) (eq bool, ok bool) + func EQ_NIL_LEN_ZERO(state *EqStepState) (eq, retEq bool) + func EQ_NIL_ZEROVALS(state *EqStepState) (eq bool, retEq bool) + func EQ_TYPES_OPT_CNV(state *EqStepState) (eq, retEq bool) + func EQ_UNDERLYING_KIND(state *EqStepState) (eq, retEq bool) + func Equals(a, b any, opts ...any) bool + func IsZero(value interface{}) bool + func Method[T Function](obj interface{}, name string, opts ...func(*FuncConfig)) (n T, err error) + func RCastFunc(out reflect.Type, fn any, opts ...func(*FuncConfig)) (reflect.Value, error) + func RConvert(v *re.Value, t re.Type) (*re.Value, bool) + func RScanTo(dstPtr reflect.Value, src any, flags ScanFlag) (wasSet bool, err error) + func RSet(src, dst *re.Value, convert bool) bool + func ReflectValue(value interface{}) re.Value + func RegisterCompareStep(order int, step func(*EqStepState) (eq bool, ok bool)) + func ScanTo[DST any](dstPtr *DST, src any, flags ScanFlag) (wasSet bool, err error) + func WithContext(ctx context.Context) func(*FuncConfig) + func WithFuncArgs(args ...any) func(*FuncConfig) + type Argument interface + Arg func() any + Type func() reflect.Type + func Arg[T any](v T) Argument + type EqStepState struct + A any + B any + Opts FLAG_EQ + V1 reflect.Value + V2 reflect.Value + func (e *EqStepState) Equals(a, b any) bool + type EqualityChecker interface + Equal func(other any) bool + type EqualityChecker2 interface + Equals func(other any) bool + type FLAG_EQ = bitcheck.Flag + type Func struct + BeforeExec func(in []reflect.Value) error + Fn Function + ReturnTypes []reflect.Type + Type reflect.Type + Value reflect.Value + func NewFunc(fn Function, returns ...reflect.Type) *Func + func (c *Func) AdheresTo(fn any) bool + func (c *Func) Call(args ...interface{}) []interface{} + func (c *Func) CallFunc(in []reflect.Value) []interface{} + func (c *Func) Requires(index int, typ reflect.Type) *Func + func (c *Func) Returns(returns ...reflect.Type) *Func + type FuncConfig struct + Decorators []func(fn func([]reflect.Value) []reflect.Value) func([]reflect.Value) []reflect.Value + InjectContext reflect.Value + Wrappers []func(src reflect.Value, srcTyp reflect.Type, dst reflect.Type, injectCtx bool) (newSrc reflect.Value) + type Function = interface + type IsZeroer interface + IsZero func() bool + type ScanFlag = bitcheck.Flag + const EQ_DFLT + const EQ_DRIVER_VALUE + const EQ_IGNORE_NIL + const EQ_IGNORE_PTR + const EQ_NONE + const EQ_TYPE_CONVERT + const EQ_ZEROS + const SF_CONVS + const SF_DEFAULT + const SF_NONE + const SF_REFLECTCONV + const SF_SQL_SCANNER + const SF_STRCONV