Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Record ¶
type Record struct {
Vals []*RecordVals
}
executors make use of val's index, executor's parameters has colIdx field
func NewRecord ¶
func NewRecord(vals []*RecordVals) *Record
type RecordProducer ¶
type RecordProducer interface {
// Next returns the next record, or nil when the stream is exhausted. Errors
// that occur during production are not returned here; they are accumulated
// internally and reported via Finalize.
Next() *Record
// Finalize releases resources held by the producer and returns the final
// summary gathered during the stream. It must be called exactly once after the
// producer is exhausted.
Finalize() *Summary
}
type RecordVals ¶
type RecordVals struct {
Type DataType
// contains filtered or unexported fields
}
Executors make use of val's index. the plan knows which executors use which col indexes
func NewRecordVals ¶
func NewRecordVals(dataType DataType, rawData []byte) *RecordVals
func (*RecordVals) Decoded ¶
func (rv *RecordVals) Decoded() any
func (*RecordVals) RawData ¶
func (rv *RecordVals) RawData() []byte
func (*RecordVals) Release ¶
func (rv *RecordVals) Release()
Release returns the insaneJSON decoder (allocated for DataTypeDocument in ensureDecoded) back to the library's internal pool. It is idempotent: after the first call rv.decoded is cleared, so repeated calls are a no-op. Calling it on a non-document val or a not-yet-decoded val is also a no-op. Safe to invoke from every executor that has touched the val — the first caller wins.
Click to show internal directories.
Click to hide internal directories.