Versions in this module Expand all Collapse all v0 v0.1.3 Oct 16, 2026 Changes in this version type Dialect + OpCodeInfo func(op OpCode) OpCodeInfo type KeyDBDialect + func (KeyDBDialect) OpCodeInfo(op OpCode) OpCodeInfo type OpCode + const KeyDBOpCodeModulePreGa + type OpCodeInfo struct + Name string + Ver int + func (i OpCodeInfo) String() string type RedisDialect + func (RedisDialect) OpCodeInfo(op OpCode) OpCodeInfo type ValkeyDialect + func (ValkeyDialect) OpCodeInfo(op OpCode) OpCodeInfo v0.1.2 Oct 15, 2026 Changes in this version type Token + func (t Token) AsBytes() []byte v0.1.1 Oct 14, 2026 v0.1.0 Oct 13, 2026 Changes in this version + const DefaultBufferLen + const ModuleOpCodeDouble + const ModuleOpCodeEOF + const ModuleOpCodeFloat + const ModuleOpCodeSInt + const ModuleOpCodeString + const ModuleOpCodeUInt + var ErrCorruptPayload = errors.New("rdb: corrupt payload") + var ErrInvalidChecksum = errors.New("rdb: invalid checksum") + var ErrInvalidOpCode = errors.New("rdb: invalid opcode") + var ErrInvalidVersion = errors.New("rdb: invalid version") + var ErrMissingMagicString = errors.New("rdb: missing magic string") + var ErrOpCodeTooNew = errors.New("rdb: op code newer than the file version") + var ErrUnexpectedToken = errors.New("rdb: unexpected token") + var ErrUnsupportedVersion = errors.New("rdb: unsupported version") + func LenBytes(v uint64) []byte + func RegisterDialect(d Dialect) + type ArrayDecoder struct + func (h ArrayDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type ArrayEncoder struct + func (h ArrayEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type ByteTokenDecoder struct + N int + func (h ByteTokenDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type ByteTokenEncoder struct + N int + func (h ByteTokenEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type CronDecoder struct + func (h CronDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type CronEncoder struct + func (h CronEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type Decoder struct + func NewDecoder(r io.Reader, dialect Dialect) *Decoder + func (*Decoder) SkipValue() error + func (d *Decoder) ReadToken() (Token, error) + type Dialect interface + Commands func() commands.Table + Decoder func(op OpCode) (TokenDecoder, error) + Encoder func(op OpCode) (TokenEncoder, error) + Header func() (magic string, version int) + OpCodeString func(op OpCode) string + WithVersion func(version int) Dialect + type Encoder struct + func NewEncoder(w io.Writer, dialect Dialect) *Encoder + func (e *Encoder) WriteToken(t Token) error + func (e *Encoder) WriteTokens(t ...Token) error + type ExpiryTokenDecoder struct + func (h ExpiryTokenDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type ExpiryTokenEncoder struct + func (h ExpiryTokenEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type FileDecoder struct + func NewFileDecoder(r io.Reader, dialect Dialect) *FileDecoder + func (f *FileDecoder) Dialect() (Dialect, error) + func (f *FileDecoder) ReadToken() (Token, error) + type FileEncoder struct + func NewFileEncoder(w io.Writer, dialect Dialect) *FileEncoder + func (f *FileEncoder) WriteToken(t Token) error + func (f *FileEncoder) WriteTokens(t ...Token) error + type Hash2Decoder struct + func (h Hash2Decoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type Hash2Encoder struct + func (h Hash2Encoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type HashDecoder struct + func (h HashDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type HashEncoder struct + func (h HashEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type HashListpackExDecoder struct + func (h HashListpackExDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type HashListpackExEncoder struct + func (h HashListpackExEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type HashMetadataDecoder struct + Step uint8 + func (h HashMetadataDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type HashMetadataEncoder struct + Step uint8 + func (h HashMetadataEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type HashTemplateDecoder struct + func (h HashTemplateDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type HashTemplateEncoder struct + func (h HashTemplateEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type HashTmplArrayRefDecoder struct + func (h HashTmplArrayRefDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type HashTmplArrayRefEncoder struct + func (h HashTmplArrayRefEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type HashTmplSelfDecoder struct + LP bool + func (h HashTmplSelfDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type HashTmplSelfEncoder struct + LP bool + func (h HashTmplSelfEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type KeyDBDialect struct + V int + func (KeyDBDialect) OpCodeString(op OpCode) string + func (d KeyDBDialect) Commands() commands.Table + func (d KeyDBDialect) Decoder(op OpCode) (TokenDecoder, error) + func (d KeyDBDialect) Encoder(op OpCode) (TokenEncoder, error) + func (d KeyDBDialect) Header() (string, int) + func (d KeyDBDialect) WithVersion(version int) Dialect + type KeyDecoder struct + Next TokenDecoder + func (h KeyDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type KeyMetaDecoder struct + func (h KeyMetaDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type KeyMetaEncoder struct + func (h KeyMetaEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type KeyTokenEncoder struct + Next TokenEncoder + func (h KeyTokenEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type Kind uint16 + const KindByte + const KindExpiry + const KindFloat32 + const KindFloat64 + const KindInt + const KindOpCode + const KindQuickList + const KindSetIntSet + const KindStreamID + const KindString + const KindTime + const KindUint + const KindUnknown + const KindZipList + const KindZipMap + const KindZsetList + func (k Kind) String() string + type ListDecoder struct + func (h ListDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type ListEncoder struct + func (h ListEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type Module2Decoder struct + Step uint8 + func (h Module2Decoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type Module2Encoder struct + Step uint8 + func (h Module2Encoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type OpCode byte + const KeyDBOpCodeAux + const KeyDBOpCodeCron + const KeyDBOpCodeEndOfRDB + const KeyDBOpCodeExpiryMilli + const KeyDBOpCodeExpirySeconds + const KeyDBOpCodeFreq + const KeyDBOpCodeHash + const KeyDBOpCodeHashListpack + const KeyDBOpCodeHashZiplist + const KeyDBOpCodeHashZipmap + const KeyDBOpCodeIdle + const KeyDBOpCodeList + const KeyDBOpCodeListQuicklist + const KeyDBOpCodeListZiplist + const KeyDBOpCodeModule2 + const KeyDBOpCodeModuleAux + const KeyDBOpCodeResizeDB + const KeyDBOpCodeSelectDB + const KeyDBOpCodeSet + const KeyDBOpCodeSetIntset + const KeyDBOpCodeStreamListpacks + const KeyDBOpCodeString + const KeyDBOpCodeZset + const KeyDBOpCodeZset2 + const KeyDBOpCodeZsetListpack + const KeyDBOpCodeZsetZiplist + const RedisOpCodeArray + const RedisOpCodeAux + const RedisOpCodeEndOfRDB + const RedisOpCodeExpiryMilli + const RedisOpCodeExpirySeconds + const RedisOpCodeFreq + const RedisOpCodeFunc + const RedisOpCodeFunc2 + const RedisOpCodeGCRA + const RedisOpCodeHash + const RedisOpCodeHashListpack + const RedisOpCodeHashListpackEx + const RedisOpCodeHashListpackExPreGa + const RedisOpCodeHashMetadata + const RedisOpCodeHashMetadataPreGa + const RedisOpCodeHashTemplate + const RedisOpCodeHashTmplArray + const RedisOpCodeHashTmplArrayRef + const RedisOpCodeHashTmplLP + const RedisOpCodeHashTmplLpRef + const RedisOpCodeHashZiplist + const RedisOpCodeHashZipmap + const RedisOpCodeIdle + const RedisOpCodeKeyMeta + const RedisOpCodeList + const RedisOpCodeListQuicklist + const RedisOpCodeListQuicklist2 + const RedisOpCodeListZiplist + const RedisOpCodeModule2 + const RedisOpCodeModuleAux + const RedisOpCodeModulePreGa + const RedisOpCodeRamLru + const RedisOpCodeResizeDB + const RedisOpCodeSelectDB + const RedisOpCodeSet + const RedisOpCodeSetIntset + const RedisOpCodeSetListpack + const RedisOpCodeSlotInfo + const RedisOpCodeSlotNum + const RedisOpCodeStreamListpacks + const RedisOpCodeStreamListpacks2 + const RedisOpCodeStreamListpacks3 + const RedisOpCodeStreamListpacks4 + const RedisOpCodeStreamListpacks5 + const RedisOpCodeString + const RedisOpCodeZset + const RedisOpCodeZset2 + const RedisOpCodeZsetListpack + const RedisOpCodeZsetZiplist + const ValkeyOpCodeAux + const ValkeyOpCodeEndOfRDB + const ValkeyOpCodeExpiryMilli + const ValkeyOpCodeExpirySeconds + const ValkeyOpCodeFreq + const ValkeyOpCodeFunc + const ValkeyOpCodeFunc2 + const ValkeyOpCodeHash + const ValkeyOpCodeHash2 + const ValkeyOpCodeHashListpack + const ValkeyOpCodeHashZiplist + const ValkeyOpCodeHashZipmap + const ValkeyOpCodeIdle + const ValkeyOpCodeList + const ValkeyOpCodeListQuicklist + const ValkeyOpCodeListQuicklist2 + const ValkeyOpCodeListZiplist + const ValkeyOpCodeModule2 + const ValkeyOpCodeModuleAux + const ValkeyOpCodeResizeDB + const ValkeyOpCodeSelectDB + const ValkeyOpCodeSet + const ValkeyOpCodeSetIntset + const ValkeyOpCodeSetListpack + const ValkeyOpCodeSlotImport + const ValkeyOpCodeSlotInfo + const ValkeyOpCodeStreamListpacks + const ValkeyOpCodeStreamListpacks2 + const ValkeyOpCodeStreamListpacks3 + const ValkeyOpCodeString + const ValkeyOpCodeZset + const ValkeyOpCodeZset2 + const ValkeyOpCodeZsetListpack + const ValkeyOpCodeZsetZiplist + type QuickList2Decoder struct + func (h QuickList2Decoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type QuickList2Encoder struct + func (h QuickList2Encoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type QuickListDecoder struct + func (h QuickListDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type QuickListEncoder struct + func (h QuickListEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type RedisDialect struct + V int + func (RedisDialect) OpCodeString(op OpCode) string + func (d RedisDialect) Commands() commands.Table + func (d RedisDialect) Decoder(op OpCode) (TokenDecoder, error) + func (d RedisDialect) Encoder(op OpCode) (TokenEncoder, error) + func (d RedisDialect) Header() (string, int) + func (d RedisDialect) WithVersion(version int) Dialect + type SetIntSetDecoder struct + func (h SetIntSetDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type SetIntSetEncoder struct + func (h SetIntSetEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type SlotImportDecoder struct + func (h SlotImportDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type SlotImportEncoder struct + func (h SlotImportEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type SlotRange struct + End uint16 + Start uint16 + func (r SlotRange) Contains(slot uint16) bool + type StreamConsumerDecoder struct + func (h StreamConsumerDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type StreamConsumerEncoder struct + func (h StreamConsumerEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type StreamGroupDecoder struct + func (h StreamGroupDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type StreamGroupEncoder struct + func (h StreamGroupEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type StreamIdmpDecoder struct + func (h StreamIdmpDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type StreamIdmpEncoder struct + func (h StreamIdmpEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type StreamListDecoder struct + func (h StreamListDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type StreamListEncoder struct + func (h StreamListEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type StringTokensDecoder struct + N uint64 + func (h StringTokensDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type StringTokensEncoder struct + N uint64 + func (h StringTokensEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type Token struct + func Byte(b []byte) Token + func Expiry(ms uint64) Token + func Float32(f float32) Token + func Float64(f float64) Token + func Int(n int64) Token + func Op(op OpCode) Token + func Packed(kind Kind, b []byte) Token + func Str(s string) Token + func StreamID(ms, seq uint64) Token + func Time(t time.Time) Token + func Uint(n uint64) Token + func (t Token) Bytes() []byte + func (t Token) Clone() Token + func (t Token) Float64() float64 + func (t Token) Int64() int64 + func (t Token) Kind() Kind + func (t Token) OpCode() OpCode + func (t Token) StreamID() (uint64, uint64) + func (t Token) String() string + func (t Token) Time() time.Time + func (t Token) Uint64() uint64 + type TokenDecoder interface + Handle func(d *Decoder) (TokenDecoder, Token, error) + type TokenEncoder interface + Handle func(e *Encoder, t Token) (TokenEncoder, error) + type UintTokensDecoder struct + N uint64 + func (h UintTokensDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type UintTokensEncoder struct + N uint64 + func (h UintTokensEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type ValkeyDialect struct + V int + func (ValkeyDialect) OpCodeString(op OpCode) string + func (d ValkeyDialect) Commands() commands.Table + func (d ValkeyDialect) Decoder(op OpCode) (TokenDecoder, error) + func (d ValkeyDialect) Encoder(op OpCode) (TokenEncoder, error) + func (d ValkeyDialect) Header() (string, int) + func (d ValkeyDialect) WithVersion(version int) Dialect + type ZipListDecoder struct + func (h ZipListDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type ZipListEncoder struct + func (h ZipListEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type ZipPackDecoder struct + func (h ZipPackDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type ZipPackEncoder struct + func (h ZipPackEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type ZsetDecoder struct + func (h ZsetDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type ZsetEncoder struct + func (h ZsetEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error) + type ZsetListDecoder struct + func (h ZsetListDecoder) Handle(d *Decoder) (TokenDecoder, Token, error) + type ZsetListEncoder struct + func (h ZsetListEncoder) Handle(e *Encoder, t Token) (TokenEncoder, error)