class Reacto::Operations::FindIndex
Public Class Methods
new(predicate)
click to toggle source
# File lib/reacto/operations/find_index.rb, line 6 def initialize(predicate) @predicate = predicate end
Public Instance Methods
call(tracker)
click to toggle source
# File lib/reacto/operations/find_index.rb, line 10 def call(tracker) index = 0 behaviour = -> (value) do found = @predicate.call(value) if found tracker.on_value(index) tracker.on_close else index += 1 end end Subscriptions::OperationSubscription.new(tracker, value: behaviour) end