doc.odin 664 B

123456789101112131415161718192021222324252627
  1. /*
  2. Implementation of the LEB128 variable integer encoding as used by DWARF encoding and DEX files, among others.
  3. Author of this Odin package: Jeroen van Rijn
  4. Example:
  5. ```odin
  6. import "core:encoding/varint"
  7. import "core:fmt"
  8. main :: proc() {
  9. buf: [varint.LEB128_MAX_BYTES]u8
  10. value := u128(42)
  11. encode_size, encode_err := varint.encode_uleb128(buf[:], value)
  12. assert(encode_size == 1 && encode_err == .None)
  13. fmt.println(buf[:encode_size])
  14. decoded_val, decode_size, decode_err := varint.decode_uleb128(buf[:encode_size])
  15. assert(decoded_val == value && decode_size == encode_size && decode_err == .None)
  16. }
  17. ```
  18. */
  19. package varint