Packages
exq
0.14.0
0.23.0
0.22.0
0.21.0
0.20.0
0.19.0
0.18.0
0.17.0
0.16.2
0.16.1
0.16.0
0.15.0
0.14.0
0.13.5
0.13.4
0.13.3
0.13.2
0.13.1
0.13.0
0.12.2
0.12.1
0.12.0
0.11.0
0.10.1
0.10.0
0.9.1
0.9.0
0.8.7
0.8.6
0.8.5
0.8.4
0.8.3
0.8.2
0.8.1
0.8.0
0.7.3
0.7.2
0.7.1
0.7.0
0.6.5
0.6.4
0.6.3
0.6.2
0.6.1
0.6.0
0.5.0
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.3.0
0.2.3
0.2.2
0.2.1
0.2.0
0.1.4
0.1.3
0.1.2
0.1.1
0.1.0
0.0.2
Exq is a job processing library compatible with Resque / Sidekiq for the Elixir language.
Current section
Files
Jump to
Current section
Files
lib/exq/support/coercion.ex
defmodule Exq.Support.Coercion do
@moduledoc false
def to_integer(value) when is_integer(value) do
value
end
def to_integer(binary) when is_binary(binary) do
binary
|> Integer.parse()
|> case do
{integer, ""} ->
integer
_ ->
raise ArgumentError,
message: "Failed to parse #{inspect(binary)} into an integer."
end
end
def to_integer(value) do
raise ArgumentError,
message: "Failed to parse #{inspect(value)} into an integer."
end
def to_boolean(value) when is_boolean(value) do
value
end
@true_values ["true", "yes", "1"]
def to_boolean(value) when is_binary(value) do
case value |> String.trim() |> String.downcase() do
x when x in @true_values -> true
_ -> false
end
end
def to_boolean(value) do
raise ArgumentError,
message: "Failed to parse #{inspect(value)} into a boolean."
end
end