# File lib/dm-core/property/typecast/time.rb, line 17
        def extract_time(value)
          mash = if value.respond_to?(:to_mash)
                   value.to_mash
                 else
                   DataMapper::Ext::Hash.to_mash(value)
                 end

          now  = ::Time.now

          [ :year, :month, :day, :hour, :min, :sec ].map do |segment|
            typecast_to_numeric(mash.fetch(segment, now.send(segment)), :to_i)
          end
        end