My Project
Public Member Functions | Protected Attributes
Item_func_numhybrid Class Reference
Inheritance diagram for Item_func_numhybrid:
Item_func Item_result_field Item Item_func_coalesce Item_func_num1 Item_num_op Item_func_ifnull Item_func_abs Item_func_int_val Item_func_neg Item_func_round Item_func_additive_op Item_func_div Item_func_mod Item_func_mul

List of all members.

Public Member Functions

 Item_func_numhybrid (Item *a)
 Item_func_numhybrid (Item *a, Item *b)
 Item_func_numhybrid (List< Item > &list)
enum Item_result result_type () const
void fix_length_and_dec ()
void fix_num_length_and_dec ()
virtual void find_num_type ()=0
double val_real ()
longlong val_int ()
my_decimalval_decimal (my_decimal *)
Stringval_str (String *str)
bool get_date (MYSQL_TIME *ltime, uint fuzzydate)
bool get_time (MYSQL_TIME *ltime)
virtual longlong int_op ()=0
 Performs the operation that this functions implements when the result type is INT.
virtual double real_op ()=0
 Performs the operation that this functions implements when the result type is REAL.
virtual my_decimaldecimal_op (my_decimal *)=0
 Performs the operation that this functions implements when the result type is DECIMAL.
virtual Stringstr_op (String *)=0
 Performs the operation that this functions implements when the result type is a string type.
virtual bool date_op (MYSQL_TIME *ltime, uint fuzzydate)=0
 Performs the operation that this functions implements when the result type is MYSQL_TYPE_DATE or MYSQL_TYPE_DATETIME.
virtual bool time_op (MYSQL_TIME *ltime)=0
bool is_null ()

Protected Attributes

Item_result hybrid_type

Member Function Documentation

virtual bool Item_func_numhybrid::date_op ( MYSQL_TIME *  ltime,
uint  fuzzydate 
) [pure virtual]

Performs the operation that this functions implements when the result type is MYSQL_TYPE_DATE or MYSQL_TYPE_DATETIME.

Returns:
The result of the operation.

Implemented in Item_func_ifnull, Item_func_coalesce, Item_num_op, and Item_func_num1.

virtual my_decimal* Item_func_numhybrid::decimal_op ( my_decimal ) [pure virtual]

Performs the operation that this functions implements when the result type is DECIMAL.

Parameters:
Apointer where the DECIMAL value will be allocated.
Returns:
  • 0 If the result is NULL
  • The same pointer it was given, with the area initialized to the result of the operation.

Implemented in Item_func_round, Item_func_floor, Item_func_ceiling, Item_func_ifnull, Item_func_coalesce, Item_func_abs, Item_func_neg, Item_func_mod, Item_func_div, Item_func_mul, Item_func_minus, and Item_func_plus.

virtual longlong Item_func_numhybrid::int_op ( ) [pure virtual]

Performs the operation that this functions implements when the result type is INT.

Returns:
The result of the operation.

Implemented in Item_func_round, Item_func_floor, Item_func_ceiling, Item_func_ifnull, Item_func_coalesce, Item_func_abs, Item_func_neg, Item_func_mod, Item_func_div, Item_func_mul, Item_func_minus, and Item_func_plus.

virtual double Item_func_numhybrid::real_op ( ) [pure virtual]

Performs the operation that this functions implements when the result type is REAL.

Returns:
The result of the operation.

Implemented in Item_func_round, Item_func_floor, Item_func_ceiling, Item_func_ifnull, Item_func_coalesce, Item_func_abs, Item_func_neg, Item_func_mod, Item_func_div, Item_func_mul, Item_func_minus, and Item_func_plus.

virtual String* Item_func_numhybrid::str_op ( String ) [pure virtual]

Performs the operation that this functions implements when the result type is a string type.

Returns:
The result of the operation.

Implemented in Item_func_ifnull, Item_func_coalesce, Item_num_op, and Item_func_num1.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines