summaryrefslogtreecommitdiffstats
path: root/mmss/config.l
diff options
context:
space:
mode:
Diffstat (limited to 'mmss/config.l')
-rw-r--r--mmss/config.l17
1 files changed, 16 insertions, 1 deletions
diff --git a/mmss/config.l b/mmss/config.l
index 4fdd346..33d9631 100644
--- a/mmss/config.l
+++ b/mmss/config.l
@@ -57,7 +57,8 @@
%}
<INITIAL>{
-[0-9]+ { UPDATE_LOCATION; yylval->num = atoi(yytext); BEGIN(NEEDSPACE); return TOK_INTEGER; }
+[0-9]+ { UPDATE_LOCATION; yylval->num = std::atoi(yytext); BEGIN(NEEDSPACE); return TOK_INTEGER; }
+[0-9]*\.[0-9]+ { UPDATE_LOCATION; yylval->fnum = float(std::atof(yytext)); BEGIN(NEEDSPACE); return TOK_FLOAT; }
yes { TOKEN(TOK_YES); }
no { TOKEN(TOK_NO); }
@@ -68,6 +69,13 @@ load { TOKEN(TOK_LOAD); }
default { TOKEN(TOK_DEFAULT); }
interface { TOKEN(TOK_INTERFACE); }
address { TOKEN(TOK_ADDRESS); }
+etx { TOKEN(TOK_ETX); }
+const { TOKEN(TOK_CONST); }
+min { TOKEN(TOK_MIN); }
+max { TOKEN(TOK_MAX); }
+sine { TOKEN(TOK_SINE); }
+period { TOKEN(TOK_PERIOD); }
+phase { TOKEN(TOK_PHASE); }
([[:xdigit:]]{2}:){7}[[:xdigit:]]{2} {
UPDATE_LOCATION;
@@ -86,6 +94,13 @@ address { TOKEN(TOK_ADDRESS); }
\r ;
}
+<INITIAL,NEEDSPACE>{
+s { TOKEN(TOK_S); }
+m { TOKEN(TOK_M); }
+h { TOKEN(TOK_H); }
+days { TOKEN(TOK_DAYS); }
+}
+
<NEEDSPACE>{
[;:\{\}] { UPDATE_LOCATION; BEGIN(INITIAL); return yytext[0]; }