Rat Error v0.0.1 RatError.Structure View Source

Specifies the Map structure of a RAT error.

This struct could be created from the specified options as below,

[ node: :error, prefix: nil, keys: [:code, :message] ]

References the ‘RatError.Structure’ configuration in ‘config/*.exs’ for detail.

Link to this section Summary

Functions

Creates the struct from the specified options

Creates the struct from the default ‘RatError.Structure’ configuration

Updates the struct with the specified options

Link to this section Functions

Creates the struct from the specified options.

Examples

iex> Structure.create(node: :err, keys: [:code, :message])
%RatError.Structure
  {
    node:   :err,
    prefix: nil,
    keys:   [:code, :message]
  }

iex> Structure.create(prefix: :err, keys: [:code, :message])
%RatError.Structure
  {
    node:   nil,
    prefix: :err,
    keys:   [:code, :message]
  }

iex> Structure.create(keys: :code)
%RatError.Structure
  {
    node:   nil,
    prefix: nil,
    keys:   [:code]
  }
Link to this function create_from_default_config() View Source

Creates the struct from the default ‘RatError.Structure’ configuration.

The default configuration is set in ‘config/*.exs’.

Examples

References ‘config/test.exs’ for the test configuration.

iex> Structure.create_from_default_config
%RatError.Structure
  {
    node:   :error,
    prefix: nil,
    keys:
    [
      :code,
      :file,
      :function,
      :line,
      :message,
      :module
    ]
  }

Updates the struct with the specified options.

Examples

iex> structure = %Structure{node: :error, keys: [:code]}
iex> Structure.update(structure, node: :err, prefix: :err, keys: :message)
%RatError.Structure
  {
    node:   :err,
    prefix: :err,
    keys:   [:message]
  }