33#include "Compiler.h"
44
55#include <stdio.h>
6+ #include <stdint.h>
67
78#define YY_NO_UNISTD_H
89#define YY_STDINIT
@@ -755,8 +756,8 @@ static void yynoreturn yy_fatal_error ( const char* msg , yyscan_t yyscanner );
755756 yyg->yy_hold_char = *yy_cp; \
756757 *yy_cp = '\0'; \
757758 yyg->yy_c_buf_p = yy_cp;
758- #define YY_NUM_RULES 51
759- #define YY_END_OF_BUFFER 52
759+ #define YY_NUM_RULES 52
760+ #define YY_END_OF_BUFFER 53
760761/* This struct is not used in this scanner,
761762 but its presence is necessary. */
762763struct yy_trans_info
@@ -766,14 +767,14 @@ struct yy_trans_info
766767 };
767768static const flex_int16_t yy_accept [80 ] =
768769 { 0 ,
769- 0 , 0 , 0 , 0 , 0 , 0 , 52 , 50 , 49 , 49 ,
770- 39 , 50 , 35 , 37 , 41 , 42 , 33 , 31 , 47 , 32 ,
771- 50 , 34 , 13 , 46 , 48 , 29 , 40 , 30 , 45 , 14 ,
772- 14 , 43 , 44 , 36 , 38 , 51 , 3 , 51 , 6 , 5 ,
773- 26 , 0 , 10 , 0 , 0 , 17 , 28 , 19 , 21 , 15 ,
774- 16 , 13 , 1 , 4 , 20 , 13 , 13 , 0 , 24 , 23 ,
775- 25 , 14 , 14 , 22 , 18 , 27 , 2 , 0 , 0 , 9 ,
776- 7 , 13 , 0 , 13 , 14 , 8 , 11 , 12 , 0
770+ 0 , 0 , 0 , 0 , 0 , 0 , 53 , 51 , 50 , 50 ,
771+ 40 , 51 , 36 , 38 , 42 , 43 , 34 , 32 , 48 , 33 ,
772+ 51 , 35 , 13 , 47 , 49 , 30 , 41 , 31 , 46 , 15 ,
773+ 15 , 44 , 45 , 37 , 39 , 52 , 3 , 52 , 6 , 5 ,
774+ 27 , 0 , 10 , 0 , 0 , 18 , 29 , 20 , 22 , 16 ,
775+ 17 , 13 , 1 , 4 , 21 , 13 , 13 , 0 , 25 , 24 ,
776+ 26 , 15 , 15 , 23 , 19 , 28 , 2 , 0 , 0 , 9 ,
777+ 7 , 13 , 0 , 13 , 15 , 8 , 11 , 12 , 0
777778 } ;
778779
779780static const YY_CHAR yy_ec [256 ] =
@@ -889,11 +890,11 @@ static const flex_int16_t yy_chk[169] =
889890
890891
891892/* Table of booleans, true if rule could match eol. */
892- static const flex_int32_t yy_rule_can_match_eol [52 ] =
893+ static const flex_int32_t yy_rule_can_match_eol [53 ] =
893894 { 0 ,
8948950 , 0 , 1 , 0 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ,
895896 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ,
896- 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , };
897+ 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , };
897898
898899/* The intent behind this definition is that it'll catch
899900 * any uses of REJECT which flex missed.
@@ -1445,6 +1446,13 @@ YY_RULE_SETUP
14451446 YY_BREAK
14461447case 14 :
14471448YY_RULE_SETUP
1449+ {
1450+ yylval -> NUM = (PRJM_EVAL_F )atoi (yytext );
1451+ return NUM ;
1452+ }
1453+ YY_BREAK
1454+ case 15 :
1455+ YY_RULE_SETUP
14481456{
14491457 if (prjm_eval_compiler_name_is_function (cctx , yytext ))
14501458 {
@@ -1456,156 +1464,156 @@ YY_RULE_SETUP
14561464 }
14571465 YY_BREAK
14581466/* Operators */
1459- case 15 :
1467+ case 16 :
14601468YY_RULE_SETUP
14611469{ return ADDOP ; }
14621470 YY_BREAK
1463- case 16 :
1471+ case 17 :
14641472YY_RULE_SETUP
14651473{ return SUBOP ; }
14661474 YY_BREAK
1467- case 17 :
1475+ case 18 :
14681476YY_RULE_SETUP
14691477{ return MODOP ; }
14701478 YY_BREAK
1471- case 18 :
1479+ case 19 :
14721480YY_RULE_SETUP
14731481{ return OROP ; }
14741482 YY_BREAK
1475- case 19 :
1483+ case 20 :
14761484YY_RULE_SETUP
14771485{ return ANDOP ; }
14781486 YY_BREAK
1479- case 20 :
1487+ case 21 :
14801488YY_RULE_SETUP
14811489{ return DIVOP ; }
14821490 YY_BREAK
1483- case 21 :
1491+ case 22 :
14841492YY_RULE_SETUP
14851493{ return MULOP ; }
14861494 YY_BREAK
1487- case 22 :
1495+ case 23 :
14881496YY_RULE_SETUP
14891497{ return POWOP ; }
14901498 YY_BREAK
1491- case 23 :
1499+ case 24 :
14921500YY_RULE_SETUP
14931501{ return EQUAL ; }
14941502 YY_BREAK
1495- case 24 :
1503+ case 25 :
14961504YY_RULE_SETUP
14971505{ return BELEQ ; }
14981506 YY_BREAK
1499- case 25 :
1507+ case 26 :
15001508YY_RULE_SETUP
15011509{ return ABOEQ ; }
15021510 YY_BREAK
1503- case 26 :
1511+ case 27 :
15041512YY_RULE_SETUP
15051513{ return NOTEQ ; }
15061514 YY_BREAK
1507- case 27 :
1515+ case 28 :
15081516YY_RULE_SETUP
15091517{ return BOOLOR ; }
15101518 YY_BREAK
1511- case 28 :
1519+ case 29 :
15121520YY_RULE_SETUP
15131521{ return BOOLAND ; }
15141522 YY_BREAK
1515- case 29 :
1523+ case 30 :
15161524YY_RULE_SETUP
15171525{ return '<' ; }
15181526 YY_BREAK
1519- case 30 :
1527+ case 31 :
15201528YY_RULE_SETUP
15211529{ return '>' ; }
15221530 YY_BREAK
1523- case 31 :
1531+ case 32 :
15241532YY_RULE_SETUP
15251533{ return '+' ; }
15261534 YY_BREAK
1527- case 32 :
1535+ case 33 :
15281536YY_RULE_SETUP
15291537{ return '-' ; }
15301538 YY_BREAK
1531- case 33 :
1539+ case 34 :
15321540YY_RULE_SETUP
15331541{ return '*' ; }
15341542 YY_BREAK
1535- case 34 :
1543+ case 35 :
15361544YY_RULE_SETUP
15371545{ return '/' ; }
15381546 YY_BREAK
1539- case 35 :
1547+ case 36 :
15401548YY_RULE_SETUP
15411549{ return '%' ; }
15421550 YY_BREAK
1543- case 36 :
1551+ case 37 :
15441552YY_RULE_SETUP
15451553{ return '^' ; }
15461554 YY_BREAK
1547- case 37 :
1555+ case 38 :
15481556YY_RULE_SETUP
15491557{ return '&' ; }
15501558 YY_BREAK
1551- case 38 :
1559+ case 39 :
15521560YY_RULE_SETUP
15531561{ return '|' ; }
15541562 YY_BREAK
1555- case 39 :
1563+ case 40 :
15561564YY_RULE_SETUP
15571565{ return '!' ; }
15581566 YY_BREAK
1559- case 40 :
1567+ case 41 :
15601568YY_RULE_SETUP
15611569{ return '=' ; }
15621570 YY_BREAK
15631571/* Syntactic elements */
1564- case 41 :
1572+ case 42 :
15651573YY_RULE_SETUP
15661574{ return '(' ; }
15671575 YY_BREAK
1568- case 42 :
1576+ case 43 :
15691577YY_RULE_SETUP
15701578{ return ')' ; }
15711579 YY_BREAK
1572- case 43 :
1580+ case 44 :
15731581YY_RULE_SETUP
15741582{ return '[' ; }
15751583 YY_BREAK
1576- case 44 :
1584+ case 45 :
15771585YY_RULE_SETUP
15781586{ return ']' ; }
15791587 YY_BREAK
1580- case 45 :
1588+ case 46 :
15811589YY_RULE_SETUP
15821590{ return '?' ; }
15831591 YY_BREAK
1584- case 46 :
1592+ case 47 :
15851593YY_RULE_SETUP
15861594{ return ':' ; }
15871595 YY_BREAK
1588- case 47 :
1596+ case 48 :
15891597YY_RULE_SETUP
15901598{ return ',' ; }
15911599 YY_BREAK
15921600/* Expression terminator */
1593- case 48 :
1601+ case 49 :
15941602YY_RULE_SETUP
15951603{ return ';' ; }
15961604 YY_BREAK
15971605/* Ignored whitespace */
1598- case 49 :
1599- /* rule 49 can match eol */
1606+ case 50 :
1607+ /* rule 50 can match eol */
16001608YY_RULE_SETUP
16011609{ }
16021610 YY_BREAK
16031611/* All other tokens are invalid */
1604- case 50 :
1612+ case 51 :
16051613YY_RULE_SETUP
16061614{ return PRJM_EVAL_UNDEF ; }
16071615 YY_BREAK
1608- case 51 :
1616+ case 52 :
16091617YY_RULE_SETUP
16101618ECHO ;
16111619 YY_BREAK
0 commit comments