class Goedel::Line
Attributes
instance_name[R]
prop[R]
val[R]
Public Class Methods
new(instance_name, prop, val)
click to toggle source
# File lib/goedel/line.rb, line 8 def initialize(instance_name, prop, val) @instance_name = instance_name @prop = prop @val = val end
Public Instance Methods
generate()
click to toggle source
# File lib/goedel/line.rb, line 14 def generate "#{instance_name}.#{prop} = #{classify(val)}" end
Private Instance Methods
classify(val)
click to toggle source
# File lib/goedel/line.rb, line 20 def classify(val) if val.is_a?(String) "\"#{val}\"" elsif val.is_a?(ActiveSupport::TimeWithZone) time_str = val.utc.strftime("%Y-%m-%d %H:%M:%S") "Time.zone.parse(\"#{time_str}\")" elsif val.is_a?(Time) time_int = val.to_i "Time.at(#{time_int})" elsif val.is_a?(DateTime) time_str = val.utc.strftime("%Y-%m-%d %H:%M:%S") "DateTime.parse(\"#{time_str}\")" elsif val.is_a?(BigDecimal) "BigDecimal.new(\"#{val.to_f}\")" else "#{val}" end end