Module: Exceptor::ClassMethods
- Defined in:
- lib/exceptor/class_methods.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.extended(base) ⇒ Object
4 5 6 7 8 |
# File 'lib/exceptor/class_methods.rb', line 4 def self.extended(base) base.extend(ClassAttr) base.class_attr :_default_exceptor base.define_singleton_method(:default_exceptor) { |param| self._default_exceptor = param } end |
Instance Method Details
#exceptor(constant = nil, &block) ⇒ Object
10 11 12 13 14 15 16 17 |
# File 'lib/exceptor/class_methods.rb', line 10 def exceptor(constant = nil,&block) constant ||= self._default_exceptor begin block.call rescue => e instance_exec(ContextDelegator.new(block.binding),e,&constant.exceptors[e.class]) end end |