A timestamp module
Installation :
Add this to your application's shard.yml:
dependencies:
  crtimestamp:
    github: ndudnicz/crtimestampExample :
require "crtimestamp"
puts Crtimestamp.now_utc_to_unixAPI :
Static Methods Summary :
.now_utc_to_unix :
Int64Returns the current utc epoch timestamp in second
.now_utc_to_unix_ms_f :
Float64Returns the current utc epoch timestamp in msecond
.now_utc_to_unix_f :
Float64Returns the current utc epoch timestamp in second as Float64
Benchmark :
$> crystal -v
Crystal 0.34.0 [4401e90f0] (2020-04-06)
LLVM: 8.0.0
Default target: x86_64-unknown-linux-gnu
$> cd bench
$> crystal build --release bench.cr
$> ./bench
              Time.utc.to_unix  31.17M ( 32.08ns) (± 0.79%)  0.0B/op   1.20× slower
   Crtimestamp.now_utc_to_unix  37.30M ( 26.81ns) (± 0.15%)  0.0B/op        fastest
           Time.utc.to_unix_ms  27.54M ( 36.31ns) (± 0.53%)  0.0B/op   1.36× slower
Crtimestamp.now_utc_to_unix_ms  37.36M ( 26.77ns) (± 0.09%)  0.0B/op        fastest
            Time.utc.to_unix_f  29.93M ( 33.41ns) (± 4.18%)  0.0B/op   1.25× slower
 Crtimestamp.now_utc_to_unix_f  37.33M ( 26.79ns) (± 2.33%)  0.0B/op        fastest