Skogsrå v2.2.3 Skogsra.Env View Source

This module defines a Skogsra environment variable.

Link to this section Summary

Types

Application name.

Variable binding.

Variable binding list.

Key.

List of keys that lead to the value of the variable.

Variable namespace.

Environment variable options.

Environment variable options

t()

Skogsra environment variable.

Types.

Functions

Environment variable struct.

Gets the binding order for a Skogsra environment variable.

Whether the Skogsra environment variable is cached or not.

Gets the default value for a Skogsra environment variable.

Gets extra options.

Creates a new Skogsra environment variable.

Gets the OS variable name for the Skogsra environment variable.

Whether the Skogsra environment variable is required or not.

Gets the type of the Skogsra environment variable.

Link to this section Types

Link to this type

app_name()

View Source
app_name() :: nil | atom()

Application name.

Link to this type

binding()

View Source
binding() :: :config | :system | module()

Variable binding.

Link to this type

bindings()

View Source
bindings() :: [binding()]

Variable binding list.

Key.

List of keys that lead to the value of the variable.

Link to this type

namespace()

View Source
namespace() :: nil | atom()

Variable namespace.

Link to this type

option()

View Source
option() ::
  {:binding_order, bindings()}
  | {:binding_skip, bindings()}
  | {:os_env, binary()}
  | {:type, type()}
  | {:namespace, namespace()}
  | {:default, term()}
  | {:required, boolean()}
  | {:cached, boolean()}
  | {atom(), term()}

Environment variable options.

  • binding_order - Variable binding load order.
  • binding_skip - Skips loading a variable from the list of bindings.
  • os_env - The name of the OS environment variable.
  • type - Type to cast the OS environment variable value.
  • namespace - Default namespace for the variable.
  • default - Default value.
  • required - Whether the variable is required or not.
  • cached - Whether the variable is cached or not.
Link to this type

options()

View Source
options() :: [option()]

Environment variable options:

Link to this type

t()

View Source
t() :: %Skogsra.Env{
  app_name: app_name :: app_name(),
  keys: keys :: keys(),
  namespace: namespace :: namespace(),
  options: options :: options()
}

Skogsra environment variable.

Link to this type

type()

View Source
type() ::
  :binary
  | :integer
  | :float
  | :boolean
  | :atom
  | :module
  | :unsafe_module
  | :any
  | module()

Types.

Link to this section Functions

Environment variable struct.

Link to this function

binding_order(env)

View Source
binding_order(t()) :: bindings()

Gets the binding order for a Skogsra environment variable.

Link to this function

cached?(env)

View Source
cached?(t()) :: boolean()

Whether the Skogsra environment variable is cached or not.

Link to this function

default(env)

View Source
default(t()) :: term()

Gets the default value for a Skogsra environment variable.

Link to this function

extra_options(env)

View Source
extra_options(t()) :: keyword()

Gets extra options.

Link to this function

new(namespace, app_name, keys, options)

View Source
new(namespace(), app_name(), key(), options()) :: t()
new(namespace(), app_name(), keys(), options()) :: t()

Creates a new Skogsra environment variable.

Gets the OS variable name for the Skogsra environment variable.

Link to this function

required?(env)

View Source
required?(t()) :: boolean()

Whether the Skogsra environment variable is required or not.

Gets the type of the Skogsra environment variable.