YAZ  5.23.1
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
cql.c File Reference

Implements CQL parser. More...

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <yaz/yaz-iconv.h>
#include <yaz/xmalloc.h>
#include <yaz/nmem.h>
#include <yaz/cql.h>
#include <stddef.h>

Go to the source code of this file.

Data Structures

struct  token
 
struct  cql_parser
 
union  yyalloc
 

Macros

#define YYBISON   1
 
#define YYBISON_VERSION   "3.0.4"
 
#define YYSKELETON_NAME   "yacc.c"
 
#define YYPURE   1
 
#define YYPUSH   0
 
#define YYPULL   1
 
#define yyparse   cql_parse
 
#define yylex   cql_lex
 
#define yyerror   cql_error
 
#define yydebug   cql_debug
 
#define yynerrs   cql_nerrs
 
#define YYSTYPE   token
 
#define YY_NULLPTR   0
 
#define YYERROR_VERBOSE   0
 
#define YYDEBUG   0
 
#define YYTOKENTYPE
 
#define PREFIX_NAME   258
 
#define SIMPLE_STRING   259
 
#define AND   260
 
#define OR   261
 
#define NOT   262
 
#define PROX   263
 
#define GE   264
 
#define LE   265
 
#define NE   266
 
#define EXACT   267
 
#define SORTBY   268
 
#define YYSIZE_T   size_t
 
#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)
 
#define YY_(Msgid)   Msgid
 
#define YY_ATTRIBUTE(Spec)   /* empty */
 
#define YY_ATTRIBUTE_PURE   YY_ATTRIBUTE ((__pure__))
 
#define YY_ATTRIBUTE_UNUSED   YY_ATTRIBUTE ((__unused__))
 
#define _Noreturn   YY_ATTRIBUTE ((__noreturn__))
 
#define YYUSE(E)   ((void) (E))
 
#define YY_INITIAL_VALUE(Value)   Value
 
#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
 
#define YY_IGNORE_MAYBE_UNINITIALIZED_END
 
#define YYSTACK_ALLOC   YYMALLOC
 
#define YYSTACK_FREE   YYFREE
 
#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM
 
#define YYMALLOC   malloc
 
#define YYFREE   free
 
#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)
 
#define YYSTACK_BYTES(N)
 
#define YYCOPY_NEEDED   1
 
#define YYSTACK_RELOCATE(Stack_alloc, Stack)
 
#define YYCOPY(Dst, Src, Count)
 
#define YYFINAL   3
 
#define YYLAST   103
 
#define YYNTOKENS   20
 
#define YYNNTS   22
 
#define YYNRULES   49
 
#define YYNSTATES   66
 
#define YYUNDEFTOK   2
 
#define YYMAXUTOK   268
 
#define YYTRANSLATE(YYX)   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
 
#define YYPACT_NINF   -34
 
#define yypact_value_is_default(Yystate)   (!!((Yystate) == (-34)))
 
#define YYTABLE_NINF   -43
 
#define yytable_value_is_error(Yytable_value)   0
 
#define yyerrok   (yyerrstatus = 0)
 
#define yyclearin   (yychar = YYEMPTY)
 
#define YYEMPTY   (-2)
 
#define YYEOF   0
 
#define YYACCEPT   goto yyacceptlab
 
#define YYABORT   goto yyabortlab
 
#define YYERROR   goto yyerrorlab
 
#define YYRECOVERING()   (!!yyerrstatus)
 
#define YYBACKUP(Token, Value)
 
#define YYTERROR   1
 
#define YYERRCODE   256
 
#define YYDPRINTF(Args)
 
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
 
#define YY_STACK_PRINT(Bottom, Top)
 
#define YY_REDUCE_PRINT(Rule)
 
#define YYINITDEPTH   200
 
#define YYMAXDEPTH   10000
 
#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
 

Typedefs

typedef unsigned char yytype_uint8
 
typedef signed char yytype_int8
 
typedef unsigned short int yytype_uint16
 
typedef short int yytype_int16
 

Enumerations

enum  yytokentype {
  PREFIX_NAME = 258, SIMPLE_STRING = 259, AND = 260, OR = 261,
  NOT = 262, PROX = 263, GE = 264, LE = 265,
  NE = 266, EXACT = 267, SORTBY = 268
}
 

Functions

int yylex (YYSTYPE *lval, void *vp)
 
int yyerror (void *lval, char *msg)
 
int cql_parse (void *parm)
 
void * malloc (YYSIZE_T)
 
void free (void *)
 
static void yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, void *parm)
 
int yyparse (void *parm)
 
static void putb (YYSTYPE *lval, CQL_parser cp, int c)
 
int cql_parser_stream (CQL_parser cp, int(*getbyte)(void *client_data), void(*ungetbyte)(int b, void *client_data), void *client_data)
 parses CQL query (query stream) More...
 
CQL_parser cql_parser_create (void)
 creates a CQL parser. More...
 
void cql_parser_destroy (CQL_parser cp)
 destroys a CQL parser. More...
 
struct cql_nodecql_parser_result (CQL_parser cp)
 returns the parse tree of the most recently parsed CQL query. More...
 
void cql_parser_strict (CQL_parser cp, int mode)
 configures strict mode More...
 

Variables

static const yytype_uint8 yytranslate []
 
static const yytype_int8 yypact []
 
static const yytype_uint8 yydefact []
 
static const yytype_int8 yypgoto []
 
static const yytype_int8 yydefgoto []
 
static const yytype_int8 yytable []
 
static const yytype_int8 yycheck []
 
static const yytype_uint8 yystos []
 
static const yytype_uint8 yyr1 []
 
static const yytype_uint8 yyr2 []
 

Detailed Description

Implements CQL parser.

This is a YACC parser, but since it must be reentrant, Bison is required. The original source file is cql.y.

Definition in file cql.c.

Macro Definition Documentation

#define _Noreturn   YY_ATTRIBUTE ((__noreturn__))

Definition at line 279 of file cql.c.

#define AND   260

Definition at line 174 of file cql.c.

Referenced by yylex().

#define EXACT   267

Definition at line 181 of file cql.c.

Referenced by yylex().

#define GE   264

Definition at line 178 of file cql.c.

Referenced by yylex().

#define LE   265

Definition at line 179 of file cql.c.

Referenced by yylex().

#define NE   266

Definition at line 180 of file cql.c.

Referenced by yylex().

#define NOT   262

Definition at line 176 of file cql.c.

Referenced by yylex().

#define OR   261

Definition at line 175 of file cql.c.

Referenced by yylex().

#define PREFIX_NAME   258

Definition at line 172 of file cql.c.

Referenced by yylex().

#define PROX   263

Definition at line 177 of file cql.c.

Referenced by yylex().

#define SIMPLE_STRING   259

Definition at line 173 of file cql.c.

Referenced by yylex().

#define SORTBY   268

Definition at line 182 of file cql.c.

Referenced by yylex().

#define YY_ (   Msgid)    Msgid

Definition at line 252 of file cql.c.

Referenced by yyparse().

#define YY_ATTRIBUTE (   Spec)    /* empty */

Definition at line 262 of file cql.c.

#define YY_ATTRIBUTE_PURE   YY_ATTRIBUTE ((__pure__))

Definition at line 267 of file cql.c.

#define YY_ATTRIBUTE_UNUSED   YY_ATTRIBUTE ((__unused__))

Definition at line 271 of file cql.c.

#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN

Definition at line 302 of file cql.c.

Referenced by yydestruct(), and yyparse().

#define YY_IGNORE_MAYBE_UNINITIALIZED_END

Definition at line 303 of file cql.c.

Referenced by yydestruct(), and yyparse().

#define YY_INITIAL_VALUE (   Value)    Value

Definition at line 299 of file cql.c.

Referenced by yyparse().

#define YY_NULLPTR   0

Definition at line 132 of file cql.c.

#define YY_REDUCE_PRINT (   Rule)

Definition at line 811 of file cql.c.

Referenced by yyparse().

#define YY_STACK_PRINT (   Bottom,
  Top 
)

Definition at line 810 of file cql.c.

Referenced by yyparse().

#define YY_SYMBOL_PRINT (   Title,
  Type,
  Value,
  Location 
)

Definition at line 809 of file cql.c.

Referenced by yydestruct(), and yyparse().

#define YYABORT   goto yyabortlab

Definition at line 655 of file cql.c.

Referenced by yyparse().

#define YYACCEPT   goto yyacceptlab

Definition at line 654 of file cql.c.

Referenced by yyparse().

#define YYBACKUP (   Token,
  Value 
)
Value:
do \
if (yychar == YYEMPTY) \
{ \
yychar = (Token); \
yylval = (Value); \
YYPOPSTACK (yylen); \
yystate = *yyssp; \
goto yybackup; \
} \
else \
{ \
yyerror (parm, YY_("syntax error: cannot back up")); \
} \
while (0)
#define YYPOPSTACK(N)
#define YYERROR
Definition: cql.c:656
#define yyerror
Definition: cql.c:65
#define YYEMPTY
Definition: cql.c:651
#define YY_(Msgid)
Definition: cql.c:252

Definition at line 661 of file cql.c.

#define YYBISON   1

Definition at line 44 of file cql.c.

#define YYBISON_VERSION   "3.0.4"

Definition at line 47 of file cql.c.

#define yyclearin   (yychar = YYEMPTY)

Definition at line 650 of file cql.c.

#define YYCOPY (   Dst,
  Src,
  Count 
)
Value:
do \
{ \
YYSIZE_T yyi; \
for (yyi = 0; yyi < (Count); yyi++) \
(Dst)[yyi] = (Src)[yyi]; \
} \
while (0)
#define YYSIZE_T
Definition: cql.c:236

Definition at line 426 of file cql.c.

#define YYCOPY_NEEDED   1

Definition at line 398 of file cql.c.

#define yydebug   cql_debug

Definition at line 66 of file cql.c.

#define YYDEBUG   0

Definition at line 147 of file cql.c.

#define YYDPRINTF (   Args)

Definition at line 808 of file cql.c.

Referenced by yyparse().

#define YYEMPTY   (-2)

Definition at line 651 of file cql.c.

Referenced by yyparse().

#define YYEOF   0

Definition at line 652 of file cql.c.

Referenced by yyparse().

#define YYERRCODE   256

Definition at line 680 of file cql.c.

#define yyerrok   (yyerrstatus = 0)

Definition at line 649 of file cql.c.

#define yyerror   cql_error

Definition at line 65 of file cql.c.

Referenced by yyparse().

#define YYERROR   goto yyerrorlab

Definition at line 656 of file cql.c.

#define YYERROR_VERBOSE   0

Definition at line 141 of file cql.c.

#define YYFINAL   3

Definition at line 439 of file cql.c.

Referenced by yyparse().

#define YYFREE   free

Definition at line 369 of file cql.c.

#define YYINITDEPTH   200

Definition at line 817 of file cql.c.

Referenced by yyparse().

#define YYLAST   103

Definition at line 441 of file cql.c.

Referenced by yyparse().

#define yylex   cql_lex

Definition at line 64 of file cql.c.

Referenced by yyparse().

#define YYMALLOC   malloc

Definition at line 363 of file cql.c.

#define YYMAXDEPTH   10000

Definition at line 828 of file cql.c.

Referenced by yyparse().

#define YYMAXUTOK   268

Definition at line 455 of file cql.c.

#define yynerrs   cql_nerrs

Definition at line 67 of file cql.c.

Referenced by yyparse().

#define YYNNTS   22

Definition at line 446 of file cql.c.

#define YYNRULES   49

Definition at line 448 of file cql.c.

#define YYNSTATES   66

Definition at line 450 of file cql.c.

#define YYNTOKENS   20

Definition at line 444 of file cql.c.

Referenced by yyparse().

#define YYPACT_NINF   -34

Definition at line 529 of file cql.c.

#define yypact_value_is_default (   Yystate)    (!!((Yystate) == (-34)))

Definition at line 531 of file cql.c.

Referenced by yyparse().

#define yyparse   cql_parse

Definition at line 63 of file cql.c.

#define YYPOPSTACK (   N)    (yyvsp -= (N), yyssp -= (N))

Referenced by yyparse().

#define YYPULL   1

Definition at line 59 of file cql.c.

#define YYPURE   1

Definition at line 53 of file cql.c.

#define YYPUSH   0

Definition at line 56 of file cql.c.

#define YYRECOVERING ( )    (!!yyerrstatus)

Definition at line 659 of file cql.c.

#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)

Definition at line 242 of file cql.c.

#define YYSIZE_T   size_t

Definition at line 236 of file cql.c.

Referenced by yyparse().

#define YYSKELETON_NAME   "yacc.c"

Definition at line 50 of file cql.c.

#define YYSTACK_ALLOC   YYMALLOC

Definition at line 349 of file cql.c.

Referenced by yyparse().

#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM

Definition at line 352 of file cql.c.

#define YYSTACK_BYTES (   N)
Value:
((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
short int yytype_int16
Definition: cql.c:226
#define YYSTYPE
Definition: cql.c:120
#define YYSTACK_GAP_MAXIMUM
Definition: cql.c:390

Definition at line 394 of file cql.c.

Referenced by yyparse().

#define YYSTACK_FREE   YYFREE

Definition at line 350 of file cql.c.

Referenced by yyparse().

#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)

Definition at line 390 of file cql.c.

#define YYSTACK_RELOCATE (   Stack_alloc,
  Stack 
)
Value:
do \
{ \
YYSIZE_T yynewbytes; \
YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
Stack = &yyptr->Stack_alloc; \
yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
yyptr += yynewbytes / sizeof (*yyptr); \
} \
while (0)
#define YYCOPY(Dst, Src, Count)
Definition: cql.c:426
#define YYSTACK_GAP_MAXIMUM
Definition: cql.c:390
#define YYSIZE_T
Definition: cql.c:236

Definition at line 405 of file cql.c.

Referenced by yyparse().

#define YYSTYPE   token

Definition at line 120 of file cql.c.

Referenced by yyparse().

#define YYTABLE_NINF   -43

Definition at line 534 of file cql.c.

#define yytable_value_is_error (   Yytable_value)    0

Definition at line 536 of file cql.c.

Referenced by yyparse().

#define YYTERROR   1

Definition at line 679 of file cql.c.

Referenced by yyparse().

#define YYTOKENTYPE

Definition at line 155 of file cql.c.

#define YYTRANSLATE (   YYX)    ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)

Definition at line 457 of file cql.c.

Referenced by yyparse().

#define YYUNDEFTOK   2

Definition at line 454 of file cql.c.

#define YYUSE (   E)    ((void) (E))

Definition at line 285 of file cql.c.

Referenced by yydestruct().

Typedef Documentation

typedef short int yytype_int16

Definition at line 226 of file cql.c.

typedef signed char yytype_int8

Definition at line 214 of file cql.c.

typedef unsigned short int yytype_uint16

Definition at line 220 of file cql.c.

typedef unsigned char yytype_uint8

Definition at line 208 of file cql.c.

Enumeration Type Documentation

Enumerator
PREFIX_NAME 
SIMPLE_STRING 
AND 
OR 
NOT 
PROX 
GE 
LE 
NE 
EXACT 
SORTBY 

Definition at line 156 of file cql.c.

Function Documentation

int cql_parse ( void *  parm)

Referenced by cql_parser_stream().

CQL_parser cql_parser_create ( void  )

creates a CQL parser.

Returns
CCL parser

Returns CQL parser or NULL if parser could not be created.

Definition at line 1971 of file cql.c.

References cql_parser::client_data, cql_parser::getbyte, cql_parser::last_error, cql_parser::last_pos, cql_parser::nmem, nmem_create(), cql_parser::strict, cql_parser::top, cql_parser::ungetbyte, and xmalloc.

Referenced by cql2pqf().

void cql_parser_destroy ( CQL_parser  cp)

destroys a CQL parser.

Parameters
cpCQL parser

This function does nothing if NULL if received.

Definition at line 1986 of file cql.c.

References cql_node_destroy(), cql_parser::nmem, nmem_destroy(), cql_parser::top, and xfree.

Referenced by cql2pqf().

struct cql_node* cql_parser_result ( CQL_parser  cp)

returns the parse tree of the most recently parsed CQL query.

Parameters
cpCQL parser
Returns
CQL node or NULL for failure

Definition at line 1993 of file cql.c.

References cql_parser::top.

Referenced by cql2pqf().

int cql_parser_stream ( CQL_parser  cp,
int(*)(void *client_data)  getbyte,
void(*)(int b, void *client_data)  ungetbyte,
void *  client_data 
)

parses CQL query (query stream)

Parameters
cpCQL parser
getbytefunction which reads one character from stream
ungetbytefunction which unreads one character from stream
client_datadata to be passed to stream functions
Return values
0success
!=0failure

This function is similar to cql_parser_string but takes a functions to read each query character from a stream.

The functions pointers getbytes, ungetbyte are similar to that known from stdios getc, ungetc.

Definition at line 1955 of file cql.c.

References cql_parser::client_data, cql_node_destroy(), cql_parse(), cql_parser::getbyte, cql_parser::nmem, nmem_reset(), cql_parser::top, and cql_parser::ungetbyte.

Referenced by cql_parser_stdio(), and cql_parser_string().

void cql_parser_strict ( CQL_parser  cp,
int  mode 
)

configures strict mode

Parameters
cpCQL parser
mode1=enable strict mode, 0=disable strict mode

This function is similar to cql_parser_string but reads from stdio FILE handle instead.

Definition at line 1998 of file cql.c.

References cql_parser::strict.

void free ( void *  )
void* malloc ( YYSIZE_T  )
static void putb ( YYSTYPE lval,
CQL_parser  cp,
int  c 
)
static

putb is a utility that puts one character to the string in current lexical token. This routine deallocates as necessary using NMEM.

Definition at line 1795 of file cql.c.

References cql_parser::nmem, and nmem_malloc().

Referenced by yylex().

static void yydestruct ( const char *  yymsg,
int  yytype,
YYSTYPE yyvaluep,
void *  parm 
)
static
int yyerror ( void *  lval,
char *  msg 
)

Definition at line 1784 of file cql.c.

int yylex ( YYSTYPE lval,
void *  vp 
)

yylex returns next token for Bison to be read. In this case one of the CQL terminals are returned.

Definition at line 1814 of file cql.c.

References AND, cql_parser::client_data, cql_strcmp(), EXACT, GE, cql_parser::getbyte, LE, NE, cql_parser::nmem, nmem_malloc(), NOT, OR, PREFIX_NAME, PROX, putb(), SIMPLE_STRING, SORTBY, cql_parser::strict, cql_parser::ungetbyte, and yaz_isspace.

int yyparse ( void *  parm)

Variable Documentation

const yytype_int8 yycheck[]
static
Initial value:
=
{
11, 20, 15, 21, 0, 3, 4, 0, 1, 37,
21, 9, 10, 11, 12, 4, 14, 15, 46, 13,
13, 19, 17, 42, 57, 58, 44, 18, 44, 39,
41, 60, -1, 44, -1, 3, 5, 6, 7, 8,
59, 9, 10, 11, 12, 56, 14, 15, -1, -1,
-1, 19, -1, 64, 3, 4, 5, 6, 7, 8,
-1, -1, -1, -1, 13, 14, -1, 16, 3, 4,
5, 6, 7, 8, -1, -1, -1, -1, 13, -1,
-1, 16, 3, 4, 5, 6, 7, 8, -1, -1,
-1, -1, 13, 9, 10, 11, 12, -1, 14, 15,
-1, -1, -1, 19
}

Definition at line 600 of file cql.c.

Referenced by yyparse().

const yytype_uint8 yydefact[]
static
Initial value:
=
{
2, 0, 0, 1, 44, 43, 45, 46, 47, 48,
49, 0, 19, 4, 0, 11, 16, 0, 25, 14,
0, 0, 3, 10, 26, 27, 28, 29, 32, 33,
38, 39, 40, 41, 36, 35, 37, 32, 34, 25,
21, 0, 0, 0, 5, 7, 32, 42, 17, 22,
24, 12, 15, 20, 6, 8, 0, 0, 0, 0,
30, 18, 23, 13, 0, 31
}

Definition at line 555 of file cql.c.

Referenced by yyparse().

const yytype_int8 yydefgoto[]
static
Initial value:
=
{
-1, 1, 2, 22, 44, 45, 13, 14, 59, 42,
15, 57, 16, 20, 58, 40, 28, 48, 37, 38,
17, 18
}

Definition at line 575 of file cql.c.

Referenced by yyparse().

const yytype_int8 yypact[]
static
Initial value:
=
{
-34, 4, 51, -34, -34, -34, -34, -34, -34, -34,
-34, 79, -34, 6, 7, 31, -34, 32, 2, -13,
51, 79, -34, -34, -34, -34, -34, -34, -34, -34,
-34, -34, -34, -34, -34, -34, -34, -34, -34, 11,
-34, 79, 51, 5, 79, -34, -34, -34, 9, 9,
-34, -34, -34, -34, -34, 9, 79, 65, 65, 51,
84, -34, -34, -34, 79, -34
}

Definition at line 541 of file cql.c.

Referenced by yyparse().

const yytype_int8 yypgoto[]
static
Initial value:
=
{
-34, -34, -34, -34, -34, -16, -34, -19, -34, -34,
-34, -34, -33, -34, -34, -10, -34, -28, -34, -29,
-18, -11
}

Definition at line 567 of file cql.c.

Referenced by yyparse().

const yytype_uint8 yyr1[]
static
Initial value:
=
{
0, 20, 22, 21, 23, 23, 24, 24, 25, 26,
26, 27, 28, 27, 29, 27, 30, 31, 30, 33,
32, 32, 34, 32, 35, 35, 36, 36, 36, 36,
37, 37, 37, 38, 38, 39, 39, 39, 39, 39,
39, 39, 40, 41, 41, 41, 41, 41, 41, 41
}

Definition at line 629 of file cql.c.

Referenced by yyparse().

const yytype_uint8 yyr2[]
static
Initial value:
=
{
0, 2, 0, 3, 0, 2, 2, 1, 2, 1,
2, 1, 0, 6, 0, 4, 1, 0, 5, 0,
4, 2, 0, 5, 2, 0, 1, 1, 1, 1,
3, 5, 0, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1
}

Definition at line 639 of file cql.c.

Referenced by yyparse().

const yytype_uint8 yystos[]
static
Initial value:
=
{
0, 21, 22, 0, 3, 4, 5, 6, 7, 8,
13, 14, 16, 26, 27, 30, 32, 40, 41, 41,
33, 13, 23, 1, 5, 6, 7, 8, 36, 3,
9, 10, 11, 12, 14, 15, 19, 38, 39, 4,
35, 15, 29, 27, 24, 25, 40, 41, 37, 37,
35, 41, 27, 17, 25, 37, 18, 31, 34, 28,
41, 32, 32, 27, 39, 41
}

Definition at line 617 of file cql.c.

Referenced by yyparse().

const yytype_int8 yytable[]
static
Initial value:
=
{
19, 43, 41, 46, 3, -42, 39, -9, 23, 49,
47, -42, -42, -42, -42, 39, -42, -42, 55, 21,
-9, -42, 53, 52, 61, 62, 46, 56, 54, 50,
51, 64, 0, 47, 0, 29, 24, 25, 26, 27,
63, 30, 31, 32, 33, 60, 34, 35, 0, 0,
0, 36, 0, 65, 4, 5, 6, 7, 8, 9,
0, 0, 0, 0, 10, 11, 0, 12, 4, 5,
6, 7, 8, 9, 0, 0, 0, 0, 10, 0,
0, 12, 4, 5, 6, 7, 8, 9, 0, 0,
0, 0, 10, 30, 31, 32, 33, 0, 34, 35,
0, 0, 0, 36
}

Definition at line 585 of file cql.c.

Referenced by yyparse().

const yytype_uint8 yytranslate[]
static
Initial value:
=
{
0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
16, 17, 2, 2, 2, 2, 2, 18, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
19, 15, 14, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
5, 6, 7, 8, 9, 10, 11, 12, 13
}

Definition at line 462 of file cql.c.