#------------------------------------------------------------------------------- # Author: Keith Brings # Copyright (C) 2018 Noizu Labs, Inc. All rights reserved. #------------------------------------------------------------------------------- defmodule Noizu.RuleEngine.Error.Basic do defexception message: "Basic Exception", code: -1 def raise(msg \\ "Basic Exception", code \\ -1) do Kernel.raise Noizu.RuleEngine.Error.Basic, message: msg, code: code end def new(msg \\ "Basic Exception", code \\ -1) do %__MODULE__{ message: msg, code: code } end end defimpl Noizu.RuleEngine.ErrorProtocol, for: Noizu.RuleEngine.Error.Basic do def code(error), do: error.code def message(error), do: error.message def message(error, _options), do: error.message end