lib/liberator/encoding.ex

defmodule Liberator.Encoding do
  @moduledoc """
  A behaviour module for compression codecs.

  Liberator uses this behaviour to help make sure at compile-time that codecs will be called successfully.
  Include it in your own module for the same peace of mind.
  """

  @doc """
  Encode a binary into an encoded form, and raises if there's an error.
  """
  @callback encode!(binary()) :: binary()
end