MySQL 8.3.0
Source Code Documentation
PT_item_list Class Reference

Wrapper class for an Item list head, used to allocate Item lists in the parser in a context-independent way. More...

#include <parse_tree_helpers.h>

Inheritance diagram for PT_item_list:
[legend]

Public Member Functions

 PT_item_list (const POS &pos)
 
 PT_item_list (const POS &start_pos, const POS &end_pos)
 
bool do_contextualize (Parse_context *pc) override
 
bool is_empty () const
 
uint elements () const
 
bool push_back (Item *item)
 
bool push_front (Item *item)
 
Itempop_front ()
 
Itemoperator[] (uint index) const
 
- 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) final
 
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...
 

Public Attributes

mem_root_deque< Item * > value
 
- Public Attributes inherited from Parse_tree_node_tmpl< Context >
POS m_pos
 

Private Types

typedef Parse_tree_node 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
 
- Protected Member Functions inherited from Parse_tree_node_tmpl< Context >
 Parse_tree_node_tmpl ()=delete
 
 Parse_tree_node_tmpl (const POS &pos)
 
 Parse_tree_node_tmpl (const POS &start_pos, const POS &end_pos)
 
bool begin_parse_tree (Show_parse_tree *tree)
 
bool end_parse_tree (Show_parse_tree *tree)
 
virtual bool do_contextualize (Context *pc)
 Do all context-sensitive things and mark the node as contextualized. More...
 
virtual void add_json_info (Json_object *json_obj)
 Add all the node-specific json fields. More...
 

Detailed Description

Wrapper class for an Item list head, used to allocate Item lists in the parser in a context-independent way.

Member Typedef Documentation

◆ super

Constructor & Destructor Documentation

◆ PT_item_list() [1/2]

PT_item_list::PT_item_list ( const POS pos)
inlineexplicit

◆ PT_item_list() [2/2]

PT_item_list::PT_item_list ( const POS start_pos,
const POS end_pos 
)
inlineexplicit

Member Function Documentation

◆ do_contextualize()

bool PT_item_list::do_contextualize ( Parse_context pc)
inlineoverride

◆ elements()

uint PT_item_list::elements ( ) const
inline

◆ is_empty()

bool PT_item_list::is_empty ( ) const
inline

◆ operator[]()

Item * PT_item_list::operator[] ( uint  index) const
inline

◆ pop_front()

Item * PT_item_list::pop_front ( )
inline

◆ push_back()

bool PT_item_list::push_back ( Item item)
inline

◆ push_front()

bool PT_item_list::push_front ( Item item)
inline

Member Data Documentation

◆ value

mem_root_deque<Item *> PT_item_list::value

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