![]() |
MySQL 9.3.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.