| Class | DBI::Type::Boolean |
| In: |
lib/dbi/types.rb
|
| Parent: | Null |
# File lib/dbi/types.rb, line 127
127: def self.parse(obj)
128: obj = super
129:
130: return nil if obj.nil?
131:
132: if obj == false or obj.kind_of? FalseClass
133: return false
134: elsif obj.kind_of? TrueClass
135: return true
136: else
137: case obj
138: when 't'
139: return true
140: when 'f'
141: return false
142: end
143:
144: if obj.respond_to? :to_i
145: if obj.to_i == 0
146: return false
147: else
148: return true
149: end
150: else
151: # punt
152: return nil
153: end
154: end
155: end