Advertisement
weeez

plang--.l

Jun 12th, 2015
237
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.65 KB | None | 0 0
  1. %option noyywrap c++ yylineno
  2.  
  3. %{
  4. #include <iostream>
  5. #include <cstdlib>
  6. #include "Parserbase.h"
  7. %}
  8.  
  9. SZAMJEGY [0-9]
  10. WS [ \t\n]
  11. BETU [a-zA-Z]
  12. FIXKONST [0-9]+\.[0-9]?[0-9]?
  13.  
  14. %%
  15.  
  16. "**"[^\n]*\n // nem kell semmit csinalni
  17.  
  18. {SZAMJEGY}+ return Parser::SZAMKONSTANS;
  19. {FIXKONST} return Parser::FIXKONST;
  20.  
  21.  
  22.  
  23. EGESZRESZ return Parser::EGESZRESZ;
  24. TORTRESZ return Parser::TORTRESZ;
  25. FIX return Parser::FIX;
  26. PROGRAM return Parser::PROGRAM;
  27. VALTOZOK: return Parser::VALTOZOK;
  28. UTASITASOK: return Parser::UTASITASOK;
  29. PROGRAM_VEGE return Parser::PROGRAM_VEGE;
  30. HA return Parser::HA;
  31. AKKOR return Parser::AKKOR;
  32. KULONBEN return Parser::KULONBEN;
  33. HA_VEGE return Parser::HA_VEGE;
  34. CIKLUS return Parser::CIKLUS;
  35. AMIG return Parser::AMIG;
  36. CIKLUS_VEGE return Parser::CIKLUS_VEGE;
  37. BE: return Parser::BE;
  38. KI: return Parser::KI;
  39. EGESZ return Parser::EGESZ;
  40. LOGIKAI return Parser::LOGIKAI;
  41. IGAZ return Parser::IGAZ;
  42. HAMIS return Parser::HAMIS;
  43. SKIP return Parser::SKIP;
  44.  
  45. ":=" return Parser::ERTEKADAS;
  46. "=" return Parser::EGYENLO;
  47. "<" return Parser::KISEBB;
  48. ">" return Parser::NAGYOBB;
  49. "+" return Parser::PLUSZ;
  50. "*" return Parser::SZORZAS;
  51. "/" return Parser::OSZTAS;
  52. "%" return Parser::MARADEK;
  53. ES return Parser::ES;
  54. VAGY return Parser::VAGY;
  55. NEM return Parser::NEM;
  56. "(" return Parser::BALZAROJEL;
  57. ")" return Parser::JOBBZAROJEL;
  58.  
  59. {BETU}({BETU}|{SZAMJEGY}|-|_)* return Parser::AZONOSITO;
  60.  
  61. {WS}+ // feher szokozok: semmi teendo
  62.  
  63. . {
  64. std::cerr << "lexikalis hiba" << std::endl;
  65. exit(1);
  66. }
  67.  
  68. %%
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement