defmodule Bzip2 do
version = Mix.Project.config()[:version]
use RustlerPrecompiled,
otp_app: :bzip2_decomp,
base_url: "https://github.com/Moosieus/bzip2_decomp/releases/download/v#{version}",
force_build: System.get_env("RUSTLER_BUILD") in ["1", "true"],
version: version
@spec decompress(binary()) :: binary() | {:error, String.t()}
def decompress(_), do: :erlang.nif_error(:nif_not_loaded)
@spec decompress!(binary()) :: binary()
def decompress!(data) when is_binary(data) do
case decompress(data) do
{:error, reason} -> raise reason
result -> result
end
end
end