Method: Concurrent::Edge::Future#exception

Defined in:
lib/concurrent/edge/future.rb

#exception(*args) ⇒ Object

Examples:

allows failed Future to be risen

raise Concurrent.future.fail


629
630
631
632
633
634
635
636
637
638
# File 'lib/concurrent/edge/future.rb', line 629

def exception(*args)
  raise 'obligation is not failed' unless failed?
  reason = internal_state.reason
  if reason.is_a?(::Array)
    reason.each { |e| log ERROR, 'Edge::Future', e }
    Concurrent::Error.new 'multiple exceptions, inspect log'
  else
    reason.exception(*args)
  end
end