Logo

0x5a.live

for different kinds of informations and explorations.

GitHub - rjsamson/hexate: A simple module for Hex encoding / decoding in Elixir.

A simple module for Hex encoding / decoding in Elixir. - rjsamson/hexate

Visit SiteGitHub - rjsamson/hexate: A simple module for Hex encoding / decoding in Elixir.

GitHub - rjsamson/hexate: A simple module for Hex encoding / decoding in Elixir.

A simple module for Hex encoding / decoding in Elixir. - rjsamson/hexate

Powered by 0x5a.live ๐Ÿ’—

Hexate

Build Status Hex.pm Hex.pm

A simple module for hexadecimal encoding / decoding in Elixir.

Note: name change from hex to hexate

Now that Elixir includes integration with Hex.pm, the library has been renamed hexate to avoid namespace clashes.

This was manifesting itself with intermittent failures when running test suites. If you experience this, update your deps!

If you really must use the old version, it's on the branch pre-rename-to-hexate.

Adding to your mix.exs

defp deps do
  [
    {:hexate,  ">= 0.6.0"}
  ]
end

Usage

Encode to string (binary):

# From a string
iex> Hexate.encode("This is a test.")
     "54686973206973206120746573742e"

# From a char-list
iex> Hexate.encode('This is a test.')
     "54686973206973206120746573742e"

iex> Hexate.encode(123456)
     "1e240"

iex> Hexate.encode(15, 4)
     "000f"

iex> Hexate.encode(15.0, 2)
     "0f"

iex> Hexate.encode(15.0)
     "f"

Decode to string (binary):

# From a hex string
iex> Hexate.decode("54686973206973206120746573742e")
     "This is a test."

# From a hex char-list
iex> Hexate.decode('54686973206973206120746573742e')
     "This is a test."

Encode to hex char-list:

# From a unicode char-list
iex> Hexate.encode_to_list('This is a test.')
     '54686973206973206120746573742e'

# From a unicode string
iex> Hexate.encode_to_list("This is a test.")
     '54686973206973206120746573742e'

# From an integer
iex> Hexate.encode_to_list(123456)
     '1e240'

Decode to unicode char-list:

# From a hex char-list
iex> Hexate.decode_to_list('54686973206973206120746573742e')
     'This is a test.'

# From a hex string
iex> Hexate.decode_to_list("54686973206973206120746573742e")
     'This is a test.'

Convert hex to integer:

# From hex char-list
iex> Hexate.to_integer('54686973206973206120746573742e')
     438270661302729020147902120434299950

# From hex string
iex> Hexate.to_integer("54686973206973206120746573742e")
     438270661302729020147902120434299950

Contributing

  • Fork this repo
  • Make a feature branch
  • Issue a pull request

Running tests

mix deps.get
mix test.watch

Authors

Robert J Samson David Parry

Elixir Resources

are all listed below.

Resources

listed to get explored on!!

Made with โค๏ธ

to provide different kinds of informations and resources.