98
100
op = MATCHOP_RXEQ;
103
105
op = MATCHOP_RXNE;
128
130
op = MATCHOP_CONTAINS;
133
135
op = MATCHOP_CONTAINSNOT;
136
default: SynErr(21); break;
140
op = MATCHOP_BETWEEN;
143
default: SynErr(23); break;
140
147
void Parser::logop(int &lop) {
141
if (la->kind == 17) {
148
if (la->kind == 19) {
144
} else if (la->kind == 18) {
151
} else if (la->kind == 20) {
150
157
void Parser::matchexpr() {
210
224
const bool T = true;
211
225
const bool x = false;
213
static bool set[1][21] = {
214
{T,x,x,x, x,x,x,x, x,x,x,x, x,x,x,x, x,x,x,x, x}
227
static bool set[1][23] = {
228
{T,x,x,x, x,x,x,x, x,x,x,x, x,x,x,x, x,x,x,x, x,x,x}
237
251
case 3: s = coco_string_create(L"ident expected"); break;
238
252
case 4: s = coco_string_create(L"stringliteral expected"); break;
239
253
case 5: s = coco_string_create(L"numliteral expected"); break;
240
case 6: s = coco_string_create(L"\"==\" expected"); break;
241
case 7: s = coco_string_create(L"\"=\" expected"); break;
242
case 8: s = coco_string_create(L"\"!=\" expected"); break;
243
case 9: s = coco_string_create(L"\"=~\" expected"); break;
244
case 10: s = coco_string_create(L"\"!~\" expected"); break;
245
case 11: s = coco_string_create(L"\"<\" expected"); break;
246
case 12: s = coco_string_create(L"\">\" expected"); break;
247
case 13: s = coco_string_create(L"\"<=\" expected"); break;
248
case 14: s = coco_string_create(L"\">=\" expected"); break;
249
case 15: s = coco_string_create(L"\"#\" expected"); break;
250
case 16: s = coco_string_create(L"\"!#\" expected"); break;
251
case 17: s = coco_string_create(L"\"and\" expected"); break;
252
case 18: s = coco_string_create(L"\"or\" expected"); break;
253
case 19: s = coco_string_create(L"??? expected"); break;
254
case 20: s = coco_string_create(L"invalid stringlit"); break;
255
case 21: s = coco_string_create(L"invalid matchop"); break;
256
case 22: s = coco_string_create(L"invalid logop"); break;
257
case 23: s = coco_string_create(L"invalid expr"); break;
258
case 24: s = coco_string_create(L"invalid expr"); break;
254
case 6: s = coco_string_create(L"rangeliteral expected"); break;
255
case 7: s = coco_string_create(L"\"==\" expected"); break;
256
case 8: s = coco_string_create(L"\"=\" expected"); break;
257
case 9: s = coco_string_create(L"\"!=\" expected"); break;
258
case 10: s = coco_string_create(L"\"=~\" expected"); break;
259
case 11: s = coco_string_create(L"\"!~\" expected"); break;
260
case 12: s = coco_string_create(L"\"<\" expected"); break;
261
case 13: s = coco_string_create(L"\">\" expected"); break;
262
case 14: s = coco_string_create(L"\"<=\" expected"); break;
263
case 15: s = coco_string_create(L"\">=\" expected"); break;
264
case 16: s = coco_string_create(L"\"#\" expected"); break;
265
case 17: s = coco_string_create(L"\"!#\" expected"); break;
266
case 18: s = coco_string_create(L"\"between\" expected"); break;
267
case 19: s = coco_string_create(L"\"and\" expected"); break;
268
case 20: s = coco_string_create(L"\"or\" expected"); break;
269
case 21: s = coco_string_create(L"??? expected"); break;
270
case 22: s = coco_string_create(L"invalid stringlit"); break;
271
case 23: s = coco_string_create(L"invalid matchop"); break;
272
case 24: s = coco_string_create(L"invalid logop"); break;
273
case 25: s = coco_string_create(L"invalid expr"); break;
274
case 26: s = coco_string_create(L"invalid expr"); break;