Module: Reactive::Observable

Defined in:
lib/Reactive/observable.rb,
lib/Reactive/observable/map.rb,
lib/Reactive/observable/base.rb,
lib/Reactive/observable/push.rb,
lib/Reactive/observable/skip.rb,
lib/Reactive/observable/empty.rb,
lib/Reactive/observable/first.rb,
lib/Reactive/observable/merge.rb,
lib/Reactive/observable/wrapper.rb,
lib/Reactive/observable/generate.rb,
lib/Reactive/observable/composite.rb,
lib/Reactive/observable/from_proc.rb,
lib/Reactive/observable/double_wrapper.rb

Defined Under Namespace

Classes: Base, Composite, DoubleWrapper, Empty, First, FromProc, Generate, Grep, Map, Merge, Push, Skip, Wrapper

Class Method Summary collapse

Class Method Details

.from_array(array) ⇒ Object



46
47
48
49
50
51
52
53
54
# File 'lib/Reactive/observable.rb', line 46

def self.from_array(array)
  FromProc.new do |observer|
    array.each { |v|
      observer.on_next(v)
    }
    observer.on_complete
    Disposable::Wrapper.new
  end
end

.interval(duration) ⇒ Object

from time



36
37
38
39
40
41
42
43
44
# File 'lib/Reactive/observable.rb', line 36

def self.interval(duration)
  Generate.new(
      0,
      lambda {|x| 1 },
      lambda {|x| 1 + x },
      lambda {|x| x },
      lambda {|x| duration }
  )
end

.once(value) ⇒ Object

creation



19
20
21
22
23
24
25
# File 'lib/Reactive/observable.rb', line 19

def self.once(value)
  FromProc.new do |observer|
    observer.on_next(value)
    observer.on_complete
    Disposable::Wrapper.new
  end
end

.range(from, size) ⇒ Object



27
28
29
30
31
32
33
# File 'lib/Reactive/observable.rb', line 27

def self.range(from, size)
  FromProc.new do |observer|
    from.upto(from + size) {|i| observer.on_next(i) }
    observer.on_complete
    Disposable::Wrapper.new
  end
end