1 #ifndef fts0tHEADER_H 2 #define fts0tHEADER_H 1 3 #define fts0tIN_HEADER 1 4 5 #line 6 "../include/fts0tlex.h" 6 #line 2 "fts0tlex.l" 7 /***************************************************************************** 8 9 Copyright (c) 2007, 2016, Oracle and/or its affiliates. All Rights Reserved. 10 11 This program is free software; you can redistribute it and/or modify it under 12 the terms of the GNU General Public License, version 2.0, as published by the 13 Free Software Foundation. 14 15 This program is also distributed with certain software (including but not 16 limited to OpenSSL) that is licensed under separate terms, as designated in a 17 particular file or component or in included license documentation. The authors 18 of MySQL hereby grant you an additional permission to link the program and 19 your derivative works with the separately licensed software that they have 20 included with MySQL. 21 22 This program is distributed in the hope that it will be useful, but WITHOUT 23 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 24 FOR A PARTICULAR PURPOSE. See the GNU General Public License, version 2.0, 25 for more details. 26 27 You should have received a copy of the GNU General Public License along with 28 this program; if not, write to the Free Software Foundation, Inc., 29 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 30 31 *****************************************************************************/ 32 33 /** 34 * @file fts/fts0tlex.l 35 * FTS parser lexical analyzer 36 * 37 * Created 2007/5/9 Sunny Bains 38 */ 39 #include "univ.i" 40 41 42 43 #line 36 "../include/fts0tlex.h" 44 45 #define YY_INT_ALIGNED short int 46 47 /* A lexical scanner generated by flex */ 48 49 #define FLEX_SCANNER 50 #define YY_FLEX_MAJOR_VERSION 2 51 #define YY_FLEX_MINOR_VERSION 5 52 #define YY_FLEX_SUBMINOR_VERSION 39 53 #if YY_FLEX_SUBMINOR_VERSION > 0 54 #define FLEX_BETA 55 #endif 56 57 /* First, we deal with platform-specific or compiler-specific issues. */ 58 59 /* begin standard C headers. */ 60 #include <stdio.h> 61 #include <string.h> 62 #include <errno.h> 63 #include <stdlib.h> 64 65 /* end standard C headers. */ 66 67 /* flex integer type definitions */ 68 69 #ifndef FLEXINT_H 70 #define FLEXINT_H 71 72 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */ 73 74 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L 75 76 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, 77 * if you want the limit (max/min) macros for int types. 78 */ 79 #ifndef __STDC_LIMIT_MACROS 80 #define __STDC_LIMIT_MACROS 1 81 #endif 82 83 #include <inttypes.h> 84 typedef int8_t flex_int8_t; 85 typedef uint8_t flex_uint8_t; 86 typedef int16_t flex_int16_t; 87 typedef uint16_t flex_uint16_t; 88 typedef int32_t flex_int32_t; 89 typedef uint32_t flex_uint32_t; 90 #else 91 typedef signed char flex_int8_t; 92 typedef short int flex_int16_t; 93 typedef int flex_int32_t; 94 typedef unsigned char flex_uint8_t; 95 typedef unsigned short int flex_uint16_t; 96 typedef unsigned int flex_uint32_t; 97 98 /* Limits of integral types. */ 99 #ifndef INT8_MIN 100 #define INT8_MIN (-128) 101 #endif 102 #ifndef INT16_MIN 103 #define INT16_MIN (-32767-1) 104 #endif 105 #ifndef INT32_MIN 106 #define INT32_MIN (-2147483647-1) 107 #endif 108 #ifndef INT8_MAX 109 #define INT8_MAX (127) 110 #endif 111 #ifndef INT16_MAX 112 #define INT16_MAX (32767) 113 #endif 114 #ifndef INT32_MAX 115 #define INT32_MAX (2147483647) 116 #endif 117 #ifndef UINT8_MAX 118 #define UINT8_MAX (255U) 119 #endif 120 #ifndef UINT16_MAX 121 #define UINT16_MAX (65535U) 122 #endif 123 #ifndef UINT32_MAX 124 #define UINT32_MAX (4294967295U) 125 #endif 126 127 #endif /* ! C99 */ 128 129 #endif /* ! FLEXINT_H */ 130 131 #ifdef __cplusplus 132 133 /* The "const" storage-class-modifier is valid. */ 134 #define YY_USE_CONST 135 136 #else /* ! __cplusplus */ 137 138 /* C99 requires __STDC__ to be defined as 1. */ 139 #if defined (__STDC__) 140 141 #define YY_USE_CONST 142 143 #endif /* defined (__STDC__) */ 144 #endif /* ! __cplusplus */ 145 146 #ifdef YY_USE_CONST 147 #define yyconst const 148 #else 149 #define yyconst 150 #endif 151 152 /* An opaque pointer. */ 153 #ifndef YY_TYPEDEF_YY_SCANNER_T 154 #define YY_TYPEDEF_YY_SCANNER_T 155 typedef void* yyscan_t; 156 #endif 157 158 /* For convenience, these vars (plus the bison vars far below) 159 are macros in the reentrant scanner. */ 160 #define yyin yyg->yyin_r 161 #define yyout yyg->yyout_r 162 #define yyextra yyg->yyextra_r 163 #define yyleng yyg->yyleng_r 164 #define yytext yyg->yytext_r 165 #define yylineno (YY_CURRENT_BUFFER_LVALUE->yy_bs_lineno) 166 #define yycolumn (YY_CURRENT_BUFFER_LVALUE->yy_bs_column) 167 #define yy_flex_debug yyg->yy_flex_debug_r 168 169 /* Size of default input buffer. */ 170 #ifndef YY_BUF_SIZE 171 #ifdef __ia64__ 172 /* On IA-64, the buffer size is 16k, not 8k. 173 * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case. 174 * Ditto for the __ia64__ case accordingly. 175 */ 176 #define YY_BUF_SIZE 32768 177 #else 178 #define YY_BUF_SIZE 16384 179 #endif /* __ia64__ */ 180 #endif 181 182 #ifndef YY_TYPEDEF_YY_BUFFER_STATE 183 #define YY_TYPEDEF_YY_BUFFER_STATE 184 typedef struct yy_buffer_state *YY_BUFFER_STATE; 185 #endif 186 187 #ifndef YY_TYPEDEF_YY_SIZE_T 188 #define YY_TYPEDEF_YY_SIZE_T 189 typedef size_t yy_size_t; 190 #endif 191 192 #ifndef YY_STRUCT_YY_BUFFER_STATE 193 #define YY_STRUCT_YY_BUFFER_STATE 194 struct yy_buffer_state 195 { 196 FILE *yy_input_file; 197 198 char *yy_ch_buf; /* input buffer */ 199 char *yy_buf_pos; /* current position in input buffer */ 200 201 /* Size of input buffer in bytes, not including room for EOB 202 * characters. 203 */ 204 yy_size_t yy_buf_size; 205 206 /* Number of characters read into yy_ch_buf, not including EOB 207 * characters. 208 */ 209 yy_size_t yy_n_chars; 210 211 /* Whether we "own" the buffer - i.e., we know we created it, 212 * and can realloc() it to grow it, and should free() it to 213 * delete it. 214 */ 215 int yy_is_our_buffer; 216 217 /* Whether this is an "interactive" input source; if so, and 218 * if we're using stdio for input, then we want to use getc() 219 * instead of fread(), to make sure we stop fetching input after 220 * each newline. 221 */ 222 int yy_is_interactive; 223 224 /* Whether we're considered to be at the beginning of a line. 225 * If so, '^' rules will be active on the next match, otherwise 226 * not. 227 */ 228 int yy_at_bol; 229 230 int yy_bs_lineno; /**< The line count. */ 231 int yy_bs_column; /**< The column count. */ 232 233 /* Whether to try to fill the input buffer when we reach the 234 * end of it. 235 */ 236 int yy_fill_buffer; 237 238 int yy_buffer_status; 239 240 }; 241 #endif /* !YY_STRUCT_YY_BUFFER_STATE */ 242 243 void fts0trestart (FILE *input_file ,yyscan_t yyscanner ); 244 void fts0t_switch_to_buffer (YY_BUFFER_STATE new_buffer ,yyscan_t yyscanner ); 245 YY_BUFFER_STATE fts0t_create_buffer (FILE *file,int size ,yyscan_t yyscanner ); 246 void fts0t_delete_buffer (YY_BUFFER_STATE b ,yyscan_t yyscanner ); 247 void fts0t_flush_buffer (YY_BUFFER_STATE b ,yyscan_t yyscanner ); 248 void fts0tpush_buffer_state (YY_BUFFER_STATE new_buffer ,yyscan_t yyscanner ); 249 void fts0tpop_buffer_state (yyscan_t yyscanner ); 250 251 YY_BUFFER_STATE fts0t_scan_buffer (char *base,yy_size_t size ,yyscan_t yyscanner ); 252 YY_BUFFER_STATE fts0t_scan_string (yyconst char *yy_str ,yyscan_t yyscanner ); 253 YY_BUFFER_STATE fts0t_scan_bytes (yyconst char *bytes,yy_size_t len ,yyscan_t yyscanner ); 254 255 void *fts0talloc (yy_size_t ,yyscan_t yyscanner ); 256 void *fts0trealloc (void *,yy_size_t ,yyscan_t yyscanner ); 257 void fts0tfree (void * ,yyscan_t yyscanner ); 258 259 /* Begin user sect3 */ 260 261 #define fts0twrap(yyscanner) 1 262 #define YY_SKIP_YYWRAP 263 264 #define yytext_ptr yytext_r 265 266 #ifdef YY_HEADER_EXPORT_START_CONDITIONS 267 #define INITIAL 0 268 269 #endif 270 271 #ifndef YY_NO_UNISTD_H 272 /* Special case for "unistd.h", since it is non-ANSI. We include it way 273 * down here because we want the user's section 1 to have been scanned first. 274 * The user has a chance to override it with an option. 275 */ 276 #include <unistd.h> 277 #endif 278 279 #ifndef YY_EXTRA_TYPE 280 #define YY_EXTRA_TYPE void * 281 #endif 282 283 int fts0tlex_init (yyscan_t* scanner); 284 285 int fts0tlex_init_extra (YY_EXTRA_TYPE user_defined,yyscan_t* scanner); 286 287 /* Accessor methods to globals. 288 These are made visible to non-reentrant scanners for convenience. */ 289 290 int fts0tlex_destroy (yyscan_t yyscanner ); 291 292 int fts0tget_debug (yyscan_t yyscanner ); 293 294 void fts0tset_debug (int debug_flag ,yyscan_t yyscanner ); 295 296 YY_EXTRA_TYPE fts0tget_extra (yyscan_t yyscanner ); 297 298 void fts0tset_extra (YY_EXTRA_TYPE user_defined ,yyscan_t yyscanner ); 299 300 FILE *fts0tget_in (yyscan_t yyscanner ); 301 302 void fts0tset_in (FILE * in_str ,yyscan_t yyscanner ); 303 304 FILE *fts0tget_out (yyscan_t yyscanner ); 305 306 void fts0tset_out (FILE * out_str ,yyscan_t yyscanner ); 307 308 yy_size_t fts0tget_leng (yyscan_t yyscanner ); 309 310 char *fts0tget_text (yyscan_t yyscanner ); 311 312 int fts0tget_lineno (yyscan_t yyscanner ); 313 314 void fts0tset_lineno (int line_number ,yyscan_t yyscanner ); 315 316 int fts0tget_column (yyscan_t yyscanner ); 317 318 void fts0tset_column (int column_no ,yyscan_t yyscanner ); 319 320 /* Macros after this point can all be overridden by user definitions in 321 * section 1. 322 */ 323 324 #ifndef YY_SKIP_YYWRAP 325 #ifdef __cplusplus 326 extern "C" int fts0twrap (yyscan_t yyscanner ); 327 #else 328 extern int fts0twrap (yyscan_t yyscanner ); 329 #endif 330 #endif 331 332 #ifndef yytext_ptr 333 static void yy_flex_strncpy (char *,yyconst char *,int ,yyscan_t yyscanner); 334 #endif 335 336 #ifdef YY_NEED_STRLEN 337 static int yy_flex_strlen (yyconst char * ,yyscan_t yyscanner); 338 #endif 339 340 #ifndef YY_NO_INPUT 341 342 #endif 343 344 /* Amount of stuff to slurp up with each read. */ 345 #ifndef YY_READ_BUF_SIZE 346 #ifdef __ia64__ 347 /* On IA-64, the buffer size is 16k, not 8k */ 348 #define YY_READ_BUF_SIZE 16384 349 #else 350 #define YY_READ_BUF_SIZE 8192 351 #endif /* __ia64__ */ 352 #endif 353 354 /* Number of entries by which start-condition stack grows. */ 355 #ifndef YY_START_STACK_INCR 356 #define YY_START_STACK_INCR 25 357 #endif 358 359 /* Default declaration of generated scanner - a define so the user can 360 * easily add parameters. 361 */ 362 #ifndef YY_DECL 363 #define YY_DECL_IS_OURS 1 364 365 extern int fts0tlex (yyscan_t yyscanner); 366 367 #define YY_DECL int fts0tlex (yyscan_t yyscanner) 368 #endif /* !YY_DECL */ 369 370 /* yy_get_previous_state - get the state just before the EOB char was reached */ 371 372 #undef YY_NEW_FILE 373 #undef YY_FLUSH_BUFFER 374 #undef yy_set_bol 375 #undef yy_new_buffer 376 #undef yy_set_interactive 377 #undef YY_DO_BEFORE_ACTION 378 379 #ifdef YY_DECL_IS_OURS 380 #undef YY_DECL_IS_OURS 381 #undef YY_DECL 382 #endif 383 384 #line 70 "fts0tlex.l" 385 386 387 #line 380 "../include/fts0tlex.h" 388 #undef fts0tIN_HEADER 389 #endif /* fts0tHEADER_H */ 390