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

Method decodeSingleLineMultiBulk

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

Source from the content-addressed store, hash-verified

207}
208
209func (d *Decoder) decodeSingleLineMultiBulk() ([]*Resp, error) {
210 b, err := d.decodeTextBytes()
211 if err != nil {
212 return nil, err
213 }
214 multi := make([]*Resp, 0, 8)
215 for l, r := 0, 0; r <= len(b); r++ {
216 if r == len(b) || b[r] == ' ' {
217 if l < r {
218 multi = append(multi, NewBulkBytes(b[l:r]))
219 }
220 l = r + 1
221 }
222 }
223 if len(multi) == 0 {
224 return nil, errors.Trace(ErrBadMultiBulkLen)
225 }
226 return multi, nil
227}
228
229func (d *Decoder) decodeMultiBulk() ([]*Resp, error) {
230 b, err := d.br.PeekByte()

Callers 1

decodeMultiBulkMethod · 0.95

Calls 2

decodeTextBytesMethod · 0.95
NewBulkBytesFunction · 0.85

Tested by

no test coverage detected