Documentation ¶
Overview ¶
Package rdb implements parsing and encoding of the Redis RDB file format.
Index ¶
- Constants
- func Decode(r io.Reader, d Decoder) error
- func DecodeDump(dump []byte, db int, key []byte, expiry int64, d Decoder) error
- type Decoder
- type Encoder
- func (e *Encoder) EncodeDatabase(n int) error
- func (e *Encoder) EncodeDumpFooter() error
- func (e *Encoder) EncodeExpiry(expiry uint64) error
- func (e *Encoder) EncodeFloat(f float64) (err error)
- func (e *Encoder) EncodeFooter() error
- func (e *Encoder) EncodeHeader() error
- func (e *Encoder) EncodeLength(l uint32) (err error)
- func (e *Encoder) EncodeString(s []byte) error
- func (e *Encoder) EncodeType(v ValueType) error
- type ValueType
Constants ¶
View Source
const Version = 6
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Decoder ¶
type Decoder interface { // StartRDB is called when parsing of a valid RDB file starts. StartRDB() // StartDatabase is called when database n starts. // Once a database starts, another database will not start until EndDatabase is called. StartDatabase(n int) // AUX field Aux(key, value []byte) // ResizeDB hint ResizeDatabase(dbSize, expiresSize uint32) // Set is called once for each string key. Set(key, value []byte, expiry int64) // StartHash is called at the beginning of a hash. // Hset will be called exactly length times before EndHash. StartHash(key []byte, length, expiry int64) // Hset is called once for each field=value pair in a hash. Hset(key, field, value []byte) // EndHash is called when there are no more fields in a hash. EndHash(key []byte) // StartSet is called at the beginning of a set. // Sadd will be called exactly cardinality times before EndSet. StartSet(key []byte, cardinality, expiry int64) // Sadd is called once for each member of a set. Sadd(key, member []byte) // EndSet is called when there are no more fields in a set. EndSet(key []byte) // StartList is called at the beginning of a list. // Rpush will be called exactly length times before EndList. // If length of the list is not known, then length is -1 StartList(key []byte, length, expiry int64) // Rpush is called once for each value in a list. Rpush(key, value []byte) // EndList is called when there are no more values in a list. EndList(key []byte) // StartZSet is called at the beginning of a sorted set. // Zadd will be called exactly cardinality times before EndZSet. StartZSet(key []byte, cardinality, expiry int64) // Zadd is called once for each member of a sorted set. Zadd(key []byte, score float64, member []byte) // EndZSet is called when there are no more members in a sorted set. EndZSet(key []byte) // EndDatabase is called at the end of a database. EndDatabase(n int) // EndRDB is called when parsing of the RDB file is complete. EndRDB() }
A Decoder must be implemented to parse a RDB file.
type Encoder ¶
type Encoder struct {
// contains filtered or unexported fields
}
func NewEncoder ¶
func (*Encoder) EncodeDatabase ¶
func (*Encoder) EncodeDumpFooter ¶
func (*Encoder) EncodeExpiry ¶
func (*Encoder) EncodeFloat ¶
func (*Encoder) EncodeFooter ¶
func (*Encoder) EncodeHeader ¶
func (*Encoder) EncodeLength ¶
func (*Encoder) EncodeString ¶
func (*Encoder) EncodeType ¶
type ValueType ¶
type ValueType byte
const ( TypeString ValueType = 0 TypeList ValueType = 1 TypeSet ValueType = 2 TypeZSet ValueType = 3 TypeHash ValueType = 4 TypeHashZipmap ValueType = 9 TypeListZiplist ValueType = 10 TypeSetIntset ValueType = 11 TypeZSetZiplist ValueType = 12 TypeHashZiplist ValueType = 13 TypeListQuicklist ValueType = 14 )
Directories ¶
Path | Synopsis |
---|---|
Package crc64 implements the Jones coefficients with an init value of 0.
|
Package crc64 implements the Jones coefficients with an init value of 0. |
This is a very basic example of a program that implements rdb.decoder and outputs a human readable diffable dump of the rdb file.
|
This is a very basic example of a program that implements rdb.decoder and outputs a human readable diffable dump of the rdb file. |
Click to show internal directories.
Click to hide internal directories.