108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
|
# File 'lib/new/validation.rb', line 108
def validate_class value, klass
begin
case
when klass == String then String(value)
when klass == Symbol then validate_symbol value
when klass == Boolean then validate_boolean value
when klass == Integer then Float(value).to_i
when klass == Float then Float(value)
when klass == Array then value.delete_if{ |v| v == nil || v == '' }
when klass == Hash then value.delete_if{ |k, v| v == nil || v == '' || v == [] }
else value
end
rescue
S.ay "`#{value}` cannot be converted to #{klass}", :error
raise
end
end
|