Sha256: 73ecf52ad2643717e5d8aa7d4cd50270c36e64c86fd1b24a99f33c7a696289ff
Contents?: true
Size: 730 Bytes
Versions: 2
Compression:
Stored size: 730 Bytes
Contents
# Copyright (C) 2013-2014, Eric Wong <e@80x24.org> and all contributors # License: GPLv3 or later (https://www.gnu.org/licenses/gpl-3.0.txt) require_relative '../dtas' module DTAS::ParseTime def parse_time(time) case time when /\A\d+\z/ time.to_i when /\A[\d\.]+\z/ time.to_f when /\A[:\d\.]+\z/ hhmmss = time.dup rv = hhmmss.sub!(/\.(\d+)\z/, "") ? "0.#$1".to_f : 0 # deal with HH:MM:SS t = hhmmss.split(/:/) raise ArgumentError, "Bad time format: #{hhmmss}" if t.size > 3 mult = 1 while part = t.pop rv += part.to_i * mult mult *= 60 end rv else raise ArgumentError, "unparseable: #{time.inspect}" end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
dtas-0.9.0 | lib/dtas/parse_time.rb |
dtas-0.8.0 | lib/dtas/parse_time.rb |