MySQL  8.0.18
Source Code Documentation
PT_key_level_hint Class Reference

Parse tree hint object for key level hints. More...

#include <parse_tree_hints.h>

Inheritance diagram for PT_key_level_hint:
PT_hint Parse_tree_node_tmpl< Context >

Public Member Functions

 PT_key_level_hint (Hint_param_table &table_name_arg, const Hint_param_index_list &key_list_arg, bool switch_state_arg, opt_hints_enum hint_type_arg)
 
bool contextualize (Parse_context *pc) override
 Function handles key level hint. More...
 
void append_args (const THD *thd, String *str) const override
 Append additional hint arguments. More...
 
- Public Member Functions inherited from PT_hint
 PT_hint (opt_hints_enum hint_type_arg, bool switch_state_arg)
 
opt_hints_enum type () const
 
bool switch_on () const
 
virtual void print_warn (THD *thd, uint err_code, const LEX_CSTRING *qb_name_arg, LEX_CSTRING *table_name_arg, LEX_CSTRING *key_name_arg, PT_hint *hint) const
 Print warning issuing in processing of the hint. 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...
 

Private Types

typedef PT_hint super
 

Private Attributes

Hint_param_table table_name
 
Hint_param_index_list key_list
 

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 ()
 

Detailed Description

Parse tree hint object for key level hints.

Member Typedef Documentation

◆ super

Constructor & Destructor Documentation

◆ PT_key_level_hint()

PT_key_level_hint::PT_key_level_hint ( Hint_param_table table_name_arg,
const Hint_param_index_list key_list_arg,
bool  switch_state_arg,
opt_hints_enum  hint_type_arg 
)
inline

Member Function Documentation

◆ append_args()

void PT_key_level_hint::append_args ( const THD thd,
String str 
) const
overridevirtual

Append additional hint arguments.

Parameters
thdPointer to THD object
strPointer to String object

Reimplemented from PT_hint.

◆ contextualize()

bool PT_key_level_hint::contextualize ( Parse_context pc)
override

Function handles key level hint.

It also creates key hint object (Opt_hints_key) if it does not exist.

Parameters
pcPointer to Parse_context object
Returns
true in case of error, false otherwise

Member Data Documentation

◆ key_list

Hint_param_index_list PT_key_level_hint::key_list
private

◆ table_name

Hint_param_table PT_key_level_hint::table_name
private

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