anyvalue

package
v0.5.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 17, 2022 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func EncodeAnyRing2

func EncodeAnyRing2(ring *AnyVRing2, buf *bytes.Buffer)

func EncodeAnyValueRing1

func EncodeAnyValueRing1[T ts1](ring *AnyVRing1[T], buf *bytes.Buffer)

func NewAnyValueRingWithTypeCheck

func NewAnyValueRingWithTypeCheck(typ types.Type) (ring.Ring, error)

Types

type AnyVRing1

type AnyVRing1[T ts1] struct {
	Typ types.Type

	Da  []byte
	Vs  []T
	Ns  []int64
	Set []bool // if Set[i] is false, the Vs[i] hasn't been assign any value
}

AnyVRing1 for bool / int / uint / float / date / datetime and decimal64 / decimal128

func DecodeAnyValueRing1

func DecodeAnyValueRing1[T ts1](data []byte, typ types.Type) (*AnyVRing1[T], []byte, error)

func (*AnyVRing1[T]) Add

func (r *AnyVRing1[T]) Add(a interface{}, x, y int64)

func (*AnyVRing1[T]) BatchAdd

func (r *AnyVRing1[T]) BatchAdd(a interface{}, start int64, os []uint8, vps []uint64)

func (*AnyVRing1[T]) BatchFill

func (r *AnyVRing1[T]) BatchFill(start int64, os []uint8, vps []uint64, zs []int64, vec *vector.Vector)

func (*AnyVRing1[T]) BulkFill

func (r *AnyVRing1[T]) BulkFill(i int64, zs []int64, vec *vector.Vector)

func (*AnyVRing1[T]) Count

func (r *AnyVRing1[T]) Count() int

func (*AnyVRing1[T]) Dup

func (r *AnyVRing1[T]) Dup() ring.Ring

func (*AnyVRing1[T]) Eval

func (r *AnyVRing1[T]) Eval(zs []int64) *vector.Vector

func (*AnyVRing1[T]) Fill

func (r *AnyVRing1[T]) Fill(i int64, sel, z int64, vec *vector.Vector)

func (*AnyVRing1[T]) Free

func (r *AnyVRing1[T]) Free(m *mheap.Mheap)

func (*AnyVRing1[T]) Grow

func (r *AnyVRing1[T]) Grow(m *mheap.Mheap) error

func (*AnyVRing1[T]) Grows

func (r *AnyVRing1[T]) Grows(size int, m *mheap.Mheap) error

func (*AnyVRing1[T]) Mul

func (r *AnyVRing1[T]) Mul(a interface{}, x, y, z int64)

func (*AnyVRing1[T]) SetLength

func (r *AnyVRing1[T]) SetLength(n int)

func (*AnyVRing1[T]) Shrink

func (r *AnyVRing1[T]) Shrink(sels []int64)

func (*AnyVRing1[T]) Shuffle

func (r *AnyVRing1[T]) Shuffle(_ []int64, _ *mheap.Mheap) error

func (*AnyVRing1[T]) Size

func (r *AnyVRing1[T]) Size() int

func (*AnyVRing1[T]) String

func (r *AnyVRing1[T]) String() string

func (*AnyVRing1[T]) Type

func (r *AnyVRing1[T]) Type() types.Type

type AnyVRing2

type AnyVRing2 struct {
	Typ types.Type
	Mp  *mheap.Mheap
	Vs  [][]byte
	Ns  []int64
	Set []bool // if Set[i] is false, the Vs[i] hasn't been assign any value
}

AnyVRing2 for char / varchar

func DecodeAnyRing2

func DecodeAnyRing2(data []byte) (*AnyVRing2, []byte, error)

func (*AnyVRing2) Add

func (r *AnyVRing2) Add(a interface{}, x, y int64)

func (*AnyVRing2) BatchAdd

func (r *AnyVRing2) BatchAdd(a interface{}, start int64, os []uint8, vps []uint64)

func (*AnyVRing2) BatchFill

func (r *AnyVRing2) BatchFill(start int64, os []uint8, vps []uint64, zs []int64, vec *vector.Vector)

func (*AnyVRing2) BulkFill

func (r *AnyVRing2) BulkFill(i int64, zs []int64, vec *vector.Vector)

func (*AnyVRing2) Count

func (r *AnyVRing2) Count() int

func (*AnyVRing2) Dup

func (r *AnyVRing2) Dup() ring.Ring

func (*AnyVRing2) Eval

func (r *AnyVRing2) Eval(zs []int64) *vector.Vector

func (*AnyVRing2) Fill

func (r *AnyVRing2) Fill(i int64, sel, z int64, vec *vector.Vector)

func (*AnyVRing2) Free

func (r *AnyVRing2) Free(_ *mheap.Mheap)

func (*AnyVRing2) Grow

func (r *AnyVRing2) Grow(m *mheap.Mheap) error

func (*AnyVRing2) Grows

func (r *AnyVRing2) Grows(size int, m *mheap.Mheap) error

func (*AnyVRing2) Mul

func (r *AnyVRing2) Mul(a interface{}, x, y, z int64)

func (*AnyVRing2) SetLength

func (r *AnyVRing2) SetLength(n int)

func (*AnyVRing2) Shrink

func (r *AnyVRing2) Shrink(sels []int64)

func (*AnyVRing2) Shuffle

func (r *AnyVRing2) Shuffle(_ []int64, _ *mheap.Mheap) error

func (*AnyVRing2) Size

func (r *AnyVRing2) Size() int

func (*AnyVRing2) String

func (r *AnyVRing2) String() string

func (*AnyVRing2) Type

func (r *AnyVRing2) Type() types.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL