class Benchmark::HTTP::Seconds

Constants

SCALE
UNITS

Public Class Methods

[](value) click to toggle source
# File lib/benchmark/http/seconds.rb, line 27
def self.[](value)
        self.new(value)
end
new(value) click to toggle source
# File lib/benchmark/http/seconds.rb, line 31
def initialize(value)
        @value = value
end

Public Instance Methods

scale() click to toggle source
# File lib/benchmark/http/seconds.rb, line 35
def scale
        Math.log(@value) / Math.log(1000)
end
to_s() click to toggle source
# File lib/benchmark/http/seconds.rb, line 39
def to_s
        scaled_value = @value
        scale = 0
        
        while scaled_value < 1 && scale < SCALE
                scaled_value *= 1000
                scale += 1
        end
        
        return sprintf("%0.#{scale+1}f%s", scaled_value, UNITS.fetch(scale))
end