File indexing completed on 2024-12-01 04:18:56
0001 /**************************************************************************** 0002 * Created by generate_parser_code.sh 0003 * WARNING! All changes made in this file will be lost! 0004 ****************************************************************************/ 0005 #ifndef KDBSQLPARSER_H 0006 #define KDBSQLPARSER_H 0007 0008 #include "KDbDateTime.h" 0009 #include "KDbExpression.h" 0010 #include "KDbField.h" 0011 #include "KDbOrderByColumn.h" 0012 0013 struct OrderByColumnInternal; 0014 struct SelectOptionsInternal; 0015 0016 /* A Bison parser, made by GNU Bison 3.0.4. */ 0017 0018 /* Bison interface for Yacc-like parsers in C 0019 0020 Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc. 0021 0022 This program is free software: you can redistribute it and/or modify 0023 it under the terms of the GNU General Public License as published by 0024 the Free Software Foundation, either version 3 of the License, or 0025 (at your option) any later version. 0026 0027 This program is distributed in the hope that it will be useful, 0028 but WITHOUT ANY WARRANTY; without even the implied warranty of 0029 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 0030 GNU General Public License for more details. 0031 0032 You should have received a copy of the GNU General Public License 0033 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 0034 0035 /* As a special exception, you may create a larger work that contains 0036 part or all of the Bison parser skeleton and distribute that work 0037 under terms of your choice, so long as that work isn't itself a 0038 parser generator using the skeleton or a modified version thereof 0039 as a parser skeleton. Alternatively, if you modify or redistribute 0040 the parser skeleton itself, you may (at your option) remove this 0041 special exception, which will cause the skeleton and the resulting 0042 Bison output files to be licensed under the GNU General Public 0043 License without this special exception. 0044 0045 This special exception was added by the Free Software Foundation in 0046 version 2.2 of Bison. */ 0047 0048 #ifndef YY_YY_KDBSQLPARSER_TAB_H_INCLUDED 0049 # define YY_YY_KDBSQLPARSER_TAB_H_INCLUDED 0050 /* Debug traces. */ 0051 #ifndef YYDEBUG 0052 # define YYDEBUG 0 0053 #endif 0054 #if YYDEBUG 0055 extern int yydebug; 0056 #endif 0057 0058 /* Token type. */ 0059 #ifndef YYTOKENTYPE 0060 # define YYTOKENTYPE 0061 enum yytokentype 0062 { 0063 SQL_TYPE = 258, 0064 AS = 259, 0065 AS_EMPTY = 260, 0066 ASC = 261, 0067 AUTO_INCREMENT = 262, 0068 BIT = 263, 0069 BITWISE_SHIFT_LEFT = 264, 0070 BITWISE_SHIFT_RIGHT = 265, 0071 BY = 266, 0072 CHARACTER_STRING_LITERAL = 267, 0073 CONCATENATION = 268, 0074 CREATE = 269, 0075 DESC = 270, 0076 DISTINCT = 271, 0077 DOUBLE_QUOTED_STRING = 272, 0078 FROM = 273, 0079 JOIN = 274, 0080 KEY = 275, 0081 LEFT = 276, 0082 LESS_OR_EQUAL = 277, 0083 GREATER_OR_EQUAL = 278, 0084 SQL_NULL = 279, 0085 SQL_IS = 280, 0086 SQL_IS_NULL = 281, 0087 SQL_IS_NOT_NULL = 282, 0088 ORDER = 283, 0089 PRIMARY = 284, 0090 SELECT = 285, 0091 INTEGER_CONST = 286, 0092 REAL_CONST = 287, 0093 RIGHT = 288, 0094 SQL_ON = 289, 0095 DATE_CONST = 290, 0096 DATETIME_CONST = 291, 0097 TIME_CONST = 292, 0098 TABLE = 293, 0099 IDENTIFIER = 294, 0100 IDENTIFIER_DOT_ASTERISK = 295, 0101 QUERY_PARAMETER = 296, 0102 VARCHAR = 297, 0103 WHERE = 298, 0104 SQL = 299, 0105 SQL_TRUE = 300, 0106 SQL_FALSE = 301, 0107 UNION = 302, 0108 SCAN_ERROR = 303, 0109 AND = 304, 0110 BETWEEN = 305, 0111 NOT_BETWEEN = 306, 0112 EXCEPT = 307, 0113 SQL_IN = 308, 0114 INTERSECT = 309, 0115 LIKE = 310, 0116 ILIKE = 311, 0117 NOT_LIKE = 312, 0118 NOT = 313, 0119 NOT_EQUAL = 314, 0120 NOT_EQUAL2 = 315, 0121 OR = 316, 0122 SIMILAR_TO = 317, 0123 NOT_SIMILAR_TO = 318, 0124 XOR = 319, 0125 UMINUS = 320, 0126 TABS_OR_SPACES = 321, 0127 DATE_TIME_INTEGER = 322, 0128 TIME_AM = 323, 0129 TIME_PM = 324 0130 }; 0131 #endif 0132 0133 /* Value type. */ 0134 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 0135 0136 union YYSTYPE 0137 { 0138 #line 505 "KDbSqlParser.y" /* yacc.c:1909 */ 0139 0140 QString* stringValue; 0141 QByteArray* binaryValue; 0142 qint64 integerValue; 0143 bool booleanValue; 0144 KDbDate* dateValue; 0145 KDbYear* yearValue; 0146 KDbTime* timeValue; 0147 KDbTime::Period timePeriodValue; 0148 KDbDateTime* dateTimeValue; 0149 KDbOrderByColumn::SortOrder sortOrderValue; 0150 KDbField::Type colType; 0151 KDbField *field; 0152 KDbExpression *expr; 0153 KDbNArgExpression *exprList; 0154 KDbConstExpression *constExpression; 0155 KDbQuerySchema *querySchema; 0156 SelectOptionsInternal *selectOptions; 0157 QList<OrderByColumnInternal> *orderByColumns; 0158 QVariant *variantValue; 0159 0160 #line 146 "KDbSqlParser.tab.h" /* yacc.c:1909 */ 0161 }; 0162 0163 typedef union YYSTYPE YYSTYPE; 0164 # define YYSTYPE_IS_TRIVIAL 1 0165 # define YYSTYPE_IS_DECLARED 1 0166 #endif 0167 0168 0169 extern YYSTYPE yylval; 0170 0171 int yyparse (void); 0172 0173 #endif /* !YY_YY_KDBSQLPARSER_TAB_H_INCLUDED */ 0174 #endif