Decode implements Codec
(bytes []byte)
| 31 | |
| 32 | // Decode implements Codec |
| 33 | func (p Proto) Decode(bytes []byte) (interface{}, error) { |
| 34 | out := p.factory() |
| 35 | bytes, err := snappy.Decode(nil, bytes) |
| 36 | if err != nil { |
| 37 | return nil, err |
| 38 | } |
| 39 | if err := proto.Unmarshal(bytes, out); err != nil { |
| 40 | return nil, err |
| 41 | } |
| 42 | return out, nil |
| 43 | } |
| 44 | |
| 45 | // Encode implements Codec |
| 46 | func (p Proto) Encode(msg interface{}) ([]byte, error) { |