MySQL 8.0.39
Source Code Documentation
NonAggregatedFullTextSearchVisitor Class Reference

A visitor that calls the specified function on every non-aggregated full-text search function (Item_func_match) it encounters when it is used in a PREFIX+POSTFIX walk with WalkItem(). More...

#include <item_func.h>

Inheritance diagram for NonAggregatedFullTextSearchVisitor:
[legend]

Public Member Functions

 NonAggregatedFullTextSearchVisitor (std::function< bool(Item_func_match *)> func)
 
bool operator() (Item *item)
 

Private Attributes

std::function< bool(Item_func_match *)> m_func
 

Additional Inherited Members

- Private Member Functions inherited from Item_tree_walker
 Item_tree_walker ()
 
 ~Item_tree_walker ()
 
 Item_tree_walker (const Item_tree_walker &)=delete
 
Item_tree_walkeroperator= (const Item_tree_walker &)=delete
 
void stop_at (const Item *i)
 Stops walking children of this item. More...
 
bool is_stopped (const Item *i)
 

Detailed Description

A visitor that calls the specified function on every non-aggregated full-text search function (Item_func_match) it encounters when it is used in a PREFIX+POSTFIX walk with WalkItem().

It skips every item that is wrapped in an aggregate function, and also every item wrapped in a reference, as the items behind the reference are already handled elsewhere (in another query block or in another element of the SELECT list).

Constructor & Destructor Documentation

◆ NonAggregatedFullTextSearchVisitor()

NonAggregatedFullTextSearchVisitor::NonAggregatedFullTextSearchVisitor ( std::function< bool(Item_func_match *)>  func)
explicit

Member Function Documentation

◆ operator()()

bool NonAggregatedFullTextSearchVisitor::operator() ( Item item)

Member Data Documentation

◆ m_func

std::function<bool(Item_func_match *)> NonAggregatedFullTextSearchVisitor::m_func
private

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