class Timeit::Timer
Constants
- IllegalStateError
Attributes
count[R]
start_time[R]
Public Class Methods
new()
click to toggle source
# File lib/timeit.rb, line 12 def initialize @start_time = nil @count = 0 @rate = 0 @split_time = nil @split_count = 0 @split_rate = 0 end
Public Instance Methods
duration()
click to toggle source
# File lib/timeit.rb, line 30 def duration duration = Time.now - @start_time @rate = @count / duration duration end
rate()
click to toggle source
# File lib/timeit.rb, line 63 def rate @rate end
reset_split!()
click to toggle source
# File lib/timeit.rb, line 54 def reset_split! @split_time = @start_time end
split()
click to toggle source
# File lib/timeit.rb, line 44 def split split = Time.now - @split_time @split_time = Time.now @split_rate = @split_count / split @split_count = 0 split end
split_rate()
click to toggle source
# File lib/timeit.rb, line 67 def split_rate @split_rate end
start()
click to toggle source
# File lib/timeit.rb, line 22 def start @start_time = @split_time = Time.now end
stop()
click to toggle source
# File lib/timeit.rb, line 26 def stop @stop_time = Time.now end
tick!(count = 1)
click to toggle source
# File lib/timeit.rb, line 58 def tick!(count = 1) @count += count @split_count += count end
total_duration()
click to toggle source
# File lib/timeit.rb, line 36 def total_duration if @stop_time @stop_time - @start_time else raise(IllegalStateError, "Timer must be stopped for total duration") end end