extern int lexer_lexmapfile(int, int);
extern int ipower(int, int);
extern int ttov(uint8_t*, int);
-extern struct name* tton(const uint8_t*, int);
int lexer_setdirection(uint8_t*, int);
int lexer_lexstring(uint8_t*, int);
action push_ref { PUSHTOK(REF, ttov, ref); }
action push_val { PUSHTOK(NUM, ttov, val); }
action push_name { printf("Lexer_lexstring:: action:push_name: from %s to %s\n", ts, p);
- PUSHTOK(NAME, tton, name);
+ lexer_pushtok(NAME, yylval);
+ ntok++;
}
- action push_map { printf("Lexer_lexstring:: action:push_map: pushing '~'\n");
+ action push_map { printf("Lexer_lexstring:: action:push_map: pushing map token\n");
yylval.str = (uint8_t*) '~';
lexer_pushtok(MOPEN, yylval);
ntok++;
action push_width { printf("Lexer_lexstring:: action:push_height p = %s\n", p);
PUSHTOK(WIDTH, ttov, val);
}
- action push_link {yylval.str = (uint8_t*) '#'; lexer_pushtok(LINK),yylval); }
+ action push_link {yylval.str = (uint8_t*) '#'; lexer_pushtok(LINK,yylval); }
#action lex_error { printf("input error: character %c in filename %s is invalid\n p = %s\n", fc, str, p);}
action p { printf("Lexer_lexstring:: p = %s\n", p);}
tok = (name | val | ref | dimensions | map | link | SS | direction);
- tok_lexer := (tok tok_delimiter)+ tok [\0];
+ main := (tok tok_delimiter)+ tok [\0];
- write data;
+ write data nofinal noerror noprefix;
}%%
main := direction;
- write data;
+ write data nofinal noprefix noerror;
}%%