save.l 482 B

1234567891011121314151617181920212223242526
  1. %{
  2. #include "main.h"
  3. #include "save.tab.h"
  4. void yystring( char* src );
  5. %}
  6. %%
  7. pc|npc yystring( yytext ); return CH;
  8. map return MAP;
  9. [0-9]+ yylval.num=atoi(yytext); return NUM;
  10. rep|id|win|ispc|alert|alertness|fatigue|exhausted|health|pos yystring( yytext ); return STAT;
  11. [{},()=] return *yytext;
  12. [ \t\n]
  13. .
  14. %%
  15. void yystring( char* source ) {
  16. char* sink = malloc(sizeof(source)+1);
  17. strcpy( sink, source );
  18. yylval.str = sink;
  19. }
  20. int yywrap() {
  21. return 1;
  22. }