class Benchmark

Constants

MESSAGE

Attributes

data[R]
max[R]
message[R]
middle[R]
min[R]
msg[R]
result[R]
results[R]
time[R]
type[R]

Public Class Methods

new( type = :sec, message = nil ) click to toggle source
# File lib/benchify/benchmark.rb, line 13
def initialize( type = :sec, message = nil )
  case type
    when :m, :min, :minute, :minutes then :min
    when :ms, :milli, :milliseconds  then :ms
    when :h, :hour, :hours           then :h
    else :sec
  end
  @data = []
  @type = type
  @msg  = message || MESSAGE
end

Public Instance Methods

call( message = nil ) { |operation| ... } click to toggle source
# File lib/benchify/benchmark.rb, line 25
def call( message = nil, &operation )
  @msg = message unless message.nil?
  start = Time.now
  yield operation
  ends  = Time.now
  @data << [ start, ends ]
end
Also aliased as: measure
end()
Alias for: finish
finish() click to toggle source
# File lib/benchify/benchmark.rb, line 35
def finish
  @results = Result.new @type, @msg
  @data.each do |st, en|
    @results.add st, en
  end
  @results.get
  @min     =  @results.min
  @max     =  @results.max
  @middle  =  @results.middle
  @result  =  @results.output
end
Also aliased as: end
measure( message = nil, &operation )
Alias for: call