1 Star 0 Fork 0

liwen_test_sync_group / bintly

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
unmarshaler.go 770 Bytes
一键复制 编辑 原始数据 按行查看 历史
Adrian Witas 提交于 2021-02-18 21:12 . added decode, encode functions
package bintly
var readers = NewReaders()
//Unmarshal converts []byte to e pointer or error
func Unmarshal(data []byte, v interface{}) error {
stream := readers.Get()
defer readers.Put(stream)
return UnmarshalStream(stream, data, v)
}
//UnmarshalStream converts []byte to e pointer or error
func UnmarshalStream(stream *Reader, data []byte, v interface{}) error {
err := stream.FromBytes(data)
if err != nil {
return err
}
err = stream.Any(v)
if err != nil {
return err
}
return nil
}
//Decode converts []byte to decoder or error
func Decode(data []byte, coder Decoder) error {
stream := readers.Get()
err := stream.FromBytes(data)
if err != nil {
return err
}
if err = stream.Coder(coder);err == nil {
readers.Put(stream)
}
return err
}
1
https://gitee.com/liwen_test_sync_group/bintly.git
git@gitee.com:liwen_test_sync_group/bintly.git
liwen_test_sync_group
bintly
bintly
v0.2.0

搜索帮助