69
else if ((res->length() == 5) and (strcasecmp(res->ptr(), "FALSE") == 0))
71
return evaluate(false, value);
73
if ((res->length() == 4) and (strcasecmp(res->ptr(), "TRUE") == 0))
75
return evaluate(true, value);
77
else if ((res->length() == 5) and (strcasecmp(res->ptr(), "FALSE") == 0))
79
return evaluate(false, value);
81
else if ((res->length() == 3) and (strcasecmp(res->ptr(), "YES") == 0))
83
return evaluate(true, value);
85
else if ((res->length() == 2) and (strcasecmp(res->ptr(), "NO") == 0))
69
else if ((res->length() == 5) and (strcasecmp(res->c_ptr(), "FALSE") == 0))
71
return evaluate(false, value);
73
if ((res->length() == 4) and (strcasecmp(res->c_ptr(), "TRUE") == 0))
75
return evaluate(true, value);
77
else if ((res->length() == 5) and (strcasecmp(res->c_ptr(), "FALSE") == 0))
79
return evaluate(false, value);
81
else if ((res->length() == 3) and (strcasecmp(res->c_ptr(), "YES") == 0))
83
return evaluate(true, value);
85
else if ((res->length() == 2) and (strcasecmp(res->c_ptr(), "NO") == 0))
87
87
return evaluate(false, value);
90
my_error(ER_INVALID_CAST_TO_BOOLEAN, MYF(0), res->ptr());
90
my_error(ER_INVALID_CAST_TO_BOOLEAN, MYF(0), res->c_ptr());
91
91
return evaluate(false, value);
129
129
return val_buffer;
133
bool Boolean::val_bool()
137
switch (args[0]->result_type())
141
drizzled::String _res, *res;
143
if (not (res= args[0]->val_str(&_res)))
151
if (res->length() == 1)
153
switch (res->ptr()[0])
156
case 't': case 'T': // PG compatibility
160
case 'f': case 'F': // PG compatibility
167
else if ((res->length() == 5) and (strcasecmp(res->ptr(), "FALSE") == 0))
171
if ((res->length() == 4) and (strcasecmp(res->ptr(), "TRUE") == 0))
175
else if ((res->length() == 5) and (strcasecmp(res->ptr(), "FALSE") == 0))
179
else if ((res->length() == 3) and (strcasecmp(res->ptr(), "YES") == 0))
183
else if ((res->length() == 2) and (strcasecmp(res->ptr(), "NO") == 0))
192
tmp= args[0]->val_bool();
193
null_value=args[0]->null_value;
201
132
} // namespace cast
202
133
} // namespace function
203
134
} // namespace drizzled