|
Query_expression * | query_expr () const |
|
enum_engine_type | engine_type () const |
|
const TABLE * | get_table () const |
|
const Index_lookup & | index_lookup () const |
|
join_type | get_join_type () const |
|
void | create_iterators (THD *thd) |
|
virtual AccessPath * | root_access_path () const |
|
void | accumulate_used_tables (table_map add_tables) |
| Accumulate used tables. More...
|
|
bool | contains_outer_references () const |
| Return whether this subquery references any tables in the directly containing query block, i.e. More...
|
|
virtual Subquery_type | subquery_type () const =0 |
|
virtual bool | is_single_column_scalar_subquery () const |
|
void | cleanup () override |
| Called for every Item after use (preparation and execution). More...
|
|
virtual void | reset () |
| Reset state after a single execution of a subquery, useful when a dependent subquery must be evaluated multiple times for varying values of the outer references. More...
|
|
bool | is_value_assigned () const |
|
void | set_value_assigned () |
|
void | reset_value_assigned () |
|
enum Type | type () const override |
|
bool | is_null () override |
| The method allows to determine nullness of a complex expression without fully evaluating it, instead of calling val*() then checking null_value. More...
|
|
bool | fix_fields (THD *thd, Item **ref) override |
|
void | fix_after_pullout (Query_block *parent_query_block, Query_block *removed_query_block) override |
|
virtual bool | exec (THD *thd) |
|
table_map | used_tables () const override |
|
table_map | not_null_tables () const override |
| 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). More...
|
|
table_map | subquery_used_tables () const |
|
Item * | get_tmp_table_item (THD *thd) override |
| If an Item is materialized in a temporary table, a different Item may have to be used in the part of the query that runs after the materialization. More...
|
|
void | update_used_tables () override |
| Updates used tables, not null tables information and accumulates properties up the item tree, cf. More...
|
|
void | print (const THD *thd, String *str, enum_query_type query_type) const override |
| This method is used for to: More...
|
|
void | set_indexsubquery_engine (subselect_indexsubquery_engine *eng) |
|
bool | is_evaluated () const |
|
bool | is_uncacheable () const |
|
virtual void | reset_has_values () |
| Used by max/min subquery to initialize value presence registration mechanism. More...
|
|
enum_parsing_context | place () |
|
bool | walk (Item_processor processor, enum_walk walk, uchar *arg) override |
| Traverses a tree of Items in prefix and/or postfix order. More...
|
|
bool | explain_subquery_checker (uchar **arg) override |
| Register subquery to the table where it is used within a condition. More...
|
|
bool | inform_item_in_cond_of_tab (uchar *arg) override |
| Tells an Item that it is in the condition of a JOIN_TAB of a query block. More...
|
|
bool | clean_up_after_removal (uchar *arg) override |
| Clean up after removing the subquery from the item tree. More...
|
|
bool | check_function_as_value_generator (uchar *args) override |
| Check if this item is allowed for a virtual column or inside a default expression. More...
|
|
bool | collect_subqueries (uchar *) override |
|
Item * | replace_item_field (uchar *arg) override |
| Transform processor. More...
|
|
Item * | replace_item_view_ref (uchar *arg) override |
| Transform processor. More...
|
|
| Item_result_field ()=default |
|
| Item_result_field (const POS &pos) |
|
| Item_result_field (THD *thd, const Item_result_field *item) |
|
Field * | get_tmp_table_field () override |
| If this Item is being materialized into a temporary table, returns the field that is being materialized into. More...
|
|
Field * | tmp_table_field (TABLE *) override |
|
virtual bool | resolve_type (THD *thd)=0 |
| Resolve type-related information for this item, such as result field type, maximum size, precision, signedness, character set and collation. More...
|
|
void | set_result_field (Field *field) override |
|
bool | is_result_field () const override |
|
Field * | get_result_field () const override |
|
bool | mark_field_in_map (uchar *arg) override |
| Mark underlying field in read or write map of a table. More...
|
|
longlong | llrint_with_overflow_check (double realval) |
|
void | raise_numeric_overflow (const char *type_name) |
|
double | raise_float_overflow () |
|
longlong | raise_integer_overflow () |
|
int | raise_decimal_overflow () |
|
| Item (const Item &)=delete |
|
void | operator= (Item &)=delete |
|
| Item () |
| Item constructor for general use. More...
|
|
| Item (THD *thd, const Item *item) |
| Constructor used by Item_field, Item_ref & aggregate functions. More...
|
|
| Item (const POS &) |
| Parse-time context-independent constructor. More...
|
|
| ~Item () override=default |
|
virtual bool | itemize (Parse_context *pc, Item **res) final |
| The same as contextualize() but with additional parameter. More...
|
|
void | rename (char *new_name) |
| rename item (used for views, cleanup() return original name). More...
|
|
void | init_make_field (Send_field *tmp_field, enum enum_field_types type) |
|
virtual void | notify_removal () |
| Called when an item has been removed, can be used to notify external objects about the removal, e.g subquery predicates that are part of the sj_candidates container. More...
|
|
virtual void | make_field (Send_field *field) |
|
virtual Field * | make_string_field (TABLE *table) const |
| Create a field to hold a string value from an item. More...
|
|
void | quick_fix_field () |
|
virtual void | set_can_use_prefix_key () |
|
virtual bool | propagate_type (THD *thd, const Type_properties &type) |
| Propagate data type specifications into parameters and user variables. More...
|
|
bool | propagate_type (THD *thd, enum_field_types def=MYSQL_TYPE_VARCHAR, bool pin=false, bool inherit=false) |
| Wrapper for easier calling of propagate_type(const Type_properties &). More...
|
|
virtual void | mark_json_as_scalar () |
| For Items with data type JSON, mark that a string argument is treated as a scalar JSON value. More...
|
|
virtual std::optional< ContainedSubquery > | get_contained_subquery (const Query_block *outer_query_block) |
| If this item represents a IN/ALL/ANY/comparison_operator subquery, return that (along with data on how it will be executed). More...
|
|
type_conversion_status | save_in_field_no_warnings (Field *field, bool no_conversions) |
| Save the item into a field but do not emit any warnings. More...
|
|
type_conversion_status | save_in_field (Field *field, bool no_conversions) |
| Save a temporal value in packed longlong format into a Field. More...
|
|
void | save_in_field_no_error_check (Field *field, bool no_conversions) |
| A slightly faster value of save_in_field() that returns no error value (you will need to check thd->is_error() yourself), and does not support saving into hidden fields for functional indexes. More...
|
|
virtual void | save_org_in_field (Field *field) |
|
virtual bool | send (Protocol *protocol, String *str) |
| This is only called from items that is not of type item_field. More...
|
|
bool | evaluate (THD *thd, String *str) |
| Evaluate scalar item, possibly using the supplied buffer. More...
|
|
virtual bool | eq (const Item *) const |
| Compare this item with another item for equality. More...
|
|
const Item * | unwrap_for_eq () const |
| Unwrap an Item argument so that Item::eq() can see the "real" item, and not just the wrapper. More...
|
|
virtual Item_result | result_type () const |
|
virtual Item_result | numeric_context_result_type () const |
| Result type when an item appear in a numeric context. More...
|
|
Item_result | temporal_with_date_as_number_result_type () const |
| Similar to result_type() but makes DATE, DATETIME, TIMESTAMP pretend to be numbers rather than strings. More...
|
|
virtual void | set_data_type_inherited () |
| Set data type for item as inherited. More...
|
|
virtual void | pin_data_type () |
| Pin the data type for the item. More...
|
|
enum_field_types | data_type () const |
| Retrieve the derived data type of the Item. More...
|
|
virtual enum_field_types | actual_data_type () const |
| Retrieve actual data type for an item. More...
|
|
virtual enum_field_types | default_data_type () const |
| Get the default data (output) type for the specific item. More...
|
|
void | set_data_type (enum_field_types data_type) |
| Set the data type of the current Item. More...
|
|
void | set_data_type_null () |
|
void | set_data_type_bool () |
|
void | set_data_type_int (enum_field_types type, bool unsigned_prop, uint32 max_width) |
| Set the data type of the Item to be a specific integer type. More...
|
|
void | set_data_type_longlong () |
| Set the data type of the Item to be longlong. More...
|
|
void | set_data_type_decimal (uint8 precision, uint8 scale) |
| Set the data type of the Item to be decimal. More...
|
|
void | set_data_type_double () |
| Set the data type of the Item to be double precision floating point. More...
|
|
void | set_data_type_float () |
| Set the data type of the Item to be single precision floating point. More...
|
|
void | set_data_type_string (uint32 max_l) |
| Set the Item to be variable length string. More...
|
|
void | set_data_type_string (ulonglong max_char_length_arg) |
| Set the Item to be variable length string. More...
|
|
void | set_data_type_string (uint32 max_l, const CHARSET_INFO *cs) |
| Set the Item to be variable length string. More...
|
|
void | set_data_type_string (uint32 max_l, const DTCollation &coll) |
| Set the Item to be variable length string. More...
|
|
void | set_data_type_char (uint32 max_l) |
| Set the Item to be fixed length string. More...
|
|
void | set_data_type_char (uint32 max_l, const CHARSET_INFO *cs) |
| Set the Item to be fixed length string. More...
|
|
void | set_data_type_blob (enum_field_types type, uint32 max_l) |
| Set the Item to be of BLOB type. More...
|
|
void | set_data_type_date () |
| Set all type properties for Item of DATE type. More...
|
|
void | set_data_type_time (uint8 fsp) |
| Set all type properties for Item of TIME type. More...
|
|
void | set_data_type_datetime (uint8 fsp) |
| Set all properties for Item of DATETIME type. More...
|
|
void | set_data_type_timestamp (uint8 fsp) |
| Set all properties for Item of TIMESTAMP type. More...
|
|
void | set_data_type_vector (uint32 max_l) |
| Set the data type of the Item to be VECTOR. More...
|
|
void | set_data_type_geometry () |
| Set the data type of the Item to be GEOMETRY. More...
|
|
void | set_data_type_json () |
| Set the data type of the Item to be JSON. More...
|
|
void | set_data_type_year () |
| Set the data type of the Item to be YEAR. More...
|
|
void | set_data_type_bit (uint32 max_bits) |
| Set the data type of the Item to be bit. More...
|
|
void | set_data_type_from_item (const Item *item) |
| Set data type properties of the item from the properties of another item. More...
|
|
virtual TYPELIB * | get_typelib () const |
| Get the typelib information for an item of type set or enum. More...
|
|
virtual Item_result | cast_to_int_type () const |
|
bool | aggregate_type (const char *name, Item **items, uint count) |
| Aggregates data types from array of items into current item. More...
|
|
virtual enum_monotonicity_info | get_monotonicity_info () const |
|
virtual longlong | val_int_endpoint (bool left_endp, bool *incl_endp) |
|
virtual double | val_real ()=0 |
|
virtual longlong | val_int ()=0 |
|
virtual longlong | val_date_temporal () |
| Return date value of item in packed longlong format. More...
|
|
virtual longlong | val_time_temporal () |
| Return time value of item in packed longlong format. More...
|
|
longlong | val_temporal_by_field_type () |
| Return date or time value of item in packed longlong format, depending on item field type. More...
|
|
longlong | int_sort_key () |
| Produces a key suitable for filesort. More...
|
|
longlong | val_temporal_with_round (enum_field_types type, uint8 dec) |
| Get date or time value in packed longlong format. More...
|
|
ulonglong | val_uint () |
|
virtual String * | val_str (String *str)=0 |
|
virtual String * | val_str_ascii (String *str) |
|
virtual my_decimal * | val_decimal (my_decimal *decimal_buffer)=0 |
|
virtual bool | val_bool () |
|
virtual bool | val_json (Json_wrapper *result) |
| Get a JSON value from an Item. More...
|
|
virtual float | get_filtering_effect (THD *thd, table_map filter_for_table, table_map read_tables, const MY_BITMAP *fields_to_ignore, double rows_in_table) |
| Calculate the filter contribution that is relevant for table 'filter_for_table' for this item. More...
|
|
bool | error_json () |
| Get the value to return from val_json() in case of errors. More...
|
|
bool | get_date_from_non_temporal (MYSQL_TIME *ltime, my_time_flags_t fuzzydate) |
| Convert a non-temporal type to date. More...
|
|
bool | get_time_from_non_temporal (MYSQL_TIME *ltime) |
| Convert a non-temporal type to time. More...
|
|
my_decimal * | error_decimal (my_decimal *decimal_value) |
| Get the value to return from val_decimal() in case of errors. More...
|
|
String * | error_str () |
| Get the value to return from val_str() in case of errors. More...
|
|
type_conversion_status | save_time_in_field (Field *field) |
|
type_conversion_status | save_date_in_field (Field *field) |
|
type_conversion_status | save_str_value_in_field (Field *field, String *result) |
|
virtual const char * | full_name () const |
|
virtual bool | basic_const_item () const |
| Returns true if this is a simple constant item like an integer, not a constant expression. More...
|
|
bool | may_eval_const_item (const THD *thd) const |
|
virtual Item * | clone_item () const |
|
virtual cond_result | eq_cmp_result () const |
|
uint | float_length (uint decimals_par) const |
|
virtual uint | decimal_precision () const |
|
int | decimal_int_part () const |
|
virtual uint | time_precision () |
| TIME precision of the item: 0..6. More...
|
|
virtual uint | datetime_precision () |
| DATETIME precision of the item: 0..6. More...
|
|
bool | const_item () const |
| Returns true if item is constant, regardless of query evaluation state. More...
|
|
bool | const_for_execution () const |
| Returns true if item is constant during one query execution. More...
|
|
bool | may_evaluate_const (const THD *thd) const |
| Return true if this is a const item that may be evaluated in the current phase of statement processing. More...
|
|
bool | is_non_deterministic () const |
|
bool | is_outer_reference () const |
|
void | print_item_w_name (const THD *thd, String *, enum_query_type query_type) const |
|
void | print_for_order (const THD *thd, String *str, enum_query_type query_type, const char *used_alias) const |
| Prints the item when it's part of ORDER BY and GROUP BY. More...
|
|
virtual bool | split_sum_func (THD *, Ref_item_array, mem_root_deque< Item * > *) |
|
bool | split_sum_func2 (THD *thd, Ref_item_array ref_item_array, mem_root_deque< Item * > *fields, Item **ref, bool skip_registered) |
|
virtual bool | get_date (MYSQL_TIME *ltime, my_time_flags_t fuzzydate)=0 |
|
virtual bool | get_time (MYSQL_TIME *ltime)=0 |
|
virtual bool | get_timeval (my_timeval *tm, int *warnings) |
| Get timestamp in "struct timeval" format. More...
|
|
bool | update_null_value () |
| Make sure the null_value member has a correct value. More...
|
|
virtual void | apply_is_true () |
| Apply the IS TRUE truth property, meaning that an UNKNOWN result and a FALSE result are treated the same. More...
|
|
virtual bool | is_bool_func () const |
|
virtual void | no_rows_in_result () |
|
virtual Item * | copy_or_same (THD *) |
|
virtual Item * | copy_andor_structure (THD *) |
|
virtual Item * | real_item () |
|
virtual const Item * | real_item () const |
|
virtual const CHARSET_INFO * | compare_collation () const |
|
virtual const CHARSET_INFO * | charset_for_protocol () |
|
template<class T > |
auto | walk_helper_thunk (uchar *arg) |
|
template<class T > |
auto | analyze_helper_thunk (uchar **arg) |
| See CompileItem. More...
|
|
virtual Item * | transform (Item_transformer transformer, uchar *arg) |
| Perform a generic transformation of the Item tree, by adding zero or more additional Item objects to it. More...
|
|
virtual Item * | compile (Item_analyzer analyzer, uchar **arg_p, Item_transformer transformer, uchar *arg_t) |
| Perform a generic "compilation" of the Item tree, ie transform the Item tree by adding zero or more Item objects to it. More...
|
|
virtual void | traverse_cond (Cond_traverser traverser, void *arg, traverse_order) |
|
virtual bool | intro_version (uchar *) |
|
bool | cleanup_processor (uchar *) |
| cleanup() item if it is resolved ('fixed'). More...
|
|
virtual bool | collect_item_field_processor (uchar *) |
|
virtual bool | collect_item_field_or_ref_processor (uchar *) |
|
virtual bool | collect_outer_field_processor (uchar *) |
|
virtual bool | collect_item_field_or_view_ref_processor (uchar *) |
| Collects fields and view references that have the qualifying table in the specified query block. More...
|
|
virtual bool | add_field_to_set_processor (uchar *) |
| Item::walk function. More...
|
|
virtual bool | visitor_processor (uchar *arg) |
| A processor to handle the select lex visitor framework. More...
|
|
virtual bool | add_field_to_cond_set_processor (uchar *) |
| Item::walk function. More...
|
|
virtual bool | remove_column_from_bitmap (uchar *arg) |
| Visitor interface for removing all column expressions (Item_field) in this expression tree from a bitmap. More...
|
|
virtual bool | find_item_in_field_list_processor (uchar *) |
|
virtual bool | change_context_processor (uchar *) |
|
virtual bool | find_item_processor (uchar *arg) |
|
virtual bool | is_non_const_over_literals (uchar *) |
|
virtual bool | find_field_processor (uchar *) |
| Is this an Item_field which references the given Field argument? More...
|
|
virtual bool | cast_incompatible_args (uchar *) |
| Wrap incompatible arguments in CAST nodes to the expected data types. More...
|
|
virtual bool | reset_wf_state (uchar *arg) |
| Reset execution state for such window function types as determined by arg. More...
|
|
virtual bool | used_tables_for_level (uchar *arg) |
| Return used table information for the specified query block (level). More...
|
|
virtual bool | check_column_privileges (uchar *thd) |
| Check privileges. More...
|
|
virtual void | bind_fields () |
| Bind objects from the current execution context to field objects in item trees. More...
|
|
virtual bool | aggregate_check_distinct (uchar *) |
|
virtual bool | aggregate_check_group (uchar *) |
|
virtual bool | is_strong_side_column_not_in_fd (uchar *) |
|
virtual bool | is_column_not_in_fd (uchar *) |
|
virtual Bool3 | local_column (const Query_block *) const |
|
virtual bool | collect_scalar_subqueries (uchar *) |
|
virtual bool | collect_grouped_aggregates (uchar *) |
|
virtual bool | update_depended_from (uchar *) |
|
virtual bool | has_aggregate_ref_in_group_by (uchar *) |
| Check if an aggregate is referenced from within the GROUP BY clause of the query block in which it is aggregated. More...
|
|
bool | visit_all_analyzer (uchar **) |
|
virtual bool | cache_const_expr_analyzer (uchar **cache_item) |
| Check if an item is a constant one and can be cached. More...
|
|
Item * | cache_const_expr_transformer (uchar *item) |
| Cache item if needed. More...
|
|
virtual bool | equality_substitution_analyzer (uchar **) |
|
virtual Item * | equality_substitution_transformer (uchar *) |
|
virtual bool | check_partition_func_processor (uchar *) |
| Check if a partition function is allowed. More...
|
|
virtual bool | subst_argument_checker (uchar **arg) |
|
virtual Item * | explain_subquery_propagator (uchar *) |
|
virtual Item * | equal_fields_propagator (uchar *) |
|
virtual bool | disable_constant_propagation (uchar *) |
|
virtual Item * | replace_equal_field (uchar *) |
|
virtual bool | replace_equal_field_checker (uchar **) |
|
virtual bool | check_valid_arguments_processor (uchar *) |
|
virtual bool | check_gcol_depend_default_processor (uchar *args) |
| Check if a generated expression depends on DEFAULT function with specific column name as argument. More...
|
|
virtual bool | is_valid_for_pushdown (uchar *arg) |
| Check if all the columns present in this expression are from the derived table. More...
|
|
virtual bool | check_column_in_window_functions (uchar *arg) |
| Check if all the columns present in this expression are present in PARTITION clause of window functions of the derived table. More...
|
|
virtual bool | check_column_in_group_by (uchar *arg) |
| Check if all the columns present in this expression are present in GROUP BY clause of the derived table. More...
|
|
virtual Item * | replace_with_derived_expr (uchar *arg) |
| Assuming this expression is part of a condition that would be pushed to the WHERE clause of a materialized derived table, replace, in this expression, each derived table's column with a clone of the expression lying under it in the derived table's definition. More...
|
|
virtual Item * | replace_with_derived_expr_ref (uchar *arg) |
| Assuming this expression is part of a condition that would be pushed to the HAVING clause of a materialized derived table, replace, in this expression, each derived table's column with a reference to the expression lying under it in the derived table's definition. More...
|
|
virtual Item * | replace_view_refs_with_clone (uchar *arg) |
| Assuming this expression is part of a condition that would be pushed to a materialized derived table, replace, in this expression, each view reference with a clone of the expression in merged derived table's definition. More...
|
|
virtual Item * | this_item () |
|
virtual const Item * | this_item () const |
|
virtual Item ** | this_item_addr (THD *, Item **addr_arg) |
|
virtual uint | cols () const |
|
virtual Item * | element_index (uint) |
|
virtual Item ** | addr (uint) |
|
virtual bool | check_cols (uint c) |
|
virtual bool | null_inside () |
|
virtual void | bring_value () |
|
Field * | tmp_table_field_from_field_type (TABLE *table, bool fixed_length) const |
| Create a field based on field_type of argument. More...
|
|
virtual Item_field * | field_for_view_update () |
|
virtual Item * | truth_transformer (THD *thd, Bool_test test) |
| Informs an item that it is wrapped in a truth test, in case it wants to transforms itself to implement this test by itself. More...
|
|
virtual Item * | update_value_transformer (uchar *) |
|
virtual Item * | replace_scalar_subquery (uchar *) |
| When walking the item tree seeing an Item_singlerow_subselect matching a target, replace it with a substitute field used when transforming scalar subqueries into derived tables. More...
|
|
virtual Item * | replace_func_call (uchar *) |
|
virtual Item * | replace_aggregate (uchar *) |
|
virtual Item * | replace_outer_ref (uchar *) |
|
virtual bool | update_aggr_refs (uchar *) |
| A walker processor overridden by Item_aggregate_ref, q.v. More...
|
|
Item * | convert_charset (THD *thd, const CHARSET_INFO *tocs, bool ignore_errors=false) |
| Convert constant string in this object into the specified character set. More...
|
|
void | delete_self () |
| Delete this item. More...
|
|
virtual bool | is_splocal () const |
|
virtual Settable_routine_parameter * | get_settable_routine_parameter () |
|
bool | is_temporal_with_date () const |
|
bool | is_temporal_with_date_and_time () const |
|
bool | is_temporal_with_time () const |
|
bool | is_temporal () const |
|
bool | has_compatible_context (Item *item) const |
| Check whether this and the given item has compatible comparison context. More...
|
|
virtual Field::geometry_type | get_geometry_type () const |
|
String * | check_well_formed_result (String *str, bool send_error, bool truncate) |
| Verifies that the input string is well-formed according to its character set. More...
|
|
bool | eq_by_collation (Item *item, const CHARSET_INFO *cs) |
| Compare two items using a given collation. More...
|
|
CostOfItem | cost () const |
|
uint32 | max_char_length () const |
|
uint32 | max_char_length (const CHARSET_INFO *cs) const |
|
void | fix_char_length (uint32 max_char_length_arg) |
|
virtual bool | is_outer_field () const |
|
bool | is_blob_field () const |
| Check if an item either is a blob field, or will be represented as a BLOB field if a field is created based on this item. More...
|
|
uint | reference_count () const |
|
void | increment_ref_count () |
| Increment reference count. More...
|
|
uint | decrement_ref_count () |
| Decrement reference count. More...
|
|
bool | has_subquery () const |
|
bool | has_stored_program () const |
|
bool | has_aggregation () const |
|
void | set_aggregation () |
| Set the "has aggregation" property. More...
|
|
void | reset_aggregation () |
| Reset the "has aggregation" property. More...
|
|
bool | has_wf () const |
|
void | set_wf () |
| Set the "has window function" property. More...
|
|
bool | has_grouping_set_dep () const |
|
void | set_group_by_modifier () |
| Set the property: this item (tree) contains a reference to a GROUP BY modifier (such as ROLLUP) More...
|
|
bool | has_grouping_func () const |
|
void | set_grouping_func () |
| Set the property: this item is a call to GROUPING. More...
|
|
virtual bool | created_by_in2exists () const |
| Whether this Item was created by the IN->EXISTS subquery transformation. More...
|
|
void | mark_subqueries_optimized_away () |
|
virtual bool | gc_subst_analyzer (uchar **) |
| Analyzer function for GC substitution. More...
|
|
virtual Item * | gc_subst_transformer (uchar *) |
| Transformer function for GC substitution. More...
|
|
virtual bool | replace_field_processor (uchar *) |
| A processor that replaces any Fields with a Create_field_wrapper. More...
|
|
bool | can_be_substituted_for_gc (bool array=false) const |
| Check if this item is of a type that is eligible for GC substitution. More...
|
|
void | aggregate_float_properties (enum_field_types type, Item **items, uint nitems) |
| Set max_length and decimals of function if function is floating point and result length/precision depends on argument ones. More...
|
|
void | aggregate_decimal_properties (Item **items, uint nitems) |
| Set data type, precision and scale of item of type decimal from list of items. More...
|
|
void | aggregate_temporal_properties (enum_field_types type, Item **items, uint nitems) |
| Set data type and fractional seconds precision for temporal functions. More...
|
|
bool | aggregate_string_properties (enum_field_types type, const char *name, Item **items, uint nitems) |
| Aggregate string properties (character set, collation and maximum length) for string function. More...
|
|
void | aggregate_bit_properties (Item **items, uint nitems) |
| Set data type and properties of a BIT column. More...
|
|
virtual bool | repoint_const_outer_ref (uchar *arg) |
| This function applies only to Item_field objects referred to by an Item_ref object that has been marked as a const_item. More...
|
|
virtual bool | strip_db_table_name_processor (uchar *) |
|
virtual void | compute_cost (CostOfItem *root_cost) const |
| Compute the cost of evaluating this Item. More...
|
|
bool | is_abandoned () const |
|
bool | is_nullable () const |
|
void | set_nullable (bool nullable) |
|
virtual bool | supports_partial_update (const Field_json *field) const |
| Check if this expression can be used for partial update of a given JSON column. More...
|
|
virtual bool | returns_array () const |
| Whether the item returns array of its data type. More...
|
|
virtual void | allow_array_cast () |
| A helper function to ensure proper usage of CAST(. More...
|
|
virtual | ~Parse_tree_node_tmpl ()=default |
|
bool | is_contextualized () const |
|
virtual bool | contextualize (Context *pc) final |
|
void | error (Context *pc, const POS &pos) const |
| syntax_error() function replacement for deferred reporting of syntax errors More...
|
|
void | error (Context *pc, const POS &pos, const char *msg) const |
| syntax_error() function replacement for deferred reporting of syntax errors More...
|
|
void | errorf (Context *pc, const POS &pos, const char *format,...) const |
| syntax_error() function replacement for deferred reporting of syntax errors More...
|
|