def define_attribute_methods_with_timeliness
return if generated_methods?
timeliness_methods = []
columns_hash.each do |name, column|
if [:date, :time, :datetime].include?(column.type)
method_name = "#{name}="
next if instance_method_already_implemented?(method_name)
time_zone_aware = create_time_zone_conversion_attribute?(name, column) rescue false
define_method(method_name) do |value|
write_date_time_attribute(name, value, column.type, time_zone_aware)
end
timeliness_methods << method_name
end
end
@_defined_class_methods = nil
define_attribute_methods_without_timeliness
timeliness_methods.each {|attr| generated_methods << attr }
end