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.



71
72
73
74
75
76
77
# File 'lib/codespicuous/committer.rb', line 71

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.



69
70
71
# File 'lib/codespicuous/committer.rb', line 69

def committers
  @committers
end

Instance Method Details

#==(committers) ⇒ Object



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

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

#add(committer) ⇒ Object



79
80
81
# File 'lib/codespicuous/committer.rb', line 79

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

#amountObject



93
94
95
# File 'lib/codespicuous/committer.rb', line 93

def amount
  @committers.size
end

#committer(name) ⇒ Object



83
84
85
# File 'lib/codespicuous/committer.rb', line 83

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

#eachObject



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

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

#empty?Boolean

Returns:

  • (Boolean)


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

def empty?
  @committers.empty?
end

#find_by_username(username) ⇒ Object



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

def find_by_username username
  @committers[username]
end

#include?(username) ⇒ Boolean

Returns:

  • (Boolean)


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

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

#select(&block) ⇒ Object



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

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