class Gracefully::Unresolved
Public Class Methods
new(&block)
click to toggle source
# File lib/gracefully/try.rb, line 11 def initialize(&block) @block = block end
Public Instance Methods
get()
click to toggle source
# File lib/gracefully/try.rb, line 29 def get resolve.get end
or_else(other)
click to toggle source
# File lib/gracefully/try.rb, line 25 def or_else(other) resolve.or_else other end
resolve()
click to toggle source
# File lib/gracefully/try.rb, line 15 def resolve @resolved = begin Success.with @block.call rescue => e # Back-traces, which are required by Gracefully::Error, of errors are usually set by `raise`. # We need to set them manually because we aren't relying on `raise`. Failure.with Error.new('Nested error', nested: e).tap { |e| e.set_backtrace caller(0) } end end