decoder.go
func DecodeDump(dump []byte, db int, key []byte, expiry int64, d Decoder) error {
	err := verifyDump(dump)
	if err != nil {
		return err
	}

	decoder := &decode{d, make([]byte, 8), bytes.NewReader(dump[1:])}
	decoder.event.StartRDB()
	decoder.event.StartDatabase(db)

	err = decoder.readObject(key, ValueType(dump[0]), expiry)

	decoder.event.EndDatabase(db)
	decoder.event.EndRDB()
	return err
}
func DecodeDump(dump []byte, db int, key []byte, expiry int64, d Decoder) error {
	err := verifyDump(dump)
	if err != nil {
		return err
	}

	decoder := &decode{d, make([]byte, 8), bytes.NewReader(dump[1:])}
	decoder.event.StartRDB()
	decoder.event.StartDatabase(db)

	err = decoder.readObject(key, ValueType(dump[0]), expiry)

	decoder.event.EndDatabase(db)
	decoder.event.EndRDB()
	return err
}
func DecodeDump ( dump [ ] byte , db int , key [ ] byte , expiry int64 , d Decoder ) error { err := verifyDump ( dump ) if err != nil { return err } decoder := & decode { d , make ( [ ] byte , 8 ) , bytes . NewReader ( dump [ 1 : ] ) } decoder . event . StartRDB ( ) decoder . event . StartDatabase ( db ) err = decoder . readObject ( key , ValueType ( dump [ 0 ] ) , expiry ) decoder . event . EndDatabase ( db ) decoder . event . EndRDB ( ) return err }
// Decode a byte slice from the Redis DUMP command. The dump does not contain the
// database, key or expiry, so they must be included in the function call (but
// can be zero values).
Decode a byte slice from the Redis DUMP command . The dump does not contain the database key or expiry so they must be included in the function call ( but can be zero values ) .