package hexen

  1. Overview
  2. Docs
Yet another library for encoding and decoding hexadecimal byte sequences

Install

dune-project
 Dependency

Authors

Maintainers

Sources

0.1.tar.gz
md5=b99721af32df9ee2768c1d6ecd033d75
sha512=19660b4c1b3cbd18b2c54185a72e81b055535dd318ab5caa3d19af1402272867d56db98250e5eb35f24ea55ba192aa002e25f9c9b32761a13c1c3bb0946aa588

doc/README.html

Hexen

Yet another library for encoding and decoding hexadecimal byte sequences.

Quick start

You can install hexen using the OPAM package manager or another method. If you are using Dune, add hexen to your dependencies.

In use

Hexen provides high-level functions like encode and decode for quick encoding and decoding of strings or substrings.

Hexen.encode "Hello World";;
(* - : string = "48656c6c6f20576f726c64" *)

Hexen.decode "48656c6c6f20576f726c64";;
(* - : string = "Hello World" *)
Hexen.encode_substring "Hello World" 0 5;;
(* - : string = "48656c6c6f" *)

Hexen.decode_substring "48656c6c6f20576f726c64" 0 10;;
(* - : string = "Hello" *)

Also, Hexen provides functions to encode and decode strings or substrings directly into existing buffers or bytes.

let buffer = Buffer.create 16 in

Hexen.encode_to_buffer "Hello" buffer;
Hexen.encode_substring_to_buffer "Hello World" 5 6 buffer;

let bytes = Bytes.create 12 in 
Hexen.decode_into (Buffer.contents buffer) 0 bytes 0 22;
Bytes.set bytes 11 '!';

bytes
(* - : bytes = Bytes.of_string "Hello World!" *)

Credits

This library was heavily inspired by the Ohex library and its codebase.

License

The project is licensed under the MIT License, which allows for all permissions. Just use it and enjoy yourself without fear. We are always open to pull requests!