Class: Committers

Inherits:
Object
  • Object
show all
Defined in:
lib/codespicuous/committer.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(initial_committers_usernames = []) ⇒ Committers

Returns a new instance of Committers.



79
80
81
82
83
84
85
# File 'lib/codespicuous/committer.rb', line 79

def initialize(initial_committers_usernames = [])
  @committers = {}

  [initial_committers_usernames].flatten.each { |username|
    @committers[username] = Committer.new(username)
  }
end

Instance Attribute Details

#committersObject (readonly)

Returns the value of attribute committers.



77
78
79
# File 'lib/codespicuous/committer.rb', line 77

def committers
  @committers
end

Instance Method Details

#==(committers) ⇒ Object



121
122
123
# File 'lib/codespicuous/committer.rb', line 121

def ==(committers)
  @committers == committers.committers
end

#add(committer) ⇒ Object



87
88
89
# File 'lib/codespicuous/committer.rb', line 87

def add(committer)
  @committers[committer.username] = committer
end

#amountObject



101
102
103
# File 'lib/codespicuous/committer.rb', line 101

def amount
  @committers.size
end

#committer(name) ⇒ Object



91
92
93
# File 'lib/codespicuous/committer.rb', line 91

def committer(name)
  @committers[name] ||= Committer.new(name)
end

#eachObject



95
96
97
98
99
# File 'lib/codespicuous/committer.rb', line 95

def each
  @committers.values.each do |committer|
    yield committer
  end
end

#empty?Boolean

Returns:

  • (Boolean)


117
118
119
# File 'lib/codespicuous/committer.rb', line 117

def empty?
  @committers.empty?
end

#find_by_username(username) ⇒ Object



105
106
107
# File 'lib/codespicuous/committer.rb', line 105

def find_by_username username
  @committers[username]
end

#include?(username) ⇒ Boolean

Returns:

  • (Boolean)


109
110
111
# File 'lib/codespicuous/committer.rb', line 109

def include? username
  @committers.keys.include?(username)
end

#select(&block) ⇒ Object



113
114
115
# File 'lib/codespicuous/committer.rb', line 113

def select(&block)
  @committers.values.select(&block)
end