Class: SimplePerformer::Aggregator

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

Instance Method Summary collapse

Constructor Details

#initializeAggregator

Returns a new instance of Aggregator.



60
61
62
# File 'lib/simple_performer.rb', line 60

def initialize
  @aggs = {}
end

Instance Method Details

#time(name, &block) ⇒ Object



65
66
67
68
69
70
71
72
73
74
# File 'lib/simple_performer.rb', line 65

def time(name, &block)
  start_time = Time.now
  yield
  end_time = Time.now
  agg = @aggs[name]
  agg = Agger.new(name) if agg.nil?
  agg.add(end_time-start_time)
  @aggs[name] = agg

end

#to_sObject



76
77
78
79
80
81
82
# File 'lib/simple_performer.rb', line 76

def to_s
  s = ''
  @aggs.each_pair do |k, v|
    s << v.to_s + "\n"
  end
  s
end