Module: Fear::Try::Mixin
- Included in:
- Mixin
- Defined in:
- lib/fear/try.rb
Overview
Include this mixin to access convenient factory methods.
Instance Method Summary collapse
- #Failure(exception) ⇒ Failure
- #Success(value) ⇒ Success
-
#Try ⇒ Try
Constructs a
Tryusing the block.
Instance Method Details
#Failure(exception) ⇒ Failure
251 252 253 254 |
# File 'lib/fear/try.rb', line 251 def Failure(exception) fail TypeError, "not an error: #{exception}" unless exception.is_a?(StandardError) Failure.new(exception) end |
#Success(value) ⇒ Success
259 260 261 |
# File 'lib/fear/try.rb', line 259 def Success(value) Success.new(value) end |
#Try ⇒ Try
Constructs a Try using the block. This method will ensure any non-fatal exception )is caught and a Failure object is returned.
242 243 244 245 246 |
# File 'lib/fear/try.rb', line 242 def Try Success.new(yield) rescue => error Failure.new(error) end |