![]() |
MySQL 8.0.43
Source Code Documentation
|
Represents the WITH clause: WITH [...], [...] SELECT ..., ^^^^^^^^^^^^^^^^^. More...
#include <parse_tree_nodes.h>
Public Member Functions | |
| PT_with_clause (const PT_with_list *l, bool r) | |
| bool | contextualize (Parse_context *pc) override |
| bool | lookup (Table_ref *tl, PT_common_table_expr **found) |
| Looks up a table reference into the list of CTEs. More... | |
| const Table_ref * | enter_parsing_definition (Table_ref *tl) |
| Call this to record in the WITH clause that we are contextualizing the CTE definition inserted in table reference 'tl'. More... | |
| void | leave_parsing_definition (const Table_ref *old) |
| void | print (const THD *thd, String *str, enum_query_type query_type) |
Public Member Functions inherited from Parse_tree_node_tmpl< Context > | |
| virtual | ~Parse_tree_node_tmpl ()=default |
| bool | is_contextualized () const |
| virtual bool | contextualize (Context *pc) |
| Do all context-sensitive things and mark the node as contextualized. More... | |
| 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... | |
Private Types | |
| typedef Parse_tree_node | super |
Private Attributes | |
| const PT_with_list *const | m_list |
| All CTEs of this clause. More... | |
| const bool | m_recursive |
| True if the user has specified the RECURSIVE keyword. More... | |
| const Table_ref * | m_most_inner_in_parsing |
| The innermost CTE reference which we're parsing at the moment. More... | |
Friends | |
| bool | Query_expression::clear_correlated_query_blocks () |
Additional Inherited Members | |
Public Types inherited from Parse_tree_node_tmpl< Context > | |
| typedef Context | context_t |
Static Public Member Functions inherited from Parse_tree_node_tmpl< Context > | |
| static void * | operator new (size_t size, MEM_ROOT *mem_root, const std::nothrow_t &arg=std::nothrow) noexcept |
| static void | operator delete (void *ptr, size_t size) |
| static void | operator delete (void *, MEM_ROOT *, const std::nothrow_t &) noexcept |
Protected Member Functions inherited from Parse_tree_node_tmpl< Context > | |
| Parse_tree_node_tmpl () | |
Represents the WITH clause: WITH [...], [...] SELECT ..., ^^^^^^^^^^^^^^^^^.
|
private |
|
inline |
|
override |
Call this to record in the WITH clause that we are contextualizing the CTE definition inserted in table reference 'tl'.
|
inline |
| void PT_with_clause::print | ( | const THD * | thd, |
| String * | str, | ||
| enum_query_type | query_type | ||
| ) |
|
friend |
|
private |
All CTEs of this clause.
|
private |
The innermost CTE reference which we're parsing at the moment.
Used to detect forward references, loops and recursiveness.
|
private |
True if the user has specified the RECURSIVE keyword.