Class: PgExport::Transactions::Evaluator
- Inherits:
-
Object
- Object
- PgExport::Transactions::Evaluator
- Defined in:
- lib/pg_export/transactions/evaluator.rb
Instance Method Summary collapse
- #<<(operation) ⇒ Object
- #call(input) ⇒ Object
-
#initialize(listeners) ⇒ Evaluator
constructor
A new instance of Evaluator.
Constructor Details
#initialize(listeners) ⇒ Evaluator
Returns a new instance of Evaluator.
6 7 8 9 |
# File 'lib/pg_export/transactions/evaluator.rb', line 6 def initialize(listeners) @operations = [] @listeners = listeners end |
Instance Method Details
#<<(operation) ⇒ Object
11 12 13 |
# File 'lib/pg_export/transactions/evaluator.rb', line 11 def <<(operation) operations << operation end |
#call(input) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/pg_export/transactions/evaluator.rb', line 15 def call(input) result = ValueObjects::Success.new(input) operations.each do |operation| result = result.bind do call_operation(operation, result) end end result end |