|
int | my_hint_parser_parse (THD *thd, Hint_scanner *scanner, PT_hint_list **ret) |
|
static int | lex_one_token (Lexer_yystype *yylval, THD *thd) |
|
void | lex_free () |
|
bool | lex_start (THD *thd) |
| Call lex_start() before every query that is to be prepared and executed. More...
|
|
void | lex_end (LEX *lex) |
| Call this function after preparation and execution of a query. More...
|
|
static bool | consume_optimizer_hints (Lex_input_stream *lip) |
|
static int | find_keyword (Lex_input_stream *lip, uint len, bool function) |
|
bool | is_keyword (const char *name, size_t len) |
|
bool | is_lex_native_function (const LEX_STRING *name) |
| Check if name is a sql function. More...
|
|
static LEX_STRING | get_token (Lex_input_stream *lip, uint skip, uint length) |
|
static LEX_STRING | get_quoted_token (Lex_input_stream *lip, uint skip, uint length, char quote) |
|
static char * | get_text (Lex_input_stream *lip, int pre_skip, int post_skip) |
|
static LEX_CSTRING | get_dollar_quoted_text (Lex_input_stream *lip, int tag_len) |
| Get the text literal between dollar quotes. More...
|
|
static uint | int_token (const char *str, uint length) |
|
static bool | consume_comment (Lex_input_stream *lip, int remaining_recursions_permitted) |
| Given a stream that is advanced to the first contained character in an open comment, consume the comment. More...
|
|
int | my_sql_parser_lex (MY_SQL_PARSER_STYPE *yacc_yylval, POS *yylloc, THD *thd) |
| yylex() function implementation for the main parser More...
|
|
void | trim_whitespace (const CHARSET_INFO *cs, LEX_STRING *str) |
|
void | print_derived_column_names (const THD *thd, String *str, const Create_col_name_list *column_names) |
| Prints into 'str' a comma-separated list of column names, enclosed in parenthesis. More...
|
|
void | print_set_operation (const THD *thd, Query_term *op, String *str, int level, enum_query_type query_type) |
|
static void | print_table_array (const THD *thd, String *str, const Table_array &tables, enum_query_type query_type) |
|
static void | print_join (const THD *thd, String *str, mem_root_deque< Table_ref * > *tables, enum_query_type query_type) |
| Print joins from the FROM clause. More...
|
|
bool | db_is_default_db (const char *db, size_t db_len, const THD *thd) |
|
static enum_walk | get_walk_flags (const Select_lex_visitor *visitor) |
|
bool | walk_item (Item *item, Select_lex_visitor *visitor) |
|
bool | accept_for_order (SQL_I_List< ORDER > orders, Select_lex_visitor *visitor) |
|
bool | accept_for_join (mem_root_deque< Table_ref * > *tables, Select_lex_visitor *visitor) |
|
bool | accept_table (Table_ref *t, Select_lex_visitor *visitor) |
|
static enum_explain_type | setop2result (Query_term *qt) |
|
static bool | get_optimizable_join_conditions (THD *thd, mem_root_deque< Table_ref * > &join_list) |
| Helper function which handles the "ON conditions" part of Query_block::get_optimizable_conditions(). More...
|
|
static bool | walk_join_condition (mem_root_deque< Table_ref * > *tables, Item_processor processor, enum_walk walk, uchar *arg) |
| Apply walk() processor to join conditions. More...
|
|
static void | unsafe_mixed_statement (LEX::enum_stmt_accessed_table a, LEX::enum_stmt_accessed_table b, uint condition) |
|
void | binlog_unsafe_map_init () |
|
void | get_select_options_str (ulonglong options, std::string *str) |
|
static bool consume_comment |
( |
Lex_input_stream * |
lip, |
|
|
int |
remaining_recursions_permitted |
|
) |
| |
|
static |
Given a stream that is advanced to the first contained character in an open comment, consume the comment.
Optionally, if we are allowed, recurse so that we understand comments within this current comment.
At this level, we do not support version-condition comments. We might have been called with having just passed one in the stream, though. In that case, we probably want to tolerate mundane comments inside. Thus, the case for recursion.
- Return values
-
Whether | EOF reached before comment is closed. |
Get the text literal between dollar quotes.
A dollar quote is of the form $tag$, where tag is zero or more characters. The same characters that are permitted for unquoted identifiers, except dollar, may be used for the tag. That is, basic ASCII letters, digits 0-9, underscore, and any multibyte UTF8 characters.
- Parameters
-
lip | The input stream. When called, the current position is right after the initial dollar character |
tag_len | The length of the tag |
- Returns
- The text literal without dollar quotes