leb128 1.1.0 copy "leb128: ^1.1.0" to clipboard
leb128: ^1.1.0 copied to clipboard

A Dart package that can read and write numbers in the LEB128, short for Little Endian Base 128, format.

LEB128 Encoder/Decoder #

This package offers easy-to-use methods that let you encode and decode LEB128 data. LEB128, which is short for Little Endian Base 128, is a code compression algorithm that is used in a variety of file formats. The most well-known are WebAssembly's binary .wasm and Android's .dex files.

Usage #

  • You can call the Leb128.encodeSigned() method to convert a Dart int value into an LEB128 list of bytes. The list is a Uint8List object. Use this method for both positive and negative values.

  • You can call the Leb128.encodeUnsigned() method to convert a Dart int value, which is positive, into an LEB128 list of bytes.

  • You can call the Leb128.decodeSigned() method to convert a Uint8List object into a Dart int value. Use this method for signed LEB128 integers only.

  • You can call the Leb128.decodeUnsigned() method to convert a Uint8List object into a Dart int value. Use this method for unsigned LEB128 integers only.

This package also offers two utility methods namedLeb128.decodeVarint7() and Leb128.decodeVaruint7(), which are easier to use if you need to convert a single byte of data.

2
likes
150
points
43
downloads

Publisher

unverified uploader

Weekly Downloads

A Dart package that can read and write numbers in the LEB128, short for Little Endian Base 128, format.

Repository (GitHub)
View/report issues

Documentation

API reference

License

Apache-2.0 (license)

Dependencies

flutter

More

Packages that depend on leb128