Class: RailsPerformance::Reports::BaseReport

Inherits:
Object
  • Object
show all
Defined in:
lib/rails_performance/reports/base_report.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(db, group: nil, sort: nil, title: nil) ⇒ BaseReport

Returns a new instance of BaseReport.



6
7
8
9
10
11
12
13
# File 'lib/rails_performance/reports/base_report.rb', line 6

def initialize(db, group: nil, sort: nil, title: nil)
  @db     = db
  @group  = group
  @sort   = sort
  @title  = title

  set_defaults
end

Instance Attribute Details

#dbObject (readonly)

Returns the value of attribute db.



4
5
6
# File 'lib/rails_performance/reports/base_report.rb', line 4

def db
  @db
end

#groupObject (readonly)

Returns the value of attribute group.



4
5
6
# File 'lib/rails_performance/reports/base_report.rb', line 4

def group
  @group
end

#sortObject (readonly)

Returns the value of attribute sort.



4
5
6
# File 'lib/rails_performance/reports/base_report.rb', line 4

def sort
  @sort
end

#titleObject (readonly)

Returns the value of attribute title.



4
5
6
# File 'lib/rails_performance/reports/base_report.rb', line 4

def title
  @title
end

Instance Method Details

#collectObject



15
16
17
18
19
20
# File 'lib/rails_performance/reports/base_report.rb', line 15

def collect
  db.group_by(group).inject([]) do |res, (k,v)|
    res << yield(k, v)
    res
  end
end

#set_defaultsObject



22
# File 'lib/rails_performance/reports/base_report.rb', line 22

def set_defaults; end