(data []byte, msg interface{})
| 51 | } |
| 52 | |
| 53 | func DecodeMessageByType(data []byte, msg interface{}) (*cellnet.MessageMeta, error) { |
| 54 | |
| 55 | meta := cellnet.MessageMetaByMsg(msg) |
| 56 | // 消息没有注册 |
| 57 | if meta == nil { |
| 58 | return nil, cellnet.NewErrorContext("msg not exists", nil) |
| 59 | } |
| 60 | |
| 61 | err := meta.Codec.Decode(data, msg) |
| 62 | if err != nil { |
| 63 | return meta, err |
| 64 | } |
| 65 | |
| 66 | return meta, nil |
| 67 | |
| 68 | } |
| 69 | |
| 70 | // Codec.Encode内分配的资源,在必要时可以回收,例如内存池对象 |
| 71 | type CodecRecycler interface { |
nothing calls this directly
no test coverage detected