123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- %{
- #include "analyse_syntaxique.tab.h"
- int yywrap(void){
- return 1;
- }
-
- %}
-
-
-
-
- ADD "+"
- SUB "-"
- MUL "*"
- DIV "/"
- tPO "("
- tPF ")"
- tAO "{"
- tAF "}"
- EOL "\n"
- EOI ";"
- SPACE " "
- TAB "\t"
- VIRGULE ","
- AFFECTATION "="
- EQUAL "=="
- LT "<"
- GT ">"
- LTE "<="
- GTE ">="
- tINT "int"
- tMAIN "main"
- tPRINT "printf"
- tRETURN "return"
- tIF "if"
- tELSE "else"
- tWHILE "while"
- tNOT "!"
- tAND "&&"
- tOR "||"
- tDIFF "!="
- tAPPERSAND "&"
- DIGIT [0-9]
- VARIABLE [A-Za-z0-9_]+
- CONST "const"
- DECIMAL {DIGIT}+
- EXPONENTIEL {DIGIT}+"e"{DIGIT}+
- ENTIER {DECIMAL}
- ENTIEREXP {EXPONENTIEL}
- OPERATION {ADD}|{SUB}|{MUL}|{DIV}
- COMPARATEUR {EGAL}|{LT}|{GT}
- SEPARATOR {SPACE}|{TAB}
-
- %%
-
- {ADD} {return tADD ;}
- {SUB} {return tSUB ;}
- {MUL} {return tMUL ;}
- {DIV} {return tDIV ;}
-
- {tPO} {return tPO ;}
- {tPF} {return tPF ;}
- {tAO} {return tAO ;}
- {tAF} {return tAF ;}
-
- {EOI} {return tPV ;}
- {SEPARATOR} {}
- {EOL} {}
- {VIRGULE} {return tVIRGULE ;}
-
- {AFFECTATION} {return tAFFECTATION ;}
-
- {EQUAL} {return tEGAL ;}
- {tDIFF} {return tDIFF ;}
- {LT} {return tLT ;}
- {GT} {return tGT ;}
- {LTE} {return tLTE ;}
- {GTE} {return tGTE ;}
- {tNOT} {return tNOT ;}
-
-
- {tMAIN} {return tMAIN ;}
- {tINT} {return tINT ;}
- {tPRINT} {return tPRINT ;}
- {tRETURN} {return tRETURN ;}
-
- {tOR} {return tOR ;}
- {tAND} {return tAND ;}
-
- {tIF} {return tIF ;}
- {tELSE} {return tELSE ;}
- {tWHILE} {return tWHILE ;}
-
- {tAPPERSAND} {return tAPPERSAND;}
- {CONST} {return tCONST ;}
- {ENTIER} {yylval.nombre = atoi(yytext); return tENTIER ;}
- {ENTIEREXP} {yylval.nombre = -1; return tENTIEREXP;}
- {VARIABLE} {strcpy(yylval.id, yytext); return tVAR ;}
-
- %%
-
- //int main(void){
- // yylex();
- //}
-
|