YAZ  4.2.57
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>

Go to the source code of this file.

Data Structures

struct  token
struct  cql_parser
union  yyalloc

Macros

#define YYBISON   1
#define YYBISON_VERSION   "2.5"
#define YYSKELETON_NAME   "yacc.c"
#define YYPURE   1
#define YYPUSH   0
#define YYPULL   1
#define YYLSP_NEEDED   0
#define yyparse   cql_parse
#define yylex   cql_lex
#define yyerror   cql_error
#define yylval   cql_lval
#define yychar   cql_char
#define yydebug   cql_debug
#define yynerrs   cql_nerrs
#define YYSTYPE   token
#define YYPARSE_PARAM   parm
#define YYLEX_PARAM   parm
#define YYDEBUG   0
#define YYERROR_VERBOSE   0
#define YYTOKEN_TABLE   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   unsigned int
#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)
#define YY_(msgid)   msgid
#define YYUSE(e)   ((void) (e))
#define YYID(n)   (n)
#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(To, From, 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 YYTABLE_NINF   -43
#define yypact_value_is_default(yystate)   ((yystate) == (-34))
#define yytable_value_is_error(yytable_value)   YYID (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 YYFAIL   goto yyerrlab
#define YYRECOVERING()   (!!yyerrstatus)
#define YYBACKUP(Token, Value)
#define YYTERROR   1
#define YYERRCODE   256
#define YYRHSLOC(Rhs, K)   ((Rhs)[K])
#define YYLLOC_DEFAULT(Current, Rhs, N)
#define YY_LOCATION_PRINT(File, Loc)   ((void) 0)
#define YYLEX   yylex (&yylval, YYLEX_PARAM)
#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 short int 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 (char *s)
static void yydestruct (char *yymsg, int yytype, YYSTYPE *yyvaluep) const
int yyparse ()
int yyparse (void *YYPARSE_PARAM)
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)
CQL_parser cql_parser_create (void)
 creates a CQL parser.
void cql_parser_destroy (CQL_parser cp)
 destroys a CQL parser.
struct cql_nodecql_parser_result (CQL_parser cp)
 returns the parse tree of the most recently parsed CQL query.
void cql_parser_strict (CQL_parser cp, int mode)
 configures strict mode

Variables

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

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 AND   260

Definition at line 175 of file cql.c.

Referenced by yylex().

#define EXACT   267

Definition at line 182 of file cql.c.

Referenced by yylex().

#define GE   264

Definition at line 179 of file cql.c.

Referenced by yylex().

#define LE   265

Definition at line 180 of file cql.c.

Referenced by yylex().

#define NE   266

Definition at line 181 of file cql.c.

Referenced by yylex().

#define NOT   262

Definition at line 177 of file cql.c.

Referenced by yylex().

#define OR   261

Definition at line 176 of file cql.c.

Referenced by yylex().

#define PREFIX_NAME   258

Definition at line 173 of file cql.c.

Referenced by yylex().

#define PROX   263

Definition at line 178 of file cql.c.

Referenced by yylex().

#define SIMPLE_STRING   259

Definition at line 174 of file cql.c.

Referenced by yylex().

#define SORTBY   268

Definition at line 183 of file cql.c.

Referenced by yylex().

#define YY_ (   msgid)    msgid

Definition at line 257 of file cql.c.

Referenced by yyparse().

#define YY_LOCATION_PRINT (   File,
  Loc 
)    ((void) 0)

Definition at line 728 of file cql.c.

#define YY_REDUCE_PRINT (   Rule)

Definition at line 900 of file cql.c.

Referenced by yyparse().

#define YY_STACK_PRINT (   Bottom,
  Top 
)

Definition at line 899 of file cql.c.

Referenced by yyparse().

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

Definition at line 898 of file cql.c.

Referenced by yydestruct(), and yyparse().

#define YYABORT   goto yyabortlab

Definition at line 657 of file cql.c.

Referenced by yyparse().

#define YYACCEPT   goto yyacceptlab

Definition at line 656 of file cql.c.

Referenced by yyparse().

#define YYBACKUP (   Token,
  Value 
)
Value:
do \
if (yychar == YYEMPTY && yylen == 1) \
{ \
yychar = (Token); \
yylval = (Value); \
YYPOPSTACK (1); \
goto yybackup; \
} \
else \
{ \
yyerror (YY_("syntax error: cannot back up")); \
YYERROR; \
} \
while (YYID (0))

Definition at line 678 of file cql.c.

#define YYBISON   1

Definition at line 44 of file cql.c.

#define YYBISON_VERSION   "2.5"

Definition at line 47 of file cql.c.

#define yychar   cql_char

Definition at line 69 of file cql.c.

Referenced by yyparse().

#define yyclearin   (yychar = YYEMPTY)

Definition at line 652 of file cql.c.

#define YYCOPY (   To,
  From,
  Count 
)
Value:
do \
{ \
YYSIZE_T yyi; \
for (yyi = 0; yyi < (Count); yyi++) \
(To)[yyi] = (From)[yyi]; \
} \
while (YYID (0))

Definition at line 404 of file cql.c.

#define YYCOPY_NEEDED   1

Definition at line 376 of file cql.c.

#define yydebug   cql_debug

Definition at line 70 of file cql.c.

#define YYDEBUG   0

Definition at line 136 of file cql.c.

#define YYDPRINTF (   Args)

Definition at line 897 of file cql.c.

Referenced by yyparse().

#define YYEMPTY   (-2)

Definition at line 653 of file cql.c.

Referenced by yyparse().

#define YYEOF   0

Definition at line 654 of file cql.c.

Referenced by yyparse().

#define YYERRCODE   256

Definition at line 696 of file cql.c.

#define yyerrok   (yyerrstatus = 0)

Definition at line 651 of file cql.c.

#define yyerror   cql_error

Definition at line 67 of file cql.c.

Referenced by yyparse().

#define YYERROR   goto yyerrorlab

Definition at line 658 of file cql.c.

#define YYERROR_VERBOSE   0

Definition at line 144 of file cql.c.

#define YYFAIL   goto yyerrlab

Definition at line 668 of file cql.c.

#define YYFINAL   3

Definition at line 417 of file cql.c.

Referenced by yyparse().

#define YYFREE   free

Definition at line 346 of file cql.c.

#define YYID (   n)    (n)

Definition at line 270 of file cql.c.

Referenced by yyparse().

#define YYINITDEPTH   200

Definition at line 906 of file cql.c.

Referenced by yyparse().

#define YYLAST   103

Definition at line 419 of file cql.c.

Referenced by yyparse().

#define yylex   cql_lex

Definition at line 66 of file cql.c.

#define YYLEX   yylex (&yylval, YYLEX_PARAM)

Definition at line 735 of file cql.c.

Referenced by yyparse().

#define YYLEX_PARAM   parm

Definition at line 125 of file cql.c.

#define YYLLOC_DEFAULT (   Current,
  Rhs,
 
)
Value:
do \
if (YYID (N)) \
{ \
(Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
(Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
(Current).last_line = YYRHSLOC (Rhs, N).last_line; \
(Current).last_column = YYRHSLOC (Rhs, N).last_column; \
} \
else \
{ \
(Current).first_line = (Current).last_line = \
YYRHSLOC (Rhs, 0).last_line; \
(Current).first_column = (Current).last_column = \
YYRHSLOC (Rhs, 0).last_column; \
} \
while (YYID (0))

Definition at line 705 of file cql.c.

#define YYLSP_NEEDED   0

Definition at line 62 of file cql.c.

#define yylval   cql_lval

Definition at line 68 of file cql.c.

Referenced by yyparse().

#define YYMALLOC   malloc

Definition at line 339 of file cql.c.

#define YYMAXDEPTH   10000

Definition at line 917 of file cql.c.

Referenced by yyparse().

#define YYMAXUTOK   268

Definition at line 432 of file cql.c.

#define yynerrs   cql_nerrs

Definition at line 71 of file cql.c.

Referenced by yyparse().

#define YYNNTS   22

Definition at line 424 of file cql.c.

#define YYNRULES   49

Definition at line 426 of file cql.c.

#define YYNSTATES   66

Definition at line 428 of file cql.c.

#define YYNTOKENS   20

Definition at line 422 of file cql.c.

Referenced by yyparse().

#define YYPACT_NINF   -34

Definition at line 578 of file cql.c.

#define yypact_value_is_default (   yystate)    ((yystate) == (-34))

Definition at line 617 of file cql.c.

Referenced by yyparse().

#define yyparse   cql_parse

Definition at line 65 of file cql.c.

#define YYPARSE_PARAM   parm

Definition at line 124 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 676 of file cql.c.

#define YYRHSLOC (   Rhs,
 
)    ((Rhs)[K])

Definition at line 703 of file cql.c.

#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)

Definition at line 247 of file cql.c.

#define YYSIZE_T   unsigned int

Definition at line 243 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 325 of file cql.c.

Referenced by yyparse().

#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM

Definition at line 328 of file cql.c.

#define YYSTACK_BYTES (   N)
Value:
((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \

Definition at line 372 of file cql.c.

Referenced by yyparse().

#define YYSTACK_FREE   YYFREE

Definition at line 326 of file cql.c.

Referenced by yyparse().

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

Definition at line 368 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 (YYID (0))

Definition at line 383 of file cql.c.

Referenced by yyparse().

#define YYSTYPE   token

Definition at line 122 of file cql.c.

Referenced by yyparse().

#define YYTABLE_NINF   -43

Definition at line 601 of file cql.c.

#define yytable_value_is_error (   yytable_value)    YYID (0)

Definition at line 620 of file cql.c.

Referenced by yyparse().

#define YYTERROR   1

Definition at line 695 of file cql.c.

Referenced by yyparse().

#define YYTOKEN_TABLE   0

Definition at line 149 of file cql.c.

#define YYTOKENTYPE

Definition at line 155 of file cql.c.

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

Definition at line 434 of file cql.c.

Referenced by yyparse().

#define YYUNDEFTOK   2

Definition at line 431 of file cql.c.

#define YYUSE (   e)    ((void) (e))

Definition at line 263 of file cql.c.

Referenced by yydestruct().

Typedef Documentation

typedef short int yytype_int16

Definition at line 230 of file cql.c.

typedef short int yytype_int8

Definition at line 218 of file cql.c.

typedef unsigned short int yytype_uint16

Definition at line 224 of file cql.c.

typedef unsigned char yytype_uint8

Definition at line 209 of file cql.c.

Enumeration Type Documentation

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

Definition at line 158 of file cql.c.

Function Documentation

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 2154 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 2169 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)
read

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

Parameters
cpCQL parser
Returns
CQL node or NULL for failure

Definition at line 2176 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 2138 of file cql.c.

References cql_parser::client_data, cql_node_destroy(), 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 2181 of file cql.c.

References cql_parser::strict.

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 1978 of file cql.c.

References cql_parser::nmem, and nmem_malloc().

Referenced by yylex().

static void yydestruct ( char *  yymsg,
int  yytype,
YYSTYPE yyvaluep 
) const
static

Definition at line 1170 of file cql.c.

References YY_SYMBOL_PRINT, and YYUSE.

Referenced by yyparse().

int yyerror ( char *  s)

Definition at line 1967 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 1997 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 ( )
int yyparse ( void *  YYPARSE_PARAM)

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 623 of file cql.c.

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 557 of file cql.c.

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 569 of file cql.c.

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 579 of file cql.c.

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 591 of file cql.c.

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 535 of file cql.c.

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 545 of file cql.c.

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 640 of file cql.c.

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 602 of file cql.c.

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 438 of file cql.c.