Class: Pitchfork::Listeners

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/pitchfork/listeners.rb

Defined Under Namespace

Classes: Group

Instance Method Summary collapse

Constructor Details

#initialize(listeners = []) ⇒ Listeners

Returns a new instance of Listeners.



26
27
28
# File 'lib/pitchfork/listeners.rb', line 26

def initialize(listeners = [])
  @listeners = listeners
end

Instance Method Details

#<<(listener) ⇒ Object



57
58
59
# File 'lib/pitchfork/listeners.rb', line 57

def <<(listener)
  @listeners << listener
end

#clearObject



53
54
55
# File 'lib/pitchfork/listeners.rb', line 53

def clear
  @listeners.clear
end

#each(&block) ⇒ Object



42
43
44
45
46
47
48
49
50
51
# File 'lib/pitchfork/listeners.rb', line 42

def each(&block)
  @listeners.each do |listener|
    if listener.is_a?(Group)
      listener.each(&block)
    else
      yield listener
    end
  end
  self
end

#empty?Boolean

Returns:

  • (Boolean)


61
62
63
# File 'lib/pitchfork/listeners.rb', line 61

def empty?
  @listeners.empty?
end

#for_worker(nr) ⇒ Object



30
31
32
33
34
35
36
37
38
39
40
# File 'lib/pitchfork/listeners.rb', line 30

def for_worker(nr)
  ios = []
  @listeners.each do |listener|
    if listener.is_a?(Group)
      ios += listener.for_worker(nr)
    else
      ios << listener
    end
  end
  ios
end