ExOptimizer.Optimizer behaviour (ExOptimizer v0.1.1) View Source
Behaviour for creating ExOptimizer optimizers.
The current list of optimizers bundled with ExOptimizer are the following:
- JPEG files
 - PNG files
 - SVG files
 - GIF files
 - WebP files
 
Example
defmodule ExOptimizer.Optimizers.Custom do
  @behaviour ExOptimizer.Optimizer
  def binary_name(), do: "some_command"
  def can_handle(%Image{path: path, ext: ext, mime: mime} = _image), do: mime == "image/something"
  def extra_args(%Image{path: path} = _image), do: ["-o #{path}"]
  def options(), do: ["--force", "--produce 'best'"]
end        Link to this section Summary
Link to this section Callbacks
Specs
binary_name() :: String.t()
Specs
can_handle(ExOptimizer.Image.t()) :: boolean()
Specs
extra_args(ExOptimizer.Image.t()) :: [String.t()]
Specs
options() :: [String.t()]