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

Method decodeResp

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

Source from the content-addressed store, hash-verified

116}
117
118func (d *Decoder) decodeResp() (*Resp, error) {
119 b, err := d.br.ReadByte()
120 if err != nil {
121 return nil, errors.Trace(err)
122 }
123 r := &Resp{}
124 r.Type = RespType(b)
125 switch r.Type {
126 default:
127 return nil, errors.Errorf("bad resp type %s", r.Type)
128 case TypeString, TypeError, TypeInt:
129 r.Value, err = d.decodeTextBytes()
130 case TypeBulkBytes:
131 r.Value, err = d.decodeBulkBytes()
132 case TypeArray:
133 r.Array, err = d.decodeArray()
134 }
135 return r, err
136}
137
138func (d *Decoder) decodeTextBytes() ([]byte, error) {
139 b, err := d.br.ReadBytes('\n')

Callers 3

DecodeMethod · 0.95
decodeArrayMethod · 0.95
decodeMultiBulkMethod · 0.95

Calls 6

decodeTextBytesMethod · 0.95
decodeBulkBytesMethod · 0.95
decodeArrayMethod · 0.95
RespTypeTypeAlias · 0.85
ReadByteMethod · 0.80
ErrorfMethod · 0.80

Tested by

no test coverage detected