Packages
honeydew
1.4.4
1.5.0
1.4.6
1.4.5
1.4.4
1.4.3
1.4.2
1.4.1
1.4.0
1.3.0
1.2.8
1.2.7
1.2.6
1.2.5
1.2.4
1.2.3
1.2.2
1.2.1
1.2.0
1.1.6
1.1.5
1.1.4
1.1.3
1.1.2
1.1.1
1.1.0
1.0.4
1.0.3
1.0.2
1.0.1
1.0.0
1.0.0-rc7
1.0.0-rc6
1.0.0-rc5
1.0.0-rc4
1.0.0-rc3
1.0.0-rc2
1.0.0-rc1
0.0.11
0.0.10
0.0.9
0.0.8
0.0.7
0.0.6
0.0.5
0.0.4
0.0.3
0.0.2
0.0.1
Pluggable local/clusterable job queue focused on safety.
Current section
Files
Jump to
Current section
Files
lib/honeydew/crash.ex
defmodule Honeydew.Crash do
@moduledoc false
@type type :: :exception | :throw | :bad_return_value | :exit
@type t :: %__MODULE__{
type: type,
reason: term,
stacktrace: Exception.stacktrace()
}
defstruct [:type, :reason, :stacktrace]
def new(type, reason, stacktrace)
def new(:exception, %{__struct__: _} = exception, stacktrace) when is_list(stacktrace) do
%__MODULE__{type: :exception, reason: exception, stacktrace: stacktrace}
end
def new(:throw, reason, stacktrace) when is_list(stacktrace) do
%__MODULE__{type: :throw, reason: reason, stacktrace: stacktrace}
end
def new(:bad_return_value, value) do
%__MODULE__{type: :bad_return_value, reason: value, stacktrace: []}
end
def new(:exit, reason) do
%__MODULE__{type: :exit, reason: reason, stacktrace: []}
end
end