https://github.com/aimuz/codec
Codec defines the interface universal uses to encode and decode messages.
https://github.com/aimuz/codec
codec go golang
Last synced: 9 months ago
JSON representation
Codec defines the interface universal uses to encode and decode messages.
- Host: GitHub
- URL: https://github.com/aimuz/codec
- Owner: aimuz
- Created: 2020-07-23T06:32:02.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2024-03-13T21:31:03.000Z (over 2 years ago)
- Last Synced: 2024-12-27T13:12:32.685Z (over 1 year ago)
- Topics: codec, go, golang
- Language: Go
- Homepage:
- Size: 33.2 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# codec
Codec defines the interface universal uses to encode and decode messages.
## Example
### Storm
[github.com/asdine/storm](https://github.com/asdine/storm)
```golang
storm.Open("", storm.Codec(json.Codec))
storm.Open("", storm.Codec(gob.Codec))
storm.Open("", storm.Codec(bson.Codec))
storm.Open("", storm.Codec(xml.Codec))
storm.Open("", storm.Codec(gzip.NewGzipCodecWith(json.Codec)))
storm.Open("", storm.Codec(gzip.NewGzipCodecWith(gob.Codec)))
storm.Open("", storm.Codec(gzip.NewGzipCodecWith(bson.Codec)))
storm.Open("", storm.Codec(gzip.NewGzipCodecWith(xml.Codec)))
storm.Open("", storm.Codec(gzip.NewGzipCodecLevelWith(json.Codec, 9)))
storm.Open("", storm.Codec(gzip.NewGzipCodecLevelWith(gob.Codec, 9)))
storm.Open("", storm.Codec(gzip.NewGzipCodecLevelWith(bson.Codec, 9)))
storm.Open("", storm.Codec(gzip.NewGzipCodecLevelWith(xml.Codec, 9)))
storm.Open("", storm.Codec(snappy.NewSnappyCodecWith(json.Codec)))
storm.Open("", storm.Codec(snappy.NewSnappyCodecWith(gob.Codec)))
storm.Open("", storm.Codec(snappy.NewSnappyCodecWith(bson.Codec)))
storm.Open("", storm.Codec(snappy.NewSnappyCodecWith(xml.Codec)))
```
### GRPC
codec using in grpc
```golang
encoding.RegisterCodec(json.Codec)
encoding.RegisterCodec(gob.Codec)
encoding.RegisterCodec(bson.Codec)
encoding.RegisterCodec(xml.Codec)
encoding.RegisterCodec(gzip.NewGzipCodecWith(json.Codec))
encoding.RegisterCodec(gzip.NewGzipCodecWith(gob.Codec))
encoding.RegisterCodec(gzip.NewGzipCodecWith(bson.Codec))
encoding.RegisterCodec(gzip.NewGzipCodecWith(xml.Codec))
encoding.RegisterCodec(gzip.NewGzipCodecLevelWith(json.Codec, 9))
encoding.RegisterCodec(gzip.NewGzipCodecLevelWith(gob.Codec, 9))
encoding.RegisterCodec(gzip.NewGzipCodecLevelWith(bson.Codec, 9))
encoding.RegisterCodec(gzip.NewGzipCodecLevelWith(xml.Codec, 9))
encoding.RegisterCodec(snappy.NewSnappyCodecWith(json.Codec))
encoding.RegisterCodec(snappy.NewSnappyCodecWith(gob.Codec))
encoding.RegisterCodec(snappy.NewSnappyCodecWith(bson.Codec))
encoding.RegisterCodec(snappy.NewSnappyCodecWith(xml.Codec))
```
## Support
- [x] gzip
- [x] json
- [x] gob
- [x] snappy
- [x] bson
- [x] xml
- [x] protobuf
- [ ] ....