Class: Reacto::Operations::Select

Inherits:
Object
  • Object
show all
Defined in:
lib/reacto/operations/select.rb

Instance Method Summary collapse

Constructor Details

#initialize(filter) ⇒ Select

Returns a new instance of Select.



6
7
8
# File 'lib/reacto/operations/select.rb', line 6

def initialize(filter)
  @filter = filter
end

Instance Method Details

#call(tracker) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/reacto/operations/select.rb', line 10

def call(tracker)
  on_value = lambda do |v|
    if @filter.call(v)
      tracker.on_value(v)
    end
  end

  Subscriptions::OperationSubscription.new(
    tracker,
    value: on_value
  )
end