exsoda v4.0.9 Exsoda.Config

This module handles fetching values from the config with some additional niceties

This config module copied with <3 from: https://gist.github.com/bitwalker/a4f73b33aea43951fe19b242d06da7b9

Link to this section Summary

Functions

Fetches a value from the config, or from the environment if {:system, “VAR”} is provided. An optional default value can be provided if desired.

Example

iex> {test_var, expected_value} = System.get_env |> Enum.take(1) |> List.first
...> Application.put_env(:myapp, :test_var, {:system, test_var})
...> ^expected_value = Elixir.Exsoda.Config.get(:myapp, :test_var)
...> :ok
:ok
iex> Application.put_env(:myapp, :test_var2, 1)
...> 1 = Elixir.Exsoda.Config.get(:myapp, :test_var2)
1
iex> :default = Elixir.Exsoda.Config.get(:myapp, :missing_var, :default)
:default

Same as get/3, but returns the result as an integer. If the value cannot be converted to an integer, the default is returned instead

Link to this section Functions

Link to this function get(app, key, default \\ nil)
get(atom(), atom(), term() | nil) :: term()

Fetches a value from the config, or from the environment if {:system, “VAR”} is provided. An optional default value can be provided if desired.

Example

iex> {test_var, expected_value} = System.get_env |> Enum.take(1) |> List.first
...> Application.put_env(:myapp, :test_var, {:system, test_var})
...> ^expected_value = Elixir.Exsoda.Config.get(:myapp, :test_var)
...> :ok
:ok
iex> Application.put_env(:myapp, :test_var2, 1)
...> 1 = Elixir.Exsoda.Config.get(:myapp, :test_var2)
1
iex> :default = Elixir.Exsoda.Config.get(:myapp, :missing_var, :default)
:default
Link to this function get_integer(app, key, default \\ nil)
get_integer(atom(), atom(), integer()) :: integer()

Same as get/3, but returns the result as an integer. If the value cannot be converted to an integer, the default is returned instead.