Module: Newshound::Exceptions

Defined in:
lib/newshound/exceptions.rb,
lib/newshound/exceptions/base.rb,
lib/newshound/exceptions/solid_errors.rb,
lib/newshound/exceptions/exception_track.rb

Defined Under Namespace

Classes: Base, ExceptionTrack, SolidErrors

Class Method Summary collapse

Class Method Details

.source(source) ⇒ Object



5
6
7
8
9
10
# File 'lib/newshound/exceptions.rb', line 5

def self.source(source)
  constant = constants.find { |c| c.to_s.gsub(/(?<!^)([A-Z])/, "_\\1").downcase == source.to_s }
  raise "Invalid exception source: #{source}" unless constant

  const_get(constant).new
end