Public Types | |
enum | Type { FIELD_ITEM = 0, FUNC_ITEM, SUM_FUNC_ITEM, STRING_ITEM, INT_ITEM, REAL_ITEM, NULL_ITEM, VARBIN_ITEM, COPY_STR_ITEM, FIELD_AVG_ITEM, DEFAULT_VALUE_ITEM, PROC_ITEM, COND_ITEM, REF_ITEM, FIELD_STD_ITEM, FIELD_VARIANCE_ITEM, INSERT_VALUE_ITEM, SUBSELECT_ITEM, ROW_ITEM, CACHE_ITEM, TYPE_HOLDER, PARAM_ITEM, BOOLEAN_ITEM, DECIMAL_ITEM } |
enum | traverse_order { T_POSTFIX, T_PREFIX } |
enum | cond_result { COND_UNDEF, COND_OK, COND_TRUE, COND_FALSE } |
Public Member Functions | |
True (const char *str_arg) | |
enum Type | type () const |
virtual bool | val_bool () |
double | val_real () |
int64_t | val_int () |
drizzled::String * | val_str (drizzled::String *value_buffer) |
type::Decimal * | val_decimal (type::Decimal *dec) |
void | cleanup () |
bool | is_unsigned () const |
virtual bool | negative () const |
void | set_name (const std::string &arg) |
void | set_name (const char *str, uint32_t length, const CHARSET_INFO *const cs=system_charset_info) |
void | rename (char *new_name) |
void | init_make_field (SendField *tmp_field, enum enum_field_types type) |
virtual void | make_field (SendField *field) |
Field * | make_string_field (Table *table) |
virtual bool | fix_fields (Session *, Item **) |
virtual void | fix_after_pullout (Select_Lex *new_parent, Item **ref) |
void | quick_fix_field () |
virtual int | save_in_field (Field *field, bool no_conversions) |
virtual void | save_org_in_field (Field *field) |
virtual int | save_safe_in_field (Field *field) |
virtual bool | send (plugin::Client *client, String *str) |
virtual bool | eq (const Item *, bool binary_cmp) const |
virtual Item_result | result_type () const |
virtual Item_result | cast_to_int_type () const |
virtual enum_field_types | string_field_type () const |
virtual enum_field_types | field_type () const |
virtual int64_t | val_int_endpoint (bool left_endp, bool *incl_endp) |
uint64_t | val_uint () |
String * | val_string_from_real (String *str) |
String * | val_string_from_int (String *str) |
String * | val_string_from_decimal (String *str) |
type::Decimal * | val_decimal_from_real (type::Decimal *decimal_value) |
type::Decimal * | val_decimal_from_int (type::Decimal *decimal_value) |
type::Decimal * | val_decimal_from_string (type::Decimal *decimal_value) |
type::Decimal * | val_decimal_from_date (type::Decimal *decimal_value) |
type::Decimal * | val_decimal_from_time (type::Decimal *decimal_value) |
int64_t | val_int_from_decimal () |
double | val_real_from_decimal () |
bool | save_time_in_field (Field *field) |
bool | save_date_in_field (Field *field) |
int | save_str_value_in_field (Field *field, String *result) |
virtual Field * | get_tmp_table_field (void) |
virtual Field * | tmp_table_field (Table *t_arg) |
virtual const char * | full_name (void) const |
virtual double | val_result () |
virtual int64_t | val_int_result () |
virtual String * | str_result (String *tmp) |
virtual type::Decimal * | val_decimal_result (type::Decimal *val) |
virtual bool | val_bool_result () |
virtual table_map | used_tables () const |
virtual table_map | not_null_tables () const |
virtual bool | basic_const_item () const |
virtual Item * | clone_item () |
virtual cond_result | eq_cmp_result () const |
uint32_t | float_length (uint32_t decimals_par) const |
virtual uint32_t | decimal_precision () const |
int | decimal_int_part () const |
virtual bool | const_item () const |
virtual bool | const_during_execution () const |
virtual void | print (String *str) |
void | print_item_w_name (String *) |
virtual void | update_used_tables () |
virtual void | split_sum_func (Session *session, Item **ref_pointer_array, List< Item > &fields) |
void | split_sum_func (Session *session, Item **ref_pointer_array, List< Item > &fields, Item **ref, bool skip_registered) |
virtual bool | get_date (type::Time <ime, uint32_t fuzzydate) |
virtual bool | get_time (type::Time <ime) |
virtual bool | get_date_result (type::Time <ime, uint32_t fuzzydate) |
virtual bool | is_null () |
virtual void | update_null_value () |
virtual void | top_level_item (void) |
virtual void | set_result_field (Field *field) |
virtual bool | is_result_field (void) |
virtual bool | is_bool_func (void) |
virtual void | save_in_result_field (bool no_conversions) |
virtual void | no_rows_in_result (void) |
virtual Item * | copy_or_same (Session *session) |
virtual Item * | copy_andor_structure (Session *session) |
virtual Item * | real_item (void) |
virtual const Item * | real_item (void) const |
virtual Item * | get_tmp_table_item (Session *session) |
virtual const CHARSET_INFO * | compare_collation () |
virtual bool | walk (Item_processor processor, bool walk_subquery, unsigned char *arg) |
virtual Item * | transform (Item_transformer transformer, unsigned char *arg) |
virtual Item * | compile (Item_analyzer analyzer, unsigned char **arg_p, Item_transformer transformer, unsigned char *arg_t) |
virtual void | traverse_cond (Cond_traverser traverser, void *arg, traverse_order order) |
virtual bool | remove_dependence_processor (unsigned char *arg) |
virtual bool | remove_fixed (unsigned char *arg) |
virtual bool | collect_item_field_processor (unsigned char *arg) |
virtual bool | find_item_in_field_list_processor (unsigned char *arg) |
virtual bool | change_context_processor (unsigned char *context) |
virtual bool | register_field_in_read_map (unsigned char *arg) |
virtual bool | subst_argument_checker (unsigned char **arg) |
virtual bool | cache_const_expr_analyzer (unsigned char **arg) |
virtual Item * | cache_const_expr_transformer (unsigned char *arg) |
virtual Item * | equal_fields_propagator (unsigned char *arg) |
virtual bool | set_no_const_sub (unsigned char *arg) |
virtual Item * | replace_equal_field (unsigned char *arg) |
virtual uint32_t | cols () |
virtual Item * | element_index (uint32_t i) |
virtual Item ** | addr (uint32_t i) |
virtual bool | check_cols (uint32_t c) |
virtual bool | null_inside () |
virtual void | bring_value () |
Field * | tmp_table_field_from_field_type (Table *table, bool fixed_length) |
virtual Item * | neg_transformer (Session *session) |
virtual Item * | update_value_transformer (unsigned char *select_arg) |
virtual Item * | safe_charset_converter (const CHARSET_INFO *const tocs) |
void | delete_self () |
virtual bool | result_as_int64_t () |
bool | is_datetime () |
virtual bool | is_expensive () |
String * | check_well_formed_result (String *str, bool send_error=0) |
bool | eq_by_collation (Item *item, bool binary_cmp, const CHARSET_INFO *const cs) |
uint32_t | char_to_byte_length_safe (uint32_t char_length_arg, uint32_t mbmaxlen_arg) |
uint32_t | max_char_length () const |
void | fix_length_and_charset (uint32_t max_char_length_arg, CHARSET_INFO *cs) |
void | fix_char_length (uint32_t max_char_length_arg) |
void | fix_char_length_uint64_t (uint64_t max_char_length_arg) |
void | fix_length_and_charset_datetime (uint32_t max_char_length_arg) |
Static Public Member Functions | |
static const CHARSET_INFO * | default_charset () |
static void * | operator new (size_t size) |
static void * | operator new (size_t size, Root *mem_root) |
static void * | operator new[] (size_t size) |
static void * | operator new[] (size_t size, Root *mem_root) |
static void | operator delete (void *, size_t) |
static void | operator delete (void *, Root *) |
static void | operator delete[] (void *, Root *) |
static void | operator delete[] (void *, size_t) |
Public Attributes | |
String | str_value |
char * | name |
uint32_t | name_length |
char * | orig_name |
Item * | next |
uint32_t | max_length |
int8_t | marker |
uint8_t | decimals |
bool | fixed |
bool | maybe_null |
bool | null_value |
bool | unsigned_flag |
bool | with_sum_func |
bool | is_autogenerated_name |
bool | with_subselect |
DTCollation | collation |
Item_result | cmp_context |
Protected Member Functions | |
Session & | getSession () |
virtual bool drizzled::Item::basic_const_item | ( | ) | const [inline, virtual, inherited] |
Returns true if this is a simple constant item like an integer, not a constant expression. Used in the optimizer to propagate basic constants.
Reimplemented in drizzled::Item_ref, drizzled::Item_cache, drizzled::Item_string, drizzled::Item_int, drizzled::Item_float, drizzled::Item_null, drizzled::Item_decimal, and drizzled::Item_hex_string.
Definition at line 508 of file item.h.
Referenced by drizzled::Item_cache::basic_const_item(), drizzled::Item::cache_const_expr_analyzer(), drizzled::Item_hex_string::eq(), drizzled::Item_float::eq(), drizzled::Item_decimal::eq(), drizzled::Item_int::eq(), drizzled::Item_string::eq(), drizzled::find_order_in_list(), and drizzled::Item_func_set_collation::print().
bool drizzled::Item::cache_const_expr_analyzer | ( | unsigned char ** | arg | ) | [virtual, inherited] |
Check if an item is a constant one and can be cached.
arg | [out] TRUE <=> Cache this item. |
Definition at line 1307 of file item.cc.
References drizzled::Item::basic_const_item(), and drizzled::Item::const_item().
Referenced by drizzled::Join::cache_const_exprs().
Item * drizzled::Item::cache_const_expr_transformer | ( | unsigned char * | arg | ) | [virtual, inherited] |
Cache item if needed.
arg | TRUE <=> Cache this item. |
Definition at line 1342 of file item.cc.
Referenced by drizzled::Join::cache_const_exprs().
Item * drizzled::Item::compile | ( | Item_analyzer | analyzer, |
unsigned char ** | arg_p, | ||
Item_transformer | transformer, | ||
unsigned char * | arg_t | ||
) | [virtual, inherited] |
This function performs a generic "compilation" of the Item tree. The process of compilation is assumed to go as follows:
compile() { if (this->*some_analyzer(...)) { compile children if any; this->*some_transformer(...); } }
i.e. analysis is performed top-down while transformation is done bottom-up.
Reimplemented in drizzled::Item_cond, and drizzled::Item_func.
Definition at line 612 of file item.cc.
Referenced by drizzled::Join::cache_const_exprs(), and drizzled::Item_func::compile().
virtual bool drizzled::Item::const_during_execution | ( | ) | const [inline, virtual, inherited] |
Returns true if this is constant but its value may be not known yet. (Can be used for parameters of prep. stmts or of stored procedures.)
Reimplemented in drizzled::Item_sum.
virtual bool drizzled::Item::const_item | ( | ) | const [inline, virtual, inherited] |
Returns true if this is constant (during query execution, i.e. its value will not change until next fix_fields) and its value is known.
Reimplemented in drizzled::Item_func_trig_cond, drizzled::Item_sum, drizzled::Item_subselect, drizzled::Item_func, drizzled::Item_row, drizzled::Item_copy_string, drizzled::Item_func_get_user_var, drizzled::Item_func_rollup_const, RandFunction, and drizzled::Item_func_sysdate_local.
Definition at line 529 of file item.h.
Referenced by drizzled::Item::cache_const_expr_analyzer(), drizzled::check_simple_equality(), drizzled::Item_row::fix_after_pullout(), drizzled::Item_func::fix_after_pullout(), drizzled::group_concat_key_cmp_with_distinct(), drizzled::group_concat_key_cmp_with_order(), drizzled::Join::make_sum_func_list(), drizzled::maxmin_in_range(), drizzled::Join::rollup_make_fields(), and drizzled::setup_group().
bool drizzled::Item::eq | ( | const Item * | item, |
bool | binary_cmp | ||
) | const [virtual, inherited] |
Compares this Item to another Item, returning true if Item's are functionally equal.
This function is called when:
Reimplemented in drizzled::Item_func_opt_neg, drizzled::Item_func, drizzled::Item_string, drizzled::Item_cache, drizzled::Item_char_typecast, drizzled::Item_int, drizzled::Item_field, drizzled::Item_decimal, drizzled::Item_ref, drizzled::Item_func_get_user_var, drizzled::Item_float, drizzled::Item_hex_string, drizzled::Item_insert_value, drizzled::Item_date_add_interval, drizzled::Item_default_value, drizzled::Item_null, drizzled::Item_func_date_format, drizzled::Item_extract, and drizzled::Item_func_set_collation.
Definition at line 457 of file item.cc.
References drizzled::Item::name.
Referenced by drizzled::change_group_ref(), drizzled::const_expression_in_where(), drizzled::Item_ref::eq(), drizzled::Item::eq_by_collation(), and drizzled::remove_eq_conds().
bool drizzled::Item::eq_by_collation | ( | Item * | item, |
bool | binary_cmp, | ||
const CHARSET_INFO *const | cs | ||
) | [inherited] |
Compares two items using a given collation
This method works exactly as Item::eq if the collation cs coincides with the collation of the compared objects. Otherwise, first the collations that differ from cs are replaced for cs and then the items are compared by Item::eq. After the comparison the original collations of items are restored.
Pointer | to the item to compare with |
Compare | as binary? |
Pointer | to the collation to use when comparing strings |
true | if compared items has been detected as equal |
false | otherwise |
Definition at line 1127 of file item.cc.
References drizzled::Item::eq().
void drizzled::Item::fix_after_pullout | ( | Select_Lex * | new_parent, |
Item ** | ref | ||
) | [virtual, inherited] |
Fix after some tables has been pulled out. Basically re-calculate all attributes that are dependent on the tables.
Reimplemented in drizzled::Item_cond, drizzled::Item_func, drizzled::Item_ref, drizzled::Item_field, drizzled::Item_row, and drizzled::Item_outer_ref.
Definition at line 75 of file item.cc.
Referenced by drizzled::Item_outer_ref::fix_after_pullout(), and drizzled::Item_row::fix_after_pullout().
bool drizzled::Item::get_date | ( | type::Time & | ltime, |
uint32_t | fuzzydate | ||
) | [virtual, inherited] |
Get the value of the function as a type::Time structure. As a extra convenience the time structure is reset on error!
Reimplemented in drizzled::Item_date_typecast, drizzled::Item_field, drizzled::Item_ref, drizzled::Item_func_now, drizzled::Item_direct_ref, drizzled::Item_ref_null_helper, drizzled::Item_func_sysdate_local, drizzled::Item_date_add_interval, and drizzled::Item_func_from_unixtime.
Definition at line 476 of file item.cc.
References drizzled::Item::is_null(), drizzled::Item::val_int(), and drizzled::Item::val_str().
Referenced by drizzled::Item::send(), and drizzled::Item_func_timestamp_diff::val_int().
bool drizzled::Item::get_time | ( | type::Time & | ltime | ) | [virtual, inherited] |
Get time of first argument.
As a extra convenience the time structure is reset on error!
Reimplemented in drizzled::Item_date_typecast, drizzled::Item_field, and drizzled::function::cast::Time.
Definition at line 520 of file item.cc.
References drizzled::Item::val_str().
Referenced by drizzled::Item::send().
bool drizzled::Item::is_expensive | ( | ) | [virtual, inherited] |
Tests whether an expression is expensive to compute. Used during optimization to avoid computing expensive expressions during this phase. Also used to force temp tables when sorting on expensive functions.
Normally we should have a method: cost Item::execution_cost(), where 'cost' is either 'double' or some structure of various cost parameters.
NOTE This function is now used to prevent evaluation of materialized IN subquery predicates before it is allowed. grep for DontEvaluateMaterializedSubqueryTooEarly to see the uses.
Definition at line 724 of file item.cc.
Referenced by drizzled::Join::optimize().
bool drizzled::Item::is_null | ( | ) | [virtual, inherited] |
The method allows to determine nullness of a complex expression without fully evaluating it, instead of calling val/result*() then checking null_value. Used in Item_func_isnull/Item_func_isnotnull and Item_sum_count/Item_sum_count_distinct. Any new item which can be NULL must implement this method.
Reimplemented in drizzled::Item_func_nullif, drizzled::Item_variance_field, drizzled::Item_avg_field, drizzled::Item_sum, drizzled::Item_bool_func2, drizzled::Item_in_optimizer, drizzled::Item_func, drizzled::Item_subselect, drizzled::Item_field, drizzled::Item_func_numhybrid, drizzled::Item_ref, drizzled::Item_copy_string, drizzled::Item_null, drizzled::Item_row, and drizzled::Item_direct_ref.
Definition at line 540 of file item.cc.
Referenced by drizzled::QueryCacheService::addRecord(), drizzled::Item::get_date(), drizzled::make_join_statistics(), drizzled::Item_func_isnull::val_int(), and drizzled::Item_func_isnotnull::val_int().
Field * drizzled::Item::make_string_field | ( | Table * | table | ) | [inherited] |
Create a field to hold a string value from an item.
If max_length > CONVERT_IF_BIGGER_TO_BLOB create a blob
If max_length > 0 create a varchar
If max_length == 0 create a CHAR(0)
table | Table for which the field is created |
Definition at line 1149 of file item.cc.
References drizzled::Item::maybe_null, and drizzled::Item::name.
Referenced by drizzled::create_tmp_field_from_item(), and drizzled::Item::tmp_table_field_from_field_type().
void drizzled::Item::no_rows_in_result | ( | void | ) | [virtual, inherited] |
Sets value of aggregate function in case of no rows for grouping were found
Reimplemented in drizzled::Item_func_group_concat, drizzled::Item_sum_hybrid, drizzled::Item_sum_variance, drizzled::Item_sum_avg, drizzled::Item_sum_count_distinct, drizzled::Item_sum_count, drizzled::Item_sum_distinct, drizzled::Item_sum_sum, and drizzled::Item_sum.
virtual table_map drizzled::Item::not_null_tables | ( | ) | const [inline, virtual, inherited] |
Return table map of tables that can't be NULL tables (tables that are used in a context where if they would contain a NULL row generated by a LEFT or RIGHT join, the item would not be true). This expression is used on WHERE item to determinate if a LEFT JOIN can be converted to a normal join. Generally this function should return used_tables() if the function would return null if any of the arguments are null As this is only used in the beginning of optimization, the value don't have to be updated in update_used_tables()
Reimplemented in drizzled::Item_cond_or, drizzled::Item_cond_and, drizzled::Item_func_isnotnull, drizzled::Item_func_isnull, drizzled::Item_func_case, drizzled::Item_func_nullif, drizzled::Item_func_coalesce, drizzled::Item_func_equal, drizzled::Item_subselect, drizzled::Item_ref, drizzled::Item_func, drizzled::Item_func_concat_ws, CoercibilityFunction, and drizzled::Item_func_collation.
Definition at line 500 of file item.h.
Referenced by drizzled::and_expressions(), and drizzled::Item_func::fix_after_pullout().
void drizzled::Item::print | ( | String * | str | ) | [virtual, inherited] |
This method is used for to:
For more information about view definition query, INFORMATION_SCHEMA query and why they should be generated from the Item-tree,
Reimplemented in drizzled::Item_equal, drizzled::Item_cond, drizzled::Item_func_isnotnull, drizzled::Item_func_in, drizzled::Item_func_case, drizzled::Item_func_group_concat, drizzled::Item_aggregate_ref, drizzled::Item_func_nullif, drizzled::Item_func_strcmp, drizzled::Item_func_between, drizzled::Item_func_not_all, drizzled::Item_allany_subselect, drizzled::Item_func_not, drizzled::Item_in_subselect, drizzled::Item_sum, drizzled::Item_bool_func2, drizzled::Item_exists_subselect, drizzled::Item_maxmin_subselect, drizzled::Item_static_string_func, drizzled::Item_func_truth, drizzled::Item_func, drizzled::Item_subselect, drizzled::Item_ref, drizzled::Item_field, drizzled::Item_string, drizzled::Item_char_typecast, drizzled::Item_row, drizzled::Item_cache, drizzled::function::bit::Neg, drizzled::Item_static_float_func, drizzled::Item_int, drizzled::Item_func_set_user_var, drizzled::Item_ident, drizzled::Item_func_conv_charset, drizzled::Item_func_make_set, drizzled::Item_float, drizzled::Item_decimal, drizzled::Item_null, drizzled::function::bit::Bit, drizzled::Item_func_get_user_var, drizzled::Item_typecast, drizzled::Item_user_var_as_out_param, drizzled::Item_ref_null_helper, drizzled::Item_insert_value, drizzled::function::cast::Signed, drizzled::function::cast::Unsigned, drizzled::Item_hex_string, drizzled::Item_decimal_typecast, drizzled::Item_func_binary, drizzled::function::cast::Boolean, drizzled::Item_date_add_interval, drizzled::Item_default_value, drizzled::Item_extract, drizzled::Item_func_timestamp_diff, drizzled::Item_func_locate, drizzled::Item_func_int_div, drizzled::Item_func_trim, drizzled::Item_uint, drizzled::Item_num_op, drizzled::Item_func_set_collation, drizzled::Item_func_format, and BenchmarkFunction.
Definition at line 366 of file item.cc.
Referenced by drizzled::Item_func_set_collation::print(), drizzled::Item_func_locate::print(), drizzled::Item_func_trim::print(), drizzled::Item_extract::print(), drizzled::Item_func_timestamp_diff::print(), drizzled::Item_default_value::print(), drizzled::function::cast::Boolean::print(), drizzled::Item_date_add_interval::print(), drizzled::Item_func_binary::print(), drizzled::Item_decimal_typecast::print(), drizzled::function::cast::Unsigned::print(), drizzled::function::cast::Signed::print(), drizzled::Item_insert_value::print(), drizzled::Item_typecast::print(), drizzled::Item_func_make_set::print(), drizzled::Item_func_conv_charset::print(), drizzled::Item_func_set_user_var::print(), drizzled::Item_cache::print(), drizzled::Item_row::print(), drizzled::Item_char_typecast::print(), drizzled::Item_sum::print(), drizzled::Item_in_subselect::print(), drizzled::Item_allany_subselect::print(), drizzled::Item_func_group_concat::print(), drizzled::Item_func_in::print(), drizzled::Item_func_isnotnull::print(), and drizzled::utility_functions::Assert::val_bool().
void drizzled::Item::quick_fix_field | ( | ) | [inline, inherited] |
Should be used in case where we are sure that we do not need complete fix_fields() procedure.
Definition at line 241 of file item.h.
Referenced by drizzled::build_equal_items_for_cond(), drizzled::check_row_equality(), drizzled::check_simple_equality(), and drizzled::eliminate_item_equal().
void drizzled::Item::rename | ( | char * | new_name | ) | [inherited] |
Renames item (used for views, cleanup() return original name).
new_name | new name of item; |
Definition at line 394 of file item.cc.
References drizzled::Item::name, and drizzled::Item::orig_name.
bool drizzled::Item::result_as_int64_t | ( | ) | [virtual, inherited] |
Returns true for Items representing DATE/TIME functions and DATE/TIME table fields. Those Items have result_type()==STRING_RESULT (and not INT_RESULT), but their values should be compared as integers (because the integer representation is more precise than the string one).
Reimplemented in drizzled::Item_datetime_typecast, drizzled::Item_ref, drizzled::Item_date_typecast, drizzled::Item_field, drizzled::Item_date_func, drizzled::Item_date, drizzled::function::cast::Time, drizzled::Item_func_min_max, and drizzled::Item_cache_int.
Definition at line 719 of file item.cc.
Referenced by drizzled::FileSort::sortlength().
int drizzled::Item::save_str_value_in_field | ( | Field * | field, |
String * | result | ||
) | [inherited] |
Stores a string value in field directly
The method is used by Item_*::save_in_field implementations when we don't need to calculate the value to store
Pointer | to field where to store |
Pointer | to the string value to be stored |
Nonzero | value if error |
Check if the Item is null and stores the NULL or the result value in the field accordingly.
bool drizzled::Item::send | ( | plugin::Client * | client, |
String * | str | ||
) | [virtual, inherited] |
This is only called from items that is not of type item_field.
Reimplemented in drizzled::Item_ref, drizzled::Item_field, drizzled::Item_func_set_user_var, and drizzled::Item_null.
Definition at line 1357 of file item.cc.
References drizzled::Item::get_date(), drizzled::Item::get_time(), drizzled::Item::null_value, drizzled::Item::val_int(), drizzled::Item::val_real(), and drizzled::Item::val_str().
void drizzled::Item::set_result_field | ( | Field * | field | ) | [virtual, inherited] |
Sets field of temporary table for Item which can be switched on temporary table during query processing (grouping and so on)
Reimplemented in drizzled::Item_ref, and drizzled::Item_result_field.
Definition at line 553 of file item.cc.
Referenced by drizzled::create_tmp_field_from_item().
void drizzled::Item::split_sum_func | ( | Session * | session, |
Item ** | ref_pointer_array, | ||
List< Item > & | fields, | ||
Item ** | ref, | ||
bool | skip_registered | ||
) | [inherited] |
Move SUM items out from item tree and replace with reference.
session | Thread handler |
ref_pointer_array | Pointer to array of reference fields |
fields | All fields in select |
ref | Pointer to item |
skip_registered | <=> function be must skipped for registered SUM items |
All found SUM items are added FIRST in the fields list and we replace the item with a reference.
session->fatal_error() may be called if we are out of memory
Definition at line 753 of file item.cc.
References drizzled::Item::name, and drizzled::Item::used_tables().
Field * drizzled::Item::tmp_table_field_from_field_type | ( | Table * | table, |
bool | fixed_length | ||
) | [inherited] |
Create a field based on field_type of argument.
For now, this is only used to create a field for IFNULL(x,something) and time functions
NULL | error |
\:: | Created field |
Definition at line 1170 of file item.cc.
References drizzled::Item::make_string_field(), drizzled::Item::maybe_null, and drizzled::Item::name.
Referenced by drizzled::create_tmp_field_from_item().
void drizzled::Item::top_level_item | ( | void | ) | [virtual, inherited] |
Inform the item that there will be no distinction between its result being false or NULL.
This function will be called for eg. Items that are top-level AND-parts of the WHERE clause. Items implementing this function (currently Item_cond_and and subquery-related item) enable special optimizations when they are "top level".
Reimplemented in drizzled::Item_cond_xor, drizzled::Item_cond, drizzled::Item_func_isnotnull, drizzled::Item_func_opt_neg, drizzled::Item_func_not_all, drizzled::Item_in_subselect, and drizzled::Item_bool_func2.
Definition at line 550 of file item.cc.
Referenced by drizzled::Join::optimize(), and drizzled::Item_in_subselect::row_value_in_to_exists_transformer().
Item * drizzled::Item::transform | ( | Item_transformer | transformer, |
unsigned char * | arg | ||
) | [virtual, inherited] |
Traverse item tree possibly transforming it (replacing items).
If you don't need to transform an item tree, but only traverse it, please use Item::walk() instead.
transformer | functor that performs transformation of a subtree |
arg | opaque argument passed to the functor |
Reimplemented in drizzled::Item_equal, drizzled::Item_cond, drizzled::Item_in_optimizer, drizzled::Item_func, drizzled::Item_row, drizzled::Item_func_make_set, and drizzled::Item_default_value.
Definition at line 405 of file item.cc.
Referenced by drizzled::Item_ident::print(), drizzled::Item_default_value::transform(), drizzled::Item_func_make_set::transform(), drizzled::Item_row::transform(), drizzled::Item_func::transform(), and drizzled::Item_in_optimizer::transform().
void drizzled::Item::update_null_value | ( | ) | [virtual, inherited] |
Make sure the null_value member has a correct value.
Reimplemented in drizzled::Item_in_subselect, and drizzled::Item_field.
Definition at line 545 of file item.cc.
References drizzled::Item::val_int().
Referenced by drizzled::Item_func_numhybrid::is_null(), drizzled::Item_subselect::is_null(), drizzled::Item_func::is_null(), drizzled::Item_avg_field::is_null(), and drizzled::Item_variance_field::is_null().
virtual table_map drizzled::Item::used_tables | ( | ) | const [inline, virtual, inherited] |
Returns bit map of tables used by item
Reimplemented in drizzled::Item_cond, drizzled::Item_is_not_null_test, drizzled::Item_func_trig_cond, drizzled::Item_sum, drizzled::Item_subselect, drizzled::Item_func, drizzled::Item_ref, drizzled::Item_field, drizzled::Item_row, drizzled::Item_cache, drizzled::Item_outer_ref, drizzled::Item_copy_string, drizzled::Item_func_get_user_var, drizzled::Item_insert_value, drizzled::Item_ref_null_helper, drizzled::Item_result_field, and drizzled::Item_default_value.
Definition at line 485 of file item.h.
Referenced by drizzled::and_expressions(), drizzled::Item_row::fix_after_pullout(), drizzled::Item_func::fix_after_pullout(), drizzled::get_sort_by_table(), drizzled::make_join_statistics(), drizzled::mark_select_range_as_dependent(), drizzled::remove_constants(), drizzled::setup_group(), drizzled::simplify_joins(), drizzled::Item::split_sum_func(), drizzled::update_depend_map(), and drizzled::Item_func_trig_cond::used_tables().
virtual bool drizzled::item::Boolean::val_bool | ( | ) | [inline, virtual, inherited] |
Return boolean value of item.
false value is false or NULL true value is true (not equal to 0) |
Reimplemented from drizzled::Item.
type::Decimal* drizzled::item::Boolean::val_decimal | ( | type::Decimal * | decimal_buffer | ) | [inline, virtual, inherited] |
Return decimal representation of item with fixed point.
buffer | which can be used by Item for returning value (but can be not) |
Returned value should not be changed if it is not the same which was passed via argument.
Return pointer on type::Decimal (it can be other then passed via argument) if value is not NULL (null_value flag will be reset to false). In case of NULL value it return 0 pointer and set null_value flag to true. |
Implements drizzled::Item.
int64_t drizzled::item::Boolean::val_int | ( | ) | [inline, virtual, inherited] |
Returns integer representation of item.
In case of NULL value return 0 and set null_value flag to true. If value is not null null_value flag will be reset to false. |
Implements drizzled::Item.
int64_t drizzled::Item::val_int_endpoint | ( | bool | left_endp, |
bool * | incl_endp | ||
) | [virtual, inherited] |
Converts "func_arg $CMP$ const" half-interval into "FUNC(func_arg) $CMP2$ const2"
left_endp false <=> The interval is "x < const" or "x <= const" true <=> The interval is "x > const" or "x >= const"
incl_endp IN true <=> the comparison is '<' or '>' false <=> the comparison is '<=' or '>=' OUT The same but for the "F(x) $CMP$ F(const)" comparison
This function is defined only for unary monotonic functions. The caller supplies the source half-interval
x $CMP$ const
The value of const is supplied implicitly as the value this item's argument, the form of $CMP$ comparison is specified through the function's arguments. The calle returns the result interval
F(x) $CMP2$ F(const)
passing back F(const) as the return value, and the form of $CMP2$ through the out parameter. NULL values are assumed to be comparable and be less than any non-NULL values.
The output range bound, which equal to the value of val_int()
|
Reimplemented in drizzled::Item_field, drizzled::Item_func_to_days, and drizzled::Item_func_year.
double drizzled::item::Boolean::val_real | ( | ) | [inline, virtual, inherited] |
Returns double precision floating point representation of item.
In case of NULL value return 0.0 and set null_value flag to true. If value is not null null_value flag will be reset to false. |
Implements drizzled::Item.
drizzled::String* drizzled::item::Boolean::val_str | ( | drizzled::String * | str | ) | [inline, virtual, inherited] |
Return string representation of this item object.
an | allocated buffer this or any nested Item object can use to store return value of this method. |
Buffer passed via argument should only be used if the item itself doesn't have an own String buffer. In case when the item maintains it's own string buffer, it's preferable to return it instead to minimize number of mallocs/memcpys.
The caller of this method can modify returned string, but only in case when it was allocated on heap, (is_alloced() is true). This allows the caller to efficiently use a buffer allocated by a child without having to allocate a buffer of it's own. The buffer, given to val_str() as argument, belongs to the caller and is later used by the caller at it's own choosing.
A few implications from the above:
In | case of NULL value return 0 (NULL pointer) and set null_value flag to true. If value is not null null_value flag will be reset to false. |
Implements drizzled::Item.
uint64_t drizzled::Item::val_uint | ( | ) | [inline, inherited] |
Item_result drizzled::Item::cmp_context [inherited] |
Comparison context
Definition at line 174 of file item.h.
Referenced by drizzled::Item_field::equal_fields_propagator(), drizzled::Item::Item(), and drizzled::Item_field::replace_equal_field().
bool drizzled::Item::fixed [inherited] |
If item fixed with fix_fields
Definition at line 150 of file item.h.
Referenced by drizzled::add_ref_to_table_cond(), drizzled::statement::Kill::execute(), drizzled::find_order_in_list(), drizzled::Item_default_value::fix_fields(), drizzled::Item_insert_value::fix_fields(), drizzled::Item_field::fix_fields(), drizzled::Item_ref::fix_fields(), drizzled::Item_field::fix_outer_field(), drizzled::Item_func_from_days::get_temporal(), drizzled::Item_func_last_day::get_temporal(), drizzled::Item_ref::is_null(), drizzled::Item_float::Item_float(), drizzled::Item_int::Item_int(), drizzled::Join::prepare(), drizzled::Item_in_subselect::row_value_in_to_exists_transformer(), drizzled::Item_in_subselect::select_in_like_transformer(), drizzled::Item_sum_distinct::setup(), drizzled::Item_ref_null_helper::val_bool(), drizzled::Item_ref::val_bool(), drizzled::Item_exists_subselect::val_bool(), drizzled::Item_in_subselect::val_bool(), drizzled::Item_cache_real::val_decimal(), drizzled::Item_real_func::val_decimal(), drizzled::Item_cache_str::val_decimal(), drizzled::Item_cache_decimal::val_decimal(), drizzled::Item_cache_int::val_decimal(), drizzled::Item_func_min_max::val_decimal(), drizzled::Item_ref_null_helper::val_decimal(), drizzled::Item_func_get_user_var::val_decimal(), drizzled::Item_func_numhybrid::val_decimal(), drizzled::Item_float::val_decimal(), drizzled::Item_func_set_user_var::val_decimal(), drizzled::function::cast::Time::val_decimal(), drizzled::Item_date::val_decimal(), drizzled::Item_date_func::val_decimal(), drizzled::Item_date_typecast::val_decimal(), drizzled::Item_func::val_decimal(), drizzled::Item_datetime_typecast::val_decimal(), drizzled::Item_exists_subselect::val_decimal(), drizzled::Item_in_subselect::val_decimal(), drizzled::Item_sum_avg::val_decimal(), drizzled::Item_func_dayofyear::val_int(), drizzled::Item_func_hour::val_int(), drizzled::Item_func_microsecond::val_int(), drizzled::Item_func_minute::val_int(), drizzled::Item_func_month::val_int(), drizzled::Item_func_period_diff::val_int(), drizzled::Item_func_quarter::val_int(), drizzled::Item_func_second::val_int(), drizzled::Item_func_period_add::val_int(), drizzled::Item_func_to_days::val_int(), drizzled::Item_func_year::val_int(), drizzled::Item_func_dayofmonth::val_int(), drizzled::Item_func_from_unixtime::val_int(), drizzled::Item_func_elt::val_int(), drizzled::Item_func_row_count::val_int(), drizzled::Item_func_found_rows::val_int(), drizzled::Item_func_last_insert_id::val_int(), drizzled::Item_func_int_div::val_int(), drizzled::Item_func_ord::val_int(), drizzled::Item_func_unix_timestamp::val_int(), drizzled::Item_func_sign::val_int(), drizzled::Item_func_weekday::val_int(), drizzled::Item_cache_real::val_int(), drizzled::Item_extract::val_int(), drizzled::Item_func_field::val_int(), drizzled::Item_func_locate::val_int(), drizzled::Item_func_find_in_set::val_int(), drizzled::Item_cache_str::val_int(), drizzled::Item_cache_decimal::val_int(), drizzled::function::bit::Or::val_int(), drizzled::utility_functions::BitCount::val_int(), drizzled::utility_functions::GlobalReadLock::val_int(), drizzled::Item_real_func::val_int(), drizzled::Item_cache_int::val_int(), drizzled::Item_func_makedate::val_int(), drizzled::Item_date::val_int(), drizzled::Item_func_sysdate_local::val_int(), drizzled::Item_date_add_interval::val_int(), drizzled::Item_null::val_int(), drizzled::Item_func_min_max::val_int(), drizzled::Item_func_now::val_int(), drizzled::Item_ref_null_helper::val_int(), drizzled::function::bit::And::val_int(), drizzled::Item_func_get_user_var::val_int(), drizzled::Item_func_numhybrid::val_int(), drizzled::Item_float::val_int(), drizzled::function::bit::ShiftLeft::val_int(), drizzled::Item_func_set_user_var::val_int(), drizzled::Item_int::val_int(), drizzled::function::cast::Time::val_int(), drizzled::function::bit::ShiftRight::val_int(), drizzled::Item_ref::val_int(), drizzled::Item_field::val_int(), drizzled::function::bit::Neg::val_int(), drizzled::Item_string::val_int(), drizzled::function::bit::Xor::val_int(), drizzled::Item_date_typecast::val_int(), drizzled::Item_datetime_typecast::val_int(), drizzled::Item_singlerow_subselect::val_int(), drizzled::Item_exists_subselect::val_int(), drizzled::Item_in_subselect::val_int(), drizzled::Item_sum_num::val_int(), drizzled::Item_sum_sum::val_int(), drizzled::Item_sum_count::val_int(), drizzled::Item_sum_count_distinct::val_int(), drizzled::Item_func_in::val_int(), drizzled::Item_func_isnull::val_int(), drizzled::Item_is_not_null_test::val_int(), drizzled::Item_func_isnotnull::val_int(), drizzled::Item_func_like::val_int(), drizzled::Item_cond_and::val_int(), drizzled::Item_cond_or::val_int(), drizzled::Item_cond_xor::val_int(), drizzled::Item_func_year::val_int_endpoint(), drizzled::Item_func_to_days::val_int_endpoint(), drizzled::Item_func_elt::val_real(), drizzled::Item_func_atan::val_real(), drizzled::Item_func_pow::val_real(), drizzled::Item_func_ln::val_real(), drizzled::Item_func_asin::val_real(), drizzled::Item_func_cos::val_real(), drizzled::Item_func_sin::val_real(), drizzled::Item_func_sqrt::val_real(), drizzled::Item_func_tan::val_real(), drizzled::Item_func_log::val_real(), drizzled::Item_func_acos::val_real(), drizzled::Item_func_exp::val_real(), drizzled::Item_func_month::val_real(), drizzled::Item_cache_real::val_real(), drizzled::Item_hex_string::val_real(), drizzled::Item_uint::val_real(), drizzled::Item_func_weekday::val_real(), drizzled::Item_func_units::val_real(), drizzled::Item_cache_str::val_real(), drizzled::Item_cache_decimal::val_real(), drizzled::Item_cache_int::val_real(), drizzled::Item_func_sysdate_local::val_real(), drizzled::Item_int_func::val_real(), drizzled::Item_func_log2::val_real(), drizzled::Item_null::val_real(), drizzled::Item_func_min_max::val_real(), drizzled::Item_ref_null_helper::val_real(), drizzled::Item_func_get_user_var::val_real(), drizzled::Item_func_numhybrid::val_real(), drizzled::Item_float::val_real(), drizzled::Item_func_log10::val_real(), drizzled::Item_func_set_user_var::val_real(), drizzled::Item_int::val_real(), drizzled::Item_ref::val_real(), drizzled::Item_field::val_real(), drizzled::Item_string::val_real(), drizzled::Item_singlerow_subselect::val_real(), drizzled::Item_exists_subselect::val_real(), drizzled::Item_in_subselect::val_real(), drizzled::Item_sum_int::val_real(), drizzled::Item_sum_sum::val_real(), drizzled::Item_sum_avg::val_real(), drizzled::Item_sum_std::val_real(), drizzled::Item_func_makedate::val_str(), drizzled::Item_func_collation::val_str(), drizzled::Item_func_set_collation::val_str(), drizzled::Item_func_binary::val_str(), drizzled::Item_func_right::val_str(), drizzled::Item_func_conv::val_str(), drizzled::Item_func_dayname::val_str(), drizzled::Item_func_left::val_str(), drizzled::Item_func_from_unixtime::val_str(), drizzled::Item_func_elt::val_str(), drizzled::Item_func_quote::val_str(), drizzled::Item_func_char::val_str(), drizzled::Item_func_trim::val_str(), drizzled::utility_functions::Schema::val_str(), drizzled::Item_uint::val_str(), drizzled::Item_str_conv::val_str(), drizzled::Item_func_weekday::val_str(), drizzled::Item_cache_real::val_str(), drizzled::Item_func_rpad::val_str(), drizzled::Item_typecast::val_str(), drizzled::utility_functions::User::val_str(), drizzled::utility_functions::ResultType::val_str(), drizzled::Item_real_func::val_str(), drizzled::Item_date_add_interval::val_str(), drizzled::utility_functions::Catalog::val_str(), drizzled::utility_functions::GlobalReadLock::val_str(), drizzled::Item_cache_decimal::val_str(), drizzled::Item_func_repeat::val_str(), drizzled::Item_cache_str::val_str(), drizzled::Item_func_replace::val_str(), drizzled::Item_date::val_str(), drizzled::utility_functions::Typeof::val_str(), drizzled::Item_func_make_set::val_str(), drizzled::Item_hex_string::val_str(), drizzled::Item_func_insert::val_str(), drizzled::Item_cache_int::val_str(), drizzled::Item_int_func::val_str(), drizzled::function::cast::Time::val_str(), drizzled::Item_func_sysdate_local::val_str(), drizzled::Item_null::val_str(), drizzled::Item_func_min_max::val_str(), drizzled::Item_ref_null_helper::val_str(), drizzled::Item_func_now::val_str(), drizzled::Item_func_ltrim::val_str(), drizzled::Item_func_get_user_var::val_str(), drizzled::Item_func_numhybrid::val_str(), drizzled::Item_float::val_str(), drizzled::Item_func_lpad::val_str(), drizzled::Item_func_set_user_var::val_str(), drizzled::Item_func_monthname::val_str(), drizzled::Item_func_rtrim::val_str(), drizzled::Item_int::val_str(), drizzled::Item_func_conv_charset::val_str(), drizzled::Item_field::val_str(), drizzled::Item_ref::val_str(), drizzled::Item_string::val_str(), drizzled::Item_char_typecast::val_str(), drizzled::Item_date_typecast::val_str(), drizzled::Item_datetime_typecast::val_str(), drizzled::Item_exists_subselect::val_str(), drizzled::Item_in_subselect::val_str(), and drizzled::Item_func_group_concat::val_str().
bool drizzled::Item::is_autogenerated_name [inherited] |
indicates whether name of this Item was autogenerated or set by user
Definition at line 166 of file item.h.
Referenced by drizzled::Create_func_arg1::create(), drizzled::Create_func_arg2::create(), drizzled::Create_func_arg3::create(), and drizzled::has_named_parameters().
bool drizzled::Item::maybe_null [inherited] |
True if item may be null
Definition at line 151 of file item.h.
Referenced by drizzled::calc_group_buffer(), drizzled::change_group_ref(), drizzled::create_tmp_field(), drizzled::create_tmp_field_from_field(), drizzled::create_tmp_field_from_item(), drizzled::end_update(), drizzled::Item_type_holder::join_types(), drizzled::SortParam::make_sortkey(), drizzled::Item::make_string_field(), drizzled::remove_eq_conds(), drizzled::Join::rollup_make_fields(), drizzled::Item_in_subselect::row_value_in_to_exists_transformer(), drizzled::Item_sum_distinct::setup(), drizzled::Item_in_subselect::single_value_in_to_exists_transformer(), drizzled::FileSort::sortlength(), drizzled::Item::tmp_table_field_from_field_type(), and drizzled::Item_is_not_null_test::update_used_tables().
char* drizzled::Item::name [inherited] |
Name from select
Reimplemented in drizzled::Item_func_set_user_var, drizzled::Item_user_var_as_out_param, drizzled::Item_func_get_user_var, and drizzled::Item_func_units.
Definition at line 138 of file item.h.
Referenced by drizzled::change_group_ref(), drizzled::check_simple_equality(), drizzled::create_func_cast(), drizzled::create_tmp_field(), drizzled::create_tmp_field_from_item(), drizzled::Item_field::eq(), drizzled::Item::eq(), drizzled::Item_default_value::fix_fields(), drizzled::Item_ref::fix_fields(), drizzled::Item_float::Item_float(), drizzled::Item_int::Item_int(), drizzled::Item::make_string_field(), drizzled::Join::optimize(), drizzled::Item_ident::print(), drizzled::Item_ref::print(), drizzled::remove_additional_cond(), drizzled::Item::rename(), drizzled::Item_field::reset_field(), drizzled::resolve_ref_in_select_and_group(), drizzled::Item_in_subselect::row_value_in_to_exists_transformer(), drizzled::setup_copy_fields(), drizzled::Item_in_subselect::single_value_in_to_exists_transformer(), drizzled::Item::split_sum_func(), drizzled::Item::tmp_table_field_from_field_type(), drizzled::Item_decimal_typecast::val_decimal(), and drizzled::utility_functions::Catalog::val_str().
uint32_t drizzled::Item::name_length [inherited] |
bool drizzled::Item::null_value [inherited] |
True if item is null
Definition at line 152 of file item.h.
Referenced by drizzled::Item_func_abs::decimal_op(), drizzled::Item_func_plus::decimal_op(), drizzled::Item_func_ceiling::decimal_op(), drizzled::Item_func_floor::decimal_op(), drizzled::Item_func_minus::decimal_op(), drizzled::Item_func_neg::decimal_op(), drizzled::field_is_equal_to_item(), drizzled::Item_func_from_unixtime::get_date(), drizzled::Item_date_add_interval::get_date(), drizzled::Item_ref_null_helper::get_date(), drizzled::Item_direct_ref::get_date(), drizzled::Item_ref::get_date(), drizzled::Item_field::get_date(), drizzled::Item_func_from_days::get_temporal(), drizzled::Item_func_last_day::get_temporal(), drizzled::Item_field::get_time(), drizzled::Item_date_typecast::get_time(), drizzled::TemporalInterval::initFromItem(), drizzled::Item_func_abs::int_op(), drizzled::Item_func_ceiling::int_op(), drizzled::Item_func_floor::int_op(), drizzled::Item_func_plus::int_op(), drizzled::Item_func_minus::int_op(), drizzled::Item_func_neg::int_op(), drizzled::Item_row::is_null(), drizzled::Item_copy_string::is_null(), drizzled::Item_func_numhybrid::is_null(), drizzled::Item_subselect::is_null(), drizzled::Item_func::is_null(), drizzled::Item_sum::is_null(), drizzled::Item_avg_field::is_null(), drizzled::Item_variance_field::is_null(), drizzled::SortParam::make_sortkey(), drizzled::Item_func_abs::real_op(), drizzled::Item_func_ceiling::real_op(), drizzled::Item_func_floor::real_op(), drizzled::Item_func_plus::real_op(), drizzled::Item_func_minus::real_op(), drizzled::Item_func_neg::real_op(), drizzled::Item_field::save_org_in_field(), drizzled::Item::send(), drizzled::Item_sum_distinct::setup(), drizzled::string_functions::Regex::val_bool(), drizzled::utility_functions::Execute::val_bool(), drizzled::Item_direct_ref::val_bool(), drizzled::Item_ref_null_helper::val_bool(), drizzled::Item_ref::val_bool(), drizzled::Item_singlerow_subselect::val_bool(), drizzled::Item_in_subselect::val_bool(), drizzled::Item_real_func::val_decimal(), drizzled::Item_decimal_typecast::val_decimal(), drizzled::Item_func_min_max::val_decimal(), drizzled::Item_direct_ref::val_decimal(), drizzled::Item_ref_null_helper::val_decimal(), drizzled::Item_func_get_user_var::val_decimal(), drizzled::Item_func_set_user_var::val_decimal(), drizzled::Item_copy_string::val_decimal(), drizzled::Item_ref::val_decimal(), drizzled::Item_field::val_decimal(), drizzled::Item_singlerow_subselect::val_decimal(), drizzled::Item_in_subselect::val_decimal(), drizzled::Item_sum_distinct::val_decimal(), drizzled::Item_sum_avg::val_decimal(), drizzled::Item_func_if::val_decimal(), drizzled::Item_func_case::val_decimal(), drizzled::Item_func_dayofyear::val_int(), drizzled::Item_func_hour::val_int(), drizzled::Item_func_microsecond::val_int(), drizzled::Item_func_minute::val_int(), drizzled::Item_func_month::val_int(), drizzled::Item_func_period_add::val_int(), drizzled::Item_func_period_diff::val_int(), drizzled::Item_func_quarter::val_int(), drizzled::Item_func_second::val_int(), drizzled::Item_func_to_days::val_int(), drizzled::Item_func_year::val_int(), drizzled::Item_func_dayofmonth::val_int(), drizzled::Item_func_elt::val_int(), drizzled::Item_func_last_insert_id::val_int(), drizzled::Item_func_int_div::val_int(), drizzled::Item_func_ord::val_int(), drizzled::Item_func_unix_timestamp::val_int(), drizzled::Item_func_weekday::val_int(), drizzled::Item_func_sign::val_int(), user_locks::IsFreeLock::val_int(), drizzled::Item_func_timestamp_diff::val_int(), user_locks::GetLock::val_int(), user_locks::GetLocks::val_int(), user_locks::IsUsedLock::val_int(), user_locks::ReleaseLock::val_int(), drizzled::Item_func_field::val_int(), user_locks::locks::ReleaseAndWait::val_int(), drizzled::Item_extract::val_int(), user_locks::barriers::WaitUntil::val_int(), user_locks::barriers::CreateBarrier::val_int(), user_locks::barriers::Release::val_int(), user_locks::barriers::Signal::val_int(), user_locks::barriers::Wait::val_int(), user_locks::locks::WaitFor::val_int(), drizzled::Item_func_locate::val_int(), plugin::catalog::functions::Create::val_int(), plugin::catalog::functions::Lock::val_int(), plugin::catalog::functions::Drop::val_int(), plugin::catalog::functions::Unlock::val_int(), drizzled::Item_func_find_in_set::val_int(), drizzled::function::cast::Unsigned::val_int(), drizzled::function::cast::Signed::val_int(), drizzled::function::bit::Or::val_int(), drizzled::utility_functions::BitCount::val_int(), drizzled::utility_functions::GlobalReadLock::val_int(), drizzled::Item_decimal_typecast::val_int(), drizzled::Item_func_makedate::val_int(), drizzled::Item_null::val_int(), drizzled::Item_func_min_max::val_int(), drizzled::Item_direct_ref::val_int(), drizzled::Item_ref_null_helper::val_int(), drizzled::function::bit::And::val_int(), drizzled::Item_func_get_user_var::val_int(), drizzled::Item_copy_string::val_int(), drizzled::function::bit::ShiftLeft::val_int(), drizzled::Item_func_set_user_var::val_int(), drizzled::function::bit::ShiftRight::val_int(), drizzled::Item_ref::val_int(), drizzled::Item_field::val_int(), drizzled::function::bit::Neg::val_int(), drizzled::function::bit::Xor::val_int(), drizzled::Item_date_typecast::val_int(), drizzled::Item_datetime_typecast::val_int(), drizzled::Item_singlerow_subselect::val_int(), drizzled::Item_in_subselect::val_int(), drizzled::Item_func_interval::val_int(), drizzled::Item_func_if::val_int(), drizzled::Item_func_case::val_int(), drizzled::Item_func_in::val_int(), drizzled::Item_func_like::val_int(), drizzled::Item_equal::val_int(), drizzled::Item_cond_and::val_int(), drizzled::Item_cond_or::val_int(), drizzled::Item_cond_xor::val_int(), drizzled::Item_func_to_days::val_int_endpoint(), drizzled::Item_field::val_int_endpoint(), drizzled::Item_func_elt::val_real(), drizzled::Item_func_acos::val_real(), drizzled::Item_func_cos::val_real(), drizzled::Item_func_exp::val_real(), drizzled::Item_func_tan::val_real(), drizzled::Item_func_log::val_real(), drizzled::Item_func_asin::val_real(), drizzled::Item_func_sin::val_real(), drizzled::Item_func_pow::val_real(), drizzled::Item_func_atan::val_real(), drizzled::Item_func_sqrt::val_real(), drizzled::Item_func_ln::val_real(), drizzled::Item_func_units::val_real(), drizzled::Item_decimal_typecast::val_real(), drizzled::Item_func_log2::val_real(), drizzled::Item_null::val_real(), drizzled::Item_func_min_max::val_real(), drizzled::Item_direct_ref::val_real(), drizzled::Item_ref_null_helper::val_real(), drizzled::Item_copy_string::val_real(), drizzled::Item_func_get_user_var::val_real(), drizzled::Item_func_log10::val_real(), drizzled::Item_func_set_user_var::val_real(), drizzled::Item_ref::val_real(), drizzled::Item_field::val_real(), drizzled::Item_singlerow_subselect::val_real(), drizzled::Item_in_subselect::val_real(), drizzled::Item_sum_avg::val_real(), drizzled::Item_func_if::val_real(), drizzled::Item_variance_field::val_real(), drizzled::Item_func_case::val_real(), drizzled::Item_func_collation::val_str(), drizzled::Item_func_makedate::val_str(), drizzled::Item_func_set_collation::val_str(), drizzled::Item_func_left::val_str(), drizzled::Item_func_right::val_str(), drizzled::Item_func_dayname::val_str(), drizzled::Item_func_binary::val_str(), drizzled::Item_func_conv::val_str(), drizzled::Item_func_quote::val_str(), drizzled::Item_func_from_unixtime::val_str(), drizzled::Item_func_elt::val_str(), drizzled::Item_func_char::val_str(), drizzled::Item_func_month::val_str(), drizzled::Item_str_conv::val_str(), drizzled::utility_functions::Schema::val_str(), drizzled::Item_func_trim::val_str(), drizzled::Item_func_weekday::val_str(), drizzled::Item_func_rpad::val_str(), drizzled::Item_decimal_typecast::val_str(), drizzled::function::cast::Boolean::val_str(), drizzled::utility_functions::User::val_str(), drizzled::utility_functions::ResultType::val_str(), drizzled::Item_real_func::val_str(), drizzled::Item_typecast::val_str(), drizzled::utility_functions::GlobalReadLock::val_str(), drizzled::Item_func_repeat::val_str(), drizzled::Item_date::val_str(), drizzled::Item_func_replace::val_str(), drizzled::Item_func_make_set::val_str(), drizzled::utility_functions::Typeof::val_str(), drizzled::Item_func_insert::val_str(), drizzled::function::cast::Time::val_str(), drizzled::Item_int_func::val_str(), drizzled::Item_null::val_str(), drizzled::Item_func_min_max::val_str(), drizzled::Item_ref_null_helper::val_str(), drizzled::Item_direct_ref::val_str(), drizzled::Item_func_ltrim::val_str(), drizzled::Item_func_get_user_var::val_str(), drizzled::Item_func_numhybrid::val_str(), drizzled::Item_func_lpad::val_str(), drizzled::Item_func_monthname::val_str(), drizzled::Item_func_set_user_var::val_str(), drizzled::Item_func_rtrim::val_str(), drizzled::Item_copy_string::val_str(), drizzled::Item_func_conv_charset::val_str(), drizzled::Item_field::val_str(), drizzled::Item_ref::val_str(), drizzled::Item_char_typecast::val_str(), drizzled::Item_date_typecast::val_str(), drizzled::Item_datetime_typecast::val_str(), drizzled::Item_singlerow_subselect::val_str(), drizzled::Item_in_subselect::val_str(), drizzled::Item_sum_distinct::val_str(), drizzled::Item_func_if::val_str(), and drizzled::Item_func_group_concat::val_str().
char* drizzled::Item::orig_name [inherited] |
Original item name (if it was renamed)
Definition at line 144 of file item.h.
Referenced by drizzled::Item::rename().
String drizzled::Item::str_value [inherited] |
str_values's main purpose is to be used to cache the value in save_in_field
Definition at line 135 of file item.h.
Referenced by drizzled::Create_func_space::create(), drizzled::Item_hex_string::eq(), drizzled::Item_string::eq(), innodb_change_buffering_validate(), innodb_file_format_max_validate(), innodb_file_format_name_validate(), drizzled::Item_func_set_collation::print(), drizzled::Item_uint::print(), drizzled::Item_decimal::print(), drizzled::Item_int::print(), drizzled::Item_string::print(), drizzled::remove_constants(), drizzled::Item_num::safe_charset_converter(), drizzled::Item_static_float_func::safe_charset_converter(), drizzled::Item_func_numhybrid::val_decimal(), drizzled::Item_copy_string::val_decimal(), drizzled::Item_func_numhybrid::val_int(), drizzled::Item_copy_string::val_int(), drizzled::Item_string::val_int(), drizzled::Item_func_group_concat::val_int(), drizzled::Item_copy_string::val_real(), drizzled::Item_func_numhybrid::val_real(), drizzled::Item_string::val_real(), drizzled::Item_func_group_concat::val_real(), drizzled::Item_hex_string::val_str(), drizzled::Item_func_sysdate_local::val_str(), drizzled::Item_func_now::val_str(), drizzled::Item_func_numhybrid::val_str(), drizzled::Item_copy_string::val_str(), drizzled::Item_func_conv_charset::val_str(), drizzled::Item_field::val_str(), drizzled::Item_string::val_str(), and drizzled::Item_char_typecast::val_str().
bool drizzled::Item::with_subselect [inherited] |
If this item is a subselect or some of its arguments is or contains a subselect. Computed by fix_fields.
Definition at line 172 of file item.h.
Referenced by drizzled::remove_constants(), drizzled::Item_is_not_null_test::update_used_tables(), drizzled::Item_func_isnull::val_int(), and drizzled::Item_is_not_null_test::val_int().