module Eye::Utils
Constants
- D1
- D2
- DF
Public Class Methods
deep_clone(value)
click to toggle source
# File lib/eye/utils.rb, line 8 def self.deep_clone(value) case when value.is_a?(Array) then value.map{|v| deep_clone(v) } when value.is_a?(Hash) then value.inject({}){|r, (k, v)| r[ deep_clone(k) ] = deep_clone(v); r } else value end end
deep_merge!(a, b, allowed_keys = nil)
click to toggle source
deep merging b into a (a deeply changed)
# File lib/eye/utils.rb, line 17 def self.deep_merge!(a, b, allowed_keys = nil) b.each do |k, v| next if allowed_keys && !allowed_keys.include?(k) if a[k].is_a?(Hash) && v.is_a?(Hash) deep_merge!(a[k], v) else a[k] = v end end a end
human_time(unix_time)
click to toggle source
# File lib/eye/utils.rb, line 32 def self.human_time(unix_time) time = Time.at(unix_time.to_i) d1 = time.to_date d2 = Time.now.to_date time.strftime (d1 == d2) ? D1 : D2 end
human_time2(unix_time)
click to toggle source
# File lib/eye/utils.rb, line 41 def self.human_time2(unix_time) Time.at(unix_time.to_i).strftime(DF) end