[MDEV-21023] Move LEX methods and related functions from sql_yacc.yy to sql_lex.cc Created: 2019-11-11  Updated: 2020-01-23  Resolved: 2019-11-12

Status: Closed
Project: MariaDB Server
Component/s: Parser
Fix Version/s: 10.5.0

Type: Task Priority: Major
Reporter: Alexander Barkov Assignee: Alexander Barkov
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Blocks
blocks MDEV-12518 Unify sql_yacc.yy and sql_yacc_ora.yy Closed

 Description   

sql_yacc.yy contains implementations of a number of LEX methods and public functions:

int LEX::case_stmt_action_expr(Item* expr);
 
int LEX::case_stmt_action_when(Item *when, bool simple);
int LEX::case_stmt_action_then();
 
bool LEX::set_system_variable(enum enum_var_type var_type,
                              sys_var *sysvar,
                              const Lex_ident_sys_st *base_name,
                              Item *val);
 
bool LEX::set_trigger_new_row(const LEX_CSTRING *name, Item *val)
 
Item_splocal *LEX::create_item_for_sp_var(const Lex_ident_cli_st *cname,
                                          sp_variable *spvar);
 
Item* handle_sql2003_note184_exception(THD *thd, Item* left, bool equal,
                                       Item *expr)
 
bool sp_create_assignment_lex(THD *thd, const char *pos)
 
bool sp_create_assignment_instr(THD *thd, bool no_lookahead,
                                bool need_set_keyword)
 
void LEX::add_key_to_list(LEX_CSTRING *field_name,
                          enum Key::Keytype type, bool check_exists)
 
bool LEX::add_alter_list(const char *name, Virtual_column_info *expr,
                         bool exists)
 
void LEX::init_last_field(Column_definition *field,
                          const LEX_CSTRING *field_name,
                          const CHARSET_INFO *cs)
 
bool LEX::set_bincmp(CHARSET_INFO *cs, bool bin)
 
Virtual_column_info *add_virtual_expression(THD *thd, Item *expr);

In order to unify sql_yacc.yy and sql_yacc_ora.yy easier, let's move these methods and functions to sql_lex.cc.


Generated at Thu Feb 08 09:04:01 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.