9267 {
9268 const char_t* cur = _cur;
9269
9271
9272
9273 _cur_lexeme_pos = cur;
9274
9275 switch (*cur)
9276 {
9277 case 0:
9279 break;
9280
9281 case '>':
9282 if (*(cur+1) == '=')
9283 {
9284 cur += 2;
9286 }
9287 else
9288 {
9289 cur += 1;
9291 }
9292 break;
9293
9294 case '<':
9295 if (*(cur+1) == '=')
9296 {
9297 cur += 2;
9299 }
9300 else
9301 {
9302 cur += 1;
9304 }
9305 break;
9306
9307 case '!':
9308 if (*(cur+1) == '=')
9309 {
9310 cur += 2;
9312 }
9313 else
9314 {
9316 }
9317 break;
9318
9319 case '=':
9320 cur += 1;
9322
9323 break;
9324
9325 case '+':
9326 cur += 1;
9328
9329 break;
9330
9331 case '-':
9332 cur += 1;
9334
9335 break;
9336
9337 case '*':
9338 cur += 1;
9340
9341 break;
9342
9343 case '|':
9344 cur += 1;
9346
9347 break;
9348
9349 case '$':
9350 cur += 1;
9351
9353 {
9354 _cur_lexeme_contents.begin = cur;
9355
9357
9359 {
9360 cur++;
9361
9363 }
9364
9365 _cur_lexeme_contents.end = cur;
9366
9368 }
9369 else
9370 {
9372 }
9373
9374 break;
9375
9376 case '(':
9377 cur += 1;
9379
9380 break;
9381
9382 case ')':
9383 cur += 1;
9385
9386 break;
9387
9388 case '[':
9389 cur += 1;
9391
9392 break;
9393
9394 case ']':
9395 cur += 1;
9397
9398 break;
9399
9400 case ',':
9401 cur += 1;
9403
9404 break;
9405
9406 case '/':
9407 if (*(cur+1) == '/')
9408 {
9409 cur += 2;
9411 }
9412 else
9413 {
9414 cur += 1;
9416 }
9417 break;
9418
9419 case '.':
9420 if (*(cur+1) == '.')
9421 {
9422 cur += 2;
9424 }
9426 {
9427 _cur_lexeme_contents.begin = cur;
9428
9429 ++cur;
9430
9432
9433 _cur_lexeme_contents.end = cur;
9434
9436 }
9437 else
9438 {
9439 cur += 1;
9441 }
9442 break;
9443
9444 case '@':
9445 cur += 1;
9447
9448 break;
9449
9450 case '"':
9451 case '\'':
9452 {
9453 char_t terminator = *cur;
9454
9455 ++cur;
9456
9457 _cur_lexeme_contents.begin = cur;
9458 while (*cur && *cur != terminator) cur++;
9459 _cur_lexeme_contents.end = cur;
9460
9461 if (!*cur)
9463 else
9464 {
9465 cur += 1;
9467 }
9468
9469 break;
9470 }
9471
9472 case ':':
9473 if (*(cur+1) == ':')
9474 {
9475 cur += 2;
9477 }
9478 else
9479 {
9481 }
9482 break;
9483
9484 default:
9486 {
9487 _cur_lexeme_contents.begin = cur;
9488
9490
9491 if (*cur == '.')
9492 {
9493 cur++;
9494
9496 }
9497
9498 _cur_lexeme_contents.end = cur;
9499
9501 }
9503 {
9504 _cur_lexeme_contents.begin = cur;
9505
9507
9508 if (cur[0] == ':')
9509 {
9510 if (cur[1] == '*')
9511 {
9512 cur += 2;
9513 }
9515 {
9516 cur++;
9517
9519 }
9520 }
9521
9522 _cur_lexeme_contents.end = cur;
9523
9525 }
9526 else
9527 {
9529 }
9530 }
9531
9532 _cur = cur;
9533 }
#define PUGI__IS_CHARTYPE(c, ct)
#define PUGI__IS_CHARTYPEX(c, ct)