![]() |
MySQL 9.5.0
Source Code Documentation
|
#include "sql/sp_instr_inline.h"#include "scope_guard.h"#include "sql/item.h"#include "sql/mem_root_array.h"#include "sql/parse_tree_nodes.h"#include "sql/sp.h"#include "sql/sp_instr.h"#include "sql/sp_pcontext.h"#include "sql/sql_base.h"#include "sql/sql_class.h"#include "sql/sql_derived.h"#include "sql/sql_lex.h"#include "sql/sql_optimizer.h"#include "sql/sql_parse.h"#include "sql/sql_resolver.h"#include "sql/window.h"Classes | |
| class | sp_inl::sp_inline_instr |
| Base class for instructions within stored programs (currently limited to stored functions) that are eligible for inlining. More... | |
| class | sp_inl::sp_inline_instr_set |
| The sp_inline_instr_set class provides the base implementation for inlining SET instructions (sp_instr_set) within stored functions. More... | |
| class | sp_inl::sp_inline_instr_stmt |
| The sp_inline_instr_stmt class provides the base implementation for inlining statement instructions (sp_instr_stmt) within stored functions. More... | |
| class | sp_inl::sp_inline_instr_freturn |
| The sp_inline_instr_freturn class provides the base implementation for inlining RETURN instructions (sp_instr_freturn) in stored functions. More... | |
Namespaces | |
| namespace | sp_inl |
Functions | |
| static Item * | sp_inl::find_variable_from_offset_inner (uint offset, std::unordered_map< uint, Item * > &map_var_offset_to_value, Item **args, uint arg_count) |
| static Item * | sp_inl::find_variable_from_offset (Item *var_item, std::unordered_map< uint, Item * > &map_var_offset_to_value, Item **args, uint arg_count) |
| void | sp_inl::report_stored_function_inlining_error (THD *thd, const char *func_name, std::string &err_reason) |
| Finalizes the error message for stored function inlining and reports the error. More... | |
| bool | sp_inl::needs_stored_function_inlining (THD *thd) |
| Main functions for stored function inlining. More... | |
| bool | sp_inl::can_inline_stored_function (THD *thd, sp_head *sp, uint sp_arg_count) |
| Checks if general stored function properties are eligible for inlining. More... | |
| Mem_root_array< sp_inline_instr * > * | sp_inl::prepare (THD *thd, sp_head *sp, std::unordered_set< sp_head * > &used_sp_functions) |
| Creates the list of prepared instructions. More... | |
| Item * | sp_inl::inline_stored_function (THD *thd, Mem_root_array< sp_inline_instr * > *prepared_instructions, Item **sp_args, uint sp_arg_count, sp_head *sp_head, Name_resolution_context *sp_name_resolution_ctx) |
| Inlines the given stored function instructions into a single Item. More... | |