MCPcopy Index your code
hub / github.com/vmihailenco/msgpack / decodeMapStringStringPtr

Method decodeMapStringStringPtr

decode_map.go:101–134  ·  view source on GitHub ↗
(ptr *map[string]string)

Source from the content-addressed store, hash-verified

99}
100
101func (d *Decoder) decodeMapStringStringPtr(ptr *map[string]string) error {
102 size, err := d.DecodeMapLen()
103 if err != nil {
104 return err
105 }
106 if size == -1 {
107 *ptr = nil
108 return nil
109 }
110
111 m := *ptr
112 if m == nil {
113 ln := size
114 if d.flags&disableAllocLimitFlag == 0 {
115 ln = min(size, maxMapSize)
116 }
117 *ptr = make(map[string]string, ln)
118 m = *ptr
119 }
120
121 for i := 0; i < size; i++ {
122 mk, err := d.DecodeString()
123 if err != nil {
124 return err
125 }
126 mv, err := d.DecodeString()
127 if err != nil {
128 return err
129 }
130 m[mk] = mv
131 }
132
133 return nil
134}
135
136func decodeMapStringInterfaceValue(d *Decoder, v reflect.Value) error {
137 ptr := v.Addr().Convert(mapStringInterfacePtrType).Interface().(*map[string]interface{})

Callers 2

DecodeMethod · 0.95

Calls 3

DecodeMapLenMethod · 0.95
DecodeStringMethod · 0.95
minFunction · 0.85

Tested by

no test coverage detected