added WriteVarSized/ReadVarSized
This commit is contained in:
@@ -1370,3 +1370,20 @@ func EncodeZigZag(x int64) uint64 {
|
|||||||
func DecodeZigZag(u uint64) int64 {
|
func DecodeZigZag(u uint64) int64 {
|
||||||
return int64(u>>1) ^ -(int64(u & 1))
|
return int64(u>>1) ^ -(int64(u & 1))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func WriteVarSized(w io.Writer, arr []byte) (err error) {
|
||||||
|
_, err = WriteVarSize(w, len(arr))
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
_, err = w.Write(arr)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func ReadVarSized(src io.Reader) ([]byte, error) {
|
||||||
|
size, err := ReadVarSize(src)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return ReadN(src, size)
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user