Class: RSMP::Result::Failure
- Inherits:
-
Data
- Object
- Data
- RSMP::Result::Failure
- Defined in:
- lib/rsmp/result.rb
Overview
An expected operational failure.
Instance Attribute Summary collapse
-
#failure ⇒ Object
readonly
Returns the value of attribute failure.
Instance Method Summary collapse
- #and_then ⇒ Object
- #failure? ⇒ Boolean
-
#initialize(failure:) ⇒ Failure
constructor
A new instance of Failure.
- #map ⇒ Object
- #success? ⇒ Boolean
- #value ⇒ Object
- #value! ⇒ Object
Constructor Details
#initialize(failure:) ⇒ Failure
Returns a new instance of Failure.
33 34 35 36 37 |
# File 'lib/rsmp/result.rb', line 33 def initialize(failure:) raise ArgumentError, 'failure must be an RSMP::Failure' unless failure.is_a?(RSMP::Failure) super end |
Instance Attribute Details
#failure ⇒ Object (readonly)
Returns the value of attribute failure
32 33 34 |
# File 'lib/rsmp/result.rb', line 32 def failure @failure end |
Instance Method Details
#and_then ⇒ Object
62 63 64 |
# File 'lib/rsmp/result.rb', line 62 def and_then self end |
#failure? ⇒ Boolean
43 44 45 |
# File 'lib/rsmp/result.rb', line 43 def failure? true end |
#map ⇒ Object
58 59 60 |
# File 'lib/rsmp/result.rb', line 58 def map self end |
#success? ⇒ Boolean
39 40 41 |
# File 'lib/rsmp/result.rb', line 39 def success? false end |
#value ⇒ Object
47 48 49 |
# File 'lib/rsmp/result.rb', line 47 def value nil end |
#value! ⇒ Object
51 52 53 54 55 56 |
# File 'lib/rsmp/result.rb', line 51 def value! exception = OperationError.new(failure) raise exception, cause: failure.cause if failure.cause raise exception end |