Class: Searls::Auth::ParsesTimeSafely

Inherits:
Object
  • Object
show all
Defined in:
lib/searls/auth/parses_time_safely.rb

Instance Method Summary collapse

Instance Method Details

#parse(input) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/searls/auth/parses_time_safely.rb', line 6

def parse(input)
  return nil if input.nil?

  case input
  when String
    parse_string(input)
  when Integer, Float
    Time.at(input).in_time_zone
  else
    if input.respond_to?(:in_time_zone)
      input.in_time_zone
    end
  end
rescue ArgumentError, TypeError, NoMethodError
  nil
end