![]() |
MySQL 9.4.0
Source Code Documentation
|
Class representing a table function. More...
#include <table_function.h>
Public Member Functions | |
| Table_function () | |
| virtual | ~Table_function ()=default |
| bool | create_result_table (THD *thd, ulonglong options, const char *table_alias) |
| Create, but not instantiate the result table. More... | |
| bool | write_row () |
| Write current record to the result table and handle overflow to disk. More... | |
| Field * | get_field (uint i) |
| Returns a field with given index. More... | |
| void | empty_table () |
| Delete all rows in the table. More... | |
| void | default_row () |
| Set the default row. More... | |
| virtual bool | init ()=0 |
| Initialize table function. More... | |
| virtual bool | init_args () |
| Initialize table function after the result table has been created. More... | |
| virtual bool | fill_result_table ()=0 |
| Execute the table function - fill the result table. More... | |
| virtual const char * | func_name () const =0 |
| Returns table function's name. More... | |
| virtual table_map | used_tables () const |
| Return table_map of tables used by the function. More... | |
| virtual bool | print (const THD *thd, String *str, enum_query_type query_type) const =0 |
| Print table function. More... | |
| void | cleanup () |
| Clean up table function after one execution. More... | |
| void | destroy () |
| Destroy table function object after all executions are complete. More... | |
| virtual bool | walk (Item_processor processor, enum_walk walk, uchar *arg)=0 |
| void | fix_after_pullout (Query_block *parent_query_block, Query_block *removed_query_block) |
| Fix after tables have been moved from one query_block level to the parent level, e.g by semijoin conversion. More... | |
Protected Attributes | |
| TABLE * | table |
| Table function's result table. More... | |
| bool | inited |
| Whether the table function was already initialized. More... | |
Private Member Functions | |
| virtual List< Create_field > * | get_field_list ()=0 |
| Get the list of fields to create the result table. More... | |
| virtual bool | do_init_args ()=0 |
| Initialize table function's arguments. More... | |
| virtual void | do_cleanup () |
| virtual void | do_fix_after_pullout (Query_block *parent_query_block, Query_block *removed_query_block)=0 |
Friends | |
| bool | Table_ref::setup_table_function (THD *thd) |
Class representing a table function.
|
inlineexplicit |
|
virtualdefault |
|
inline |
Clean up table function after one execution.
Create, but not instantiate the result table.
| thd | thread handler |
| options | options to create table |
| table_alias | table's alias |
|
inline |
Set the default row.
|
inline |
Destroy table function object after all executions are complete.
|
inlineprivatevirtual |
Reimplemented in Table_function_json.
|
privatepure virtual |
Implemented in Table_function_json.
|
privatepure virtual |
Initialize table function's arguments.
Implemented in Table_function_json.
| void Table_function::empty_table | ( | ) |
Delete all rows in the table.
|
pure virtual |
Execute the table function - fill the result table.
Implemented in Table_function_json.
| void Table_function::fix_after_pullout | ( | Query_block * | parent_query_block, |
| Query_block * | removed_query_block | ||
| ) |
Fix after tables have been moved from one query_block level to the parent level, e.g by semijoin conversion.
| parent_query_block | query_block that tables are moved to. |
| removed_query_block | query_block that tables are moved away from, child of parent_query_block. |
|
pure virtual |
Returns table function's name.
Implemented in Table_function_json.
|
inline |
Returns a field with given index.
| i | field's index |
|
privatepure virtual |
Get the list of fields to create the result table.
Implemented in Table_function_json.
|
pure virtual |
Initialize table function.
Implemented in Table_function_json.
|
virtual |
Initialize table function after the result table has been created.
|
pure virtual |
Print table function.
| thd | thread handler |
| str | string to print to |
| query_type | type of the query |
Implemented in Table_function_json.
|
inlinevirtual |
Return table_map of tables used by the function.
Reimplemented in Table_function_json.
|
pure virtual |
Implemented in Table_function_json.
| bool Table_function::write_row | ( | ) |
Write current record to the result table and handle overflow to disk.
|
friend |
|
protected |
Whether the table function was already initialized.
|
protected |
Table function's result table.