MCPcopy Create free account
hub / github.com/google/go-cloud / encodeList

Function encodeList

docstore/driver/codec.go:211–226  ·  view source on GitHub ↗

Encode an array or non-nil slice.

(v reflect.Value, enc Encoder)

Source from the content-addressed store, hash-verified

209
210// Encode an array or non-nil slice.
211func encodeList(v reflect.Value, enc Encoder) error {
212 // Byte slices encode specially.
213 if v.Type().Kind() == reflect.Slice && v.Type().Elem().Kind() == reflect.Uint8 {
214 enc.EncodeBytes(v.Bytes())
215 return nil
216 }
217 n := v.Len()
218 enc2 := enc.EncodeList(n)
219 for i := range n {
220 if err := encode(v.Index(i), enc2); err != nil {
221 return err
222 }
223 enc2.ListIndex(i)
224 }
225 return nil
226}
227
228// Encode a map.
229func encodeMap(v reflect.Value, enc Encoder) error {

Callers 1

encodeFunction · 0.85

Calls 6

encodeFunction · 0.85
EncodeBytesMethod · 0.65
EncodeListMethod · 0.65
ListIndexMethod · 0.65
TypeMethod · 0.45
LenMethod · 0.45

Tested by

no test coverage detected