diff options
Diffstat (limited to 'yy/kalmia.l')
-rw-r--r-- | yy/kalmia.l | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/yy/kalmia.l b/yy/kalmia.l index 697d6ac..7e04f1a 100644 --- a/yy/kalmia.l +++ b/yy/kalmia.l @@ -45,11 +45,27 @@ ATTR ([\x20\x0a\x0d\x09]*)?"=" <INITIAL>"/>" { return EMPTY_TAG_CLOSE; } +<INITIAL>"float_array" { + /* float_array tag */ + return FLOAT_ARRAY; +} + + +<INITIAL>"id"/{ATTR} { + /* id attribute */ + return ID_ATTR; +} +<INTIAL>"count"/{ATTR} { + /* count attribute */ + return COUNT_ATTR; +} + + <INITIAL>[a-zA-Z_:][a-zA-Z0-9\.\-_:]* { /* generic tag name */ yylval->sval = strdup(yytext); return NAME; } -<INITIAL>[a-zA-Z_:][a-zA-Z0-9\.\-_:]*/([\x20\x0a\x0d\x09])*"=" { +<INITIAL>[a-zA-Z_:][a-zA-Z0-9\.\-_:]*/{ATTR} { /* generic attribute key */ yylval->sval = strdup(yytext); return ATTR; @@ -60,6 +76,9 @@ ATTR ([\x20\x0a\x0d\x09]*)?"=" } + + + <INITIAL>"\"" { /* begin a string */ BEGIN(STRING); |