Details
-
Task
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
Description
Under terms of this task we'll add a new method into the class Field, for symmetry with the class Item:
virtual const Type_handler *type_handler() const; |
We'll also change methods Field::type(), Field::real_type(), Field::cmp_type(), Field::result_type() to be non-virtual, they will use the corresponding type_handler() methods as follows:
enum_field_types type() const |
{
|
return type_handler()->field_type(); |
}
|
enum_field_types real_type() const |
{
|
return type_handler()->real_field_type(); |
}
|
Item_result result_type () const |
{
|
return type_handler()->result_type(); |
}
|
Item_result cmp_type () const |
{
|
return type_handler()->cmp_type(); |
}
|
We'll also move the virtual method Field::cast_to_int_type_handler() from Field to Type_handler.
We won't change or move Field::binlog_type() for now. It will be done in a separate task.