crystal-uvarint
crystal-uvarint is an
unsigned varint
implementation in Crystal. The implementation is based on
varint.go.
Installation
Add this to your application's shard.yml:
dependencies:
uvarint:
github: freitagbr/crystal-uvarint
Usage
require "uvarint"
e = UVarint.encode 300_u64
#=> e == [172_u8, 2_u8]
d = UVarint.decode e
#=> d == 300_u64
Use UVarint.encode to encode a UInt64 to a varint, which is an
Array(UInt8) (basically, an array of bytes).
Use UVarint.decode to decode a varint to a UInt64.
Development
Create an issue or submit a PR. Be sure to add tests if need be.
Contributing
- Fork it ( https://github.com/freitagbr/crystal-uvarint/fork )
- Create your feature branch (git checkout -b my-new-feature)
- Commit your changes (git commit -am 'Add some feature')
- Push to the branch (git push origin my-new-feature)
- Create a new Pull Request