KDb

sqlparser.h
1/****************************************************************************
2 * Created by generate_parser_code.sh
3 * WARNING! All changes made in this file will be lost!
4 ****************************************************************************/
5#ifndef KDBSQLPARSER_H
6#define KDBSQLPARSER_H
7
8#include "KDbDateTime.h"
9#include "KDbExpression.h"
10#include "KDbField.h"
11#include "KDbOrderByColumn.h"
12
15
16/* A Bison parser, made by GNU Bison 3.0.4. */
17
18/* Bison interface for Yacc-like parsers in C
19
20 Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
21
22 This program is free software: you can redistribute it and/or modify
23 it under the terms of the GNU General Public License as published by
24 the Free Software Foundation, either version 3 of the License, or
25 (at your option) any later version.
26
27 This program is distributed in the hope that it will be useful,
28 but WITHOUT ANY WARRANTY; without even the implied warranty of
29 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
30 GNU General Public License for more details.
31
32 You should have received a copy of the GNU General Public License
33 along with this program. If not, see <http://www.gnu.org/licenses/>. */
34
35/* As a special exception, you may create a larger work that contains
36 part or all of the Bison parser skeleton and distribute that work
37 under terms of your choice, so long as that work isn't itself a
38 parser generator using the skeleton or a modified version thereof
39 as a parser skeleton. Alternatively, if you modify or redistribute
40 the parser skeleton itself, you may (at your option) remove this
41 special exception, which will cause the skeleton and the resulting
42 Bison output files to be licensed under the GNU General Public
43 License without this special exception.
44
45 This special exception was added by the Free Software Foundation in
46 version 2.2 of Bison. */
47
48#ifndef YY_YY_KDBSQLPARSER_TAB_H_INCLUDED
49# define YY_YY_KDBSQLPARSER_TAB_H_INCLUDED
50/* Debug traces. */
51#ifndef YYDEBUG
52# define YYDEBUG 0
53#endif
54#if YYDEBUG
55extern int yydebug;
56#endif
57
58/* Token type. */
59#ifndef YYTOKENTYPE
60# define YYTOKENTYPE
61 enum yytokentype
62 {
63 SQL_TYPE = 258,
64 AS = 259,
65 AS_EMPTY = 260,
66 ASC = 261,
67 AUTO_INCREMENT = 262,
68 BIT = 263,
69 BITWISE_SHIFT_LEFT = 264,
70 BITWISE_SHIFT_RIGHT = 265,
71 BY = 266,
72 CHARACTER_STRING_LITERAL = 267,
73 CONCATENATION = 268,
74 CREATE = 269,
75 DESC = 270,
76 DISTINCT = 271,
77 DOUBLE_QUOTED_STRING = 272,
78 FROM = 273,
79 JOIN = 274,
80 KEY = 275,
81 LEFT = 276,
82 LESS_OR_EQUAL = 277,
83 GREATER_OR_EQUAL = 278,
84 SQL_NULL = 279,
85 SQL_IS = 280,
86 SQL_IS_NULL = 281,
87 SQL_IS_NOT_NULL = 282,
88 ORDER = 283,
89 PRIMARY = 284,
90 SELECT = 285,
91 INTEGER_CONST = 286,
92 REAL_CONST = 287,
93 RIGHT = 288,
94 SQL_ON = 289,
95 DATE_CONST = 290,
96 DATETIME_CONST = 291,
97 TIME_CONST = 292,
98 TABLE = 293,
99 IDENTIFIER = 294,
100 IDENTIFIER_DOT_ASTERISK = 295,
101 QUERY_PARAMETER = 296,
102 VARCHAR = 297,
103 WHERE = 298,
104 SQL = 299,
105 SQL_TRUE = 300,
106 SQL_FALSE = 301,
107 UNION = 302,
108 SCAN_ERROR = 303,
109 AND = 304,
110 BETWEEN = 305,
111 NOT_BETWEEN = 306,
112 EXCEPT = 307,
113 SQL_IN = 308,
114 INTERSECT = 309,
115 LIKE = 310,
116 ILIKE = 311,
117 NOT_LIKE = 312,
118 NOT = 313,
119 NOT_EQUAL = 314,
120 NOT_EQUAL2 = 315,
121 OR = 316,
122 SIMILAR_TO = 317,
123 NOT_SIMILAR_TO = 318,
124 XOR = 319,
125 UMINUS = 320,
126 TABS_OR_SPACES = 321,
127 DATE_TIME_INTEGER = 322,
128 TIME_AM = 323,
129 TIME_PM = 324
130 };
131#endif
132
133/* Value type. */
134#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
135
136union YYSTYPE
137{
138#line 505 "KDbSqlParser.y" /* yacc.c:1909 */
139
140 QString* stringValue;
141 QByteArray* binaryValue;
142 qint64 integerValue;
143 bool booleanValue;
144 KDbDate* dateValue;
145 KDbYear* yearValue;
146 KDbTime* timeValue;
147 KDbTime::Period timePeriodValue;
148 KDbDateTime* dateTimeValue;
149 KDbOrderByColumn::SortOrder sortOrderValue;
150 KDbField::Type colType;
151 KDbField *field;
152 KDbExpression *expr;
153 KDbNArgExpression *exprList;
154 KDbConstExpression *constExpression;
155 KDbQuerySchema *querySchema;
156 SelectOptionsInternal *selectOptions;
157 QList<OrderByColumnInternal> *orderByColumns;
158 QVariant *variantValue;
159
160#line 146 "KDbSqlParser.tab.h" /* yacc.c:1909 */
161};
162
163typedef union YYSTYPE YYSTYPE;
164# define YYSTYPE_IS_TRIVIAL 1
165# define YYSTYPE_IS_DECLARED 1
166#endif
167
168
169extern YYSTYPE yylval;
170
171int yyparse (void);
172
173#endif /* !YY_YY_KDBSQLPARSER_TAB_H_INCLUDED */
174#endif
The KDbConstExpression class represents const expression.
Generic date/time constant.
Generic date constant.
The KDbExpression class represents a base class for all expressions.
Meta-data for a field.
Definition KDbField.h:72
The KDbNArgExpression class represents a base class N-argument expression.
SortOrder
Column sort order.
KDbQuerySchema provides information about database query.
Generic time constant.
Period
Specifies hour period.
Generic year constant based on extended ISO 8601 specification.
Definition KDbDateTime.h:43
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Tue Mar 26 2024 11:20:59 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.