#line 1 "src/parser_scan.re"
/*******************************************************************************
Copyright (c) 2016, Michael Wallner <mike@php.net>.
#line 1 "src/parser_scan.re"
/*******************************************************************************
Copyright (c) 2016, Michael Wallner <mike@php.net>.
- token = psi_token_init(t, "", 0, tok - eol + 1, I->lines, I->file); \
+ token = psi_token_init(t, "", 0, tok - eol + 1, lines, I->file); \
- token = psi_token_init(t, tok, cur - tok, tok - eol + 1, I->lines, I->file); \
+ token = psi_token_init(t, tok, cur - tok, tok - eol + 1, lines, I->file); \
- PSI_DEBUG_PRINT(P, "PSI: scanned < "); \
- PSI_DEBUG_DUMP(P, psi_token_dump, token); \
+ PSI_DEBUG_LOCK(P, \
+ PSI_DEBUG_PRINT(P, "PSI: scanned < "); \
+ PSI_DEBUG_DUMP(P, psi_token_dump, token); \
+ ); \
struct psi_plist *tokens;
struct psi_token *token;
const char *tok, *cur, *lim, *mrk, *eol, *ctxmrk;
struct psi_plist *tokens;
struct psi_token *token;
const char *tok, *cur, *lim, *mrk, *eol, *ctxmrk;
PSI_DEBUG_PRINT(P, "PSI: scanning %s\n", I->file->val);
tok = mrk = eol = cur = I->buffer;
lim = I->buffer + I->length + YYMAXFILL;
PSI_DEBUG_PRINT(P, "PSI: scanning %s\n", I->file->val);
tok = mrk = eol = cur = I->buffer;
lim = I->buffer + I->length + YYMAXFILL;
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT; goto start; }
#line 1291 "src/parser_scan.c"
yy118:
++cur;
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT; goto start; }
#line 1291 "src/parser_scan.c"
yy118:
++cur;
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_L; cur += 1; goto start; }
#line 1379 "src/parser_scan.c"
yy129:
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_L; cur += 1; goto start; }
#line 1379 "src/parser_scan.c"
yy129:
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_U; cur += 1; goto start; }
#line 1391 "src/parser_scan.c"
yy131:
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_U; cur += 1; goto start; }
#line 1391 "src/parser_scan.c"
yy131:
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_F; cur += 1; goto start; }
#line 2271 "src/parser_scan.c"
yy213:
++cur;
cur -= 1;
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_F; cur += 1; goto start; }
#line 2271 "src/parser_scan.c"
yy213:
++cur;
cur -= 1;
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_L; cur += 1; goto start; }
#line 2277 "src/parser_scan.c"
yy215:
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_L; cur += 1; goto start; }
#line 2277 "src/parser_scan.c"
yy215:
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_UL; cur += 2; goto start; }
#line 2306 "src/parser_scan.c"
yy219:
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_UL; cur += 2; goto start; }
#line 2306 "src/parser_scan.c"
yy219:
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DD; cur += 2; goto start; }
#line 3112 "src/parser_scan.c"
yy291:
++cur;
cur -= 2;
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DD; cur += 2; goto start; }
#line 3112 "src/parser_scan.c"
yy291:
++cur;
cur -= 2;
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DF; cur += 2; goto start; }
#line 3118 "src/parser_scan.c"
yy293:
++cur;
cur -= 2;
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DF; cur += 2; goto start; }
#line 3118 "src/parser_scan.c"
yy293:
++cur;
cur -= 2;
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DL; cur += 2; goto start; }
#line 3124 "src/parser_scan.c"
yy295:
++cur;
cur -= 3;
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DL; cur += 2; goto start; }
#line 3124 "src/parser_scan.c"
yy295:
++cur;
cur -= 3;
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_ULL; cur += 3; goto start; }
#line 3130 "src/parser_scan.c"
yy297:
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_ULL; cur += 3; goto start; }
#line 3130 "src/parser_scan.c"
yy297:
++cur;
#line 311 "src/parser_scan.re"
{ NEWTOKEN(PSI_T_COMMENT); tok = cur - 1; NEWTOKEN(PSI_T_EOL); NEWLINE(); goto start; }
++cur;
#line 311 "src/parser_scan.re"
{ NEWTOKEN(PSI_T_COMMENT); tok = cur - 1; NEWTOKEN(PSI_T_EOL); NEWLINE(); goto start; }
++cur;
#line 321 "src/parser_scan.re"
{ if (parens == 1) { NEWTOKEN(PSI_T_CPP_ATTRIBUTE); goto start; } else { --parens; goto cpp_attribute; } }
++cur;
#line 321 "src/parser_scan.re"
{ if (parens == 1) { NEWTOKEN(PSI_T_CPP_ATTRIBUTE); goto start; } else { --parens; goto cpp_attribute; } }