lexical.c 868 B

12345678910111213141516171819202122232425262728293031323334
  1. #include <stdio.h>
  2. #include "aFun.h"
  3. #include "../../src/core/__parser.h"
  4. char *str = "Hello_var\n"
  5. "10 20.32 100var\n"
  6. "|10 20.32|int->num\n"
  7. "|10||20.32|int->num\n"
  8. "{if true 10}\n"
  9. "of(HelloWorld)\n"
  10. "!(!) @(@) #(#)\n"
  11. "() [] {}\n"
  12. "Hello ;comment\n"
  13. "Hello ;;comment\n"
  14. "commment2;=\n"
  15. "var-200 ;; comment\n"
  16. ";; comment\n"
  17. ";= comment\n"
  18. ";= var-300\n";
  19. int main() {
  20. af_Parser *parser = makeParserByString(str, false, stderr);
  21. af_TokenType tt;
  22. char *text = NULL;
  23. do {
  24. tt = getTokenFromLexical(&text, parser);
  25. printf("tt = %d, text = %s\n", tt, text);
  26. free(text);
  27. } while (tt != TK_EOF && tt != TK_ERROR);
  28. freeParser(parser);
  29. return 0;
  30. }