MCPcopy Index your code
hub / github.com/CodisLabs/codis / decodeBulkBytes

Method decodeBulkBytes

pkg/proxy/redis/decoder.go:162–183  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

160}
161
162func (d *Decoder) decodeBulkBytes() ([]byte, error) {
163 n, err := d.decodeInt()
164 if err != nil {
165 return nil, err
166 }
167 switch {
168 case n < -1:
169 return nil, errors.Trace(ErrBadBulkBytesLen)
170 case n > MaxBulkBytesLen:
171 return nil, errors.Trace(ErrBadBulkBytesLenTooLong)
172 case n == -1:
173 return nil, nil
174 }
175 b, err := d.br.ReadFull(int(n) + 2)
176 if err != nil {
177 return nil, errors.Trace(err)
178 }
179 if b[n] != '\r' || b[n+1] != '\n' {
180 return nil, errors.Trace(ErrBadCRLFEnd)
181 }
182 return b[:n], nil
183}
184
185func (d *Decoder) decodeArray() ([]*Resp, error) {
186 n, err := d.decodeInt()

Callers 1

decodeRespMethod · 0.95

Calls 2

decodeIntMethod · 0.95
ReadFullMethod · 0.80

Tested by

no test coverage detected