MySQL  8.0.27
Source Code Documentation
Service_visitor Class Reference

This class implements the parse tree visiting service. More...

Inheritance diagram for Service_visitor:
Select_lex_visitor

Public Member Functions

 Service_visitor (parse_node_visit_function processor, uchar *arg)
 
- Public Member Functions inherited from Select_lex_visitor
virtual bool visits_in_prefix_order () const
 
bool visit (Query_expression *unit)
 
bool visit (Query_block *query_block)
 
bool visit (Item *item)
 Called for all nodes of all expression trees (i.e. Item trees). More...
 
virtual ~Select_lex_visitor ()=0
 Gcc demands an implementation for a virtual destructor. More...
 

Protected Member Functions

bool visit_item (Item *item) override
 
- Protected Member Functions inherited from Select_lex_visitor
virtual bool visit_union (Query_expression *)
 
virtual bool visit_query_block (Query_block *)
 

Private Attributes

parse_node_visit_function m_processor
 
ucharm_arg
 

Detailed Description

This class implements the parse tree visiting service.

See also
mysql_parser_visit_tree

Constructor & Destructor Documentation

◆ Service_visitor()

Service_visitor::Service_visitor ( parse_node_visit_function  processor,
uchar arg 
)
inline
Parameters
processorThis function will be called for each literal (Item) in the parse tree, along with the Item's type and arg. If the function returns non-zero, parse tree traversal will terminate.
argWill be passed to processor on every call.

Member Function Documentation

◆ visit_item()

bool Service_visitor::visit_item ( Item item)
inlineoverrideprotectedvirtual

Reimplemented from Select_lex_visitor.

Member Data Documentation

◆ m_arg

uchar* Service_visitor::m_arg
private

◆ m_processor

parse_node_visit_function Service_visitor::m_processor
private

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