class SuperDiff::ObjectInspection::InspectionTreeBuilders::TimeLike
Public Class Methods
applies_to?(value)
click to toggle source
# File lib/super_diff/object_inspection/inspection_tree_builders/time_like.rb, line 5 def self.applies_to?(value) SuperDiff.time_like?(value) end
Public Instance Methods
call()
click to toggle source
# File lib/super_diff/object_inspection/inspection_tree_builders/time_like.rb, line 9 def call InspectionTree.new do as_lines_when_rendering_to_lines(collection_bookend: :open) do add_text do |time| "#<#{time.class} " end when_rendering_to_lines do add_text "{" end end when_rendering_to_string do add_text do |time| time.strftime("%Y-%m-%d %H:%M:%S") + (time.subsec == 0 ? "" : "+#{time.subsec.inspect}") + " " + time.strftime("%:z") + (time.zone ? " (#{time.zone})" : "") end end when_rendering_to_lines do nested do |time| insert_separated_list( [ :year, :month, :day, :hour, :min, :sec, :subsec, :zone, :utc_offset ] ) do |name| add_text name.to_s add_text ": " add_inspection_of time.public_send(name) end end end as_lines_when_rendering_to_lines(collection_bookend: :close) do when_rendering_to_lines do add_text "}" end add_text ">" end end end