Class: Teckel::Operation::Result
- Inherits:
-
Object
- Object
- Teckel::Operation::Result
- Includes:
- Result
- Defined in:
- lib/teckel/operation/result.rb
Overview
The optional, default result object for Teckel::Operations. Wraps output
and error
into a Result.
Direct Known Subclasses
Instance Attribute Summary collapse
-
#value ⇒ Mixed
readonly
The value/payload.
Instance Method Summary collapse
-
#failure(default = nil) {|Mixed| ... } ⇒ Mixed
Get the error/failure value.
-
#initialize(value, successful) ⇒ Result
constructor
A new instance of Result.
-
#success(default = nil) {|Mixed| ... } ⇒ Mixed
Get the success value.
-
#successful? ⇒ Boolean
Whether this is a success result.
Constructor Details
#initialize(value, successful) ⇒ Result
Returns a new instance of Result.
42 43 44 45 |
# File 'lib/teckel/operation/result.rb', line 42 def initialize(value, successful) @value = value @successful = successful end |
Instance Attribute Details
#value ⇒ Mixed (readonly)
Returns the value/payload.
55 56 57 |
# File 'lib/teckel/operation/result.rb', line 55 def value @value end |
Instance Method Details
#failure(default = nil) {|Mixed| ... } ⇒ Mixed
Get the error/failure value
61 62 63 64 65 66 |
# File 'lib/teckel/operation/result.rb', line 61 def failure(default = nil, &block) return value unless @successful return yield(value) if block default end |
#success(default = nil) {|Mixed| ... } ⇒ Mixed
Get the success value
72 73 74 75 76 77 |
# File 'lib/teckel/operation/result.rb', line 72 def success(default = nil, &block) return value if @successful return yield(value) if block default end |
#successful? ⇒ Boolean
Whether this is a success result
49 50 51 |
# File 'lib/teckel/operation/result.rb', line 49 def successful? @successful end |