MySQL 8.0.39
Source Code Documentation
sym_node_t Struct Reference

Symbol table node. More...

#include <pars0sym.h>

Public Attributes

que_common_t common
 node type: QUE_NODE_SYMBOL More...
 
sym_node_tindirection
 pointer to another symbol table node which contains the value for this node, NULL otherwise More...
 
sym_node_talias
 pointer to another symbol table node for which this node is an alias, NULL otherwise More...
 
 col_var_list
 list of table columns or a list of input variables for an explicit cursor More...
 
bool copy_val
 true if a column and its value should be copied to dynamic memory when fetched More...
 
ulint field_nos [2]
 if a column, in the position SYM_CLUST_FIELD_NO is the field number in the clustered index; in the position SYM_SEC_FIELD_NO the field number in the non-clustered index to use first; if not found from the index, then ULINT_UNDEFINED More...
 
bool resolved
 true if the meaning of a variable or a column has been resolved; for literals this is always true More...
 
enum sym_tab_entry token_type
 type of the parsed token More...
 
const char * name
 name of an id More...
 
ulint name_len
 id name length More...
 
dict_table_ttable
 table definition if a table id or a column id More...
 
ulint col_no
 column number if a column More...
 
sel_buf_tprefetch_buf
 NULL, or a buffer for cached column values for prefetched rows. More...
 
sel_node_tcursor_def
 cursor definition select node if a named cursor More...
 
ulint param_type
 PARS_INPUT, PARS_OUTPUT, or PARS_NOT_PARAM if not a procedure parameter. More...
 
sym_tab_tsym_table
 back pointer to the symbol table More...
 
 sym_list
 list of symbol nodes More...
 
sym_node_tlike_node
 
MDL_ticketmdl
 

Detailed Description

Symbol table node.

Member Data Documentation

◆ alias

sym_node_t* sym_node_t::alias

pointer to another symbol table node for which this node is an alias, NULL otherwise

◆ col_no

ulint sym_node_t::col_no

column number if a column

◆ col_var_list

sym_node_t::col_var_list

list of table columns or a list of input variables for an explicit cursor

◆ common

que_common_t sym_node_t::common

node type: QUE_NODE_SYMBOL

◆ copy_val

bool sym_node_t::copy_val

true if a column and its value should be copied to dynamic memory when fetched

◆ cursor_def

sel_node_t* sym_node_t::cursor_def

cursor definition select node if a named cursor

◆ field_nos

ulint sym_node_t::field_nos[2]

if a column, in the position SYM_CLUST_FIELD_NO is the field number in the clustered index; in the position SYM_SEC_FIELD_NO the field number in the non-clustered index to use first; if not found from the index, then ULINT_UNDEFINED

◆ indirection

sym_node_t* sym_node_t::indirection

pointer to another symbol table node which contains the value for this node, NULL otherwise

◆ like_node

sym_node_t* sym_node_t::like_node

◆ mdl

MDL_ticket* sym_node_t::mdl

◆ name

const char* sym_node_t::name

name of an id

◆ name_len

ulint sym_node_t::name_len

id name length

◆ param_type

ulint sym_node_t::param_type

PARS_INPUT, PARS_OUTPUT, or PARS_NOT_PARAM if not a procedure parameter.

◆ prefetch_buf

sel_buf_t* sym_node_t::prefetch_buf

NULL, or a buffer for cached column values for prefetched rows.

◆ resolved

bool sym_node_t::resolved

true if the meaning of a variable or a column has been resolved; for literals this is always true

◆ sym_list

sym_node_t::sym_list

list of symbol nodes

◆ sym_table

sym_tab_t* sym_node_t::sym_table

back pointer to the symbol table

◆ table

dict_table_t* sym_node_t::table

table definition if a table id or a column id

◆ token_type

enum sym_tab_entry sym_node_t::token_type

type of the parsed token


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