Module: DerringDo::Implementation

Included in:
Object
Defined in:
lib/derring-do.rb

Instance Method Summary collapse

Instance Method Details

#derringObject

Raises:

  • (ArgumentError)


87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
# File 'lib/derring-do.rb', line 87

def derring
  raise ArgumentError, "`derring' requires a block" unless block_given?

  campaign = Campaign.new

  begin
    yield campaign
  rescue Interrupt
    campaign.aborted!
    raise
  rescue Exception => error
    campaign.failed_with(error)
    raise
  end
end