module MotherBrain::Errors

Public Class Methods

error_codes() click to toggle source

@return [Hash]

# File lib/mb/errors.rb, line 5
def error_codes
  @error_codes ||= Hash.new
end
register(klass) click to toggle source

@param [MBError] klass

@raise [RuntimeError]

# File lib/mb/errors.rb, line 12
def register(klass)
  if error_codes.has_key?(klass.error_code)
    msg = "Unable to register exception #{klass}. The error_code #{klass.error_code} is already"
    msg << " in use by #{error_codes[klass.error_code]}."
    raise RuntimeError, msg
  end

  error_codes[klass.error_code] = klass
end
unregister(klass) click to toggle source

@param [MBError] klass

# File lib/mb/errors.rb, line 23
def unregister(klass)
  error_codes.delete(klass.error_code)
end