Home > time_constants

time_constants

Time_constants is a project mainly written in Ruby, based on the View license.

Time constants, in seconds, so you don't have to use slow ActiveSupport helpers

TimeConstants

Time constants, in seconds, so you don't have to use slow ActiveSupport helpers.

== Usage

require 'time_constants'

You get toplevel constants from 0 to 100, except for days, which goes to 500.

T_1_SECOND T_2_SECONDS

T_1_MINUTE T_2_MINUTES

T_1_HOUR T_2_HOURS

T_1_DAY T_2_DAYS

T_1_WEEK T_2_WEEKS

T_1_MONTH T_2_MONTHS

T_1_YEAR T_2_YEARS

T_1_SOLAR_YEAR T_2_SOLAR_YEARS

Note that you do not need to refer to Time::.

== Benchmark

require 'time_constants' require 'active_support'

def benchmark(times = 100000, samples = 20) times = samples cur = Time.now result = times.times { yield } print "#{cur = (Time.now - cur) / samples.to_f } seconds" puts " (#{(cur / $last_benchmark 100).to_i - 100}% change)" rescue puts "" $last_benchmark = cur result end

benchmark { T_6_MONTHS } 0.03336355 seconds benchmark { 6.months.to_i } 1.65868245 seconds (4871% change)

== License

Copyright 2011 Twitter, Inc. Licensed under the Apache 2 license. See the included LICENSE file.

Previous:vimpack.org