class CommitAccumulator

Attributes

commits[R]
files_added[R]
files_deleted[R]
first_commit[R]
last_commit[R]
lines_added[R]
lines_deleted[R]

Public Class Methods

new() click to toggle source
# File lib/gitstats/stats/commit.rb, line 18
def initialize
  @commits = 0
  @files_added = 0
  @files_deleted = 0
  @lines_added = 0
  @lines_deleted = 0
  @first_commit = nil
  @last_commit = nil
end

Public Instance Methods

files() click to toggle source
# File lib/gitstats/stats/commit.rb, line 10
def files
  @files_added - @files_deleted
end
lines() click to toggle source
# File lib/gitstats/stats/commit.rb, line 14
def lines
  @lines_added - @lines_deleted
end
update(commit) click to toggle source
# File lib/gitstats/stats/commit.rb, line 28
def update(commit)
  @commits += 1
  @files_added += commit[:files_added]
  @files_deleted += commit[:files_deleted]
  @lines_added += commit[:lines_added]
  @lines_deleted += commit[:lines_deleted]

  @first_commit ||= commit[:time]
  @last_commit ||= commit[:time]

  @first_commit = commit[:time] if commit[:time] < @first_commit
  @last_commit = commit[:time] if commit[:time] > @last_commit
end