DecodeMsg decodes the message from the reader.
(reader *msgp.Reader)
| 204 | |
| 205 | // DecodeMsg decodes the message from the reader. |
| 206 | func (s *StringSorted) DecodeMsg(reader *msgp.Reader) error { |
| 207 | if reader.IsNil() { |
| 208 | *s = nil |
| 209 | return reader.Skip() |
| 210 | } |
| 211 | sz, err := reader.ReadArrayHeader() |
| 212 | if err != nil { |
| 213 | return err |
| 214 | } |
| 215 | dst := *s |
| 216 | if dst == nil { |
| 217 | dst = make(StringSorted, sz) |
| 218 | } else { |
| 219 | clear(dst) |
| 220 | } |
| 221 | for range sz { |
| 222 | var k string |
| 223 | k, err = reader.ReadString() |
| 224 | if err != nil { |
| 225 | return err |
| 226 | } |
| 227 | dst[string(k)] = struct{}{} |
| 228 | } |
| 229 | *s = dst |
| 230 | return nil |
| 231 | } |
| 232 | |
| 233 | // UnmarshalMsg decodes the message from the bytes. |
| 234 | func (s *StringSorted) UnmarshalMsg(bytes []byte) ([]byte, error) { |