Class: RubyODE::ChainUseCase
- Inherits:
-
Object
- Object
- RubyODE::ChainUseCase
- Defined in:
- lib/ruby_ode/runtime.rb
Instance Method Summary collapse
-
#initialize(first:, second:) ⇒ ChainUseCase
constructor
A new instance of ChainUseCase.
- #process(param) ⇒ Object
Constructor Details
#initialize(first:, second:) ⇒ ChainUseCase
Returns a new instance of ChainUseCase.
64 65 66 67 |
# File 'lib/ruby_ode/runtime.rb', line 64 def initialize(first:, second:) @first = first @second = second end |
Instance Method Details
#process(param) ⇒ Object
69 70 71 72 73 74 75 76 77 |
# File 'lib/ruby_ode/runtime.rb', line 69 def process(param) first_output = @first.process(param) return Outputs.error(first_output.error) if first_output.is_a?(ErrorOutput) return Outputs.empty if first_output.is_a?(EmptyOutput) Outputs.value(@second.call(first_output.value, param)) rescue StandardError => error Outputs.error(error) end |