Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- %X COMMENT STR
- %{
- #include <string.h>
- int imprimir=0;
- %}
- %%
- \" {BEGIN STR}
- <STR>\" {BEGIN 0, printf("\n");}
- <STR>. {if(imprimir==1){printf("%c",*yytext);}}
- boolean {if(imprimir==1){printf("BOOL\n");}}
- true|false {if(imprimir==1){printf("BOOLLIT\n");}}
- class {if(imprimir==1){printf("CLASS\n");}}
- do {if(imprimir==1){printf("DO\n");}}
- "."lenght {if(imprimir==1){printf("DOTLENGTH\n");}}
- double {if(imprimir==1){printf("DOUBLE\n");}}
- else {if(imprimir==1){printf("ELSE\n");}}
- if {if(imprimir==1){printf("IF\n");}}
- int {if(imprimir==1){printf("INT\n");}}
- Integer"."parseInt {if(imprimir==1){printf("PARSEINT\n");}}
- System"."out"."println {if(imprimir==1){printf("PRINT\n");}}
- Integer {if(imprimir==1){printf("RESERVED\n");}}
- System {if(imprimir==1){printf("RESERVED\n");}}
- public {if(imprimir==1){printf("PUBLIC\n");}}
- return {if(imprimir==1){printf("RETURN\n");}}
- static {if(imprimir==1){printf("STATIC\n");}}
- string {if(imprimir==1){printf("STRING\n");}}
- void {if(imprimir==1){printf("VOID\n");}}
- while {if(imprimir==1){printf("WHILE\n");}}
- null {if(imprimir==1){printf("RESERVED\n");}}
- abstract {if(imprimir==1){printf("RESERVED\n");}}
- assert {if(imprimir==1){printf("RESERVED\n");}}
- break {if(imprimir==1){printf("RESERVED\n");}}
- byte {if(imprimir==1){printf("RESERVED\n");}}
- case {if(imprimir==1){printf("RESERVED\n");}}
- catch {if(imprimir==1){printf("RESERVED\n");}}
- char {if(imprimir==1){printf("RESERVED\n");}}
- const {if(imprimir==1){printf("RESERVED\n");}}
- continue {if(imprimir==1){printf("RESERVED\n");}}
- default {if(imprimir==1){printf("RESERVED\n");}}
- enum {if(imprimir==1){printf("RESERVED\n");}}
- extends {if(imprimir==1){printf("RESERVED\n");}}
- final {if(imprimir==1){printf("RESERVED\n");}}
- finally {if(imprimir==1){printf("RESERVED\n");}}
- float {if(imprimir==1){printf("RESERVED\n");}}
- for {if(imprimir==1){printf("RESERVED\n");}}
- goto {if(imprimir==1){printf("RESERVED\n");}}
- implements {if(imprimir==1){printf("RESERVED\n");}}
- import {if(imprimir==1){printf("RESERVED\n");}}
- instanceof {if(imprimir==1){printf("RESERVED\n");}}
- interface {if(imprimir==1){printf("RESERVED\n");}}
- long {if(imprimir==1){printf("RESERVED\n");}}
- native {if(imprimir==1){printf("RESERVED\n");}}
- new {if(imprimir==1){printf("RESERVED\n");}}
- package {if(imprimir==1){printf("RESERVED\n");}}
- private {if(imprimir==1){printf("RESERVED\n");}}
- protected {if(imprimir==1){printf("RESERVED\n");}}
- short {if(imprimir==1){printf("RESERVED\n");}}
- strictfp {if(imprimir==1){printf("RESERVED\n");}}
- super {if(imprimir==1){printf("RESERVED\n");}}
- switch {if(imprimir==1){printf("RESERVED\n");}}
- synchronized {if(imprimir==1){printf("RESERVED\n");}}
- this {if(imprimir==1){printf("RESERVED\n");}}
- throws {if(imprimir==1){printf("RESERVED\n");}}
- throw {if(imprimir==1){printf("RESERVED\n");}}
- transient {if(imprimir==1){printf("RESERVED\n");}}
- try {if(imprimir==1){printf("RESERVED\n");}}
- volatile {if(imprimir==1){printf("RESERVED\n");}}
- "(" {if(imprimir==1){printf("OCURV\n");}}
- ")" {if(imprimir==1){printf("CCURV\n");}}
- "{" {if(imprimir==1){printf("OBRACE\n");}}
- "}" {if(imprimir==1){printf("CBRACE\n");}}
- "[" {if(imprimir==1){printf("OSQUARE\n");}}
- "]" {if(imprimir==1){printf("CSQUARE\n");}}
- "&&" {if(imprimir==1){printf("AND\n");}}
- "||" {if(imprimir==1){printf("OR\n");}}
- "<" {if(imprimir==1){printf("LT\n");}}
- ">" {if(imprimir==1){printf("GT\n");}}
- "==" {if(imprimir==1){printf("EQ\n");}}
- "!=" {if(imprimir==1){printf("NEQ\n");}}
- "<=" {if(imprimir==1){printf("LEQ\n");}}
- ">=" {if(imprimir==1){printf("GEQ\n");}}
- "++" {if(imprimir==1){printf("RESERVED\n");}}
- "+" {if(imprimir==1){printf("PLUS\n");}}
- "--" {if(imprimir==1){printf("RESERVED\n");}}
- "-" {if(imprimir==1){printf("MINUS\n");}}
- "*" {if(imprimir==1){printf("STAR\n");}}
- "/" {if(imprimir==1){printf("DIV\n");}}
- "%" {if(imprimir==1){printf("MOD\n");}}
- "!" {if(imprimir==1){printf("NOT\n");}}
- "=" {if(imprimir==1){printf("ASSIGN\n");}}
- ";" {if(imprimir==1){printf("SEMI\n");}}
- "," {if(imprimir==1){printf("COMMA\n");}}
- ([a-z]|_|$|[A-Z])([a-z]|[A-Z]|_|$|[0-9])* {if(imprimir==1){printf("ID(%c)\n",*yytext);}}
- " " ;
- \t ;
- \n ;
- \f ;
- \r ;
- . ;
- %%
- int main(int argc, char **argv)
- {
- if(strcmp(argv[1],"-l")==0||strcmp(argv[1],"-1")==0){
- imprimir=1;
- }
- yylex();
- return 0;
- }
- int yywrap()
- {
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement