mirror of https://gitee.com/bigwinds/arangodb
allow enclosing identifiers in forward ticks, too
This commit is contained in:
parent
086225b6d4
commit
f28fb0c198
|
@ -1,4 +1,4 @@
|
|||
#line 15 "arangod/Aql/tokens.ll"
|
||||
#line 16 "arangod/Aql/tokens.ll"
|
||||
#include <stdint.h>
|
||||
|
||||
|
||||
|
@ -381,8 +381,8 @@ static void yy_fatal_error (yyconst char msg[] ,yyscan_t yyscanner );
|
|||
*yy_cp = '\0'; \
|
||||
yyg->yy_c_buf_p = yy_cp;
|
||||
|
||||
#define YY_NUM_RULES 88
|
||||
#define YY_END_OF_BUFFER 89
|
||||
#define YY_NUM_RULES 93
|
||||
#define YY_END_OF_BUFFER 94
|
||||
/* This struct is not used in this scanner,
|
||||
but its presence is necessary. */
|
||||
struct yy_trans_info
|
||||
|
@ -390,30 +390,31 @@ struct yy_trans_info
|
|||
flex_int32_t yy_verify;
|
||||
flex_int32_t yy_nxt;
|
||||
};
|
||||
static yyconst flex_int16_t yy_accept[226] =
|
||||
static yyconst flex_int16_t yy_accept[236] =
|
||||
{ 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 89, 87, 77, 78, 39, 64, 87, 46,
|
||||
87, 69, 52, 53, 44, 42, 51, 43, 87, 45,
|
||||
74, 74, 49, 37, 38, 35, 47, 87, 58, 58,
|
||||
0, 0, 0, 0, 94, 92, 82, 83, 39, 69,
|
||||
92, 46, 92, 74, 52, 53, 44, 42, 51, 43,
|
||||
92, 45, 79, 79, 49, 37, 38, 35, 47, 92,
|
||||
58, 58, 58, 58, 58, 58, 58, 58, 58, 58,
|
||||
58, 58, 58, 56, 57, 87, 59, 54, 87, 55,
|
||||
63, 62, 63, 60, 73, 72, 70, 73, 68, 67,
|
||||
65, 68, 81, 80, 84, 86, 85, 77, 33, 58,
|
||||
40, 50, 82, 79, 0, 0, 74, 48, 36, 32,
|
||||
34, 76, 0, 0, 58, 58, 58, 58, 58, 58,
|
||||
58, 58, 58, 58, 58, 56, 57, 92, 59, 54,
|
||||
92, 55, 92, 63, 62, 63, 60, 68, 67, 68,
|
||||
68, 78, 77, 75, 78, 73, 72, 70, 73, 86,
|
||||
85, 89, 91, 90, 82, 33, 58, 40, 50, 87,
|
||||
84, 0, 0, 79, 48, 36, 32, 34, 81, 0,
|
||||
|
||||
58, 58, 58, 58, 58, 58, 15, 58, 58, 58,
|
||||
58, 14, 58, 58, 58, 58, 58, 58, 58, 0,
|
||||
41, 61, 71, 66, 81, 84, 83, 75, 0, 75,
|
||||
76, 76, 58, 27, 13, 26, 10, 58, 58, 58,
|
||||
0, 58, 58, 58, 58, 58, 58, 58, 58, 58,
|
||||
58, 58, 58, 15, 58, 58, 58, 58, 14, 58,
|
||||
58, 58, 58, 58, 58, 58, 0, 41, 64, 61,
|
||||
66, 65, 76, 71, 86, 89, 88, 80, 0, 80,
|
||||
81, 81, 58, 27, 13, 26, 10, 58, 58, 58,
|
||||
58, 58, 1, 58, 58, 58, 58, 2, 58, 58,
|
||||
12, 58, 58, 58, 58, 58, 58, 58, 58, 58,
|
||||
58, 58, 58, 76, 76, 58, 58, 11, 58, 58,
|
||||
58, 58, 58, 81, 81, 58, 58, 11, 58, 58,
|
||||
58, 58, 58, 58, 16, 58, 28, 29, 58, 58,
|
||||
58, 58, 6, 30, 58, 58, 17, 58, 58, 58,
|
||||
31, 58, 23, 58, 58, 7, 58, 58, 58, 58,
|
||||
|
||||
31, 58, 23, 58, 58, 7, 58, 58, 58, 58,
|
||||
58, 58, 58, 58, 58, 3, 58, 19, 58, 18,
|
||||
58, 4, 20, 22, 58, 5, 58, 25, 58, 21,
|
||||
58, 8, 24, 9, 0
|
||||
|
@ -439,9 +440,9 @@ static yyconst flex_int32_t yy_ec[256] =
|
|||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 77,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 78, 1, 1, 1, 1, 1, 1,
|
||||
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
|
@ -451,7 +452,7 @@ static yyconst flex_int32_t yy_ec[256] =
|
|||
1, 1, 1, 1, 1
|
||||
} ;
|
||||
|
||||
static yyconst flex_int32_t yy_meta[77] =
|
||||
static yyconst flex_int32_t yy_meta[79] =
|
||||
{ 0,
|
||||
1, 1, 2, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 3, 1, 1, 1, 1, 1, 4, 4, 1,
|
||||
|
@ -460,138 +461,144 @@ static yyconst flex_int32_t yy_meta[77] =
|
|||
6, 6, 6, 6, 6, 6, 6, 1, 1, 1,
|
||||
7, 1, 6, 6, 6, 6, 6, 6, 6, 6,
|
||||
6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
|
||||
6, 6, 6, 1, 1, 1
|
||||
6, 6, 6, 1, 1, 1, 1, 1
|
||||
} ;
|
||||
|
||||
static yyconst flex_int16_t yy_base[246] =
|
||||
static yyconst flex_int16_t yy_base[258] =
|
||||
{ 0,
|
||||
0, 0, 74, 75, 76, 79, 81, 84, 366, 365,
|
||||
78, 80, 367, 494, 363, 494, 342, 494, 0, 494,
|
||||
350, 494, 494, 494, 494, 494, 494, 494, 313, 79,
|
||||
64, 79, 299, 253, 243, 235, 494, 68, 70, 0,
|
||||
66, 80, 109, 72, 78, 88, 107, 106, 87, 101,
|
||||
111, 113, 120, 494, 494, 201, 494, 494, 145, 494,
|
||||
494, 494, 0, 494, 494, 494, 494, 0, 494, 494,
|
||||
494, 0, 0, 494, 0, 494, 186, 154, 494, 0,
|
||||
494, 494, 494, 494, 81, 142, 164, 494, 494, 494,
|
||||
494, 0, 133, 69, 0, 127, 127, 140, 136, 131,
|
||||
0, 0, 76, 77, 78, 81, 82, 83, 84, 85,
|
||||
378, 377, 90, 91, 377, 517, 374, 517, 353, 517,
|
||||
0, 517, 365, 517, 517, 517, 517, 517, 517, 517,
|
||||
356, 83, 66, 88, 346, 315, 263, 251, 517, 58,
|
||||
78, 0, 59, 78, 110, 74, 79, 117, 111, 113,
|
||||
81, 83, 112, 118, 126, 517, 517, 219, 517, 517,
|
||||
126, 517, 91, 517, 517, 0, 517, 517, 517, 0,
|
||||
75, 517, 517, 517, 0, 517, 517, 517, 0, 0,
|
||||
517, 0, 517, 104, 117, 517, 0, 517, 517, 517,
|
||||
517, 143, 151, 170, 517, 517, 517, 517, 0, 140,
|
||||
|
||||
129, 133, 149, 152, 149, 139, 175, 155, 162, 162,
|
||||
168, 0, 163, 172, 166, 164, 181, 176, 209, 64,
|
||||
494, 494, 494, 494, 0, 0, 494, 221, 85, 228,
|
||||
0, 60, 181, 0, 0, 0, 0, 200, 140, 199,
|
||||
208, 210, 0, 214, 216, 226, 219, 0, 225, 231,
|
||||
0, 227, 237, 227, 231, 225, 227, 241, 246, 243,
|
||||
241, 0, 284, 56, 0, 247, 252, 0, 251, 257,
|
||||
260, 261, 253, 264, 0, 263, 0, 0, 268, 263,
|
||||
284, 272, 0, 0, 272, 275, 0, 279, 290, 282,
|
||||
0, 281, 0, 286, 282, 0, 282, 297, 300, 292,
|
||||
62, 0, 135, 136, 148, 154, 137, 143, 148, 156,
|
||||
157, 155, 171, 183, 159, 166, 169, 169, 0, 163,
|
||||
177, 167, 169, 194, 172, 226, 54, 517, 517, 517,
|
||||
517, 517, 517, 517, 0, 0, 517, 229, 235, 237,
|
||||
0, 50, 194, 0, 0, 0, 0, 206, 202, 206,
|
||||
216, 220, 0, 224, 226, 230, 227, 0, 233, 239,
|
||||
0, 235, 245, 235, 240, 234, 236, 250, 255, 252,
|
||||
250, 0, 293, 48, 0, 258, 263, 0, 261, 268,
|
||||
271, 270, 262, 272, 0, 271, 0, 0, 277, 272,
|
||||
292, 280, 0, 0, 280, 283, 0, 287, 298, 291,
|
||||
|
||||
306, 297, 317, 304, 316, 0, 320, 0, 315, 0,
|
||||
327, 0, 0, 0, 316, 0, 317, 0, 332, 0,
|
||||
332, 0, 0, 0, 494, 389, 396, 403, 410, 417,
|
||||
95, 421, 425, 427, 434, 441, 448, 455, 462, 466,
|
||||
470, 474, 478, 482, 486
|
||||
0, 290, 0, 295, 291, 0, 291, 297, 308, 300,
|
||||
311, 305, 325, 313, 324, 0, 329, 0, 324, 0,
|
||||
335, 0, 0, 0, 324, 0, 326, 0, 341, 0,
|
||||
341, 0, 0, 0, 517, 398, 405, 412, 419, 426,
|
||||
433, 91, 437, 441, 443, 450, 457, 464, 471, 478,
|
||||
485, 489, 493, 497, 501, 505, 509
|
||||
} ;
|
||||
|
||||
static yyconst flex_int16_t yy_def[246] =
|
||||
static yyconst flex_int16_t yy_def[258] =
|
||||
{ 0,
|
||||
225, 1, 226, 226, 227, 227, 228, 228, 229, 229,
|
||||
230, 230, 225, 225, 225, 225, 225, 225, 231, 225,
|
||||
225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
|
||||
225, 225, 225, 225, 225, 225, 225, 232, 233, 233,
|
||||
233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
|
||||
233, 233, 233, 225, 225, 234, 225, 225, 225, 225,
|
||||
225, 225, 235, 225, 225, 225, 225, 236, 225, 225,
|
||||
225, 237, 238, 225, 239, 225, 225, 225, 225, 233,
|
||||
225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
|
||||
225, 240, 232, 241, 233, 233, 233, 233, 233, 233,
|
||||
235, 1, 236, 236, 237, 237, 238, 238, 239, 239,
|
||||
240, 240, 241, 241, 235, 235, 235, 235, 235, 235,
|
||||
242, 235, 235, 235, 235, 235, 235, 235, 235, 235,
|
||||
235, 235, 235, 235, 235, 235, 235, 235, 235, 243,
|
||||
244, 244, 244, 244, 244, 244, 244, 244, 244, 244,
|
||||
244, 244, 244, 244, 244, 235, 235, 245, 235, 235,
|
||||
235, 235, 235, 235, 235, 246, 235, 235, 235, 247,
|
||||
235, 235, 235, 235, 248, 235, 235, 235, 249, 250,
|
||||
235, 251, 235, 235, 235, 235, 244, 235, 235, 235,
|
||||
235, 235, 235, 235, 235, 235, 235, 235, 252, 243,
|
||||
|
||||
233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
|
||||
233, 233, 233, 233, 233, 233, 233, 233, 242, 234,
|
||||
225, 225, 225, 225, 238, 239, 225, 225, 225, 225,
|
||||
240, 243, 233, 233, 233, 233, 233, 233, 233, 233,
|
||||
233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
|
||||
233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
|
||||
233, 244, 242, 243, 245, 233, 233, 233, 233, 233,
|
||||
233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
|
||||
233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
|
||||
233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
|
||||
253, 244, 244, 244, 244, 244, 244, 244, 244, 244,
|
||||
244, 244, 244, 244, 244, 244, 244, 244, 244, 244,
|
||||
244, 244, 244, 244, 244, 254, 245, 235, 235, 235,
|
||||
235, 235, 235, 235, 250, 251, 235, 235, 235, 235,
|
||||
252, 255, 244, 244, 244, 244, 244, 244, 244, 244,
|
||||
244, 244, 244, 244, 244, 244, 244, 244, 244, 244,
|
||||
244, 244, 244, 244, 244, 244, 244, 244, 244, 244,
|
||||
244, 256, 254, 255, 257, 244, 244, 244, 244, 244,
|
||||
244, 244, 244, 244, 244, 244, 244, 244, 244, 244,
|
||||
244, 244, 244, 244, 244, 244, 244, 244, 244, 244,
|
||||
|
||||
233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
|
||||
233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
|
||||
233, 233, 233, 233, 0, 225, 225, 225, 225, 225,
|
||||
225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
|
||||
225, 225, 225, 225, 225
|
||||
244, 244, 244, 244, 244, 244, 244, 244, 244, 244,
|
||||
244, 244, 244, 244, 244, 244, 244, 244, 244, 244,
|
||||
244, 244, 244, 244, 244, 244, 244, 244, 244, 244,
|
||||
244, 244, 244, 244, 0, 235, 235, 235, 235, 235,
|
||||
235, 235, 235, 235, 235, 235, 235, 235, 235, 235,
|
||||
235, 235, 235, 235, 235, 235, 235
|
||||
} ;
|
||||
|
||||
static yyconst flex_int16_t yy_nxt[571] =
|
||||
static yyconst flex_int16_t yy_nxt[596] =
|
||||
{ 0,
|
||||
14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
|
||||
24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
|
||||
34, 35, 36, 37, 38, 39, 40, 41, 42, 40,
|
||||
43, 44, 40, 45, 40, 46, 40, 47, 48, 40,
|
||||
49, 50, 51, 52, 40, 53, 40, 54, 14, 55,
|
||||
56, 57, 39, 40, 41, 42, 40, 43, 44, 40,
|
||||
45, 46, 40, 47, 48, 40, 49, 50, 51, 52,
|
||||
40, 53, 40, 58, 59, 60, 62, 62, 66, 85,
|
||||
76, 66, 76, 70, 67, 71, 70, 67, 71, 77,
|
||||
83, 77, 93, 86, 85, 84, 87, 87, 128, 128,
|
||||
16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
|
||||
26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
|
||||
36, 37, 38, 39, 40, 41, 42, 43, 44, 42,
|
||||
45, 46, 42, 47, 42, 48, 42, 49, 50, 42,
|
||||
51, 52, 53, 54, 42, 55, 42, 56, 16, 57,
|
||||
58, 59, 41, 42, 43, 44, 42, 45, 46, 42,
|
||||
47, 48, 42, 49, 50, 42, 51, 52, 53, 54,
|
||||
42, 55, 42, 60, 61, 62, 16, 63, 65, 65,
|
||||
69, 92, 100, 69, 73, 73, 77, 77, 78, 78,
|
||||
74, 74, 83, 83, 90, 93, 87, 107, 175, 91,
|
||||
|
||||
80, 96, 130, 130, 100, 97, 165, 98, 86, 101,
|
||||
165, 99, 106, 102, 120, 107, 114, 108, 94, 94,
|
||||
86, 109, 63, 63, 68, 64, 64, 68, 96, 72,
|
||||
100, 97, 72, 98, 103, 86, 101, 99, 106, 115,
|
||||
102, 107, 104, 114, 108, 110, 112, 105, 109, 113,
|
||||
111, 116, 117, 118, 129, 78, 129, 225, 133, 130,
|
||||
130, 103, 134, 137, 144, 115, 138, 168, 135, 104,
|
||||
139, 110, 112, 105, 140, 113, 111, 116, 117, 85,
|
||||
118, 87, 87, 94, 141, 133, 136, 142, 134, 143,
|
||||
137, 144, 138, 86, 168, 135, 139, 148, 149, 150,
|
||||
175, 84, 84, 92, 127, 94, 94, 108, 101, 103,
|
||||
121, 109, 101, 104, 113, 105, 114, 93, 85, 106,
|
||||
137, 122, 93, 107, 66, 66, 70, 67, 67, 70,
|
||||
75, 75, 79, 79, 108, 110, 103, 121, 109, 104,
|
||||
113, 105, 114, 111, 93, 106, 115, 122, 112, 117,
|
||||
116, 132, 123, 119, 118, 71, 120, 124, 71, 125,
|
||||
138, 138, 110, 139, 235, 139, 143, 129, 140, 140,
|
||||
111, 144, 148, 115, 112, 117, 145, 116, 123, 119,
|
||||
118, 147, 120, 124, 149, 92, 125, 94, 94, 150,
|
||||
101, 151, 152, 143, 146, 153, 154, 144, 148, 93,
|
||||
|
||||
140, 145, 127, 152, 151, 153, 157, 158, 154, 159,
|
||||
141, 155, 136, 142, 156, 143, 146, 147, 161, 121,
|
||||
86, 166, 160, 148, 149, 150, 162, 162, 145, 152,
|
||||
151, 153, 157, 158, 154, 167, 159, 155, 128, 128,
|
||||
156, 169, 146, 147, 161, 130, 130, 166, 160, 170,
|
||||
86, 120, 171, 172, 173, 174, 91, 175, 176, 162,
|
||||
177, 167, 178, 179, 90, 180, 181, 169, 182, 183,
|
||||
184, 185, 186, 187, 89, 170, 188, 86, 171, 172,
|
||||
173, 189, 174, 175, 190, 176, 191, 177, 178, 192,
|
||||
179, 180, 181, 193, 182, 183, 194, 184, 185, 186,
|
||||
128, 158, 159, 145, 162, 163, 160, 167, 147, 155,
|
||||
149, 161, 168, 164, 171, 150, 165, 151, 152, 166,
|
||||
146, 153, 169, 154, 156, 157, 93, 158, 159, 178,
|
||||
162, 163, 160, 167, 176, 170, 155, 161, 168, 164,
|
||||
171, 177, 165, 172, 172, 166, 138, 138, 179, 169,
|
||||
156, 157, 140, 140, 140, 140, 178, 180, 93, 184,
|
||||
176, 170, 181, 182, 183, 185, 186, 177, 187, 127,
|
||||
188, 189, 98, 190, 179, 191, 172, 192, 193, 194,
|
||||
195, 196, 197, 180, 97, 93, 184, 198, 181, 182,
|
||||
183, 185, 199, 186, 200, 187, 188, 201, 189, 190,
|
||||
|
||||
187, 162, 162, 188, 195, 196, 197, 198, 189, 199,
|
||||
203, 190, 200, 191, 201, 202, 192, 204, 88, 205,
|
||||
193, 206, 194, 207, 208, 209, 210, 211, 82, 212,
|
||||
195, 196, 197, 198, 162, 213, 199, 203, 200, 214,
|
||||
201, 202, 215, 217, 204, 205, 216, 206, 218, 207,
|
||||
208, 209, 219, 210, 211, 212, 220, 81, 221, 222,
|
||||
223, 224, 213, 79, 78, 214, 225, 74, 74, 215,
|
||||
217, 225, 216, 225, 225, 218, 225, 225, 219, 225,
|
||||
225, 225, 225, 220, 221, 222, 225, 223, 224, 61,
|
||||
61, 61, 61, 61, 61, 61, 65, 65, 65, 65,
|
||||
202, 191, 203, 192, 193, 204, 194, 195, 196, 197,
|
||||
172, 172, 205, 206, 198, 207, 208, 209, 213, 199,
|
||||
210, 200, 211, 212, 201, 214, 220, 202, 215, 203,
|
||||
216, 204, 217, 218, 219, 221, 96, 222, 205, 206,
|
||||
223, 207, 208, 172, 209, 213, 210, 224, 211, 212,
|
||||
225, 227, 214, 220, 215, 226, 216, 228, 217, 218,
|
||||
219, 229, 221, 222, 230, 95, 231, 223, 232, 233,
|
||||
234, 89, 88, 224, 86, 85, 235, 225, 227, 81,
|
||||
81, 226, 235, 235, 228, 235, 235, 229, 235, 235,
|
||||
235, 230, 231, 235, 232, 235, 233, 234, 64, 64,
|
||||
|
||||
65, 65, 65, 69, 69, 69, 69, 69, 69, 69,
|
||||
73, 73, 73, 73, 73, 73, 73, 75, 75, 75,
|
||||
75, 75, 75, 75, 92, 92, 92, 92, 95, 225,
|
||||
95, 95, 119, 119, 122, 225, 122, 122, 122, 122,
|
||||
122, 123, 225, 123, 123, 123, 123, 123, 124, 225,
|
||||
124, 124, 124, 124, 124, 125, 225, 125, 125, 125,
|
||||
125, 125, 126, 225, 225, 126, 126, 126, 126, 131,
|
||||
225, 131, 131, 132, 225, 132, 132, 163, 225, 163,
|
||||
163, 164, 225, 164, 164, 162, 225, 162, 162, 165,
|
||||
225, 165, 165, 13, 225, 225, 225, 225, 225, 225,
|
||||
64, 64, 64, 64, 64, 68, 68, 68, 68, 68,
|
||||
68, 68, 72, 72, 72, 72, 72, 72, 72, 76,
|
||||
76, 76, 76, 76, 76, 76, 80, 80, 80, 80,
|
||||
80, 80, 80, 82, 82, 82, 82, 82, 82, 82,
|
||||
99, 99, 99, 99, 102, 235, 102, 102, 126, 126,
|
||||
130, 235, 130, 130, 130, 130, 130, 131, 235, 131,
|
||||
131, 131, 131, 131, 133, 235, 133, 133, 133, 133,
|
||||
133, 134, 235, 134, 134, 134, 134, 134, 135, 235,
|
||||
135, 135, 135, 135, 135, 136, 235, 235, 136, 136,
|
||||
136, 136, 141, 235, 141, 141, 142, 235, 142, 142,
|
||||
|
||||
173, 235, 173, 173, 174, 235, 174, 174, 172, 235,
|
||||
172, 172, 175, 235, 175, 175, 15, 235, 235, 235,
|
||||
235, 235, 235, 235, 235, 235, 235, 235, 235, 235,
|
||||
235, 235, 235, 235, 235, 235, 235, 235, 235, 235,
|
||||
235, 235, 235, 235, 235, 235, 235, 235, 235, 235,
|
||||
235, 235, 235, 235, 235, 235, 235, 235, 235, 235,
|
||||
235, 235, 235, 235, 235, 235, 235, 235, 235, 235,
|
||||
235, 235, 235, 235, 235, 235, 235, 235, 235, 235,
|
||||
235, 235, 235, 235, 235, 235, 235, 235, 235, 235,
|
||||
235, 235, 235, 235, 235
|
||||
|
||||
225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
|
||||
225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
|
||||
225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
|
||||
225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
|
||||
225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
|
||||
225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
|
||||
225, 225, 225, 225, 225, 225, 225, 225, 225, 225
|
||||
} ;
|
||||
|
||||
static yyconst flex_int16_t yy_chk[571] =
|
||||
static yyconst flex_int16_t yy_chk[596] =
|
||||
{ 0,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
|
@ -600,71 +607,75 @@ static yyconst flex_int16_t yy_chk[571] =
|
|||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 3, 4, 5, 31,
|
||||
11, 6, 12, 7, 5, 7, 8, 6, 8, 11,
|
||||
30, 12, 38, 31, 32, 30, 32, 32, 85, 85,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 3, 4,
|
||||
5, 33, 40, 6, 7, 8, 9, 10, 9, 10,
|
||||
7, 8, 13, 14, 32, 33, 242, 43, 174, 32,
|
||||
|
||||
231, 39, 129, 129, 41, 39, 164, 39, 32, 42,
|
||||
132, 39, 44, 42, 120, 45, 49, 46, 38, 94,
|
||||
31, 46, 3, 4, 5, 3, 4, 6, 39, 7,
|
||||
41, 39, 8, 39, 43, 32, 42, 39, 44, 50,
|
||||
42, 45, 43, 49, 46, 47, 48, 43, 46, 48,
|
||||
47, 51, 52, 53, 86, 78, 86, 93, 96, 86,
|
||||
86, 43, 97, 99, 106, 50, 100, 139, 98, 43,
|
||||
101, 47, 48, 43, 102, 48, 47, 51, 52, 87,
|
||||
53, 87, 87, 93, 103, 96, 98, 104, 97, 105,
|
||||
99, 106, 100, 87, 139, 98, 101, 108, 109, 110,
|
||||
142, 13, 14, 34, 127, 34, 34, 44, 40, 41,
|
||||
51, 44, 101, 41, 46, 41, 47, 34, 85, 41,
|
||||
84, 52, 33, 43, 3, 4, 5, 3, 4, 6,
|
||||
7, 8, 9, 10, 44, 45, 41, 51, 44, 41,
|
||||
46, 41, 47, 45, 34, 41, 48, 52, 45, 49,
|
||||
48, 71, 53, 50, 49, 5, 50, 54, 6, 55,
|
||||
92, 92, 45, 93, 100, 93, 103, 63, 93, 93,
|
||||
45, 104, 107, 48, 45, 49, 105, 48, 53, 50,
|
||||
49, 106, 50, 54, 108, 94, 55, 94, 94, 109,
|
||||
100, 110, 111, 103, 105, 112, 113, 104, 107, 94,
|
||||
|
||||
102, 107, 77, 111, 110, 113, 115, 116, 114, 117,
|
||||
103, 114, 98, 104, 114, 105, 107, 107, 118, 59,
|
||||
87, 133, 117, 108, 109, 110, 119, 119, 107, 111,
|
||||
110, 113, 115, 116, 114, 138, 117, 114, 128, 128,
|
||||
114, 140, 107, 107, 118, 130, 130, 133, 117, 141,
|
||||
128, 56, 142, 144, 145, 146, 36, 147, 149, 119,
|
||||
150, 138, 152, 153, 35, 154, 155, 140, 156, 157,
|
||||
158, 159, 160, 161, 34, 141, 166, 128, 142, 144,
|
||||
145, 167, 146, 147, 169, 149, 170, 150, 152, 171,
|
||||
153, 154, 155, 172, 156, 157, 173, 158, 159, 160,
|
||||
61, 115, 116, 105, 118, 120, 117, 122, 106, 114,
|
||||
108, 117, 123, 121, 125, 109, 121, 110, 111, 121,
|
||||
105, 112, 124, 113, 114, 114, 94, 115, 116, 149,
|
||||
118, 120, 117, 122, 143, 124, 114, 117, 123, 121,
|
||||
125, 148, 121, 126, 126, 121, 138, 138, 150, 124,
|
||||
114, 114, 139, 139, 140, 140, 149, 151, 138, 156,
|
||||
143, 124, 152, 154, 155, 157, 159, 148, 160, 58,
|
||||
162, 163, 38, 164, 150, 165, 126, 166, 167, 168,
|
||||
169, 170, 171, 151, 37, 138, 156, 176, 152, 154,
|
||||
155, 157, 177, 159, 179, 160, 162, 180, 163, 164,
|
||||
|
||||
161, 163, 163, 166, 174, 176, 179, 180, 167, 181,
|
||||
188, 169, 182, 170, 185, 186, 171, 189, 33, 190,
|
||||
172, 192, 173, 194, 195, 197, 198, 199, 29, 200,
|
||||
174, 176, 179, 180, 163, 201, 181, 188, 182, 202,
|
||||
185, 186, 203, 205, 189, 190, 204, 192, 207, 194,
|
||||
195, 197, 209, 198, 199, 200, 211, 21, 215, 217,
|
||||
219, 221, 201, 17, 15, 202, 13, 10, 9, 203,
|
||||
205, 0, 204, 0, 0, 207, 0, 0, 209, 0,
|
||||
0, 0, 0, 211, 215, 217, 0, 219, 221, 226,
|
||||
226, 226, 226, 226, 226, 226, 227, 227, 227, 227,
|
||||
181, 165, 182, 166, 167, 183, 168, 169, 170, 171,
|
||||
173, 173, 184, 186, 176, 189, 190, 191, 198, 177,
|
||||
192, 179, 195, 196, 180, 199, 208, 181, 200, 182,
|
||||
202, 183, 204, 205, 207, 209, 36, 210, 184, 186,
|
||||
211, 189, 190, 173, 191, 198, 192, 212, 195, 196,
|
||||
213, 215, 199, 208, 200, 214, 202, 217, 204, 205,
|
||||
207, 219, 209, 210, 221, 35, 225, 211, 227, 229,
|
||||
231, 31, 23, 212, 19, 17, 15, 213, 215, 12,
|
||||
11, 214, 0, 0, 217, 0, 0, 219, 0, 0,
|
||||
0, 221, 225, 0, 227, 0, 229, 231, 236, 236,
|
||||
|
||||
227, 227, 227, 228, 228, 228, 228, 228, 228, 228,
|
||||
229, 229, 229, 229, 229, 229, 229, 230, 230, 230,
|
||||
230, 230, 230, 230, 232, 232, 232, 232, 233, 0,
|
||||
233, 233, 234, 234, 235, 0, 235, 235, 235, 235,
|
||||
235, 236, 0, 236, 236, 236, 236, 236, 237, 0,
|
||||
237, 237, 237, 237, 237, 238, 0, 238, 238, 238,
|
||||
238, 238, 239, 0, 0, 239, 239, 239, 239, 240,
|
||||
0, 240, 240, 241, 0, 241, 241, 242, 0, 242,
|
||||
242, 243, 0, 243, 243, 244, 0, 244, 244, 245,
|
||||
0, 245, 245, 225, 225, 225, 225, 225, 225, 225,
|
||||
236, 236, 236, 236, 236, 237, 237, 237, 237, 237,
|
||||
237, 237, 238, 238, 238, 238, 238, 238, 238, 239,
|
||||
239, 239, 239, 239, 239, 239, 240, 240, 240, 240,
|
||||
240, 240, 240, 241, 241, 241, 241, 241, 241, 241,
|
||||
243, 243, 243, 243, 244, 0, 244, 244, 245, 245,
|
||||
246, 0, 246, 246, 246, 246, 246, 247, 0, 247,
|
||||
247, 247, 247, 247, 248, 0, 248, 248, 248, 248,
|
||||
248, 249, 0, 249, 249, 249, 249, 249, 250, 0,
|
||||
250, 250, 250, 250, 250, 251, 0, 0, 251, 251,
|
||||
251, 251, 252, 0, 252, 252, 253, 0, 253, 253,
|
||||
|
||||
254, 0, 254, 254, 255, 0, 255, 255, 256, 0,
|
||||
256, 256, 257, 0, 257, 257, 235, 235, 235, 235,
|
||||
235, 235, 235, 235, 235, 235, 235, 235, 235, 235,
|
||||
235, 235, 235, 235, 235, 235, 235, 235, 235, 235,
|
||||
235, 235, 235, 235, 235, 235, 235, 235, 235, 235,
|
||||
235, 235, 235, 235, 235, 235, 235, 235, 235, 235,
|
||||
235, 235, 235, 235, 235, 235, 235, 235, 235, 235,
|
||||
235, 235, 235, 235, 235, 235, 235, 235, 235, 235,
|
||||
235, 235, 235, 235, 235, 235, 235, 235, 235, 235,
|
||||
235, 235, 235, 235, 235
|
||||
|
||||
225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
|
||||
225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
|
||||
225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
|
||||
225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
|
||||
225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
|
||||
225, 225, 225, 225, 225, 225, 225, 225, 225, 225,
|
||||
225, 225, 225, 225, 225, 225, 225, 225, 225, 225
|
||||
} ;
|
||||
|
||||
/* Table of booleans, true if rule could match eol. */
|
||||
static yyconst flex_int32_t yy_rule_can_match_eol[89] =
|
||||
static yyconst flex_int32_t yy_rule_can_match_eol[94] =
|
||||
{ 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0,
|
||||
1, 0, 0, 0, 0, 0, 1, 0, 0, };
|
||||
0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0,
|
||||
0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, };
|
||||
|
||||
/* The intent behind this definition is that it'll catch
|
||||
* any uses of REJECT which flex missed.
|
||||
|
@ -713,10 +724,11 @@ namespace arangodb {
|
|||
|
||||
#define INITIAL 0
|
||||
#define BACKTICK 1
|
||||
#define SINGLE_QUOTE 2
|
||||
#define DOUBLE_QUOTE 3
|
||||
#define COMMENT_SINGLE 4
|
||||
#define COMMENT_MULTI 5
|
||||
#define FORWARDTICK 2
|
||||
#define SINGLE_QUOTE 3
|
||||
#define DOUBLE_QUOTE 4
|
||||
#define COMMENT_SINGLE 5
|
||||
#define COMMENT_MULTI 6
|
||||
|
||||
#ifndef YY_NO_UNISTD_H
|
||||
/* Special case for "unistd.h", since it is non-ANSI. We include it way
|
||||
|
@ -1023,13 +1035,13 @@ yy_match:
|
|||
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
|
||||
{
|
||||
yy_current_state = (int) yy_def[yy_current_state];
|
||||
if ( yy_current_state >= 226 )
|
||||
if ( yy_current_state >= 236 )
|
||||
yy_c = yy_meta[(unsigned int) yy_c];
|
||||
}
|
||||
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
|
||||
++yy_cp;
|
||||
}
|
||||
while ( yy_current_state != 225 );
|
||||
while ( yy_current_state != 235 );
|
||||
yy_cp = yyg->yy_last_accepting_cpos;
|
||||
yy_current_state = yyg->yy_last_accepting_state;
|
||||
|
||||
|
@ -1447,7 +1459,6 @@ case 61:
|
|||
YY_RULE_SETUP
|
||||
{
|
||||
/* character escaped by backslash */
|
||||
BEGIN(BACKTICK);
|
||||
}
|
||||
YY_BREAK
|
||||
case 62:
|
||||
|
@ -1455,61 +1466,57 @@ case 62:
|
|||
YY_RULE_SETUP
|
||||
{
|
||||
/* newline character inside backtick */
|
||||
BEGIN(BACKTICK);
|
||||
}
|
||||
YY_BREAK
|
||||
case 63:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
/* any character (except newline) inside backtick */
|
||||
BEGIN(BACKTICK);
|
||||
}
|
||||
YY_BREAK
|
||||
case 64:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
/* string enclosed in forwardticks */
|
||||
yyextra->marker(yyextra->queryString() + yyextra->offset());
|
||||
BEGIN(DOUBLE_QUOTE);
|
||||
BEGIN(FORWARDTICK);
|
||||
}
|
||||
YY_BREAK
|
||||
case 65:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
/* end of quote-enclosed string */
|
||||
/* end of forwardtick-enclosed string */
|
||||
BEGIN(INITIAL);
|
||||
size_t outLength;
|
||||
yylval->strval.value = yyextra->query()->registerEscapedString(yyextra->marker(), yyextra->offset() - (yyextra->marker() - yyextra->queryString()) - 1, outLength);
|
||||
yylval->strval.length = outLength;
|
||||
return T_QUOTED_STRING;
|
||||
return T_STRING;
|
||||
}
|
||||
YY_BREAK
|
||||
case 66:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
/* character escaped by backslash */
|
||||
BEGIN(DOUBLE_QUOTE);
|
||||
}
|
||||
YY_BREAK
|
||||
case 67:
|
||||
/* rule 67 can match eol */
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
/* newline character inside quote */
|
||||
BEGIN(DOUBLE_QUOTE);
|
||||
/* newline character inside forwardtick */
|
||||
}
|
||||
YY_BREAK
|
||||
case 68:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
/* any character (except newline) inside quote */
|
||||
BEGIN(DOUBLE_QUOTE);
|
||||
/* any character (except newline) inside forwardtick */
|
||||
}
|
||||
YY_BREAK
|
||||
case 69:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
yyextra->marker(yyextra->queryString() + yyextra->offset());
|
||||
BEGIN(SINGLE_QUOTE);
|
||||
BEGIN(DOUBLE_QUOTE);
|
||||
}
|
||||
YY_BREAK
|
||||
case 70:
|
||||
|
@ -1527,7 +1534,6 @@ case 71:
|
|||
YY_RULE_SETUP
|
||||
{
|
||||
/* character escaped by backslash */
|
||||
BEGIN(SINGLE_QUOTE);
|
||||
}
|
||||
YY_BREAK
|
||||
case 72:
|
||||
|
@ -1535,18 +1541,53 @@ case 72:
|
|||
YY_RULE_SETUP
|
||||
{
|
||||
/* newline character inside quote */
|
||||
BEGIN(SINGLE_QUOTE);
|
||||
}
|
||||
YY_BREAK
|
||||
case 73:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
/* any character (except newline) inside quote */
|
||||
BEGIN(SINGLE_QUOTE);
|
||||
}
|
||||
YY_BREAK
|
||||
case 74:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
yyextra->marker(yyextra->queryString() + yyextra->offset());
|
||||
BEGIN(SINGLE_QUOTE);
|
||||
}
|
||||
YY_BREAK
|
||||
case 75:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
/* end of quote-enclosed string */
|
||||
BEGIN(INITIAL);
|
||||
size_t outLength;
|
||||
yylval->strval.value = yyextra->query()->registerEscapedString(yyextra->marker(), yyextra->offset() - (yyextra->marker() - yyextra->queryString()) - 1, outLength);
|
||||
yylval->strval.length = outLength;
|
||||
return T_QUOTED_STRING;
|
||||
}
|
||||
YY_BREAK
|
||||
case 76:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
/* character escaped by backslash */
|
||||
}
|
||||
YY_BREAK
|
||||
case 77:
|
||||
/* rule 77 can match eol */
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
/* newline character inside quote */
|
||||
}
|
||||
YY_BREAK
|
||||
case 78:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
/* any character (except newline) inside quote */
|
||||
}
|
||||
YY_BREAK
|
||||
case 79:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
/* a numeric integer value */
|
||||
arangodb::aql::AstNode* node = nullptr;
|
||||
|
@ -1572,7 +1613,7 @@ YY_RULE_SETUP
|
|||
return T_INTEGER;
|
||||
}
|
||||
YY_BREAK
|
||||
case 75:
|
||||
case 80:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
/* a numeric double value */
|
||||
|
@ -1597,7 +1638,7 @@ YY_RULE_SETUP
|
|||
/* ---------------------------------------------------------------------------
|
||||
* bind parameters
|
||||
* --------------------------------------------------------------------------- */
|
||||
case 76:
|
||||
case 81:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
/* bind parameters must start with a @
|
||||
|
@ -1610,83 +1651,84 @@ YY_RULE_SETUP
|
|||
/* ---------------------------------------------------------------------------
|
||||
* whitespace etc.
|
||||
* --------------------------------------------------------------------------- */
|
||||
case 77:
|
||||
case 82:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
/* whitespace is ignored */
|
||||
}
|
||||
YY_BREAK
|
||||
case 78:
|
||||
/* rule 78 can match eol */
|
||||
case 83:
|
||||
/* rule 83 can match eol */
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
yycolumn = 0;
|
||||
}
|
||||
YY_BREAK
|
||||
case 79:
|
||||
case 84:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
BEGIN(COMMENT_SINGLE);
|
||||
}
|
||||
YY_BREAK
|
||||
case 80:
|
||||
/* rule 80 can match eol */
|
||||
case 85:
|
||||
/* rule 85 can match eol */
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
yylineno++;
|
||||
/* line numbers are counted elsewhere already */
|
||||
BEGIN(INITIAL);
|
||||
}
|
||||
YY_BREAK
|
||||
case 81:
|
||||
case 86:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
// eat comment in chunks
|
||||
}
|
||||
YY_BREAK
|
||||
case 82:
|
||||
case 87:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
BEGIN(COMMENT_MULTI);
|
||||
}
|
||||
YY_BREAK
|
||||
case 83:
|
||||
case 88:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
BEGIN(INITIAL);
|
||||
}
|
||||
YY_BREAK
|
||||
case 84:
|
||||
case 89:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
// eat comment in chunks
|
||||
}
|
||||
YY_BREAK
|
||||
case 85:
|
||||
case 90:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
// eat the lone star
|
||||
}
|
||||
YY_BREAK
|
||||
case 86:
|
||||
/* rule 86 can match eol */
|
||||
case 91:
|
||||
/* rule 91 can match eol */
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
yylineno++;
|
||||
/* line numbers are counted elsewhere already */
|
||||
}
|
||||
YY_BREAK
|
||||
case 87:
|
||||
case 92:
|
||||
YY_RULE_SETUP
|
||||
{
|
||||
/* anything else is returned as it is */
|
||||
return (int) yytext[0];
|
||||
}
|
||||
YY_BREAK
|
||||
case 88:
|
||||
case 93:
|
||||
YY_RULE_SETUP
|
||||
ECHO;
|
||||
YY_BREAK
|
||||
case YY_STATE_EOF(INITIAL):
|
||||
case YY_STATE_EOF(BACKTICK):
|
||||
case YY_STATE_EOF(FORWARDTICK):
|
||||
case YY_STATE_EOF(SINGLE_QUOTE):
|
||||
case YY_STATE_EOF(DOUBLE_QUOTE):
|
||||
case YY_STATE_EOF(COMMENT_SINGLE):
|
||||
|
@ -1985,7 +2027,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
|
|||
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
|
||||
{
|
||||
yy_current_state = (int) yy_def[yy_current_state];
|
||||
if ( yy_current_state >= 226 )
|
||||
if ( yy_current_state >= 236 )
|
||||
yy_c = yy_meta[(unsigned int) yy_c];
|
||||
}
|
||||
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
|
||||
|
@ -2014,11 +2056,11 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
|
|||
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
|
||||
{
|
||||
yy_current_state = (int) yy_def[yy_current_state];
|
||||
if ( yy_current_state >= 226 )
|
||||
if ( yy_current_state >= 236 )
|
||||
yy_c = yy_meta[(unsigned int) yy_c];
|
||||
}
|
||||
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
|
||||
yy_is_jam = (yy_current_state == 225);
|
||||
yy_is_jam = (yy_current_state == 235);
|
||||
|
||||
(void)yyg;
|
||||
return yy_is_jam ? 0 : yy_current_state;
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
%option yylineno
|
||||
%option noyywrap nounput batch
|
||||
%x BACKTICK
|
||||
%x FORWARDTICK
|
||||
%x SINGLE_QUOTE
|
||||
%x DOUBLE_QUOTE
|
||||
%x COMMENT_SINGLE
|
||||
|
@ -329,19 +330,45 @@ namespace arangodb {
|
|||
|
||||
<BACKTICK>\\. {
|
||||
/* character escaped by backslash */
|
||||
BEGIN(BACKTICK);
|
||||
}
|
||||
|
||||
<BACKTICK>\n {
|
||||
/* newline character inside backtick */
|
||||
BEGIN(BACKTICK);
|
||||
}
|
||||
|
||||
<BACKTICK>. {
|
||||
/* any character (except newline) inside backtick */
|
||||
BEGIN(BACKTICK);
|
||||
}
|
||||
|
||||
|
||||
<INITIAL>´ {
|
||||
/* string enclosed in forwardticks */
|
||||
yyextra->marker(yyextra->queryString() + yyextra->offset());
|
||||
BEGIN(FORWARDTICK);
|
||||
}
|
||||
|
||||
<FORWARDTICK>´ {
|
||||
/* end of forwardtick-enclosed string */
|
||||
BEGIN(INITIAL);
|
||||
size_t outLength;
|
||||
yylval->strval.value = yyextra->query()->registerEscapedString(yyextra->marker(), yyextra->offset() - (yyextra->marker() - yyextra->queryString()) - 1, outLength);
|
||||
yylval->strval.length = outLength;
|
||||
return T_STRING;
|
||||
}
|
||||
|
||||
<FORWARDTICK>\\. {
|
||||
/* character escaped by backslash */
|
||||
}
|
||||
|
||||
<FORWARDTICK>\n {
|
||||
/* newline character inside forwardtick */
|
||||
}
|
||||
|
||||
<FORWARDTICK>. {
|
||||
/* any character (except newline) inside forwardtick */
|
||||
}
|
||||
|
||||
|
||||
<INITIAL>\" {
|
||||
yyextra->marker(yyextra->queryString() + yyextra->offset());
|
||||
BEGIN(DOUBLE_QUOTE);
|
||||
|
@ -358,17 +385,14 @@ namespace arangodb {
|
|||
|
||||
<DOUBLE_QUOTE>\\. {
|
||||
/* character escaped by backslash */
|
||||
BEGIN(DOUBLE_QUOTE);
|
||||
}
|
||||
|
||||
<DOUBLE_QUOTE>\n {
|
||||
/* newline character inside quote */
|
||||
BEGIN(DOUBLE_QUOTE);
|
||||
}
|
||||
|
||||
<DOUBLE_QUOTE>. {
|
||||
/* any character (except newline) inside quote */
|
||||
BEGIN(DOUBLE_QUOTE);
|
||||
}
|
||||
|
||||
<INITIAL>' {
|
||||
|
@ -387,17 +411,14 @@ namespace arangodb {
|
|||
|
||||
<SINGLE_QUOTE>\\. {
|
||||
/* character escaped by backslash */
|
||||
BEGIN(SINGLE_QUOTE);
|
||||
}
|
||||
|
||||
<SINGLE_QUOTE>\n {
|
||||
/* newline character inside quote */
|
||||
BEGIN(SINGLE_QUOTE);
|
||||
/* newline character inside quote */
|
||||
}
|
||||
|
||||
<SINGLE_QUOTE>. {
|
||||
/* any character (except newline) inside quote */
|
||||
BEGIN(SINGLE_QUOTE);
|
||||
}
|
||||
|
||||
(0|[1-9][0-9]*) {
|
||||
|
@ -474,7 +495,7 @@ namespace arangodb {
|
|||
}
|
||||
|
||||
<COMMENT_SINGLE>\n {
|
||||
yylineno++;
|
||||
/* line numbers are counted elsewhere already */
|
||||
BEGIN(INITIAL);
|
||||
}
|
||||
|
||||
|
@ -499,7 +520,7 @@ namespace arangodb {
|
|||
}
|
||||
|
||||
<COMMENT_MULTI>\n {
|
||||
yylineno++;
|
||||
/* line numbers are counted elsewhere already */
|
||||
}
|
||||
|
||||
. {
|
||||
|
|
Loading…
Reference in New Issue