348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
|
# File 'lib/bj/table.rb', line 348
def casts
@casts ||= {
'to_bool' => lambda do |value|
value.to_s =~ %r/^true$/i ? true : false
end,
'to_i' => lambda do |value|
Integer value.to_s.gsub(%r/^(-)?0*/,'\1')
end,
'to_f' => lambda do |value|
Float value.to_s.gsub(%r/^0*/,'')
end,
'to_time' => lambda do |value|
Time.parse(value.to_s)
end,
'to_sym' => lambda do |value|
value.to_s.to_sym
end,
'to_nil' => lambda do |value|
value.to_s =~ %r/^nil$|^$/i ? nil : value.to_s
end,
'to_s' => lambda do |value|
value.to_s
end,
}
end
|