Documentation
¶
Index ¶
- Variables
- func And(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func Cast(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastBoolToString(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDateAsDatetime(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDateAsString(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDateAsTimeStamp(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDatetimeAsDate(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDatetimeAsString(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDatetimeAsTimeStamp(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDecimal128AsDecimal128(lv, _ *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDecimal128AsTimestamp(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDecimal128ToDecimal64(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDecimal128ToFloat32(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDecimal128ToFloat64(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDecimal128ToInt64(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDecimal128ToString(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDecimal128ToUint64(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDecimal64AsDecimal128(lv, _ *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDecimal64AsDecimal64(lv, _ *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDecimal64AsTimestamp(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDecimal64ToFloat32(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDecimal64ToFloat64(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDecimal64ToInt64(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDecimal64ToString(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastDecimal64ToUint64(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastFloat64ToInt64(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastFloatAsDecimal128[T constraints.Float](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastFloatAsDecimal64[T constraints.Float](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastFloatToInt[T1 constraints.Float, T2 constraints.Integer](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastInt64ToUint64(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastIntAsTimestamp[T constraints.Signed](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastLeftToRight[T1, T2 constraints.Integer | constraints.Float](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastNumValToBool[T constraints.Integer | constraints.Float](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastSameType[T constraints.Integer | constraints.Float](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastSameType2[T types.Date | types.Datetime | types.Timestamp](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastSpecialIntToDecimal[T constraints.Integer](lv, _ *vector.Vector, ...) (*vector.Vector, error)
- func CastSpecialIntToDecimal64[T constraints.Integer](lv, rv *vector.Vector, ...) (*vector.Vector, error)
- func CastSpecials1Float[T constraints.Float](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastSpecials1Int[T constraints.Signed](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastSpecials1Uint[T constraints.Unsigned](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastSpecials2Float[T constraints.Float](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastSpecials2Int[T constraints.Integer](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastSpecials3(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastSpecials4[T constraints.Signed](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastSpecials4_64[T constraints.Signed](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastSpecialu4[T constraints.Unsigned](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastStringAsDecimal128(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastStringAsDecimal64(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastStringToBool(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastTimestampAsDate(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastUIntAsTimestamp[T constraints.Unsigned](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastUint64ToInt64(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastVarcharAsDate(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastVarcharAsDatetime(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CastVarcharAsTimestamp(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CompareBoolEq(v1, v2 bool, s1, s2 int32) bool
- func CompareBoolGe(v1, v2 bool, s1, s2 int32) bool
- func CompareBoolGt(v1, v2 bool, s1, s2 int32) bool
- func CompareBoolLe(v1, v2 bool, s1, s2 int32) bool
- func CompareBoolLt(v1, v2 bool, s1, s2 int32) bool
- func CompareBoolNe(v1, v2 bool, s1, s2 int32) bool
- func CompareBytesEq(v1, v2 []byte, s1, s2 int32) bool
- func CompareBytesGe(v1, v2 []byte, s1, s2 int32) bool
- func CompareBytesGt(v1, v2 []byte, s1, s2 int32) bool
- func CompareBytesLe(v1, v2 []byte, s1, s2 int32) bool
- func CompareBytesLt(v1, v2 []byte, s1, s2 int32) bool
- func CompareBytesNe(v1, v2 []byte, s1, s2 int32) bool
- func CompareDecimal128Eq(v1, v2 types.Decimal128, s1, s2 int32) bool
- func CompareDecimal128Ge(v1, v2 types.Decimal128, s1, s2 int32) bool
- func CompareDecimal128Gt(v1, v2 types.Decimal128, s1, s2 int32) bool
- func CompareDecimal128Le(v1, v2 types.Decimal128, s1, s2 int32) bool
- func CompareDecimal128Lt(v1, v2 types.Decimal128, s1, s2 int32) bool
- func CompareDecimal128Ne(v1, v2 types.Decimal128, s1, s2 int32) bool
- func CompareDecimal64Eq(v1, v2 types.Decimal64, s1, s2 int32) bool
- func CompareDecimal64Ge(v1, v2 types.Decimal64, s1, s2 int32) bool
- func CompareDecimal64Gt(v1, v2 types.Decimal64, s1, s2 int32) bool
- func CompareDecimal64Le(v1, v2 types.Decimal64, s1, s2 int32) bool
- func CompareDecimal64Lt(v1, v2 types.Decimal64, s1, s2 int32) bool
- func CompareDecimal64Ne(v1, v2 types.Decimal64, s1, s2 int32) bool
- func CompareOrdered[T constraints.Integer | constraints.Float, C CompOp[T]](c C, vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func CompareString(vs []*vector.Vector, fn compStringFn, proc *process.Process) (*vector.Vector, error)
- func CompareWithFn[T compFnType](vs []*vector.Vector, fn compFn[T], proc *process.Process) (*vector.Vector, error)
- func CwTypeCheckFn(inputTypes []types.T, _ []types.T, ret types.T) bool
- func Div[T constraints.Float](vectors []*vector.Vector, proc *process.Process, typ types.Type) (*vector.Vector, error)
- func DivDecimal128(vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func DivDecimal64(vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func EqBool(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func EqDecimal128(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func EqDecimal64(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func EqGeneral[T constraints.Integer | constraints.Float](vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func EqString(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func FloatMod[T constraints.Float](xs, ys, rs []T) []T
- func FloatModByScalar[T constraints.Float](x T, ys, rs []T) []T
- func FloatModByScalarSels[T constraints.Float](x T, ys, rs []T, sels []int64) []T
- func FloatModScalar[T constraints.Float](x T, ys, rs []T) []T
- func FloatModScalarSels[T constraints.Float](x T, ys, rs []T, sels []int64) []T
- func FloatModSels[T constraints.Float](xs, ys, rs []T, sels []int64) []T
- func GeBool(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func GeDecimal128(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func GeDecimal64(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func GeGeneral[T constraints.Integer | constraints.Float](vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func GeString(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func GtBool(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func GtDecimal128(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func GtDecimal64(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func GtGeneral[T constraints.Integer | constraints.Float](vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func GtString(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func HandleAndNullCol(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func HandleOrNullCol(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func IfTypeCheckFn(inputTypes []types.T, _ []types.T, ret types.T) bool
- func IntMod[T constraints.Integer](xs, ys, rs []T) []T
- func IntModByScalar[T constraints.Integer](x T, ys, rs []T) []T
- func IntModByScalarSels[T constraints.Integer](x T, ys, rs []T, sels []int64) []T
- func IntModScalar[T constraints.Integer](x T, ys, rs []T) []T
- func IntModScalarSels[T constraints.Integer](x T, ys, rs []T, sels []int64) []T
- func IntModSels[T constraints.Integer](xs, ys, rs []T, sels []int64) []T
- func IntegerDiv[T constraints.Float](vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func Is(vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func IsNot(vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func IsNotNull[T NormalType](vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func IsNull[T NormalType](vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func IsStringNotNull(vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func IsStringNull(vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func LeBool(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func LeDecimal128(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func LeDecimal64(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func LeGeneral[T constraints.Integer | constraints.Float](vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func LeString(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func Like(vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func LtBool(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func LtDecimal128(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func LtDecimal64(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func LtGeneral[T constraints.Integer | constraints.Float](vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func LtString(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func Minus[T constraints.Integer | constraints.Float](vectors []*vector.Vector, proc *process.Process, typ types.Type) (*vector.Vector, error)
- func MinusDecimal128(vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func MinusDecimal64(vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func ModFloat[T constraints.Float](vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func ModInt[T constraints.Integer](vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func Mult[T constraints.Integer | constraints.Float](vectors []*vector.Vector, proc *process.Process, typ types.Type) (*vector.Vector, error)
- func MultDecimal128(vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func MultDecimal64(vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func NeBool(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func NeDecimal128(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func NeDecimal64(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func NeGeneral[T constraints.Integer | constraints.Float](vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func NeString(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func Not(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func NotScalar(sv, nsv *vector.Vector, col1, col2 []bool, proc *process.Process) (*vector.Vector, error)
- func Numeric[T constraints.Integer | constraints.Float](xs, ys, rs []T) []T
- func NumericBigSmall[TBig, TSmall constraints.Integer | constraints.Float](xs []TBig, ys []TSmall, rs []TBig) []TBig
- func NumericByScalar[T constraints.Integer | constraints.Float](x T, ys, rs []T) []T
- func NumericByScalarSels[T constraints.Integer | constraints.Float](x T, ys, rs []T, sels []int64) []T
- func NumericByScalarSelsSigned[T constraints.Signed](x T, ys, rs []T, sels []int64) []T
- func NumericByScalarSelsUnsigned[T constraints.Unsigned](x T, ys, rs []T, sels []int64) []T
- func NumericByScalarSigned[T constraints.Signed](x T, ys, rs []T) []T
- func NumericByScalarUnsigned[T constraints.Unsigned](x T, ys, rs []T) []T
- func NumericMul[T constraints.Integer | constraints.Float](xs, ys, rs []T) []T
- func NumericMul2[TSmall, TBig constraints.Integer | constraints.Float](xs []TSmall, ys, rs []TBig) []TBig
- func NumericMulInts[T constraints.Integer](xs, ys, rs []T) []T
- func NumericMulScalar[T constraints.Integer | constraints.Float](x T, ys, rs []T) []T
- func NumericMulScalarInts[T constraints.Integer](x T, ys, rs []T) []T
- func NumericMulScalarSels[T constraints.Integer | constraints.Float](x T, ys, rs []T, sels []int64) []T
- func NumericMulScalarSelsInts[T constraints.Integer](x T, ys, rs []T, sels []int64) []T
- func NumericMulSels[T constraints.Integer | constraints.Float](xs, ys, rs []T, sels []int64) []T
- func NumericMulSels2[TSmall, TBig constraints.Integer | constraints.Float](xs []TSmall, ys, rs []TBig, sels []int64) []TBig
- func NumericMulSelsInts[T constraints.Integer](xs, ys, rs []T, sels []int64) []T
- func NumericScalar[T constraints.Integer | constraints.Float](x T, ys, rs []T) []T
- func NumericScalarSels[T constraints.Integer | constraints.Float](x T, ys, rs []T, sels []int64) []T
- func NumericScalarSelsSigned[T constraints.Signed](x T, ys, rs []T, sels []int64) []T
- func NumericScalarSelsUnsigned[T constraints.Unsigned](x T, ys, rs []T, sels []int64) []T
- func NumericScalarSigned[T constraints.Signed](x T, ys, rs []T) []T
- func NumericScalarUnsigned[T constraints.Unsigned](x T, ys, rs []T) []T
- func NumericSels[T constraints.Integer | constraints.Float](xs, ys, rs []T, sels []int64) []T
- func NumericSelsBigSmall[TBig, TSmall constraints.Integer | constraints.Float](xs []TBig, ys []TSmall, rs []TBig, sels []int64) []TBig
- func NumericSelsSigned[T constraints.Signed](xs, ys, rs []T, sels []int64) []T
- func NumericSelsUnsigned[T constraints.Unsigned](xs, ys, rs []T, sels []int64) []T
- func NumericSigned[T constraints.Signed](xs, ys, rs []T) []T
- func NumericUnsigned[T constraints.Unsigned](xs, ys, rs []T) []T
- func Or(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func Plus[T constraints.Integer | constraints.Float](vectors []*vector.Vector, proc *process.Process, typ types.Type) (*vector.Vector, error)
- func PlusDecimal128(vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func PlusDecimal64(vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func ScalarAndNotScalar(sv, nsv *vector.Vector, col1, col2 []bool, proc *process.Process) (*vector.Vector, error)
- func ScalarOrNotScalar(sv, nsv *vector.Vector, col1, col2 []bool, proc *process.Process) (*vector.Vector, error)
- func ScalarXorNotScalar(sv, nsv *vector.Vector, col1, col2 []bool, proc *process.Process) (*vector.Vector, error)
- func UnaryMinus[T constraints.Signed | constraints.Float](vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func UnaryMinusDecimal128(vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func UnaryMinusDecimal64(vectors []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- func Xor(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error)
- type CompEq
- type CompGe
- type CompGt
- type CompLe
- type CompLt
- type CompNe
- type CompOp
- type IfRet
- type NormalType
- type OrderedValue
Constants ¶
This section is empty.
Variables ¶
var ( CaseWhenUint8 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return cwGeneral[uint8](vs, proc, types.Type{Oid: types.T_uint8}) } CaseWhenUint16 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return cwGeneral[uint16](vs, proc, types.Type{Oid: types.T_uint16}) } CaseWhenUint32 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return cwGeneral[uint32](vs, proc, types.Type{Oid: types.T_uint32}) } CaseWhenUint64 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return cwGeneral[uint64](vs, proc, types.Type{Oid: types.T_uint64}) } CaseWhenInt8 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return cwGeneral[int8](vs, proc, types.Type{Oid: types.T_int8}) } CaseWhenInt16 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return cwGeneral[int16](vs, proc, types.Type{Oid: types.T_int16}) } CaseWhenInt32 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return cwGeneral[int32](vs, proc, types.Type{Oid: types.T_int32}) } CaseWhenInt64 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return cwGeneral[int64](vs, proc, types.Type{Oid: types.T_int64}) } CaseWhenFloat32 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return cwGeneral[float32](vs, proc, types.Type{Oid: types.T_float32}) } CaseWhenFloat64 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return cwGeneral[float64](vs, proc, types.Type{Oid: types.T_float64}) } CaseWhenBool = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return cwGeneral[bool](vs, proc, types.Type{Oid: types.T_bool}) } CaseWhenDate = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return cwGeneral[types.Date](vs, proc, types.Type{Oid: types.T_date}) } CaseWhenDateTime = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return cwGeneral[types.Datetime](vs, proc, types.Type{Oid: types.T_datetime}) } CaseWhenVarchar = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return cwString(vs, proc, types.Type{Oid: types.T_varchar}) } CaseWhenChar = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return cwString(vs, proc, types.Type{Oid: types.T_char}) } CaseWhenDecimal64 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return cwGeneral[types.Decimal64](vs, proc, types.Type{Oid: types.T_decimal64}) } CaseWhenDecimal128 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return cwGeneral[types.Decimal128](vs, proc, types.Type{Oid: types.T_decimal128}) } CaseWhenTimestamp = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return cwGeneral[types.Timestamp](vs, proc, types.Type{Oid: types.T_timestamp}) } )
case-when operator only support format like that
` case when A = a1 then ... when A = a2 then ... when A = a3 then ... (else ...) `
format `case A when a1 then ... when a2 then ...` should be converted to required format.
var ( Float32Div = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Div[float32](vs, proc, types.Type{Oid: types.T_float32}) } Float64Div = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Div[float64](vs, proc, types.Type{Oid: types.T_float64}) } )
var ( IfBool = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return ifGeneral[bool](vs, proc, types.Type{Oid: types.T_bool}) } IfUint8 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return ifGeneral[uint8](vs, proc, types.Type{Oid: types.T_uint8}) } IfUint16 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return ifGeneral[uint16](vs, proc, types.Type{Oid: types.T_uint16}) } IfUint32 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return ifGeneral[uint32](vs, proc, types.Type{Oid: types.T_uint32}) } IfUint64 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return ifGeneral[uint64](vs, proc, types.Type{Oid: types.T_uint64}) } IfInt8 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return ifGeneral[int8](vs, proc, types.Type{Oid: types.T_int8}) } IfInt16 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return ifGeneral[int16](vs, proc, types.Type{Oid: types.T_int16}) } IfInt32 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return ifGeneral[int32](vs, proc, types.Type{Oid: types.T_int32}) } IfInt64 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return ifGeneral[int64](vs, proc, types.Type{Oid: types.T_int64}) } IfFloat32 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return ifGeneral[float32](vs, proc, types.Type{Oid: types.T_float32}) } IfFloat64 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return ifGeneral[float64](vs, proc, types.Type{Oid: types.T_float64}) } IfDecimal64 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return ifGeneral[types.Decimal64](vs, proc, types.Type{Oid: types.T_decimal64}) } IfDecimal128 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return ifGeneral[types.Decimal128](vs, proc, types.Type{Oid: types.T_decimal128}) } IfDate = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return ifGeneral[types.Date](vs, proc, types.Type{Oid: types.T_date}) } IfDateTime = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return ifGeneral[types.Datetime](vs, proc, types.Type{Oid: types.T_datetime}) } IfVarchar = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return ifForString(vs, proc, types.Type{Oid: types.T_varchar}) } IfChar = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return ifForString(vs, proc, types.Type{Oid: types.T_char}) } IfTimestamp = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return ifGeneral[types.Timestamp](vs, proc, types.Type{Oid: types.T_timestamp}) } )
If operator supported format like that
If(<boolean operator>, <value operator>, <value operator>)
var ( MinusUint8 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Minus[uint8](vs, proc, types.Type{Oid: types.T_uint8}) } MinusUint16 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Minus[uint16](vs, proc, types.Type{Oid: types.T_uint16}) } MinusUint32 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Minus[uint32](vs, proc, types.Type{Oid: types.T_uint32}) } MinusUint64 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Minus[uint64](vs, proc, types.Type{Oid: types.T_uint64}) } MinusInt8 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Minus[int8](vs, proc, types.Type{Oid: types.T_int8}) } MinusInt16 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Minus[int16](vs, proc, types.Type{Oid: types.T_int16}) } MinusInt32 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Minus[int32](vs, proc, types.Type{Oid: types.T_int32}) } MinusInt64 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Minus[int64](vs, proc, types.Type{Oid: types.T_int64}) } MinusFloat32 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Minus[float32](vs, proc, types.Type{Oid: types.T_float32}) } MinusFloat64 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Minus[float64](vs, proc, types.Type{Oid: types.T_float64}) } )
var ( Int8Sub = NumericSigned[int8] Int8SubScalar = NumericScalarSigned[int8] Int8SubByScalar = NumericByScalarSigned[int8] Int16Sub = NumericSigned[int16] Int16SubScalar = NumericScalarSigned[int16] Int16SubByScalar = NumericByScalarSigned[int16] Int32Sub = NumericSigned[int32] Int32SubScalar = NumericScalarSigned[int32] Int32SubByScalar = NumericByScalarSigned[int32] Int64Sub = NumericSigned[int64] Int64SubScalar = NumericScalarSigned[int64] Int64SubByScalar = NumericByScalarSigned[int64] Uint8Sub = NumericUnsigned[uint8] Uint8SubScalar = NumericScalarUnsigned[uint8] Uint8SubByScalar = NumericByScalarUnsigned[uint8] Uint16Sub = NumericUnsigned[uint16] Uint16SubScalar = NumericScalarUnsigned[uint16] Uint16SubByScalar = NumericByScalarUnsigned[uint16] Uint32Sub = NumericUnsigned[uint32] Uint32SubScalar = NumericScalarUnsigned[uint32] Uint32SubByScalar = NumericByScalarUnsigned[uint32] Uint64Sub = NumericUnsigned[uint64] Uint64SubScalar = NumericScalarUnsigned[uint64] Uint64SubByScalar = NumericByScalarUnsigned[uint64] Float32Sub = Numeric[float32] Float32SubScalar = NumericScalar[float32] Float32SubByScalar = NumericByScalar[float32] Float64Sub = Numeric[float64] Float64SubScalar = NumericScalar[float64] Float64SubByScalar = NumericByScalar[float64] Int8SubSels = NumericSelsSigned[int8] Int8SubScalarSels = NumericScalarSelsSigned[int8] Int8SubByScalarSels = NumericByScalarSelsSigned[int8] Int16SubSels = NumericSelsSigned[int16] Int16SubScalarSels = NumericScalarSelsSigned[int16] Int16SubByScalarSels = NumericByScalarSelsSigned[int16] Int32SubSels = NumericSelsSigned[int32] Int32SubScalarSels = NumericScalarSelsSigned[int32] Int32SubByScalarSels = NumericByScalarSelsSigned[int32] Int64SubSels = NumericSelsSigned[int64] Int64SubScalarSels = NumericScalarSelsSigned[int64] Int64SubByScalarSels = NumericByScalarSelsSigned[int64] Uint8SubSels = NumericSelsUnsigned[uint8] Uint8SubScalarSels = NumericScalarSelsUnsigned[uint8] Uint8SubByScalarSels = NumericByScalarSelsUnsigned[uint8] Uint16SubSels = NumericSelsUnsigned[uint16] Uint16SubScalarSels = NumericScalarSelsUnsigned[uint16] Uint16SubByScalarSels = NumericByScalarSelsUnsigned[uint16] Uint32SubSels = NumericSelsUnsigned[uint32] Uint32SubScalarSels = NumericScalarSelsUnsigned[uint32] Uint32SubByScalarSels = NumericByScalarSelsUnsigned[uint32] Uint64SubSels = NumericSelsUnsigned[uint64] Uint64SubScalarSels = NumericScalarSelsUnsigned[uint64] Uint64SubByScalarSels = NumericByScalarSelsUnsigned[uint64] Float32SubSels = NumericSels[float32] Float32SubScalarSels = NumericScalarSels[float32] Float32SubByScalarSels = NumericByScalarSels[float32] Float64SubSels = NumericSels[float64] Float64SubScalarSels = NumericScalarSels[float64] Float64SubByScalarSels = NumericByScalarSels[float64] Decimal64Sub = decimal64Sub Decimal64SubSels = decimal64SubSels Decimal64SubScalar = decimal64SubScalar Decimal64SubScalarSels = decimal64SubScalarSels Decimal64SubByScalar = decimal64SubByScalar Decimal64SubByScalarSels = decimal64SubByScalarSels Decimal128Sub = decimal128Sub Decimal128SubSels = decimal128SubSels Decimal128SubScalar = decimal128SubScalar Decimal128SubScalarSels = decimal128SubScalarSels Decimal128SubByScalar = decimal128SubByScalar Decimal128SubByScalarSels = decimal128SubByScalarSels Int32Int64Sub = NumericBigSmall[int64, int32] Int32Int64SubSels = NumericSelsBigSmall[int64, int32] Int16Int64Sub = NumericBigSmall[int64, int16] Int16Int64SubSels = NumericSelsBigSmall[int64, int16] Int8Int64Sub = NumericBigSmall[int64, int8] Int8Int64SubSels = NumericSelsBigSmall[int64, int8] Int16Int32Sub = NumericBigSmall[int32, int16] Int16Int32SubSels = NumericSelsBigSmall[int32, int16] Int8Int32Sub = NumericBigSmall[int32, int8] Int8Int32SubSels = NumericSelsBigSmall[int32, int8] Int8Int16Sub = NumericBigSmall[int16, int8] Int8Int16SubSels = NumericSelsBigSmall[int16, int8] Uint32Uint64Sub = NumericBigSmall[uint64, uint32] Uint32Uint64SubSels = NumericSelsBigSmall[uint64, uint32] Uint16Uint64Sub = NumericBigSmall[uint64, uint16] Uint16Uint64SubSels = NumericSelsBigSmall[uint64, uint16] Uint8Uint64Sub = NumericBigSmall[uint64, uint8] Uint8Uint64SubSels = NumericSelsBigSmall[uint64, uint8] Uint16Uint32Sub = NumericBigSmall[uint32, uint16] Uint16Uint32SubSels = NumericSelsBigSmall[uint32, uint16] Uint8Uint32Sub = NumericBigSmall[uint32, uint8] Uint8Uint32SubSels = NumericSelsBigSmall[uint32, uint8] Uint8Uint16Sub = NumericBigSmall[uint16, uint8] Uint8Uint16SubSels = NumericSelsBigSmall[uint16, uint8] Float32Float64Sub = NumericBigSmall[float64, float32] Float32Float64SubSels = NumericSelsBigSmall[float64, float32] )
var ( Int8Mod = IntMod[int8] Int8ModSels = IntModSels[int8] Int8ModScalar = IntModScalar[int8] Int8ModScalarSels = IntModScalarSels[int8] Int8ModByScalar = IntModByScalar[int8] Int8ModByScalarSels = IntModByScalarSels[int8] Int16Mod = IntMod[int16] Int16ModSels = IntModSels[int16] Int16ModScalar = IntModScalar[int16] Int16ModScalarSels = IntModScalarSels[int16] Int16ModByScalar = IntModByScalar[int16] Int16ModByScalarSels = IntModByScalarSels[int16] Int32Mod = IntMod[int32] Int32ModSels = IntModSels[int32] Int32ModScalar = IntModScalar[int32] Int32ModScalarSels = IntModScalarSels[int32] Int32ModByScalar = IntModByScalar[int32] Int32ModByScalarSels = IntModByScalarSels[int32] Int64Mod = IntMod[int64] Int64ModSels = IntModSels[int64] Int64ModScalar = IntModScalar[int64] Int64ModScalarSels = IntModScalarSels[int64] Int64ModByScalar = IntModByScalar[int64] Int64ModByScalarSels = IntModByScalarSels[int64] Uint8Mod = IntMod[uint8] Uint8ModSels = IntModSels[uint8] Uint8ModScalar = IntModScalar[uint8] Uint8ModScalarSels = IntModScalarSels[uint8] Uint8ModByScalar = IntModByScalar[uint8] Uint8ModByScalarSels = IntModByScalarSels[uint8] Uint16Mod = IntMod[uint16] Uint16ModSels = IntModSels[uint16] Uint16ModScalar = IntModScalar[uint16] Uint16ModScalarSels = IntModScalarSels[uint16] Uint16ModByScalar = IntModByScalar[uint16] Uint16ModByScalarSels = IntModByScalarSels[uint16] Uint32Mod = IntMod[uint32] Uint32ModSels = IntModSels[uint32] Uint32ModScalar = IntModScalar[uint32] Uint32ModScalarSels = IntModScalarSels[uint32] Uint32ModByScalar = IntModByScalar[uint32] Uint32ModByScalarSels = IntModByScalarSels[uint32] Uint64Mod = IntMod[uint64] Uint64ModSels = IntModSels[uint64] Uint64ModScalar = IntModScalar[uint64] Uint64ModScalarSels = IntModScalarSels[uint64] Uint64ModByScalar = IntModByScalar[uint64] Uint64ModByScalarSels = IntModByScalarSels[uint64] Float32Mod = FloatMod[float32] Float32ModSels = FloatModSels[float32] Float32ModScalar = FloatModScalar[float32] Float32ModScalarSels = FloatModScalarSels[float32] Float32ModByScalar = FloatModByScalar[float32] Float32ModByScalarSels = FloatModByScalarSels[float32] Float64Mod = FloatMod[float64] Float64ModSels = FloatModSels[float64] Float64ModScalar = FloatModScalar[float64] Float64ModScalarSels = FloatModScalarSels[float64] Float64ModByScalar = FloatModByScalar[float64] Float64ModByScalarSels = FloatModByScalarSels[float64] )
var ( MultUint8 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Mult[uint8](vs, proc, types.Type{Oid: types.T_uint8}) } MultUint16 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Mult[uint16](vs, proc, types.Type{Oid: types.T_uint16}) } MultUint32 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Mult[uint32](vs, proc, types.Type{Oid: types.T_uint32}) } MultUint64 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Mult[uint64](vs, proc, types.Type{Oid: types.T_uint64}) } MultInt8 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Mult[int8](vs, proc, types.Type{Oid: types.T_int8}) } MultInt16 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Mult[int16](vs, proc, types.Type{Oid: types.T_int16}) } MultInt32 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Mult[int32](vs, proc, types.Type{Oid: types.T_int32}) } MultInt64 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Mult[int64](vs, proc, types.Type{Oid: types.T_int64}) } MultFloat32 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Mult[float32](vs, proc, types.Type{Oid: types.T_float32}) } MultFloat64 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Mult[float64](vs, proc, types.Type{Oid: types.T_float64}) } )
var ( Int8Mul = NumericMulInts[int8] Int8MulSels = NumericMulSelsInts[int8] Int8MulScalar = NumericMulScalarInts[int8] Int8MulScalarSels = NumericMulScalarSelsInts[int8] Int16Mul = NumericMulInts[int16] Int16MulSels = NumericMulSelsInts[int16] Int16MulScalar = NumericMulScalarInts[int16] Int16MulScalarSels = NumericMulScalarSelsInts[int16] Int32Mul = NumericMulInts[int32] Int32MulSels = NumericMulSelsInts[int32] Int32MulScalar = NumericMulScalarInts[int32] Int32MulScalarSels = NumericMulScalarSelsInts[int32] Int64Mul = NumericMulInts[int64] Int64MulSels = NumericMulSelsInts[int64] Int64MulScalar = NumericMulScalarInts[int64] Int64MulScalarSels = NumericMulScalarSelsInts[int64] Uint8Mul = NumericMulInts[uint8] Uint8MulSels = NumericMulSelsInts[uint8] Uint8MulScalar = NumericMulScalarInts[uint8] Uint8MulScalarSels = NumericMulScalarSelsInts[uint8] Uint16Mul = NumericMulInts[uint16] Uint16MulSels = NumericMulSelsInts[uint16] Uint16MulScalar = NumericMulScalarInts[uint16] Uint16MulScalarSels = NumericMulScalarSelsInts[uint16] Uint32Mul = NumericMulInts[uint32] Uint32MulSels = NumericMulSelsInts[uint32] Uint32MulScalar = NumericMulScalarInts[uint32] Uint32MulScalarSels = NumericMulScalarSelsInts[uint32] Uint64Mul = NumericMulInts[uint64] Uint64MulSels = NumericMulSelsInts[uint64] Uint64MulScalar = NumericMulScalarInts[uint64] Uint64MulScalarSels = NumericMulScalarSelsInts[uint64] Float32Mul = NumericMul[float32] Float32MulSels = NumericMulSels[float32] Float32MulScalar = NumericMulScalar[float32] Float32MulScalarSels = NumericMulScalarSels[float32] Float64Mul = NumericMul[float64] Float64MulSels = NumericMulSels[float64] Float64MulScalar = NumericMulScalar[float64] Float64MulScalarSels = NumericMulScalarSels[float64] Int32Int64Mul = NumericMul2[int32, int64] Int32Int64MulSels = NumericMulSels2[int32, int64] Int16Int64Mul = NumericMul2[int16, int64] Int16Int64MulSels = NumericMulSels2[int16, int64] Int8Int64Mul = NumericMul2[int8, int64] Int8Int64MulSels = NumericMulSels2[int8, int64] Int16Int32Mul = NumericMul2[int16, int32] Int16Int32MulSels = NumericMulSels2[int16, int32] Int8Int32Mul = NumericMul2[int8, int32] Int8Int32MulSels = NumericMulSels2[int8, int32] Int8Int16Mul = NumericMul2[int8, int16] Int8Int16MulSels = NumericMulSels2[int8, int16] Float32Float64Mul = NumericMul2[float32, float64] Float32Float64MulSels = NumericMulSels2[float32, float64] Uint32Uint64Mul = NumericMul2[uint32, uint64] Uint32Uint64MulSels = NumericMulSels2[uint32, uint64] Uint16Uint64Mul = NumericMul2[uint16, uint64] Uint16Uint64MulSels = NumericMulSels2[uint16, uint64] Uint8Uint64Mul = NumericMul2[uint8, uint64] Uint8Uint64MulSels = NumericMulSels2[uint8, uint64] Uint16Uint32Mul = NumericMul2[uint16, uint32] Uint16Uint32MulSels = NumericMulSels2[uint16, uint32] Uint8Uint32Mul = NumericMul2[uint8, uint32] Uint8Uint32MulSels = NumericMulSels2[uint8, uint32] Uint8Uint16Mul = NumericMul2[uint8, uint16] Uint8Uint16MulSels = NumericMulSels2[uint8, uint16] Decimal64Mul = decimal64Mul Decimal64MulSels = decimal64MulSels Decimal64MulScalar = decimal64MulScalar Decimal64MulScalarSels = decimal64MulScalarSels Decimal128Mul = decimal128Mul Decimal128MulSels = decimal128MulSels Decimal128MulScalar = decimal128MulScalar Decimal128MulScalarSels = decimal128MulScalarSels )
var ( PlusUint8 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Plus[uint8](vs, proc, types.Type{Oid: types.T_uint8}) } PlusUint16 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Plus[uint16](vs, proc, types.Type{Oid: types.T_uint16}) } PlusUint32 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Plus[uint32](vs, proc, types.Type{Oid: types.T_uint32}) } PlusUint64 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Plus[uint64](vs, proc, types.Type{Oid: types.T_uint64}) } PlusInt8 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Plus[int8](vs, proc, types.Type{Oid: types.T_int8}) } PlusInt16 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Plus[int16](vs, proc, types.Type{Oid: types.T_int16}) } PlusInt32 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Plus[int32](vs, proc, types.Type{Oid: types.T_int32}) } PlusInt64 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Plus[int64](vs, proc, types.Type{Oid: types.T_int64}) } PlusFloat32 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Plus[float32](vs, proc, types.Type{Oid: types.T_float32}) } PlusFloat64 = func(vs []*vector.Vector, proc *process.Process) (*vector.Vector, error) { return Plus[float64](vs, proc, types.Type{Oid: types.T_float64}) } )
var ErrDivByZero = errors.New(errno.SyntaxErrororAccessRuleViolation, "division by zero")
ErrDivByZero is reported on a division by zero.
var ErrModByZero = errors.New(errno.SyntaxErrororAccessRuleViolation, "zero modulus")
ErrModByZero is reported when computing the rest of a division by zero.
Functions ¶
func CastBoolToString ¶
func CastDateAsDatetime ¶
func CastDateAsString ¶
func CastDateAsTimeStamp ¶
CastDateAsTimeStamp : Cast converts date to timestamp
func CastDatetimeAsDate ¶
CastDatetimeAsDate : convert datetime to date DateTime : high 44 bits stands for the seconds passed by, low 20 bits stands for the microseconds passed by
func CastDatetimeAsString ¶
func CastDatetimeAsTimeStamp ¶
CastDatetimeAsTimeStamp : Cast converts datetime to timestamp
func CastDecimal128AsDecimal128 ¶
func CastDecimal128AsDecimal128(lv, _ *vector.Vector, proc *process.Process) (*vector.Vector, error)
CastDecimal128AsDecimal128 : Cast converts decimal128 to timestamp decimal128
func CastDecimal128ToDecimal64 ¶
func CastDecimal128ToDecimal64(lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
this cast function is too slow, and therefore only temporary, rewrite needed
func CastDecimal128ToFloat32 ¶
func CastDecimal128ToFloat64 ¶
func CastDecimal128ToInt64 ¶
func CastDecimal128ToString ¶
func CastDecimal128ToUint64 ¶
func CastDecimal64AsDecimal128 ¶
CastDecimal64AsDecimal128 : Cast converts decimal64 to timestamp decimal128
func CastDecimal64AsDecimal64 ¶
CastDecimal64AsDecimal64 : Cast converts decimal64 to timestamp decimal64
func CastDecimal64ToFloat32 ¶
func CastDecimal64ToFloat64 ¶
func CastDecimal64ToInt64 ¶
func CastDecimal64ToString ¶
func CastDecimal64ToUint64 ¶
func CastFloat64ToInt64 ¶
CastFloat64ToInt64 : cast float64 to int64
func CastFloatAsDecimal128 ¶
func CastFloatAsDecimal64 ¶
func CastFloatToInt ¶
func CastInt64ToUint64 ¶
CastInt64ToUint64 : cast int64 to uint64
func CastIntAsTimestamp ¶
func CastLeftToRight ¶
func CastLeftToRight[T1, T2 constraints.Integer | constraints.Float](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
CastLeftToRight : Cast handles conversions in the form of cast (left as right), where left and right are different types,
and both left and right are numeric types, Contains the following:
int8 -> (int16/int32/int64/uint8/uint16/uint32/uint64/float32/float64) int16 -> (int8/int32/int64/uint8/uint16/uint32/uint64/float32/float64) int32 -> (int8/int16/int64/uint8/uint16/uint32/uint64/float32/float64) int64 -> (int8/int16/int32/uint8/uint16/uint32/uint64/float32/float64) uint8 -> (int8/int16/int32/int64/uint16/uint32/uint64/float32/float64) uint16 -> (int8/int16/int32/int64/uint8/uint32/uint64/float32/float64) uint32 -> (int8/int16/int32/int64/uint8/uint16/uint64/float32/float64) uint64 -> (int8/int16/int32/int64/uint8/uint16/uint32/float32/float64)
func CastNumValToBool ¶
func CastSameType ¶
func CastSameType[T constraints.Integer | constraints.Float](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
CastSameType : Cast handles the same data type and is numeric , Contains the following: int8 -> int8, int16 -> int16, int32 -> int32, int64 -> int64, uint8 -> uint8, uint16 -> uint16, uint32 -> uint32, uint64 -> uint64, float32 -> float32, float64 -> float64,
func CastSameType2 ¶
func CastSameType2[T types.Date | types.Datetime | types.Timestamp](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
CastSameType2 : Cast handles the same data type and is date series , Contains the following: date -> date datetime -> datetime timestamp -> timestamp
func CastSpecialIntToDecimal ¶
func CastSpecialIntToDecimal[T constraints.Integer]( lv, _ *vector.Vector, i2d func(xs []T, rs []types.Decimal128) ([]types.Decimal128, error), proc *process.Process) (*vector.Vector, error)
func CastSpecials1Float ¶
func CastSpecials1Float[T constraints.Float](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
CastSpecials1Float : Cast converts string to floating point number,Contains the following: (char / varhcar) -> (float32 / float64)
func CastSpecials1Int ¶
func CastSpecials1Int[T constraints.Signed](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
CastSpecials1Int : Cast converts string to integer,Contains the following: (char / varhcar) -> (int8 / int16 / int32/ int64 / uint8 / uint16 / uint32 / uint64)
func CastSpecials1Uint ¶
func CastSpecials2Float ¶
func CastSpecials2Float[T constraints.Float](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
CastSpecials2Float : Cast converts floating point number to string ,Contains the following: (float32/float64) -> (char / varhcar)
func CastSpecials2Int ¶
func CastSpecials2Int[T constraints.Integer](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
CastSpecials2Int : Cast converts integer to string,Contains the following: (int8 /int16/int32/int64/uint8/uint16/uint32/uint64) -> (char / varhcar)
func CastSpecials3 ¶
CastSpecials3 : Cast converts string to string ,Contains the following: char -> char char -> varhcar varchar -> char varchar -> varhcar
func CastSpecials4 ¶
func CastSpecials4[T constraints.Signed](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
CastSpecials4 : Cast converts signed integer to decimal128 ,Contains the following: (int8/int16/int32/int64) to decimal128
func CastSpecials4_64 ¶
func CastSpecialu4 ¶
func CastSpecialu4[T constraints.Unsigned](lv, rv *vector.Vector, proc *process.Process) (*vector.Vector, error)
CastSpecialu4 : Cast converts unsigned integer to decimal128 ,Contains the following: (uint8/uint16/uint32/uint64) to decimal128
func CastStringAsDecimal128 ¶
CastStringAsDecimal128 : onverts char/varchar as decimal128
func CastStringAsDecimal64 ¶
CastStringAsDecimal64 : onverts char/varchar as decimal64
func CastStringToBool ¶
func CastTimestampAsDate ¶
func CastUIntAsTimestamp ¶
func CastUint64ToInt64 ¶
CastUint64ToInt64 : cast uint64 to int64
func CastVarcharAsDate ¶
CastVarcharAsDate : Cast converts varchar to date type
func CastVarcharAsDatetime ¶
CastVarcharAsDatetime : Cast converts varchar to datetime type
func CastVarcharAsTimestamp ¶
CastVarcharAsTimestamp : Cast converts varchar to timestamp type
func CompareBoolEq ¶ added in v0.5.1
func CompareBoolGe ¶ added in v0.5.1
func CompareBoolGt ¶ added in v0.5.1
func CompareBoolLe ¶ added in v0.5.1
func CompareBoolLt ¶ added in v0.5.1
func CompareBoolNe ¶ added in v0.5.1
func CompareBytesEq ¶ added in v0.5.1
func CompareBytesGe ¶ added in v0.5.1
func CompareBytesGt ¶ added in v0.5.1
func CompareBytesLe ¶ added in v0.5.1
func CompareBytesLt ¶ added in v0.5.1
func CompareBytesNe ¶ added in v0.5.1
func CompareDecimal128Eq ¶ added in v0.5.1
func CompareDecimal128Eq(v1, v2 types.Decimal128, s1, s2 int32) bool
func CompareDecimal128Ge ¶ added in v0.5.1
func CompareDecimal128Ge(v1, v2 types.Decimal128, s1, s2 int32) bool
func CompareDecimal128Gt ¶ added in v0.5.1
func CompareDecimal128Gt(v1, v2 types.Decimal128, s1, s2 int32) bool
func CompareDecimal128Le ¶ added in v0.5.1
func CompareDecimal128Le(v1, v2 types.Decimal128, s1, s2 int32) bool
func CompareDecimal128Lt ¶ added in v0.5.1
func CompareDecimal128Lt(v1, v2 types.Decimal128, s1, s2 int32) bool
func CompareDecimal128Ne ¶ added in v0.5.1
func CompareDecimal128Ne(v1, v2 types.Decimal128, s1, s2 int32) bool
func CompareDecimal64Eq ¶ added in v0.5.1
func CompareDecimal64Ge ¶ added in v0.5.1
func CompareDecimal64Gt ¶ added in v0.5.1
func CompareDecimal64Le ¶ added in v0.5.1
func CompareDecimal64Lt ¶ added in v0.5.1
func CompareDecimal64Ne ¶ added in v0.5.1
func CompareOrdered ¶ added in v0.5.1
func CompareString ¶ added in v0.5.1
func CompareWithFn ¶ added in v0.5.1
func CwTypeCheckFn ¶
CwTypeCheckFn is type check function for case-when operator
func DivDecimal128 ¶
func DivDecimal64 ¶
func EqDecimal128 ¶
func EqDecimal64 ¶
func FloatMod ¶
func FloatMod[T constraints.Float](xs, ys, rs []T) []T
func FloatModByScalar ¶
func FloatModByScalar[T constraints.Float](x T, ys, rs []T) []T
func FloatModByScalarSels ¶
func FloatModByScalarSels[T constraints.Float](x T, ys, rs []T, sels []int64) []T
func FloatModScalar ¶
func FloatModScalar[T constraints.Float](x T, ys, rs []T) []T
func FloatModScalarSels ¶
func FloatModScalarSels[T constraints.Float](x T, ys, rs []T, sels []int64) []T
func FloatModSels ¶
func FloatModSels[T constraints.Float](xs, ys, rs []T, sels []int64) []T
func GeDecimal128 ¶
func GeDecimal64 ¶
func GtDecimal128 ¶
func GtDecimal64 ¶
func HandleAndNullCol ¶
func HandleOrNullCol ¶
func IntMod ¶
func IntMod[T constraints.Integer](xs, ys, rs []T) []T
func IntModByScalar ¶
func IntModByScalar[T constraints.Integer](x T, ys, rs []T) []T
func IntModByScalarSels ¶
func IntModByScalarSels[T constraints.Integer](x T, ys, rs []T, sels []int64) []T
func IntModScalar ¶
func IntModScalar[T constraints.Integer](x T, ys, rs []T) []T
func IntModScalarSels ¶
func IntModScalarSels[T constraints.Integer](x T, ys, rs []T, sels []int64) []T
func IntModSels ¶
func IntModSels[T constraints.Integer](xs, ys, rs []T, sels []int64) []T
func IntegerDiv ¶
func IsStringNotNull ¶
func IsStringNull ¶
func LeDecimal128 ¶
func LeDecimal64 ¶
func LtDecimal128 ¶
func LtDecimal64 ¶
func MinusDecimal128 ¶
func MinusDecimal64 ¶
Since the underlying operator does not generically process decimal64 and decimal128, sub of decimal64 and decimal128 are not generalized
func MultDecimal128 ¶
LeftType: types.T_decimal128, RightType: types.T_decimal128, ReturnType: types.T_decimal128,
func MultDecimal64 ¶
LeftType: types.T_decimal64, RightType: types.T_decimal64, ReturnType: types.T_decimal128,
func NeDecimal128 ¶
func NeDecimal64 ¶
func Numeric ¶
func Numeric[T constraints.Integer | constraints.Float](xs, ys, rs []T) []T
func NumericBigSmall ¶
func NumericBigSmall[TBig, TSmall constraints.Integer | constraints.Float](xs []TBig, ys []TSmall, rs []TBig) []TBig
func NumericByScalar ¶
func NumericByScalar[T constraints.Integer | constraints.Float](x T, ys, rs []T) []T
func NumericByScalarSels ¶
func NumericByScalarSels[T constraints.Integer | constraints.Float](x T, ys, rs []T, sels []int64) []T
func NumericByScalarSelsSigned ¶
func NumericByScalarSelsSigned[T constraints.Signed](x T, ys, rs []T, sels []int64) []T
func NumericByScalarSelsUnsigned ¶
func NumericByScalarSelsUnsigned[T constraints.Unsigned](x T, ys, rs []T, sels []int64) []T
func NumericByScalarSigned ¶
func NumericByScalarSigned[T constraints.Signed](x T, ys, rs []T) []T
func NumericByScalarUnsigned ¶
func NumericByScalarUnsigned[T constraints.Unsigned](x T, ys, rs []T) []T
func NumericMul ¶
func NumericMul[T constraints.Integer | constraints.Float](xs, ys, rs []T) []T
func NumericMul2 ¶
func NumericMul2[TSmall, TBig constraints.Integer | constraints.Float](xs []TSmall, ys, rs []TBig) []TBig
func NumericMulInts ¶
func NumericMulInts[T constraints.Integer](xs, ys, rs []T) []T
the slowest overflow check
func NumericMulScalar ¶
func NumericMulScalar[T constraints.Integer | constraints.Float](x T, ys, rs []T) []T
func NumericMulScalarInts ¶
func NumericMulScalarInts[T constraints.Integer](x T, ys, rs []T) []T
func NumericMulScalarSels ¶
func NumericMulScalarSels[T constraints.Integer | constraints.Float](x T, ys, rs []T, sels []int64) []T
func NumericMulScalarSelsInts ¶
func NumericMulScalarSelsInts[T constraints.Integer](x T, ys, rs []T, sels []int64) []T
func NumericMulSels ¶
func NumericMulSels[T constraints.Integer | constraints.Float](xs, ys, rs []T, sels []int64) []T
func NumericMulSels2 ¶
func NumericMulSels2[TSmall, TBig constraints.Integer | constraints.Float](xs []TSmall, ys, rs []TBig, sels []int64) []TBig
func NumericMulSelsInts ¶
func NumericMulSelsInts[T constraints.Integer](xs, ys, rs []T, sels []int64) []T
func NumericScalar ¶
func NumericScalar[T constraints.Integer | constraints.Float](x T, ys, rs []T) []T
func NumericScalarSels ¶
func NumericScalarSels[T constraints.Integer | constraints.Float](x T, ys, rs []T, sels []int64) []T
func NumericScalarSelsSigned ¶
func NumericScalarSelsSigned[T constraints.Signed](x T, ys, rs []T, sels []int64) []T
func NumericScalarSelsUnsigned ¶
func NumericScalarSelsUnsigned[T constraints.Unsigned](x T, ys, rs []T, sels []int64) []T
func NumericScalarSigned ¶
func NumericScalarSigned[T constraints.Signed](x T, ys, rs []T) []T
func NumericScalarUnsigned ¶
func NumericScalarUnsigned[T constraints.Unsigned](x T, ys, rs []T) []T
func NumericSels ¶
func NumericSels[T constraints.Integer | constraints.Float](xs, ys, rs []T, sels []int64) []T
func NumericSelsBigSmall ¶
func NumericSelsBigSmall[TBig, TSmall constraints.Integer | constraints.Float](xs []TBig, ys []TSmall, rs []TBig, sels []int64) []TBig
func NumericSelsSigned ¶
func NumericSelsSigned[T constraints.Signed](xs, ys, rs []T, sels []int64) []T
func NumericSelsUnsigned ¶
func NumericSelsUnsigned[T constraints.Unsigned](xs, ys, rs []T, sels []int64) []T
func NumericSigned ¶
func NumericSigned[T constraints.Signed](xs, ys, rs []T) []T
func NumericUnsigned ¶
func NumericUnsigned[T constraints.Unsigned](xs, ys, rs []T) []T
func PlusDecimal128 ¶
LeftType: types.T_decimal128, RightType: types.T_decimal128, ReturnType: types.T_decimal128,
func PlusDecimal64 ¶
LeftType: types.T_decimal64, RightType: types.T_decimal64, ReturnType: types.T_decimal64,
func ScalarAndNotScalar ¶
func ScalarOrNotScalar ¶
func ScalarXorNotScalar ¶
func UnaryMinus ¶
func UnaryMinusDecimal128 ¶
func UnaryMinusDecimal64 ¶
Types ¶
type CompEq ¶ added in v0.5.1
type CompEq[T constraints.Integer | constraints.Float] struct{}
type CompGe ¶ added in v0.5.1
type CompGe[T constraints.Integer | constraints.Float] struct{}
type CompGt ¶ added in v0.5.1
type CompGt[T constraints.Integer | constraints.Float] struct{}
type CompLe ¶ added in v0.5.1
type CompLe[T constraints.Integer | constraints.Float] struct{}
type CompLt ¶ added in v0.5.1
type CompLt[T constraints.Integer | constraints.Float] struct{}
type CompNe ¶ added in v0.5.1
type CompNe[T constraints.Integer | constraints.Float] struct{}
type IfRet ¶
type IfRet interface {
constraints.Integer | constraints.Float | bool | types.Date | types.Datetime |
types.Decimal64 | types.Decimal128 | types.Timestamp
}
type NormalType ¶
type NormalType interface {
constraints.Integer | constraints.Float | bool | types.Date | types.Datetime |
types.Decimal64 | types.Decimal128 | types.Timestamp
}