Bolty.Error exception (Bolty v0.2.0)

Copy Markdown

Summary

Functions

Return the code for the given error.

Gets the corresponding atom based on the error code.

Types

t()

@type t() :: %Bolty.Error{
  __exception__: term(),
  bolt: %{code: atom() | binary(), message: binary() | nil} | nil,
  code: atom(),
  module: module(),
  packstream: %{bits: any() | nil} | nil
}

Functions

message(error)

@spec message(t()) :: String.t()

Return the code for the given error.

Examples

 iex> {:error, %Bolty.Error{} = error} = do_something()
 iex> Exception.message(error)
 "Unable to perform this action."

to_atom(code)

@spec to_atom(String.t() | atom()) :: atom()

Gets the corresponding atom based on the error code.

An atom code is already resolved and passes through unchanged; this lets callers build an error map with a known atom code (e.g. %{code: :unsupported_message_version, message: ...}) without it being collapsed to :unknown by the string lookup.

wrap(module, code)

@spec wrap(module(), atom()) :: t()
@spec wrap(module(), String.t()) :: t()
@spec wrap(module(), map()) :: t()

wrap(module, code, packstream)

@spec wrap(any(), any(), any()) :: t()