MySQL  8.0.18
Source Code Documentation
PT_joined_table Class Referenceabstract

#include <parse_tree_nodes.h>

Inheritance diagram for PT_joined_table:
PT_table_reference Parse_tree_node_tmpl< Context > PT_cross_join PT_joined_table_on PT_joined_table_using

Public Member Functions

 PT_joined_table (PT_table_reference *tab1_node_arg, const POS &join_pos_arg, PT_joined_table_type type, PT_table_reference *tab2_node_arg)
 
PT_joined_tableadd_cross_join (PT_cross_join *cj) override
 Adds the cross join to this join operation. More...
 
void add_rhs (PT_table_reference *table)
 Adds the table reference as the right-hand side of this join. More...
 
bool contextualize (Parse_context *pc) override
 
 ~PT_joined_table () override=0
 This class is being inherited, it should thus be abstract. More...
 
- Public Member Functions inherited from Parse_tree_node_tmpl< Context >
virtual ~Parse_tree_node_tmpl ()
 
bool is_contextualized () const
 
virtual bool contextualize (Context *pc)
 Do all context-sensitive things and mark the node as contextualized. More...
 
virtual bool contextualize_ (Context *)
 
Intermediate version of the contextualize() function 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...
 

Protected Member Functions

bool contextualize_tabs (Parse_context *pc)
 
- Protected Member Functions inherited from Parse_tree_node_tmpl< Context >
 Parse_tree_node_tmpl ()
 

Protected Attributes

PT_table_referencetab1_node
 
POS join_pos
 
PT_joined_table_type m_type
 
PT_table_referencetab2_node
 
TABLE_LISTtr1
 
TABLE_LISTtr2
 

Private Types

typedef PT_table_reference super
 

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
 
- Public Attributes inherited from PT_table_reference
TABLE_LISTvalue
 

Member Typedef Documentation

◆ super

Constructor & Destructor Documentation

◆ PT_joined_table()

PT_joined_table::PT_joined_table ( PT_table_reference tab1_node_arg,
const POS join_pos_arg,
PT_joined_table_type  type,
PT_table_reference tab2_node_arg 
)
inline

◆ ~PT_joined_table()

PT_joined_table::~PT_joined_table ( )
inlineoverridepure virtual

This class is being inherited, it should thus be abstract.

Member Function Documentation

◆ add_cross_join()

PT_joined_table* PT_joined_table::add_cross_join ( PT_cross_join cj)
inlineoverridevirtual

Adds the cross join to this join operation.

The cross join is nested as the table reference on the left-hand side.

Reimplemented from PT_table_reference.

◆ add_rhs()

void PT_joined_table::add_rhs ( PT_table_reference table)
inline

Adds the table reference as the right-hand side of this join.

◆ contextualize()

bool PT_joined_table::contextualize ( Parse_context pc)
inlineoverride

◆ contextualize_tabs()

bool PT_joined_table::contextualize_tabs ( Parse_context pc)
inlineprotected

Member Data Documentation

◆ join_pos

POS PT_joined_table::join_pos
protected

◆ m_type

PT_joined_table_type PT_joined_table::m_type
protected

◆ tab1_node

PT_table_reference* PT_joined_table::tab1_node
protected

◆ tab2_node

PT_table_reference* PT_joined_table::tab2_node
protected

◆ tr1

TABLE_LIST* PT_joined_table::tr1
protected

◆ tr2

TABLE_LIST* PT_joined_table::tr2
protected

The documentation for this class was generated from the following file: