MySQL 8.3.0
Source Code Documentation
sql_hints.yy.h
Go to the documentation of this file.
1/* A Bison parser, made by GNU Bison 3.0.4. */
2
3/* Bison interface for Yacc-like parsers in C
4
5 Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
6
7 This program is free software: you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
11
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
19
20/* As a special exception, you may create a larger work that contains
21 part or all of the Bison parser skeleton and distribute that work
22 under terms of your choice, so long as that work isn't itself a
23 parser generator using the skeleton or a modified version thereof
24 as a parser skeleton. Alternatively, if you modify or redistribute
25 the parser skeleton itself, you may (at your option) remove this
26 special exception, which will cause the skeleton and the resulting
27 Bison output files to be licensed under the GNU General Public
28 License without this special exception.
29
30 This special exception was added by the Free Software Foundation in
31 version 2.2 of Bison. */
32
33#ifndef YY_MY_HINT_PARSER_VAR_LIB_PB2_SB_1_13732547_1702565708_68_DIST_GPL_SQL_SQL_HINTS_YY_H_INCLUDED
34# define YY_MY_HINT_PARSER_VAR_LIB_PB2_SB_1_13732547_1702565708_68_DIST_GPL_SQL_SQL_HINTS_YY_H_INCLUDED
35/* Debug traces. */
36#ifndef MY_HINT_PARSER_DEBUG
37# if defined YYDEBUG
38#if YYDEBUG
39# define MY_HINT_PARSER_DEBUG 1
40# else
41# define MY_HINT_PARSER_DEBUG 0
42# endif
43# else /* ! defined YYDEBUG */
44# define MY_HINT_PARSER_DEBUG 0
45# endif /* ! defined YYDEBUG */
46#endif /* ! defined MY_HINT_PARSER_DEBUG */
47#if MY_HINT_PARSER_DEBUG
48extern int my_hint_parser_debug;
49#endif
50
51/* Token type. */
52#ifndef MY_HINT_PARSER_TOKENTYPE
53# define MY_HINT_PARSER_TOKENTYPE
55 {
58 BKA_HINT = 1002,
59 BNL_HINT = 1003,
71 MRR_HINT = 1015,
93 HINT_CLOSE = 1037,
94 HINT_ERROR = 1038,
95 INDEX_HINT = 1039,
106 };
107#endif
108/* Tokens. */
109#define MAX_EXECUTION_TIME_HINT 1000
110#define RESOURCE_GROUP_HINT 1001
111#define BKA_HINT 1002
112#define BNL_HINT 1003
113#define DUPSWEEDOUT_HINT 1004
114#define FIRSTMATCH_HINT 1005
115#define INTOEXISTS_HINT 1006
116#define LOOSESCAN_HINT 1007
117#define MATERIALIZATION_HINT 1008
118#define NO_BKA_HINT 1009
119#define NO_BNL_HINT 1010
120#define NO_ICP_HINT 1011
121#define NO_MRR_HINT 1012
122#define NO_RANGE_OPTIMIZATION_HINT 1013
123#define NO_SEMIJOIN_HINT 1014
124#define MRR_HINT 1015
125#define QB_NAME_HINT 1016
126#define SEMIJOIN_HINT 1017
127#define SUBQUERY_HINT 1018
128#define DERIVED_MERGE_HINT 1019
129#define NO_DERIVED_MERGE_HINT 1020
130#define JOIN_PREFIX_HINT 1021
131#define JOIN_SUFFIX_HINT 1022
132#define JOIN_ORDER_HINT 1023
133#define JOIN_FIXED_ORDER_HINT 1024
134#define INDEX_MERGE_HINT 1025
135#define NO_INDEX_MERGE_HINT 1026
136#define SET_VAR_HINT 1027
137#define SKIP_SCAN_HINT 1028
138#define NO_SKIP_SCAN_HINT 1029
139#define HASH_JOIN_HINT 1030
140#define NO_HASH_JOIN_HINT 1031
141#define HINT_ARG_NUMBER 1032
142#define HINT_ARG_IDENT 1033
143#define HINT_ARG_QB_NAME 1034
144#define HINT_ARG_TEXT 1035
145#define HINT_IDENT_OR_NUMBER_WITH_SCALE 1036
146#define HINT_CLOSE 1037
147#define HINT_ERROR 1038
148#define INDEX_HINT 1039
149#define NO_INDEX_HINT 1040
150#define JOIN_INDEX_HINT 1041
151#define NO_JOIN_INDEX_HINT 1042
152#define GROUP_INDEX_HINT 1043
153#define NO_GROUP_INDEX_HINT 1044
154#define ORDER_INDEX_HINT 1045
155#define NO_ORDER_INDEX_HINT 1046
156#define DERIVED_CONDITION_PUSHDOWN_HINT 1047
157#define NO_DERIVED_CONDITION_PUSHDOWN_HINT 1048
158#define HINT_ARG_FLOATING_POINT_NUMBER 1049
159
160/* Value type. */
161
162
163
164int my_hint_parser_parse (class THD *thd, class Hint_scanner *scanner, class PT_hint_list **ret);
165
166#endif /* !YY_MY_HINT_PARSER_VAR_LIB_PB2_SB_1_13732547_1702565708_68_DIST_GPL_SQL_SQL_HINTS_YY_H_INCLUDED */
Lexical scanner for hint comments.
Definition: sql_lex_hints.h:54
Definition: parse_tree_hints.h:99
For each client connection we create a separate thread with THD serving as a thread/connection descri...
Definition: sql_lexer_thd.h:35
#define INTOEXISTS_HINT
Definition: sql_hints.yy.h:115
#define NO_DERIVED_CONDITION_PUSHDOWN_HINT
Definition: sql_hints.yy.h:157
#define BKA_HINT
Definition: sql_hints.yy.h:111
#define DERIVED_CONDITION_PUSHDOWN_HINT
Definition: sql_hints.yy.h:156
#define NO_ICP_HINT
Definition: sql_hints.yy.h:120
#define FIRSTMATCH_HINT
Definition: sql_hints.yy.h:114
#define MRR_HINT
Definition: sql_hints.yy.h:124
#define JOIN_PREFIX_HINT
Definition: sql_hints.yy.h:130
#define ORDER_INDEX_HINT
Definition: sql_hints.yy.h:154
#define HINT_CLOSE
Definition: sql_hints.yy.h:146
#define NO_DERIVED_MERGE_HINT
Definition: sql_hints.yy.h:129
#define MAX_EXECUTION_TIME_HINT
Definition: sql_hints.yy.h:109
#define QB_NAME_HINT
Definition: sql_hints.yy.h:125
#define GROUP_INDEX_HINT
Definition: sql_hints.yy.h:152
#define HASH_JOIN_HINT
Definition: sql_hints.yy.h:139
#define RESOURCE_GROUP_HINT
Definition: sql_hints.yy.h:110
#define NO_ORDER_INDEX_HINT
Definition: sql_hints.yy.h:155
#define LOOSESCAN_HINT
Definition: sql_hints.yy.h:116
#define HINT_ARG_TEXT
Definition: sql_hints.yy.h:144
#define NO_RANGE_OPTIMIZATION_HINT
Definition: sql_hints.yy.h:122
#define NO_HASH_JOIN_HINT
Definition: sql_hints.yy.h:140
#define NO_INDEX_HINT
Definition: sql_hints.yy.h:149
#define NO_MRR_HINT
Definition: sql_hints.yy.h:121
#define JOIN_SUFFIX_HINT
Definition: sql_hints.yy.h:131
#define JOIN_ORDER_HINT
Definition: sql_hints.yy.h:132
my_hint_parser_tokentype
Definition: sql_hints.yy.h:55
#define JOIN_FIXED_ORDER_HINT
Definition: sql_hints.yy.h:133
#define HINT_ARG_IDENT
Definition: sql_hints.yy.h:142
#define NO_SEMIJOIN_HINT
Definition: sql_hints.yy.h:123
#define BNL_HINT
Definition: sql_hints.yy.h:112
#define INDEX_HINT
Definition: sql_hints.yy.h:148
#define SKIP_SCAN_HINT
Definition: sql_hints.yy.h:137
#define HINT_ARG_NUMBER
Definition: sql_hints.yy.h:141
#define DERIVED_MERGE_HINT
Definition: sql_hints.yy.h:128
#define HINT_ARG_FLOATING_POINT_NUMBER
Definition: sql_hints.yy.h:158
#define NO_BKA_HINT
Definition: sql_hints.yy.h:118
#define NO_JOIN_INDEX_HINT
Definition: sql_hints.yy.h:151
#define MATERIALIZATION_HINT
Definition: sql_hints.yy.h:117
#define NO_INDEX_MERGE_HINT
Definition: sql_hints.yy.h:135
#define HINT_ERROR
Definition: sql_hints.yy.h:147
#define SET_VAR_HINT
Definition: sql_hints.yy.h:136
#define NO_SKIP_SCAN_HINT
Definition: sql_hints.yy.h:138
#define SUBQUERY_HINT
Definition: sql_hints.yy.h:127
#define INDEX_MERGE_HINT
Definition: sql_hints.yy.h:134
#define NO_BNL_HINT
Definition: sql_hints.yy.h:119
#define NO_GROUP_INDEX_HINT
Definition: sql_hints.yy.h:153
#define JOIN_INDEX_HINT
Definition: sql_hints.yy.h:150
#define SEMIJOIN_HINT
Definition: sql_hints.yy.h:126
#define HINT_IDENT_OR_NUMBER_WITH_SCALE
Definition: sql_hints.yy.h:145
#define DUPSWEEDOUT_HINT
Definition: sql_hints.yy.h:113
int my_hint_parser_parse(class THD *thd, class Hint_scanner *scanner, class PT_hint_list **ret)
#define HINT_ARG_QB_NAME
Definition: sql_hints.yy.h:143