Like Prometheus, but for logs.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
loki/pkg/dataset/array/encoding_kind.go

38 lines
1.5 KiB

package array
// EncodingKind identifies the category of an [Encoding]. Each concrete Encoding
// implementation returns a fixed EncodingKind value.
//
// The zero value is an invalid encoding kind.
type EncodingKind int
const (
EncodingKindInvalid EncodingKind = iota // EncodingKindInvalid is an invalid encoding.
EncodingKindBool // EncodingKindBool is a bit-packed encoding for boolean types.
EncodingKindPlain // EncodingKindPlain is plain encoding for fixed-width types (int32, etc).
EncodingKindBinary // EncodingKindBinary encodes variable-length binary data (like UTF8).
EncodingKindBitpacked // EncodingKindBitpacked is a bitpacked encoding for unsigned integer types.
EncodingKindZstd // EncodingKindZstd encodes variable-length binary data with zstd compression.
EncodingKindZigZag // EncodingKindZigZag maps signed integers to unsigned integers via zigzag encoding.
EncodingKindDelta // EncodingKindDelta stores differences between consecutive integer values.
)
var kindNames = [...]string{
EncodingKindInvalid: "invalid",
EncodingKindBool: "bool",
EncodingKindPlain: "plain",
EncodingKindBinary: "binary",
EncodingKindBitpacked: "bitpacked",
EncodingKindZstd: "zstd",
EncodingKindZigZag: "zigzag",
EncodingKindDelta: "delta",
}
// String returns the string representation of k.
func (k EncodingKind) String() string {
if k < 0 || k >= EncodingKind(len(kindNames)) {
return "unknown"
}
return kindNames[k]
}