def KBTable.valid_data_type?(data_type, value)
case data_type
when /:String|:Blob/
return false unless value.respond_to?(:to_str)
when :Memo
return false unless value.is_a?(KBMemo)
when :Blob
return false unless value.is_a?(KBBlob)
when :Boolean
return false unless value.is_a?(TrueClass) or value.is_a?(
FalseClass)
when :Integer
return false unless value.respond_to?(:to_int)
when :Float
return false unless value.respond_to?(:to_f)
when :Time
return false unless value.is_a?(Time)
when :Date
return false unless value.is_a?(Date)
when :DateTime
return false unless value.is_a?(DateTime)
when :YAML
return false unless value.respond_to?(:to_yaml)
end
return true
end