diff --git a/TODO.md b/TODO.md new file mode 100644 index 00000000..8099110c --- /dev/null +++ b/TODO.md @@ -0,0 +1,2 @@ +Nächste Aufgaben: + diff --git a/bin/mycompiler/myparser/JavaParser.jay b/bin/mycompiler/myparser/JavaParser.jay index 042059fd..16b86385 100755 --- a/bin/mycompiler/myparser/JavaParser.jay +++ b/bin/mycompiler/myparser/JavaParser.jay @@ -226,6 +226,7 @@ public Vector testPair = new Vector(); %type variabledeclarator %type variabledeclaratorid %type simplename +%type typename %type qualifiedname %type importqualifiedname %type importdeclaration @@ -786,6 +787,19 @@ classbodydeclaration : classmemberdeclaration $$=$1; } //*/ + +typename : simplename + { + $$=$1; + } + | IDENTIFIER '.' typename + { + UsedId UI = new UsedId($1.getOffset()); + UI.set_Name( $1.getLexem() + "." + $3 ); + UI.setOffset($1.getOffset());//hinzugef�gt hoth: 07.04.2006 + $$ = UI; + } + classorinterfacetype : simplename parameter { if ($2 != null) { @@ -1240,6 +1254,12 @@ type : primitivetype { $$=$1; } + /* + | referencelongtype + { + $$=$1; + } + */ |referencetype '[' ']' { $1.setArray(true); @@ -1357,6 +1377,28 @@ primitivetype :BOOLEAN $$=$1; } +referencelongtype : typename parameter + { + if ($2 != null) { + //$1.set_ParaList($2.get_ParaList()); + $1.set_ParaList($2);//Änderung von Andreas Stadelmeier. Type statt GenericVarType + /* otth: originale (also diese) Parameterliste retten */ + //((UsedId)$1).vParaOrg = new Vector( $2.get_ParaList() ); + } + UsedId uid = $1; + RefType RT = new RefType(uid.getOffset()); + + RT.set_ParaList(uid.get_RealParaList()); + RT.setName(uid.getQualifiedName()); + + + //PL 05-07-30 eingefuegt containedTypes ANFANG + containedTypes.addElement(RT); + //PL 05-07-30 eingefuegt containedTypes ENDE + + $$=RT; + } + referencetype :classorinterfacetype { org.apache.log4j.Logger.getLogger("parser").debug("T->Parser->referenctype: " + $1); @@ -1375,6 +1417,8 @@ referencetype :classorinterfacetype $$=RT; } + + /* 05-07-28 PL Parameterdeklarationen zur classorinterfacetype verschoben */ variabledeclarator : variabledeclaratorid diff --git a/src/mycompiler/myparser/JavaParser.java b/src/mycompiler/myparser/JavaParser.java index 43b2946e..fd173c99 100644 --- a/src/mycompiler/myparser/JavaParser.java +++ b/src/mycompiler/myparser/JavaParser.java @@ -341,6 +341,8 @@ public Vector testPair = new Vector(); //t "classbodydeclaration : classmemberdeclaration", //t "classbodydeclaration : staticinitializer", //t "classbodydeclaration : constructordeclaration", +//t "typename : simplename", +//t "typename : IDENTIFIER '.' typename", //t "classorinterfacetype : simplename parameter", //t "typelist : type", //t "typelist : typelist ',' type", @@ -423,6 +425,7 @@ public Vector testPair = new Vector(); //t "methoddeclarator : IDENTIFIER '(' formalparameterlist ')'", //t "primitivetype : BOOLEAN", //t "primitivetype : numerictype", +//t "referencelongtype : typename parameter", //t "referencetype : classorinterfacetype", //t "variabledeclarator : variabledeclaratorid", //t "blockstatement : localvariabledeclarationstatement", @@ -758,20 +761,20 @@ public Vector testPair = new Vector(); yyVal = yyDefault(yyV > yyTop ? null : yyVals[yyV]); switch (yyN) { case 1: - // line 326 "./../src/mycompiler/myparser/JavaParser.jay" + // line 327 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((SourceFile)yyVals[0+yyTop]); } break; case 2: - // line 330 "./../src/mycompiler/myparser/JavaParser.jay" + // line 331 "./../src/mycompiler/myparser/JavaParser.jay" { ((SourceFile)yyVals[0+yyTop]).addImports(((ImportDeclarations)yyVals[-1+yyTop])); yyVal=((SourceFile)yyVals[0+yyTop]); } break; case 3: - // line 335 "./../src/mycompiler/myparser/JavaParser.jay" + // line 336 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Package*/ ((SourceFile)yyVals[0+yyTop]).setPackageName(((UsedId)yyVals[-2+yyTop])); @@ -780,7 +783,7 @@ case 3: } break; case 4: - // line 342 "./../src/mycompiler/myparser/JavaParser.jay" + // line 343 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Package*/ ((SourceFile)yyVals[0+yyTop]).setPackageName(((UsedId)yyVals[-1+yyTop])); @@ -788,21 +791,21 @@ case 4: } break; case 5: - // line 348 "./../src/mycompiler/myparser/JavaParser.jay" + // line 349 "./../src/mycompiler/myparser/JavaParser.jay" { this.testPair.add(new Pair(((Type)yyVals[-2+yyTop]),((Type)yyVals[-1+yyTop]))); yyVal=((SourceFile)yyVals[0+yyTop]); } break; case 6: - // line 354 "./../src/mycompiler/myparser/JavaParser.jay" + // line 355 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Package*/ yyVal = ((UsedId)yyVals[-1+yyTop]); } break; case 7: - // line 360 "./../src/mycompiler/myparser/JavaParser.jay" + // line 361 "./../src/mycompiler/myparser/JavaParser.jay" { ImportDeclarations declarations=new ImportDeclarations(); declarations.addElement(((UsedId)yyVals[0+yyTop])); @@ -810,20 +813,20 @@ case 7: } break; case 8: - // line 366 "./../src/mycompiler/myparser/JavaParser.jay" + // line 367 "./../src/mycompiler/myparser/JavaParser.jay" { ((ImportDeclarations)yyVals[-1+yyTop]).addElement(((UsedId)yyVals[0+yyTop])); yyVal=((ImportDeclarations)yyVals[-1+yyTop]); } break; case 9: - // line 372 "./../src/mycompiler/myparser/JavaParser.jay" + // line 373 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((UsedId)yyVals[-1+yyTop]); } break; case 10: - // line 377 "./../src/mycompiler/myparser/JavaParser.jay" + // line 378 "./../src/mycompiler/myparser/JavaParser.jay" { SourceFile Scfile = new SourceFile(); Scfile.addElement(((AClassOrInterface)yyVals[0+yyTop])); @@ -831,39 +834,39 @@ case 10: } break; case 11: - // line 383 "./../src/mycompiler/myparser/JavaParser.jay" + // line 384 "./../src/mycompiler/myparser/JavaParser.jay" { ((SourceFile)yyVals[-1+yyTop]).addElement(((AClassOrInterface)yyVals[0+yyTop])); yyVal=((SourceFile)yyVals[-1+yyTop]); } break; case 12: - // line 389 "./../src/mycompiler/myparser/JavaParser.jay" + // line 390 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((UsedId)yyVals[0+yyTop]); } break; case 13: - // line 393 "./../src/mycompiler/myparser/JavaParser.jay" + // line 394 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((UsedId)yyVals[0+yyTop]); } break; case 14: - // line 398 "./../src/mycompiler/myparser/JavaParser.jay" + // line 399 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Class)yyVals[0+yyTop]); } break; case 15: - // line 402 "./../src/mycompiler/myparser/JavaParser.jay" + // line 403 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interface*/ yyVal=((Interface)yyVals[0+yyTop]); } break; case 16: - // line 409 "./../src/mycompiler/myparser/JavaParser.jay" + // line 410 "./../src/mycompiler/myparser/JavaParser.jay" { ((UsedId)yyVals[-2+yyTop]).set_Name(((Token)yyVals[0+yyTop]).getLexem()); ((UsedId)yyVals[-2+yyTop]).setOffset(((UsedId)yyVals[-2+yyTop]).getOffset()); @@ -871,7 +874,7 @@ case 16: } break; case 17: - // line 416 "./../src/mycompiler/myparser/JavaParser.jay" + // line 417 "./../src/mycompiler/myparser/JavaParser.jay" { ((UsedId)yyVals[-2+yyTop]).set_Name(((Token)yyVals[0+yyTop]).getLexem()); ((UsedId)yyVals[-2+yyTop]).setOffset(((UsedId)yyVals[-2+yyTop]).getOffset()); @@ -879,7 +882,7 @@ case 17: } break; case 18: - // line 422 "./../src/mycompiler/myparser/JavaParser.jay" + // line 423 "./../src/mycompiler/myparser/JavaParser.jay" { ((UsedId)yyVals[-2+yyTop]).set_Name("*"); ((UsedId)yyVals[-2+yyTop]).setOffset(((UsedId)yyVals[-2+yyTop]).getOffset()); @@ -887,7 +890,7 @@ case 18: } break; case 19: - // line 430 "./../src/mycompiler/myparser/JavaParser.jay" + // line 431 "./../src/mycompiler/myparser/JavaParser.jay" { UsedId UI = new UsedId(((Token)yyVals[0+yyTop]).getOffset()); UI.set_Name( ((Token)yyVals[0+yyTop]).getLexem() ); @@ -896,7 +899,7 @@ case 19: } break; case 20: - // line 438 "./../src/mycompiler/myparser/JavaParser.jay" + // line 439 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Um das hier uebersichtlicher zu halten,*/ /* gibt es einen allumfassenden Konstruktor fuer Class*/ @@ -915,7 +918,7 @@ case 20: } break; case 21: - // line 455 "./../src/mycompiler/myparser/JavaParser.jay" + // line 456 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = new Class(((ClassAndParameter)yyVals[-1+yyTop]).getName(), ((Modifiers)yyVals[-3+yyTop]), ((ClassBody)yyVals[0+yyTop]), containedTypes,usedIdsToCheck, null, null, ((ClassAndParameter)yyVals[-1+yyTop]).getParaVector(), ((Token)yyVals[-2+yyTop]).getOffset()); this.initContainedTypes(); @@ -923,7 +926,7 @@ case 21: } break; case 22: - // line 461 "./../src/mycompiler/myparser/JavaParser.jay" + // line 462 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = new Class(((ClassAndParameter)yyVals[-2+yyTop]).getName(), null, ((ClassBody)yyVals[0+yyTop]), containedTypes,usedIdsToCheck, ((UsedId)yyVals[-1+yyTop]), null, ((ClassAndParameter)yyVals[-2+yyTop]).getParaVector(), ((Token)yyVals[-3+yyTop]).getOffset()); this.initContainedTypes(); @@ -931,7 +934,7 @@ case 22: } break; case 23: - // line 467 "./../src/mycompiler/myparser/JavaParser.jay" + // line 468 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = new Class(((ClassAndParameter)yyVals[-2+yyTop]).getName(), ((Modifiers)yyVals[-4+yyTop]), ((ClassBody)yyVals[0+yyTop]), containedTypes, usedIdsToCheck, ((UsedId)yyVals[-1+yyTop]), null, ((ClassAndParameter)yyVals[-2+yyTop]).getParaVector(), ((Token)yyVals[-3+yyTop]).getOffset()); this.initContainedTypes(); @@ -939,7 +942,7 @@ case 23: } break; case 24: - // line 474 "./../src/mycompiler/myparser/JavaParser.jay" + // line 475 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = new Class(((ClassAndParameter)yyVals[-2+yyTop]).getName(), null, ((ClassBody)yyVals[0+yyTop]), containedTypes, usedIdsToCheck, null, ((InterfaceList)yyVals[-1+yyTop]).getVector(), ((ClassAndParameter)yyVals[-2+yyTop]).getParaVector(), ((Token)yyVals[-3+yyTop]).getOffset()); this.initContainedTypes(); @@ -947,7 +950,7 @@ case 24: } break; case 25: - // line 480 "./../src/mycompiler/myparser/JavaParser.jay" + // line 481 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = new Class(((ClassAndParameter)yyVals[-2+yyTop]).getName(), ((Modifiers)yyVals[-4+yyTop]), ((ClassBody)yyVals[0+yyTop]), containedTypes, usedIdsToCheck, null, ((InterfaceList)yyVals[-1+yyTop]).getVector(), ((ClassAndParameter)yyVals[-2+yyTop]).getParaVector(), ((Token)yyVals[-3+yyTop]).getOffset()); this.initContainedTypes(); @@ -955,7 +958,7 @@ case 25: } break; case 26: - // line 486 "./../src/mycompiler/myparser/JavaParser.jay" + // line 487 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = new Class(((ClassAndParameter)yyVals[-3+yyTop]).getName(), null, ((ClassBody)yyVals[0+yyTop]), containedTypes,usedIdsToCheck, ((UsedId)yyVals[-2+yyTop]), ((InterfaceList)yyVals[-1+yyTop]).getVector(), ((ClassAndParameter)yyVals[-3+yyTop]).getParaVector(), ((Token)yyVals[-4+yyTop]).getOffset()); this.initContainedTypes(); @@ -963,7 +966,7 @@ case 26: } break; case 27: - // line 492 "./../src/mycompiler/myparser/JavaParser.jay" + // line 493 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = new Class(((ClassAndParameter)yyVals[-3+yyTop]).getName(), ((Modifiers)yyVals[-5+yyTop]), ((ClassBody)yyVals[0+yyTop]), containedTypes, usedIdsToCheck, ((UsedId)yyVals[-2+yyTop]), ((InterfaceList)yyVals[-1+yyTop]).getVector(), ((ClassAndParameter)yyVals[-3+yyTop]).getParaVector(), ((Token)yyVals[-4+yyTop]).getOffset()); this.initContainedTypes(); @@ -971,7 +974,7 @@ case 27: } break; case 28: - // line 499 "./../src/mycompiler/myparser/JavaParser.jay" + // line 500 "./../src/mycompiler/myparser/JavaParser.jay" { /* HOTI*/ /* Verbindet den Namen eines Interfaces mit einer optionalen Parameterliste*/ @@ -979,13 +982,13 @@ case 28: } break; case 29: - // line 505 "./../src/mycompiler/myparser/JavaParser.jay" + // line 506 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = new InterfaceAndParameter(((Token)yyVals[-3+yyTop]).getLexem(), ((ParaList)yyVals[-1+yyTop])); } break; case 30: - // line 510 "./../src/mycompiler/myparser/JavaParser.jay" + // line 511 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Hilfskonstrukt, um die Grammatik ueberschaubar zu halten*/ /* Verbindet den Namen einer Klasse mit einer optionalen Parameterliste*/ @@ -993,13 +996,13 @@ case 30: } break; case 31: - // line 516 "./../src/mycompiler/myparser/JavaParser.jay" + // line 517 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = new ClassAndParameter(((Token)yyVals[-3+yyTop]).getLexem(), ((ParaList)yyVals[-1+yyTop])); } break; case 32: - // line 521 "./../src/mycompiler/myparser/JavaParser.jay" + // line 522 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interface*/ Interface ic = new Interface(((InterfaceAndParameter)yyVals[-1+yyTop]).getName(), ((Token)yyVals[-2+yyTop]).getOffset()); @@ -1011,7 +1014,7 @@ case 32: } break; case 33: - // line 531 "./../src/mycompiler/myparser/JavaParser.jay" + // line 532 "./../src/mycompiler/myparser/JavaParser.jay" { Interface ic = new Interface(((InterfaceAndParameter)yyVals[-1+yyTop]).getName(), ((Modifiers)yyVals[-3+yyTop]), ((Token)yyVals[-2+yyTop]).getOffset()); ic.setInterfaceBody(((InterfaceBody)yyVals[0+yyTop])); @@ -1022,7 +1025,7 @@ case 33: } break; case 34: - // line 540 "./../src/mycompiler/myparser/JavaParser.jay" + // line 541 "./../src/mycompiler/myparser/JavaParser.jay" { Interface ic = new Interface(((InterfaceAndParameter)yyVals[-2+yyTop]).getName(), ((Token)yyVals[-3+yyTop]).getOffset()); ic.setParaList(((InterfaceAndParameter)yyVals[-2+yyTop]).getParaVector()); @@ -1034,7 +1037,7 @@ case 34: } break; case 35: - // line 550 "./../src/mycompiler/myparser/JavaParser.jay" + // line 551 "./../src/mycompiler/myparser/JavaParser.jay" { Interface ic = new Interface(((InterfaceAndParameter)yyVals[-2+yyTop]).getName(), ((Modifiers)yyVals[-4+yyTop]), ((Token)yyVals[-3+yyTop]).getOffset()); ic.setParaList(((InterfaceAndParameter)yyVals[-2+yyTop]).getParaVector()); @@ -1046,7 +1049,7 @@ case 35: } break; case 36: - // line 561 "./../src/mycompiler/myparser/JavaParser.jay" + // line 562 "./../src/mycompiler/myparser/JavaParser.jay" { ParaList pl = new ParaList(); /* #JB# 05.04.2005 */ @@ -1059,7 +1062,7 @@ case 36: } break; case 37: - // line 572 "./../src/mycompiler/myparser/JavaParser.jay" + // line 573 "./../src/mycompiler/myparser/JavaParser.jay" { ParaList pl = new ParaList(); RefType t = new RefType( ((Token)yyVals[-3+yyTop]).getLexem(),((Token)yyVals[-3+yyTop]).getOffset() ); @@ -1070,7 +1073,7 @@ case 37: } break; case 38: - // line 581 "./../src/mycompiler/myparser/JavaParser.jay" + // line 582 "./../src/mycompiler/myparser/JavaParser.jay" { ParaList pl = new ParaList(); pl.getParalist().addElement(((WildcardType)yyVals[0+yyTop])); @@ -1078,7 +1081,7 @@ case 38: } break; case 39: - // line 587 "./../src/mycompiler/myparser/JavaParser.jay" + // line 588 "./../src/mycompiler/myparser/JavaParser.jay" { /* #JB# 05.04.2005 */ @@ -1092,7 +1095,7 @@ case 39: } break; case 40: - // line 600 "./../src/mycompiler/myparser/JavaParser.jay" + // line 601 "./../src/mycompiler/myparser/JavaParser.jay" { RefType t = new RefType( ((Token)yyVals[-3+yyTop]).getLexem() ,((Token)yyVals[-3+yyTop]).getOffset() ); t.set_ParaList( ((ParaList)yyVals[-1+yyTop]).get_ParaList() ); @@ -1102,14 +1105,14 @@ case 40: } break; case 41: - // line 608 "./../src/mycompiler/myparser/JavaParser.jay" + // line 609 "./../src/mycompiler/myparser/JavaParser.jay" { ((ParaList)yyVals[-2+yyTop]).getParalist().addElement(((WildcardType)yyVals[0+yyTop])); yyVal=((ParaList)yyVals[-2+yyTop]); } break; case 42: - // line 614 "./../src/mycompiler/myparser/JavaParser.jay" + // line 615 "./../src/mycompiler/myparser/JavaParser.jay" { /*Luar 29.11.06 Offset auf -1, da keine Angabe vorhanden*/ WildcardType wc = new WildcardType(-1); @@ -1117,34 +1120,34 @@ case 42: } break; case 43: - // line 620 "./../src/mycompiler/myparser/JavaParser.jay" + // line 621 "./../src/mycompiler/myparser/JavaParser.jay" { ExtendsWildcardType ewc = new ExtendsWildcardType(((Token)yyVals[-1+yyTop]).getOffset(),((RefType)yyVals[0+yyTop])); yyVal = ewc; } break; case 44: - // line 625 "./../src/mycompiler/myparser/JavaParser.jay" + // line 626 "./../src/mycompiler/myparser/JavaParser.jay" { SuperWildcardType swc = new SuperWildcardType(((Token)yyVals[-1+yyTop]).getOffset(),((RefType)yyVals[0+yyTop])); yyVal = swc; } break; case 45: - // line 631 "./../src/mycompiler/myparser/JavaParser.jay" + // line 632 "./../src/mycompiler/myparser/JavaParser.jay" { ClassBody CB = new ClassBody(); yyVal = CB; } break; case 46: - // line 637 "./../src/mycompiler/myparser/JavaParser.jay" + // line 638 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = ((ClassBody)yyVals[-1+yyTop]); } break; case 47: - // line 642 "./../src/mycompiler/myparser/JavaParser.jay" + // line 643 "./../src/mycompiler/myparser/JavaParser.jay" { Modifiers Mod = new Modifiers(); Mod.addModifier(((Modifier)yyVals[0+yyTop])); @@ -1152,20 +1155,20 @@ case 47: } break; case 48: - // line 648 "./../src/mycompiler/myparser/JavaParser.jay" + // line 649 "./../src/mycompiler/myparser/JavaParser.jay" { ((Modifiers)yyVals[-1+yyTop]).addModifier(((Modifier)yyVals[0+yyTop])); yyVal = ((Modifiers)yyVals[-1+yyTop]); } break; case 49: - // line 654 "./../src/mycompiler/myparser/JavaParser.jay" + // line 655 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = ((UsedId)yyVals[0+yyTop]); } break; case 50: - // line 659 "./../src/mycompiler/myparser/JavaParser.jay" + // line 660 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interface*/ InterfaceList il = new InterfaceList(); @@ -1174,27 +1177,27 @@ case 50: } break; case 51: - // line 666 "./../src/mycompiler/myparser/JavaParser.jay" + // line 667 "./../src/mycompiler/myparser/JavaParser.jay" { ((InterfaceList)yyVals[-2+yyTop]).addInterface(((UsedId)yyVals[0+yyTop])); yyVal = ((InterfaceList)yyVals[-2+yyTop]); } break; case 52: - // line 672 "./../src/mycompiler/myparser/JavaParser.jay" + // line 673 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interface*/ yyVal = new InterfaceBody(); } break; case 53: - // line 677 "./../src/mycompiler/myparser/JavaParser.jay" + // line 678 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = ((InterfaceBody)yyVals[-1+yyTop]); } break; case 54: - // line 684 "./../src/mycompiler/myparser/JavaParser.jay" + // line 685 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interface*/ InterfaceList il = new InterfaceList(); @@ -1203,14 +1206,14 @@ case 54: } break; case 55: - // line 691 "./../src/mycompiler/myparser/JavaParser.jay" + // line 692 "./../src/mycompiler/myparser/JavaParser.jay" { ((InterfaceList)yyVals[-2+yyTop]).addInterface(((UsedId)yyVals[0+yyTop])); yyVal = ((InterfaceList)yyVals[-2+yyTop]); } break; case 56: - // line 698 "./../src/mycompiler/myparser/JavaParser.jay" + // line 699 "./../src/mycompiler/myparser/JavaParser.jay" { ClassBody CB = new ClassBody(); CB.addField( ((Field)yyVals[0+yyTop]) ); @@ -1218,55 +1221,55 @@ case 56: } break; case 57: - // line 704 "./../src/mycompiler/myparser/JavaParser.jay" + // line 705 "./../src/mycompiler/myparser/JavaParser.jay" { ((ClassBody)yyVals[-1+yyTop]).addField(((Field)yyVals[0+yyTop])); yyVal = ((ClassBody)yyVals[-1+yyTop]); } break; case 58: - // line 711 "./../src/mycompiler/myparser/JavaParser.jay" + // line 712 "./../src/mycompiler/myparser/JavaParser.jay" { Public Pub = new Public(); yyVal=Pub; } break; case 59: - // line 716 "./../src/mycompiler/myparser/JavaParser.jay" + // line 717 "./../src/mycompiler/myparser/JavaParser.jay" { Protected Pro = new Protected(); yyVal=Pro; } break; case 60: - // line 721 "./../src/mycompiler/myparser/JavaParser.jay" + // line 722 "./../src/mycompiler/myparser/JavaParser.jay" { Private Pri = new Private(); yyVal=Pri; } break; case 61: - // line 726 "./../src/mycompiler/myparser/JavaParser.jay" + // line 727 "./../src/mycompiler/myparser/JavaParser.jay" { Static Sta = new Static(); yyVal=Sta; } break; case 62: - // line 731 "./../src/mycompiler/myparser/JavaParser.jay" + // line 732 "./../src/mycompiler/myparser/JavaParser.jay" { Abstract Abs = new Abstract(); yyVal=Abs; } break; case 63: - // line 736 "./../src/mycompiler/myparser/JavaParser.jay" + // line 737 "./../src/mycompiler/myparser/JavaParser.jay" { Final fin = new Final(); yyVal = fin; } break; case 64: - // line 742 "./../src/mycompiler/myparser/JavaParser.jay" + // line 743 "./../src/mycompiler/myparser/JavaParser.jay" { /*PL 05-07-30 eingefuegt containedTypes ANFANG*/ RefType RT = new RefType(-1); @@ -1281,7 +1284,7 @@ case 64: } break; case 65: - // line 757 "./../src/mycompiler/myparser/JavaParser.jay" + // line 758 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interface*/ InterfaceBody ib = new InterfaceBody(); @@ -1290,39 +1293,54 @@ case 65: } break; case 66: - // line 764 "./../src/mycompiler/myparser/JavaParser.jay" + // line 765 "./../src/mycompiler/myparser/JavaParser.jay" { ((InterfaceBody)yyVals[-1+yyTop]).addElement(((Field)yyVals[0+yyTop])); yyVal = ((InterfaceBody)yyVals[-1+yyTop]); } break; case 67: - // line 770 "./../src/mycompiler/myparser/JavaParser.jay" + // line 771 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interfaces*/ yyVal = ((UsedId)yyVals[0+yyTop]); } break; case 68: - // line 776 "./../src/mycompiler/myparser/JavaParser.jay" + // line 777 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Field)yyVals[0+yyTop]); } break; case 69: - // line 781 "./../src/mycompiler/myparser/JavaParser.jay" + // line 782 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Method)yyVals[0+yyTop]); } break; case 70: - // line 785 "./../src/mycompiler/myparser/JavaParser.jay" + // line 786 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Field)yyVals[0+yyTop]); } break; case 71: - // line 790 "./../src/mycompiler/myparser/JavaParser.jay" + // line 792 "./../src/mycompiler/myparser/JavaParser.jay" + { + yyVal=((UsedId)yyVals[0+yyTop]); + } + break; +case 72: + // line 796 "./../src/mycompiler/myparser/JavaParser.jay" + { + UsedId UI = new UsedId(((Token)yyVals[-2+yyTop]).getOffset()); + UI.set_Name( ((Token)yyVals[-2+yyTop]).getLexem() + "." + ((UsedId)yyVals[0+yyTop]) ); + UI.setOffset(((Token)yyVals[-2+yyTop]).getOffset());/*hinzugef�gt hoth: 07.04.2006*/ + yyVal = UI; + } + break; +case 73: + // line 804 "./../src/mycompiler/myparser/JavaParser.jay" { if (((Vector)yyVals[0+yyTop]) != null) { /*$1.set_ParaList($2.get_ParaList());*/ @@ -1333,58 +1351,58 @@ case 71: yyVal=((UsedId)yyVals[-1+yyTop]); } break; -case 72: - // line 801 "./../src/mycompiler/myparser/JavaParser.jay" +case 74: + // line 815 "./../src/mycompiler/myparser/JavaParser.jay" { Vector tl = new Vector(); tl.add(((Type)yyVals[0+yyTop])); yyVal = tl; } break; -case 73: - // line 807 "./../src/mycompiler/myparser/JavaParser.jay" +case 75: + // line 821 "./../src/mycompiler/myparser/JavaParser.jay" { ((Vector)yyVals[-2+yyTop]).add(((Type)yyVals[0+yyTop])); yyVal=((Vector)yyVals[-2+yyTop]); } break; -case 74: - // line 814 "./../src/mycompiler/myparser/JavaParser.jay" +case 76: + // line 828 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = null; } break; -case 75: - // line 816 "./../src/mycompiler/myparser/JavaParser.jay" +case 77: + // line 830 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = ((Vector)yyVals[-1+yyTop]); } break; -case 76: - // line 821 "./../src/mycompiler/myparser/JavaParser.jay" +case 78: + // line 835 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interfaces, Spezialform Konstantendef.*/ yyVal = ((Constant)yyVals[0+yyTop]); } break; -case 77: - // line 826 "./../src/mycompiler/myparser/JavaParser.jay" +case 79: + // line 840 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = ((Method)yyVals[0+yyTop]); } break; -case 78: - // line 831 "./../src/mycompiler/myparser/JavaParser.jay" +case 80: + // line 845 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Field)yyVals[0+yyTop]); } break; -case 79: - // line 835 "./../src/mycompiler/myparser/JavaParser.jay" +case 81: + // line 849 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Method)yyVals[0+yyTop]); } break; -case 80: - // line 840 "./../src/mycompiler/myparser/JavaParser.jay" +case 82: + // line 854 "./../src/mycompiler/myparser/JavaParser.jay" { Method STAT = new Method(((Token)yyVals[-1+yyTop]).getOffset()); DeclId DST = new DeclId(); @@ -1398,23 +1416,23 @@ case 80: yyVal=STAT; } break; -case 81: - // line 854 "./../src/mycompiler/myparser/JavaParser.jay" +case 83: + // line 868 "./../src/mycompiler/myparser/JavaParser.jay" { ((Constructor)yyVals[-1+yyTop]).set_Block(((Block)yyVals[0+yyTop])); yyVal = ((Constructor)yyVals[-1+yyTop]); } break; -case 82: - // line 859 "./../src/mycompiler/myparser/JavaParser.jay" +case 84: + // line 873 "./../src/mycompiler/myparser/JavaParser.jay" { ((Constructor)yyVals[-1+yyTop]).set_Block(((Block)yyVals[0+yyTop])); ((Constructor)yyVals[-1+yyTop]).set_Modifiers(((Modifiers)yyVals[-2+yyTop])); yyVal = ((Constructor)yyVals[-1+yyTop]); } break; -case 83: - // line 866 "./../src/mycompiler/myparser/JavaParser.jay" +case 85: + // line 880 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interface*/ Constant c = new Constant(((Token)yyVals[-3+yyTop]).getLexem(), ((Modifiers)yyVals[-5+yyTop])); @@ -1423,15 +1441,15 @@ case 83: yyVal = c; } break; -case 84: - // line 875 "./../src/mycompiler/myparser/JavaParser.jay" +case 86: + // line 889 "./../src/mycompiler/myparser/JavaParser.jay" { /* SCJU: Interface*/ yyVal = ((Method)yyVals[-1+yyTop]); } break; -case 85: - // line 900 "./../src/mycompiler/myparser/JavaParser.jay" +case 87: + // line 914 "./../src/mycompiler/myparser/JavaParser.jay" { FieldDeclaration ret = new FieldDeclaration(((DeclId)yyVals[-2+yyTop]).getOffset()); ret.set_DeclId(((DeclId)yyVals[-2+yyTop])); @@ -1439,58 +1457,58 @@ case 85: yyVal=ret; } break; -case 86: - // line 907 "./../src/mycompiler/myparser/JavaParser.jay" +case 88: + // line 921 "./../src/mycompiler/myparser/JavaParser.jay" { FieldDeclaration ret = new FieldDeclaration(((DeclId)yyVals[0+yyTop]).getOffset()); ret.set_DeclId(((DeclId)yyVals[0+yyTop])); yyVal=ret; } break; -case 87: - // line 914 "./../src/mycompiler/myparser/JavaParser.jay" +case 89: + // line 928 "./../src/mycompiler/myparser/JavaParser.jay" { GenericDeclarationList ret = new GenericDeclarationList(((GenericVarDeclarationList)yyVals[-1+yyTop]).getElements(),((GenericVarDeclarationList)yyVals[-1+yyTop]).getEndOffset()); yyVal = ret; } break; -case 88: - // line 921 "./../src/mycompiler/myparser/JavaParser.jay" +case 90: + // line 935 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((FieldDeclaration)yyVals[-1+yyTop]); } break; -case 89: - // line 925 "./../src/mycompiler/myparser/JavaParser.jay" +case 91: + // line 939 "./../src/mycompiler/myparser/JavaParser.jay" { ((FieldDeclaration)yyVals[-1+yyTop]).setType(((Type)yyVals[-2+yyTop])); yyVal=((FieldDeclaration)yyVals[-1+yyTop]); } break; -case 90: - // line 930 "./../src/mycompiler/myparser/JavaParser.jay" +case 92: + // line 944 "./../src/mycompiler/myparser/JavaParser.jay" {/*angefügt von Andreas Stadelmeier*/ ((FieldDeclaration)yyVals[-1+yyTop]).setType(((Type)yyVals[-2+yyTop])); ((FieldDeclaration)yyVals[-1+yyTop]).setGenericParameter(((GenericDeclarationList)yyVals[-3+yyTop])); yyVal=((FieldDeclaration)yyVals[-1+yyTop]); } break; -case 91: - // line 937 "./../src/mycompiler/myparser/JavaParser.jay" +case 93: + // line 951 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((FieldDeclaration)yyVals[-1+yyTop]); } break; -case 92: - // line 942 "./../src/mycompiler/myparser/JavaParser.jay" +case 94: + // line 956 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("T->Parser->fielddeclaration ...: type " + ((Type)yyVals[-2+yyTop])); ((FieldDeclaration)yyVals[-1+yyTop]).setType(((Type)yyVals[-2+yyTop])); yyVal = ((FieldDeclaration)yyVals[-1+yyTop]); } break; -case 93: - // line 949 "./../src/mycompiler/myparser/JavaParser.jay" +case 95: + // line 963 "./../src/mycompiler/myparser/JavaParser.jay" { ((FieldDeclaration)yyVals[-1+yyTop]).setType(((Type)yyVals[-2+yyTop])); for(int i=0;i<(((FieldDeclaration)yyVals[-1+yyTop]).getDeclIdVector().size());i++) @@ -1500,28 +1518,28 @@ case 93: yyVal = ((FieldDeclaration)yyVals[-1+yyTop]); } break; -case 94: - // line 959 "./../src/mycompiler/myparser/JavaParser.jay" +case 96: + // line 973 "./../src/mycompiler/myparser/JavaParser.jay" { ((Method)yyVals[-1+yyTop]).set_Block(((Block)yyVals[0+yyTop])); yyVal=((Method)yyVals[-1+yyTop]); } break; -case 95: - // line 966 "./../src/mycompiler/myparser/JavaParser.jay" +case 97: + // line 980 "./../src/mycompiler/myparser/JavaParser.jay" { Block Bl = new Block(); yyVal=Bl; } break; -case 96: - // line 972 "./../src/mycompiler/myparser/JavaParser.jay" +case 98: + // line 986 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Block)yyVals[-1+yyTop]); } break; -case 97: - // line 977 "./../src/mycompiler/myparser/JavaParser.jay" +case 99: + // line 991 "./../src/mycompiler/myparser/JavaParser.jay" { Constructor CON = new Constructor(null); /*TODO: Der Parser kann sowieso nicht zwischen einem Konstruktor und einer Methode unterscheiden. Das hier kann wegfallen...*/ DeclId DIDCon = new DeclId(); @@ -1530,8 +1548,8 @@ case 97: yyVal=CON; } break; -case 98: - // line 985 "./../src/mycompiler/myparser/JavaParser.jay" +case 100: + // line 999 "./../src/mycompiler/myparser/JavaParser.jay" { Constructor CONpara = new Constructor(null); DeclId DIconpara = new DeclId(); @@ -1541,29 +1559,29 @@ case 98: yyVal=CONpara; } break; -case 99: - // line 995 "./../src/mycompiler/myparser/JavaParser.jay" +case 101: + // line 1009 "./../src/mycompiler/myparser/JavaParser.jay" { Block CBL = new Block(); yyVal=CBL; } break; -case 100: - // line 1000 "./../src/mycompiler/myparser/JavaParser.jay" +case 102: + // line 1014 "./../src/mycompiler/myparser/JavaParser.jay" { Block CBLexpl = new Block(); CBLexpl.set_Statement(((Statement)yyVals[-1+yyTop])); yyVal=CBLexpl; } break; -case 101: - // line 1006 "./../src/mycompiler/myparser/JavaParser.jay" +case 103: + // line 1020 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Block)yyVals[-1+yyTop]); } break; -case 102: - // line 1010 "./../src/mycompiler/myparser/JavaParser.jay" +case 104: + // line 1024 "./../src/mycompiler/myparser/JavaParser.jay" { Block CBes = new Block(); CBes.set_Statement(((Statement)yyVals[-2+yyTop])); @@ -1574,51 +1592,51 @@ case 102: yyVal=CBes; } break; -case 103: - // line 1021 "./../src/mycompiler/myparser/JavaParser.jay" +case 105: + // line 1035 "./../src/mycompiler/myparser/JavaParser.jay" { ExceptionList EL = new ExceptionList(); EL.set_addElem(((RefType)yyVals[0+yyTop])); yyVal=EL; } break; -case 104: - // line 1028 "./../src/mycompiler/myparser/JavaParser.jay" +case 106: + // line 1042 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal = ((GenericTypeVar)yyVals[0+yyTop]); } break; -case 105: - // line 1033 "./../src/mycompiler/myparser/JavaParser.jay" +case 107: + // line 1047 "./../src/mycompiler/myparser/JavaParser.jay" { ParaList p = new ParaList(); p.add_ParaList(((GenericTypeVar)yyVals[0+yyTop])); yyVal=p; } break; -case 106: - // line 1039 "./../src/mycompiler/myparser/JavaParser.jay" +case 108: + // line 1053 "./../src/mycompiler/myparser/JavaParser.jay" { ((ParaList)yyVals[-2+yyTop]).add_ParaList(((GenericTypeVar)yyVals[0+yyTop])); yyVal=((ParaList)yyVals[-2+yyTop]); } break; -case 107: - // line 1046 "./../src/mycompiler/myparser/JavaParser.jay" +case 109: + // line 1060 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=new GenericTypeVar(((Token)yyVals[0+yyTop]).getLexem(),((Token)yyVals[0+yyTop]).getOffset()); } break; -case 108: - // line 1050 "./../src/mycompiler/myparser/JavaParser.jay" +case 110: + // line 1064 "./../src/mycompiler/myparser/JavaParser.jay" { BoundedGenericTypeVar gtv=new BoundedGenericTypeVar(((Token)yyVals[-2+yyTop]).getLexem(), ((BoundedClassIdentifierList)yyVals[0+yyTop]), ((Token)yyVals[-2+yyTop]).getOffset() ,((BoundedClassIdentifierList)yyVals[0+yyTop]).getEndOffset()); /*gtv.setBounds($3);*/ yyVal=gtv; } break; -case 109: - // line 1057 "./../src/mycompiler/myparser/JavaParser.jay" +case 111: + // line 1071 "./../src/mycompiler/myparser/JavaParser.jay" { Vector vec=new Vector(); vec.addElement(((RefType)yyVals[0+yyTop])); @@ -1626,8 +1644,8 @@ case 109: yyVal=new BoundedClassIdentifierList(vec, ((RefType)yyVals[0+yyTop]).getOffset()+((RefType)yyVals[0+yyTop]).getName().length()); } break; -case 110: - // line 1064 "./../src/mycompiler/myparser/JavaParser.jay" +case 112: + // line 1078 "./../src/mycompiler/myparser/JavaParser.jay" { ((BoundedClassIdentifierList)yyVals[-2+yyTop]).addElement(((RefType)yyVals[0+yyTop])); ((BoundedClassIdentifierList)yyVals[-2+yyTop]).addOffsetOff(((RefType)yyVals[0+yyTop])); @@ -1635,46 +1653,46 @@ case 110: yyVal=((BoundedClassIdentifierList)yyVals[-2+yyTop]); } break; -case 111: - // line 1072 "./../src/mycompiler/myparser/JavaParser.jay" +case 113: + // line 1086 "./../src/mycompiler/myparser/JavaParser.jay" { GenericVarDeclarationList vec=new GenericVarDeclarationList(); vec.addElement(((GenericTypeVar)yyVals[0+yyTop])); yyVal=vec; } break; -case 112: - // line 1078 "./../src/mycompiler/myparser/JavaParser.jay" +case 114: + // line 1092 "./../src/mycompiler/myparser/JavaParser.jay" { ((GenericVarDeclarationList)yyVals[-2+yyTop]).addElement(((GenericTypeVar)yyVals[0+yyTop])); yyVal=((GenericVarDeclarationList)yyVals[-2+yyTop]); } break; -case 113: - // line 1086 "./../src/mycompiler/myparser/JavaParser.jay" +case 115: + // line 1100 "./../src/mycompiler/myparser/JavaParser.jay" { ((Method)yyVals[0+yyTop]).setType(((Type)yyVals[-1+yyTop])); ((Method)yyVals[0+yyTop]).setGenericParameter(((GenericDeclarationList)yyVals[-2+yyTop])); yyVal=((Method)yyVals[0+yyTop]); } break; -case 114: - // line 1092 "./../src/mycompiler/myparser/JavaParser.jay" +case 116: + // line 1106 "./../src/mycompiler/myparser/JavaParser.jay" { ((Method)yyVals[0+yyTop]).setType(((Type)yyVals[-1+yyTop])); yyVal=((Method)yyVals[0+yyTop]); } break; -case 115: - // line 1097 "./../src/mycompiler/myparser/JavaParser.jay" +case 117: + // line 1111 "./../src/mycompiler/myparser/JavaParser.jay" { ((Method)yyVals[0+yyTop]).set_Modifiers(((Modifiers)yyVals[-2+yyTop])); ((Method)yyVals[0+yyTop]).setType(((Type)yyVals[-1+yyTop])); yyVal=((Method)yyVals[0+yyTop]); } break; -case 116: - // line 1103 "./../src/mycompiler/myparser/JavaParser.jay" +case 118: + // line 1117 "./../src/mycompiler/myparser/JavaParser.jay" { ((Method)yyVals[0+yyTop]).set_Modifiers(((Modifiers)yyVals[-3+yyTop])); ((Method)yyVals[0+yyTop]).setGenericParameter(((GenericDeclarationList)yyVals[-2+yyTop])); @@ -1682,27 +1700,9 @@ case 116: yyVal=((Method)yyVals[0+yyTop]); } break; -case 117: - // line 1110 "./../src/mycompiler/myparser/JavaParser.jay" - { - ((Method)yyVals[-1+yyTop]).setType(((Type)yyVals[-2+yyTop])); - ((Method)yyVals[-1+yyTop]).set_ExceptionList(((ExceptionList)yyVals[0+yyTop])); - yyVal=((Method)yyVals[-1+yyTop]); - } - break; -case 118: - // line 1116 "./../src/mycompiler/myparser/JavaParser.jay" - { - ((Method)yyVals[-1+yyTop]).setGenericParameter(((GenericDeclarationList)yyVals[-3+yyTop])); - ((Method)yyVals[-1+yyTop]).setType(((Type)yyVals[-2+yyTop])); - ((Method)yyVals[-1+yyTop]).set_ExceptionList(((ExceptionList)yyVals[0+yyTop])); - yyVal=((Method)yyVals[-1+yyTop]); - } - break; case 119: - // line 1123 "./../src/mycompiler/myparser/JavaParser.jay" + // line 1124 "./../src/mycompiler/myparser/JavaParser.jay" { - ((Method)yyVals[-1+yyTop]).set_Modifiers(((Modifiers)yyVals[-3+yyTop])); ((Method)yyVals[-1+yyTop]).setType(((Type)yyVals[-2+yyTop])); ((Method)yyVals[-1+yyTop]).set_ExceptionList(((ExceptionList)yyVals[0+yyTop])); yyVal=((Method)yyVals[-1+yyTop]); @@ -1711,7 +1711,6 @@ case 119: case 120: // line 1130 "./../src/mycompiler/myparser/JavaParser.jay" { - ((Method)yyVals[-1+yyTop]).set_Modifiers(((Modifiers)yyVals[-4+yyTop])); ((Method)yyVals[-1+yyTop]).setGenericParameter(((GenericDeclarationList)yyVals[-3+yyTop])); ((Method)yyVals[-1+yyTop]).setType(((Type)yyVals[-2+yyTop])); ((Method)yyVals[-1+yyTop]).set_ExceptionList(((ExceptionList)yyVals[0+yyTop])); @@ -1719,15 +1718,34 @@ case 120: } break; case 121: - // line 1138 "./../src/mycompiler/myparser/JavaParser.jay" + // line 1137 "./../src/mycompiler/myparser/JavaParser.jay" + { + ((Method)yyVals[-1+yyTop]).set_Modifiers(((Modifiers)yyVals[-3+yyTop])); + ((Method)yyVals[-1+yyTop]).setType(((Type)yyVals[-2+yyTop])); + ((Method)yyVals[-1+yyTop]).set_ExceptionList(((ExceptionList)yyVals[0+yyTop])); + yyVal=((Method)yyVals[-1+yyTop]); + } + break; +case 122: + // line 1144 "./../src/mycompiler/myparser/JavaParser.jay" + { + ((Method)yyVals[-1+yyTop]).set_Modifiers(((Modifiers)yyVals[-4+yyTop])); + ((Method)yyVals[-1+yyTop]).setGenericParameter(((GenericDeclarationList)yyVals[-3+yyTop])); + ((Method)yyVals[-1+yyTop]).setType(((Type)yyVals[-2+yyTop])); + ((Method)yyVals[-1+yyTop]).set_ExceptionList(((ExceptionList)yyVals[0+yyTop])); + yyVal=((Method)yyVals[-1+yyTop]); + } + break; +case 123: + // line 1152 "./../src/mycompiler/myparser/JavaParser.jay" { Void Voit = new Void(((Token)yyVals[-1+yyTop]).getOffset()); ((Method)yyVals[0+yyTop]).setType(Voit); yyVal=((Method)yyVals[0+yyTop]); } break; -case 122: - // line 1144 "./../src/mycompiler/myparser/JavaParser.jay" +case 124: + // line 1158 "./../src/mycompiler/myparser/JavaParser.jay" { Void voit = new Void(((Token)yyVals[-1+yyTop]).getOffset()); ((Method)yyVals[0+yyTop]).set_Modifiers(((Modifiers)yyVals[-2+yyTop])); @@ -1735,8 +1753,8 @@ case 122: yyVal=((Method)yyVals[0+yyTop]); } break; -case 123: - // line 1151 "./../src/mycompiler/myparser/JavaParser.jay" +case 125: + // line 1165 "./../src/mycompiler/myparser/JavaParser.jay" { Void voyt = new Void(((Token)yyVals[-2+yyTop]).getOffset()); ((Method)yyVals[-1+yyTop]).setType(voyt); @@ -1744,8 +1762,8 @@ case 123: yyVal=((Method)yyVals[-1+yyTop]); } break; -case 124: - // line 1158 "./../src/mycompiler/myparser/JavaParser.jay" +case 126: + // line 1172 "./../src/mycompiler/myparser/JavaParser.jay" { Void voyd = new Void(((Token)yyVals[-2+yyTop]).getOffset()); ((Method)yyVals[-1+yyTop]).set_Modifiers(((Modifiers)yyVals[-3+yyTop])); @@ -1754,8 +1772,8 @@ case 124: yyVal=((Method)yyVals[-1+yyTop]); } break; -case 125: - // line 1166 "./../src/mycompiler/myparser/JavaParser.jay" +case 127: + // line 1180 "./../src/mycompiler/myparser/JavaParser.jay" { Void Voit = new Void(((Token)yyVals[-1+yyTop]).getOffset()); ((Method)yyVals[0+yyTop]).setType(Voit); @@ -1763,8 +1781,8 @@ case 125: yyVal=((Method)yyVals[0+yyTop]); } break; -case 126: - // line 1173 "./../src/mycompiler/myparser/JavaParser.jay" +case 128: + // line 1187 "./../src/mycompiler/myparser/JavaParser.jay" { Void voit = new Void(((Token)yyVals[-1+yyTop]).getOffset()); ((Method)yyVals[0+yyTop]).set_Modifiers(((Modifiers)yyVals[-3+yyTop])); @@ -1773,8 +1791,8 @@ case 126: yyVal=((Method)yyVals[0+yyTop]); } break; -case 127: - // line 1181 "./../src/mycompiler/myparser/JavaParser.jay" +case 129: + // line 1195 "./../src/mycompiler/myparser/JavaParser.jay" { Void voyt = new Void(((Token)yyVals[-2+yyTop]).getOffset()); ((Method)yyVals[-1+yyTop]).setType(voyt); @@ -1783,8 +1801,8 @@ case 127: yyVal=((Method)yyVals[-1+yyTop]); } break; -case 128: - // line 1189 "./../src/mycompiler/myparser/JavaParser.jay" +case 130: + // line 1203 "./../src/mycompiler/myparser/JavaParser.jay" { Void voyd = new Void(((Token)yyVals[-2+yyTop]).getOffset()); ((Method)yyVals[-1+yyTop]).set_Modifiers(((Modifiers)yyVals[-4+yyTop])); @@ -1794,39 +1812,39 @@ case 128: yyVal=((Method)yyVals[-1+yyTop]); } break; -case 129: - // line 1199 "./../src/mycompiler/myparser/JavaParser.jay" +case 131: + // line 1213 "./../src/mycompiler/myparser/JavaParser.jay" { /*auskommentiert von Andreas Stadelmeier (a10023) $1.setType(TypePlaceholder.fresh()); */ yyVal=((Method)yyVals[0+yyTop]); } break; -case 130: - // line 1204 "./../src/mycompiler/myparser/JavaParser.jay" +case 132: + // line 1218 "./../src/mycompiler/myparser/JavaParser.jay" { /*auskommentiert von Andreas Stadelmeier (a10023) $4.setType(TypePlaceholder.fresh());*/ ((Method)yyVals[0+yyTop]).setGenericParameter(((GenericDeclarationList)yyVals[-1+yyTop])); yyVal=((Method)yyVals[0+yyTop]); } break; -case 131: - // line 1211 "./../src/mycompiler/myparser/JavaParser.jay" +case 133: + // line 1225 "./../src/mycompiler/myparser/JavaParser.jay" { ((Method)yyVals[0+yyTop]).set_Modifiers(((Modifiers)yyVals[-1+yyTop])); /*auskommentiert von Andreas Stadelmeier (a10023) $2.setType(TypePlaceholder.fresh());*/ yyVal=((Method)yyVals[0+yyTop]); } break; -case 132: - // line 1217 "./../src/mycompiler/myparser/JavaParser.jay" +case 134: + // line 1231 "./../src/mycompiler/myparser/JavaParser.jay" { /*auskommentiert von Andreas Stadelmeier (a10023) $1.setType(TypePlaceholder.fresh());*/ ((Method)yyVals[-1+yyTop]).set_ExceptionList(((ExceptionList)yyVals[0+yyTop])); yyVal=((Method)yyVals[-1+yyTop]); } break; -case 133: - // line 1223 "./../src/mycompiler/myparser/JavaParser.jay" +case 135: + // line 1237 "./../src/mycompiler/myparser/JavaParser.jay" { ((Method)yyVals[-1+yyTop]).set_Modifiers(((Modifiers)yyVals[-2+yyTop])); /*auskommentiert von Andreas Stadelmeier (a10023) $2.setType(TypePlaceholder.fresh());*/ @@ -1834,32 +1852,32 @@ case 133: yyVal=((Method)yyVals[-1+yyTop]); } break; -case 134: - // line 1232 "./../src/mycompiler/myparser/JavaParser.jay" +case 136: + // line 1246 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((BaseType)yyVals[0+yyTop]); } break; -case 135: - // line 1236 "./../src/mycompiler/myparser/JavaParser.jay" +case 137: + // line 1250 "./../src/mycompiler/myparser/JavaParser.jay" { ((BaseType)yyVals[-2+yyTop]).setArray(true); } break; -case 136: - // line 1240 "./../src/mycompiler/myparser/JavaParser.jay" +case 138: + // line 1254 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((RefType)yyVals[0+yyTop]); } break; -case 137: - // line 1244 "./../src/mycompiler/myparser/JavaParser.jay" +case 139: + // line 1264 "./../src/mycompiler/myparser/JavaParser.jay" { ((RefType)yyVals[-2+yyTop]).setArray(true); } break; -case 138: - // line 1248 "./../src/mycompiler/myparser/JavaParser.jay" +case 140: + // line 1268 "./../src/mycompiler/myparser/JavaParser.jay" { FieldDeclaration IVD = new FieldDeclaration(((DeclId)yyVals[0+yyTop]).getOffset()); IVD.getDeclIdVector().addElement( ((DeclId)yyVals[0+yyTop]) ); @@ -1867,66 +1885,66 @@ case 138: yyVal = IVD; } break; -case 139: - // line 1255 "./../src/mycompiler/myparser/JavaParser.jay" +case 141: + // line 1275 "./../src/mycompiler/myparser/JavaParser.jay" { ((FieldDeclaration)yyVals[-2+yyTop]).getDeclIdVector().addElement(((DeclId)yyVals[0+yyTop])); yyVal=((FieldDeclaration)yyVals[-2+yyTop]); } break; -case 140: - // line 1261 "./../src/mycompiler/myparser/JavaParser.jay" +case 142: + // line 1281 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Block)yyVals[0+yyTop]); } break; -case 141: - // line 1266 "./../src/mycompiler/myparser/JavaParser.jay" +case 143: + // line 1286 "./../src/mycompiler/myparser/JavaParser.jay" { Block Blstat = new Block(); Blstat.set_Statement(((Statement)yyVals[0+yyTop])); yyVal=Blstat; } break; -case 142: - // line 1273 "./../src/mycompiler/myparser/JavaParser.jay" +case 144: + // line 1293 "./../src/mycompiler/myparser/JavaParser.jay" { ((Block)yyVals[-1+yyTop]).set_Statement(((Statement)yyVals[0+yyTop])); yyVal=((Block)yyVals[-1+yyTop]); } break; -case 143: - // line 1279 "./../src/mycompiler/myparser/JavaParser.jay" +case 145: + // line 1299 "./../src/mycompiler/myparser/JavaParser.jay" { ParameterList PL = new ParameterList(); PL.set_AddParameter(((FormalParameter)yyVals[0+yyTop])); yyVal = PL; } break; -case 144: - // line 1285 "./../src/mycompiler/myparser/JavaParser.jay" +case 146: + // line 1305 "./../src/mycompiler/myparser/JavaParser.jay" { ((ParameterList)yyVals[-2+yyTop]).set_AddParameter(((FormalParameter)yyVals[0+yyTop])); yyVal = ((ParameterList)yyVals[-2+yyTop]); } break; -case 145: - // line 1291 "./../src/mycompiler/myparser/JavaParser.jay" +case 147: + // line 1311 "./../src/mycompiler/myparser/JavaParser.jay" { This THCON = new This(((Token)yyVals[-3+yyTop]).getOffset(),((Token)yyVals[-3+yyTop]).getLexem().length()); yyVal=THCON; } break; -case 146: - // line 1296 "./../src/mycompiler/myparser/JavaParser.jay" +case 148: + // line 1316 "./../src/mycompiler/myparser/JavaParser.jay" { This THCONargl = new This(((Token)yyVals[-4+yyTop]).getOffset(),((Token)yyVals[-4+yyTop]).getLexem().length()); THCONargl.set_ArgumentList(((ArgumentList)yyVals[-2+yyTop])); yyVal=THCONargl; } break; -case 147: - // line 1305 "./../src/mycompiler/myparser/JavaParser.jay" +case 149: + // line 1325 "./../src/mycompiler/myparser/JavaParser.jay" { RefType RT = new RefType(-1); RT.set_UsedId(((UsedId)yyVals[0+yyTop])); @@ -1934,16 +1952,16 @@ case 147: yyVal=RT; } break; -case 148: - // line 1312 "./../src/mycompiler/myparser/JavaParser.jay" +case 150: + // line 1332 "./../src/mycompiler/myparser/JavaParser.jay" { ((RefType)yyVals[-2+yyTop]).set_UsedId(((UsedId)yyVals[0+yyTop])); ((RefType)yyVals[-2+yyTop]).setName(((RefType)yyVals[-2+yyTop]).get_UsedId().get_Name_1Element()); yyVal=((RefType)yyVals[-2+yyTop]); } break; -case 149: - // line 1319 "./../src/mycompiler/myparser/JavaParser.jay" +case 151: + // line 1339 "./../src/mycompiler/myparser/JavaParser.jay" { Method met = new Method(((Token)yyVals[-2+yyTop]).getOffset()); /* #JB# 10.04.2005 */ @@ -1957,8 +1975,8 @@ case 149: yyVal = met; } break; -case 150: - // line 1332 "./../src/mycompiler/myparser/JavaParser.jay" +case 152: + // line 1352 "./../src/mycompiler/myparser/JavaParser.jay" { Method met_para = new Method(((Token)yyVals[-3+yyTop]).getOffset()); /* #JB# 10.04.2005 */ @@ -1973,8 +1991,8 @@ case 150: yyVal = met_para; } break; -case 151: - // line 1347 "./../src/mycompiler/myparser/JavaParser.jay" +case 153: + // line 1367 "./../src/mycompiler/myparser/JavaParser.jay" { BooleanType BT = new BooleanType(); /* #JB# 05.04.2005 */ @@ -1984,14 +2002,37 @@ case 151: yyVal=BT; } break; -case 152: - // line 1356 "./../src/mycompiler/myparser/JavaParser.jay" +case 154: + // line 1376 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((BaseType)yyVals[0+yyTop]); } break; -case 153: - // line 1361 "./../src/mycompiler/myparser/JavaParser.jay" +case 155: + // line 1381 "./../src/mycompiler/myparser/JavaParser.jay" + { + if (((Vector)yyVals[0+yyTop]) != null) { + /*$1.set_ParaList($2.get_ParaList());*/ + ((UsedId)yyVals[-1+yyTop]).set_ParaList(((Vector)yyVals[0+yyTop]));/*Änderung von Andreas Stadelmeier. Type statt GenericVarType*/ + /* otth: originale (also diese) Parameterliste retten */ + /*((UsedId)$1).vParaOrg = new Vector( $2.get_ParaList() );*/ + } + UsedId uid = ((UsedId)yyVals[-1+yyTop]); + RefType RT = new RefType(uid.getOffset()); + + RT.set_ParaList(uid.get_RealParaList()); + RT.setName(uid.getQualifiedName()); + + + /*PL 05-07-30 eingefuegt containedTypes ANFANG*/ + containedTypes.addElement(RT); + /*PL 05-07-30 eingefuegt containedTypes ENDE*/ + + yyVal=RT; + } + break; +case 156: + // line 1403 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("T->Parser->referenctype: " + ((UsedId)yyVals[0+yyTop])); RefType RT = new RefType(((UsedId)yyVals[0+yyTop]).getOffset()); @@ -2010,26 +2051,26 @@ case 153: yyVal=RT; } break; -case 154: - // line 1381 "./../src/mycompiler/myparser/JavaParser.jay" +case 157: + // line 1425 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((DeclId)yyVals[0+yyTop]); } break; -case 155: - // line 1402 "./../src/mycompiler/myparser/JavaParser.jay" +case 158: + // line 1446 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((LocalVarDecl)yyVals[0+yyTop]); } break; -case 156: - // line 1406 "./../src/mycompiler/myparser/JavaParser.jay" +case 159: + // line 1450 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Statement)yyVals[0+yyTop]); } break; -case 157: - // line 1411 "./../src/mycompiler/myparser/JavaParser.jay" +case 160: + // line 1455 "./../src/mycompiler/myparser/JavaParser.jay" { FormalParameter FP = new FormalParameter(((DeclId)yyVals[0+yyTop])); FP.setType(((Type)yyVals[-1+yyTop])); @@ -2037,8 +2078,8 @@ case 157: yyVal=FP; } break; -case 158: - // line 1436 "./../src/mycompiler/myparser/JavaParser.jay" +case 161: + // line 1480 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("\nFunktionsdeklaration mit typlosen Parametern: " + ((DeclId)yyVals[0+yyTop]).name); @@ -2057,29 +2098,29 @@ case 158: yyVal=FP; } break; -case 159: - // line 1455 "./../src/mycompiler/myparser/JavaParser.jay" +case 162: + // line 1499 "./../src/mycompiler/myparser/JavaParser.jay" { ArgumentList AL = new ArgumentList(); AL.expr.addElement(((Expr)yyVals[0+yyTop])); yyVal=AL; } break; -case 160: - // line 1461 "./../src/mycompiler/myparser/JavaParser.jay" +case 163: + // line 1505 "./../src/mycompiler/myparser/JavaParser.jay" { ((ArgumentList)yyVals[-2+yyTop]).expr.addElement(((Expr)yyVals[0+yyTop])); yyVal=((ArgumentList)yyVals[-2+yyTop]); } break; -case 161: - // line 1467 "./../src/mycompiler/myparser/JavaParser.jay" +case 164: + // line 1511 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((BaseType)yyVals[0+yyTop]); } break; -case 162: - // line 1472 "./../src/mycompiler/myparser/JavaParser.jay" +case 165: + // line 1516 "./../src/mycompiler/myparser/JavaParser.jay" { DeclId DI = new DeclId(); /* #JB# 10.04.2005 */ @@ -2091,62 +2132,62 @@ case 162: yyVal=DI; } break; -case 163: - // line 1484 "./../src/mycompiler/myparser/JavaParser.jay" +case 166: + // line 1528 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 164: - // line 1489 "./../src/mycompiler/myparser/JavaParser.jay" +case 167: + // line 1533 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((LocalVarDecl)yyVals[-1+yyTop]); } break; -case 165: - // line 1494 "./../src/mycompiler/myparser/JavaParser.jay" +case 168: + // line 1538 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Statement)yyVals[0+yyTop]); } break; -case 166: - // line 1498 "./../src/mycompiler/myparser/JavaParser.jay" +case 169: + // line 1542 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((IfStmt)yyVals[0+yyTop]); } break; -case 167: - // line 1502 "./../src/mycompiler/myparser/JavaParser.jay" +case 170: + // line 1546 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((IfStmt)yyVals[0+yyTop]); } break; -case 168: - // line 1506 "./../src/mycompiler/myparser/JavaParser.jay" +case 171: + // line 1550 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((WhileStmt)yyVals[0+yyTop]); } break; -case 169: - // line 1510 "./../src/mycompiler/myparser/JavaParser.jay" +case 172: + // line 1554 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((ForStmt)yyVals[0+yyTop]); } break; -case 170: - // line 1515 "./../src/mycompiler/myparser/JavaParser.jay" +case 173: + // line 1559 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 171: - // line 1519 "./../src/mycompiler/myparser/JavaParser.jay" +case 174: + // line 1563 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((NewClass)yyVals[0+yyTop]); } break; -case 172: - // line 1524 "./../src/mycompiler/myparser/JavaParser.jay" +case 175: + // line 1568 "./../src/mycompiler/myparser/JavaParser.jay" { IntegerType IT = new IntegerType(); /* #JB# 05.04.2005 */ @@ -2156,8 +2197,8 @@ case 172: yyVal=IT; } break; -case 173: - // line 1533 "./../src/mycompiler/myparser/JavaParser.jay" +case 176: + // line 1577 "./../src/mycompiler/myparser/JavaParser.jay" { CharacterType CT = new CharacterType(); /* #JB# 05.04.2005 */ @@ -2167,8 +2208,8 @@ case 173: yyVal=CT; } break; -case 174: - // line 1543 "./../src/mycompiler/myparser/JavaParser.jay" +case 177: + // line 1587 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("P -> Lokale Variable angelegt!"); LocalVarDecl LVD = new LocalVarDecl(((Type)yyVals[-1+yyTop]).getOffset(),((Type)yyVals[-1+yyTop]).getVariableLength()); @@ -2177,8 +2218,8 @@ case 174: yyVal = LVD; } break; -case 175: - // line 1554 "./../src/mycompiler/myparser/JavaParser.jay" +case 178: + // line 1598 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("P -> Lokale Variable angelegt!"); LocalVarDecl LVD = new LocalVarDecl(((FieldDeclaration)yyVals[0+yyTop]).getOffset(),((FieldDeclaration)yyVals[0+yyTop]).getVariableLength()); @@ -2187,32 +2228,32 @@ case 175: yyVal = LVD; } break; -case 176: - // line 1564 "./../src/mycompiler/myparser/JavaParser.jay" +case 179: + // line 1608 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Block)yyVals[0+yyTop]); } break; -case 177: - // line 1568 "./../src/mycompiler/myparser/JavaParser.jay" +case 180: + // line 1612 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((EmptyStmt)yyVals[0+yyTop]); } break; -case 178: - // line 1572 "./../src/mycompiler/myparser/JavaParser.jay" +case 181: + // line 1616 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((ExprStmt)yyVals[0+yyTop]); } break; -case 179: - // line 1576 "./../src/mycompiler/myparser/JavaParser.jay" +case 182: + // line 1620 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Return)yyVals[0+yyTop]); } break; -case 180: - // line 1581 "./../src/mycompiler/myparser/JavaParser.jay" +case 183: + // line 1625 "./../src/mycompiler/myparser/JavaParser.jay" { IfStmt Ifst = new IfStmt(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); Ifst.set_Expr(((Expr)yyVals[-2+yyTop])); @@ -2220,8 +2261,8 @@ case 180: yyVal=Ifst; } break; -case 181: - // line 1589 "./../src/mycompiler/myparser/JavaParser.jay" +case 184: + // line 1633 "./../src/mycompiler/myparser/JavaParser.jay" { IfStmt IfstElst = new IfStmt(((Expr)yyVals[-4+yyTop]).getOffset(),((Expr)yyVals[-4+yyTop]).getVariableLength()); IfstElst.set_Expr(((Expr)yyVals[-4+yyTop])); @@ -2230,8 +2271,8 @@ case 181: yyVal=IfstElst; } break; -case 182: - // line 1598 "./../src/mycompiler/myparser/JavaParser.jay" +case 185: + // line 1642 "./../src/mycompiler/myparser/JavaParser.jay" { WhileStmt Whlst = new WhileStmt(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); Whlst.set_Expr(((Expr)yyVals[-2+yyTop])); @@ -2239,8 +2280,8 @@ case 182: yyVal=Whlst; } break; -case 183: - // line 1609 "./../src/mycompiler/myparser/JavaParser.jay" +case 186: + // line 1653 "./../src/mycompiler/myparser/JavaParser.jay" { ForStmt Fst = new ForStmt(((Expr)yyVals[-6+yyTop]).getOffset(),((Expr)yyVals[-6+yyTop]).getVariableLength()); Fst.set_head_Initializer(((Expr)yyVals[-6+yyTop])); @@ -2252,8 +2293,8 @@ case 183: yyVal = Fst; } break; -case 184: - // line 1621 "./../src/mycompiler/myparser/JavaParser.jay" +case 187: + // line 1665 "./../src/mycompiler/myparser/JavaParser.jay" { ForStmt Fst = new ForStmt(((Expr)yyVals[-5+yyTop]).getOffset(),((Expr)yyVals[-5+yyTop]).getVariableLength()); Fst.set_head_Initializer(((Expr)yyVals[-5+yyTop])); @@ -2264,8 +2305,8 @@ case 184: yyVal = Fst; } break; -case 185: - // line 1632 "./../src/mycompiler/myparser/JavaParser.jay" +case 188: + // line 1676 "./../src/mycompiler/myparser/JavaParser.jay" { ForStmt Fst = new ForStmt(((Expr)yyVals[-5+yyTop]).getOffset(),((Expr)yyVals[-5+yyTop]).getVariableLength()); Fst.set_head_Initializer(((Expr)yyVals[-5+yyTop])); @@ -2276,8 +2317,8 @@ case 185: yyVal = Fst; } break; -case 186: - // line 1643 "./../src/mycompiler/myparser/JavaParser.jay" +case 189: + // line 1687 "./../src/mycompiler/myparser/JavaParser.jay" { ForStmt Fst = new ForStmt(((Expr)yyVals[-4+yyTop]).getOffset(),((Expr)yyVals[-4+yyTop]).getVariableLength()); Fst.set_head_Condition(((Expr)yyVals[-4+yyTop])); @@ -2288,8 +2329,8 @@ case 186: yyVal = Fst; } break; -case 187: - // line 1654 "./../src/mycompiler/myparser/JavaParser.jay" +case 190: + // line 1698 "./../src/mycompiler/myparser/JavaParser.jay" { ForStmt Fst = new ForStmt(((Expr)yyVals[-4+yyTop]).getOffset(),((Expr)yyVals[-4+yyTop]).getVariableLength()); Fst.set_head_Initializer(((Expr)yyVals[-4+yyTop])); @@ -2299,8 +2340,8 @@ case 187: yyVal = Fst; } break; -case 188: - // line 1664 "./../src/mycompiler/myparser/JavaParser.jay" +case 191: + // line 1708 "./../src/mycompiler/myparser/JavaParser.jay" { ForStmt Fst = new ForStmt(((Expr)yyVals[-3+yyTop]).getOffset(),((Expr)yyVals[-3+yyTop]).getVariableLength()); Fst.set_head_Condition(((Expr)yyVals[-3+yyTop])); @@ -2310,8 +2351,8 @@ case 188: yyVal = Fst; } break; -case 189: - // line 1674 "./../src/mycompiler/myparser/JavaParser.jay" +case 192: + // line 1718 "./../src/mycompiler/myparser/JavaParser.jay" { ForStmt Fst = new ForStmt(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); Fst.set_head_Loop_expr(((Expr)yyVals[-2+yyTop])); @@ -2321,8 +2362,8 @@ case 189: yyVal = Fst; } break; -case 190: - // line 1684 "./../src/mycompiler/myparser/JavaParser.jay" +case 193: + // line 1728 "./../src/mycompiler/myparser/JavaParser.jay" { ForStmt Fst = new ForStmt(((Statement)yyVals[0+yyTop]).getOffset(),((Statement)yyVals[0+yyTop]).getVariableLength()); Fst.set_body_Loop_block(((Statement)yyVals[0+yyTop])); @@ -2331,73 +2372,73 @@ case 190: yyVal = Fst; } break; -case 191: - // line 1693 "./../src/mycompiler/myparser/JavaParser.jay" +case 194: + // line 1737 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("conditionalexpression"); yyVal=((Expr)yyVals[0+yyTop]); } break; -case 192: - // line 1698 "./../src/mycompiler/myparser/JavaParser.jay" +case 195: + // line 1742 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Assign)yyVals[0+yyTop]); } break; -case 193: - // line 1704 "./../src/mycompiler/myparser/JavaParser.jay" +case 196: + // line 1748 "./../src/mycompiler/myparser/JavaParser.jay" { EmptyStmt Empst = new EmptyStmt(); yyVal=Empst; } break; -case 194: - // line 1710 "./../src/mycompiler/myparser/JavaParser.jay" +case 197: + // line 1754 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[-1+yyTop]); } break; -case 195: - // line 1715 "./../src/mycompiler/myparser/JavaParser.jay" +case 198: + // line 1759 "./../src/mycompiler/myparser/JavaParser.jay" { Return ret = new Return(-1,-1); yyVal= ret; } break; -case 196: - // line 1720 "./../src/mycompiler/myparser/JavaParser.jay" +case 199: + // line 1764 "./../src/mycompiler/myparser/JavaParser.jay" { Return retexp = new Return(((Expr)yyVals[-1+yyTop]).getOffset(),((Expr)yyVals[-1+yyTop]).getVariableLength()); retexp.set_ReturnExpr(((Expr)yyVals[-1+yyTop])); yyVal=retexp; } break; -case 197: - // line 1727 "./../src/mycompiler/myparser/JavaParser.jay" +case 200: + // line 1771 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Statement)yyVals[0+yyTop]); } break; -case 198: - // line 1731 "./../src/mycompiler/myparser/JavaParser.jay" +case 201: + // line 1775 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((IfStmt)yyVals[0+yyTop]); } break; -case 199: - // line 1735 "./../src/mycompiler/myparser/JavaParser.jay" +case 202: + // line 1779 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((WhileStmt)yyVals[0+yyTop]); } break; -case 200: - // line 1740 "./../src/mycompiler/myparser/JavaParser.jay" +case 203: + // line 1784 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 201: - // line 1746 "./../src/mycompiler/myparser/JavaParser.jay" +case 204: + // line 1790 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("\nParser --> Zuweisung1!\n"); Assign Ass = new Assign(((UsedId)yyVals[-2+yyTop]).getOffset(),((UsedId)yyVals[-2+yyTop]).getVariableLength()); @@ -2423,8 +2464,8 @@ case 201: yyVal=Ass; } break; -case 202: - // line 1771 "./../src/mycompiler/myparser/JavaParser.jay" +case 205: + // line 1815 "./../src/mycompiler/myparser/JavaParser.jay" { Assign Ass =new Assign(((UsedId)yyVals[-2+yyTop]).getOffset(),((UsedId)yyVals[-2+yyTop]).getVariableLength()); LocalOrFieldVar LOFV = new LocalOrFieldVar(((UsedId)yyVals[-2+yyTop]).getOffset(),((UsedId)yyVals[-2+yyTop]).getVariableLength()); @@ -2447,44 +2488,44 @@ case 202: yyVal=Ass; } break; -case 203: - // line 1794 "./../src/mycompiler/myparser/JavaParser.jay" +case 206: + // line 1838 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Assign)yyVals[0+yyTop]); } break; -case 204: - // line 1798 "./../src/mycompiler/myparser/JavaParser.jay" - { - yyVal=((Expr)yyVals[0+yyTop]); - } - break; -case 205: - // line 1802 "./../src/mycompiler/myparser/JavaParser.jay" - { - yyVal=((Expr)yyVals[0+yyTop]); - } - break; -case 206: - // line 1806 "./../src/mycompiler/myparser/JavaParser.jay" - { - yyVal=((Expr)yyVals[0+yyTop]); - } - break; case 207: - // line 1810 "./../src/mycompiler/myparser/JavaParser.jay" + // line 1842 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; case 208: - // line 1814 "./../src/mycompiler/myparser/JavaParser.jay" + // line 1846 "./../src/mycompiler/myparser/JavaParser.jay" + { + yyVal=((Expr)yyVals[0+yyTop]); + } + break; +case 209: + // line 1850 "./../src/mycompiler/myparser/JavaParser.jay" + { + yyVal=((Expr)yyVals[0+yyTop]); + } + break; +case 210: + // line 1854 "./../src/mycompiler/myparser/JavaParser.jay" + { + yyVal=((Expr)yyVals[0+yyTop]); + } + break; +case 211: + // line 1858 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((MethodCall)yyVals[0+yyTop]); } break; -case 209: - // line 1825 "./../src/mycompiler/myparser/JavaParser.jay" +case 212: + // line 1869 "./../src/mycompiler/myparser/JavaParser.jay" { IfStmt IfElno = new IfStmt(((Expr)yyVals[-4+yyTop]).getOffset(),((Expr)yyVals[-4+yyTop]).getVariableLength()); IfElno.set_Expr(((Expr)yyVals[-4+yyTop])); @@ -2493,8 +2534,8 @@ case 209: yyVal=IfElno; } break; -case 210: - // line 1834 "./../src/mycompiler/myparser/JavaParser.jay" +case 213: + // line 1878 "./../src/mycompiler/myparser/JavaParser.jay" { WhileStmt Whstno = new WhileStmt(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); Whstno.set_Expr(((Expr)yyVals[-2+yyTop])); @@ -2502,14 +2543,14 @@ case 210: yyVal=Whstno; } break; -case 211: - // line 1842 "./../src/mycompiler/myparser/JavaParser.jay" +case 214: + // line 1886 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 212: - // line 1846 "./../src/mycompiler/myparser/JavaParser.jay" +case 215: + // line 1890 "./../src/mycompiler/myparser/JavaParser.jay" { Binary LogOr = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); OrOp OrO = new OrOp(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -2520,20 +2561,20 @@ case 212: yyVal=LogOr; } break; -case 213: - // line 1859 "./../src/mycompiler/myparser/JavaParser.jay" +case 216: + // line 1903 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=null; } break; -case 214: - // line 1864 "./../src/mycompiler/myparser/JavaParser.jay" +case 217: + // line 1908 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Block)yyVals[0+yyTop]); } break; -case 215: - // line 1868 "./../src/mycompiler/myparser/JavaParser.jay" +case 218: + // line 1912 "./../src/mycompiler/myparser/JavaParser.jay" { /*Lambdabody kann auch nur aus einer Expression bestehen. In diesem Fall wird ein Block erstellt, welcher als einziges Statement ein return statment mit der expression hat.*/ /*Bsp.: Aus der Expression |var=="hallo"| wird: |{return var=="hallo";}|*/ @@ -2543,20 +2584,20 @@ case 215: yyVal=ret; } break; -case 216: - // line 1878 "./../src/mycompiler/myparser/JavaParser.jay" +case 219: + // line 1922 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=null; } break; -case 217: - // line 1882 "./../src/mycompiler/myparser/JavaParser.jay" +case 220: + // line 1926 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((ParameterList)yyVals[-1+yyTop]); } break; -case 218: - // line 1887 "./../src/mycompiler/myparser/JavaParser.jay" +case 221: + // line 1931 "./../src/mycompiler/myparser/JavaParser.jay" { LambdaExpression lambda = new LambdaExpression(/*((ParameSterList)$2).getOffset(),((ParameterList)$2).getVariableLength()*/0,0); if(((ParameterList)yyVals[-2+yyTop])!=null)lambda.setParameterList(((ParameterList)yyVals[-2+yyTop])); @@ -2564,87 +2605,87 @@ case 218: yyVal=lambda; } break; -case 219: - // line 1906 "./../src/mycompiler/myparser/JavaParser.jay" +case 222: + // line 1950 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((UsedId)yyVals[0+yyTop]); } break; -case 220: - // line 1911 "./../src/mycompiler/myparser/JavaParser.jay" +case 223: + // line 1955 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=null; } break; -case 221: - // line 1915 "./../src/mycompiler/myparser/JavaParser.jay" +case 224: + // line 1959 "./../src/mycompiler/myparser/JavaParser.jay" { TimesOp TEO = new TimesOp(-1,-1); yyVal=TEO; } break; -case 222: - // line 1920 "./../src/mycompiler/myparser/JavaParser.jay" +case 225: + // line 1964 "./../src/mycompiler/myparser/JavaParser.jay" { DivideOp DEO = new DivideOp(-1,-1); yyVal=DEO; } break; -case 223: - // line 1925 "./../src/mycompiler/myparser/JavaParser.jay" +case 226: + // line 1969 "./../src/mycompiler/myparser/JavaParser.jay" { ModuloOp MEO = new ModuloOp(-1,-1); yyVal=MEO; } break; -case 224: - // line 1930 "./../src/mycompiler/myparser/JavaParser.jay" +case 227: + // line 1974 "./../src/mycompiler/myparser/JavaParser.jay" { PlusOp PEO = new PlusOp(-1,-1); yyVal=PEO; } break; -case 225: - // line 1935 "./../src/mycompiler/myparser/JavaParser.jay" +case 228: + // line 1979 "./../src/mycompiler/myparser/JavaParser.jay" { MinusOp MEO = new MinusOp(-1,-1); yyVal=MEO; } break; -case 226: - // line 1947 "./../src/mycompiler/myparser/JavaParser.jay" +case 229: + // line 1991 "./../src/mycompiler/myparser/JavaParser.jay" { PreIncExpr PRINC = new PreIncExpr(((Expr)yyVals[0+yyTop]).getOffset(),((Expr)yyVals[0+yyTop]).getVariableLength()); PRINC.set_Expr(((Expr)yyVals[0+yyTop])); yyVal=PRINC; } break; -case 227: - // line 1954 "./../src/mycompiler/myparser/JavaParser.jay" +case 230: + // line 1998 "./../src/mycompiler/myparser/JavaParser.jay" { PreDecExpr PRDEC = new PreDecExpr(((Expr)yyVals[0+yyTop]).getOffset(),((Expr)yyVals[0+yyTop]).getVariableLength()); PRDEC.set_Expr(((Expr)yyVals[0+yyTop])); yyVal=PRDEC; } break; -case 228: - // line 1961 "./../src/mycompiler/myparser/JavaParser.jay" +case 231: + // line 2005 "./../src/mycompiler/myparser/JavaParser.jay" { PostIncExpr PIE = new PostIncExpr(((Expr)yyVals[-1+yyTop]).getOffset(),((Expr)yyVals[-1+yyTop]).getVariableLength()); PIE.set_Expr(((Expr)yyVals[-1+yyTop])); yyVal=PIE; } break; -case 229: - // line 1968 "./../src/mycompiler/myparser/JavaParser.jay" +case 232: + // line 2012 "./../src/mycompiler/myparser/JavaParser.jay" { PostDecExpr PDE = new PostDecExpr(((Expr)yyVals[-1+yyTop]).getOffset(),((Expr)yyVals[-1+yyTop]).getVariableLength()); PDE.set_Expr(((Expr)yyVals[-1+yyTop])); yyVal=PDE; } break; -case 230: - // line 1976 "./../src/mycompiler/myparser/JavaParser.jay" +case 233: + // line 2020 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("M1"); MethodCall MC = new MethodCall(((UsedId)yyVals[-2+yyTop]).getOffset(),((UsedId)yyVals[-2+yyTop]).getVariableLength()); @@ -2675,8 +2716,8 @@ case 230: yyVal=MC; } break; -case 231: - // line 2006 "./../src/mycompiler/myparser/JavaParser.jay" +case 234: + // line 2050 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("M2"); MethodCall MCarg = new MethodCall(((UsedId)yyVals[-3+yyTop]).getOffset(),((UsedId)yyVals[-3+yyTop]).getVariableLength()); @@ -2708,8 +2749,8 @@ case 231: yyVal=MCarg; } break; -case 232: - // line 2037 "./../src/mycompiler/myparser/JavaParser.jay" +case 235: + // line 2081 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("M3"); MethodCall MCpr = new MethodCall(((Expr)yyVals[-4+yyTop]).getOffset(),((Expr)yyVals[-4+yyTop]).getVariableLength()); @@ -2729,8 +2770,8 @@ case 232: yyVal=MCpr; } break; -case 233: - // line 2056 "./../src/mycompiler/myparser/JavaParser.jay" +case 236: + // line 2100 "./../src/mycompiler/myparser/JavaParser.jay" { org.apache.log4j.Logger.getLogger("parser").debug("M4"); MethodCall MCPA = new MethodCall(((Expr)yyVals[-5+yyTop]).getOffset(),((Expr)yyVals[-5+yyTop]).getVariableLength()); @@ -2751,8 +2792,8 @@ case 233: yyVal=MCPA; } break; -case 234: - // line 2079 "./../src/mycompiler/myparser/JavaParser.jay" +case 237: + // line 2123 "./../src/mycompiler/myparser/JavaParser.jay" { NewClass NC = new NewClass(((UsedId)yyVals[-2+yyTop]).getOffset(),((UsedId)yyVals[-2+yyTop]).getVariableLength()); NC.set_UsedId(((UsedId)yyVals[-2+yyTop])); @@ -2761,8 +2802,8 @@ case 234: yyVal=NC; } break; -case 235: - // line 2087 "./../src/mycompiler/myparser/JavaParser.jay" +case 238: + // line 2131 "./../src/mycompiler/myparser/JavaParser.jay" { NewClass NCarg = new NewClass(((UsedId)yyVals[-3+yyTop]).getOffset(),((UsedId)yyVals[-3+yyTop]).getVariableLength()); NCarg.set_UsedId(((UsedId)yyVals[-3+yyTop])); @@ -2772,14 +2813,14 @@ case 235: yyVal=NCarg; } break; -case 236: - // line 2097 "./../src/mycompiler/myparser/JavaParser.jay" +case 239: + // line 2141 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 237: - // line 2101 "./../src/mycompiler/myparser/JavaParser.jay" +case 240: + // line 2145 "./../src/mycompiler/myparser/JavaParser.jay" { Binary And = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); AndOp AndO = new AndOp(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -2790,20 +2831,20 @@ case 237: yyVal=And; } break; -case 238: - // line 2117 "./../src/mycompiler/myparser/JavaParser.jay" +case 241: + // line 2161 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 239: - // line 2121 "./../src/mycompiler/myparser/JavaParser.jay" +case 242: + // line 2165 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 240: - // line 2125 "./../src/mycompiler/myparser/JavaParser.jay" +case 243: + // line 2169 "./../src/mycompiler/myparser/JavaParser.jay" { PositivExpr POSEX=new PositivExpr(((Expr)yyVals[0+yyTop]).getOffset(),((Expr)yyVals[0+yyTop]).getVariableLength()); UnaryPlus UP= new UnaryPlus(); @@ -2812,8 +2853,8 @@ case 240: yyVal=POSEX; } break; -case 241: - // line 2133 "./../src/mycompiler/myparser/JavaParser.jay" +case 244: + // line 2177 "./../src/mycompiler/myparser/JavaParser.jay" { NegativeExpr NEGEX=new NegativeExpr(((Expr)yyVals[0+yyTop]).getOffset(),((Expr)yyVals[0+yyTop]).getVariableLength()); UnaryMinus UM=new UnaryMinus(); @@ -2822,20 +2863,20 @@ case 241: yyVal=NEGEX; } break; -case 242: - // line 2141 "./../src/mycompiler/myparser/JavaParser.jay" +case 245: + // line 2185 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 243: - // line 2146 "./../src/mycompiler/myparser/JavaParser.jay" +case 246: + // line 2190 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 244: - // line 2150 "./../src/mycompiler/myparser/JavaParser.jay" +case 247: + // line 2194 "./../src/mycompiler/myparser/JavaParser.jay" { if (((UsedId)yyVals[0+yyTop]).get_Name().size() > 1) { @@ -2854,38 +2895,38 @@ case 244: } } break; -case 245: - // line 2168 "./../src/mycompiler/myparser/JavaParser.jay" - { - yyVal=((Expr)yyVals[0+yyTop]); - } - break; -case 246: - // line 2172 "./../src/mycompiler/myparser/JavaParser.jay" - { - yyVal=((Expr)yyVals[0+yyTop]); - } - break; -case 247: - // line 2177 "./../src/mycompiler/myparser/JavaParser.jay" - { - yyVal=((Expr)yyVals[0+yyTop]); - } - break; case 248: - // line 2182 "./../src/mycompiler/myparser/JavaParser.jay" + // line 2212 "./../src/mycompiler/myparser/JavaParser.jay" + { + yyVal=((Expr)yyVals[0+yyTop]); + } + break; +case 249: + // line 2216 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; case 250: - // line 2188 "./../src/mycompiler/myparser/JavaParser.jay" + // line 2221 "./../src/mycompiler/myparser/JavaParser.jay" + { + yyVal=((Expr)yyVals[0+yyTop]); + } + break; +case 251: + // line 2226 "./../src/mycompiler/myparser/JavaParser.jay" + { + yyVal=((Expr)yyVals[0+yyTop]); + } + break; +case 253: + // line 2232 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Literal)yyVals[0+yyTop]); } break; -case 251: - // line 2192 "./../src/mycompiler/myparser/JavaParser.jay" +case 254: + // line 2236 "./../src/mycompiler/myparser/JavaParser.jay" { This T = new This(((Token)yyVals[0+yyTop]).getOffset(),((Token)yyVals[0+yyTop]).getLexem().length()); UsedId UT = new UsedId(((Token)yyVals[0+yyTop]).getOffset()); @@ -2894,24 +2935,24 @@ case 251: yyVal=T; } break; -case 252: - // line 2213 "./../src/mycompiler/myparser/JavaParser.jay" +case 255: + // line 2257 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((MethodCall)yyVals[0+yyTop]); } break; -case 253: - // line 2217 "./../src/mycompiler/myparser/JavaParser.jay" +case 256: + // line 2261 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 254: - // line 2222 "./../src/mycompiler/myparser/JavaParser.jay" +case 257: + // line 2266 "./../src/mycompiler/myparser/JavaParser.jay" {yyVal=((Expr)yyVals[0+yyTop]);} break; -case 255: - // line 2224 "./../src/mycompiler/myparser/JavaParser.jay" +case 258: + // line 2268 "./../src/mycompiler/myparser/JavaParser.jay" {NotExpr NE=new NotExpr(((Expr)yyVals[0+yyTop]).getOffset(),((Expr)yyVals[0+yyTop]).getVariableLength()); UnaryNot UN=new UnaryNot(); NE.set_UnaryNot(UN); @@ -2919,75 +2960,75 @@ case 255: yyVal=NE; } break; -case 256: - // line 2230 "./../src/mycompiler/myparser/JavaParser.jay" +case 259: + // line 2274 "./../src/mycompiler/myparser/JavaParser.jay" {yyVal=((CastExpr)yyVals[0+yyTop]);} break; -case 257: - // line 2232 "./../src/mycompiler/myparser/JavaParser.jay" +case 260: + // line 2276 "./../src/mycompiler/myparser/JavaParser.jay" {yyVal=((Expr)yyVals[0+yyTop]);} break; -case 259: - // line 2237 "./../src/mycompiler/myparser/JavaParser.jay" +case 262: + // line 2281 "./../src/mycompiler/myparser/JavaParser.jay" {IntLiteral IL = new IntLiteral(); IL.set_Int(((Token)yyVals[0+yyTop]).String2Int()); yyVal = IL; } break; -case 260: - // line 2242 "./../src/mycompiler/myparser/JavaParser.jay" +case 263: + // line 2286 "./../src/mycompiler/myparser/JavaParser.jay" {BoolLiteral BL = new BoolLiteral(); BL.set_Bool(((Token)yyVals[0+yyTop]).String2Bool()); yyVal = BL; } break; -case 261: - // line 2246 "./../src/mycompiler/myparser/JavaParser.jay" +case 264: + // line 2290 "./../src/mycompiler/myparser/JavaParser.jay" {CharLiteral CL = new CharLiteral(); CL.set_Char(((Token)yyVals[0+yyTop]).CharInString()); yyVal=CL; } break; -case 262: - // line 2251 "./../src/mycompiler/myparser/JavaParser.jay" +case 265: + // line 2295 "./../src/mycompiler/myparser/JavaParser.jay" { StringLiteral ST = new StringLiteral(); ST.set_String(((Token)yyVals[0+yyTop]).get_String()); yyVal=ST; } break; -case 263: - // line 2256 "./../src/mycompiler/myparser/JavaParser.jay" +case 266: + // line 2300 "./../src/mycompiler/myparser/JavaParser.jay" { LongLiteral LL = new LongLiteral(); LL.set_Long(((Token)yyVals[0+yyTop]).String2Long()); yyVal = LL; } break; -case 264: - // line 2260 "./../src/mycompiler/myparser/JavaParser.jay" +case 267: + // line 2304 "./../src/mycompiler/myparser/JavaParser.jay" { FloatLiteral FL = new FloatLiteral(); FL.set_Float(((Token)yyVals[0+yyTop]).String2Float()); yyVal = FL; } break; -case 265: - // line 2265 "./../src/mycompiler/myparser/JavaParser.jay" +case 268: + // line 2309 "./../src/mycompiler/myparser/JavaParser.jay" { DoubleLiteral DL = new DoubleLiteral(); DL.set_Double(((Token)yyVals[0+yyTop]).String2Double()); yyVal = DL; } break; -case 266: - // line 2271 "./../src/mycompiler/myparser/JavaParser.jay" +case 269: + // line 2315 "./../src/mycompiler/myparser/JavaParser.jay" { Null NN = new Null(); yyVal=NN; } break; -case 267: - // line 2277 "./../src/mycompiler/myparser/JavaParser.jay" +case 270: + // line 2321 "./../src/mycompiler/myparser/JavaParser.jay" { CastExpr CaEx=new CastExpr(((Expr)yyVals[0+yyTop]).getOffset(),((Expr)yyVals[0+yyTop]).getVariableLength()); CaEx.set_Type(((BaseType)yyVals[-2+yyTop])); @@ -2995,25 +3036,25 @@ case 267: yyVal=CaEx; } break; -case 268: - // line 2286 "./../src/mycompiler/myparser/JavaParser.jay" - { - yyVal=((Expr)yyVals[0+yyTop]); - } - break; -case 269: - // line 2290 "./../src/mycompiler/myparser/JavaParser.jay" - { - } - break; -case 270: - // line 2294 "./../src/mycompiler/myparser/JavaParser.jay" - { - yyVal=((Expr)yyVals[0+yyTop]); - } - break; case 271: - // line 2298 "./../src/mycompiler/myparser/JavaParser.jay" + // line 2330 "./../src/mycompiler/myparser/JavaParser.jay" + { + yyVal=((Expr)yyVals[0+yyTop]); + } + break; +case 272: + // line 2334 "./../src/mycompiler/myparser/JavaParser.jay" + { + } + break; +case 273: + // line 2338 "./../src/mycompiler/myparser/JavaParser.jay" + { + yyVal=((Expr)yyVals[0+yyTop]); + } + break; +case 274: + // line 2342 "./../src/mycompiler/myparser/JavaParser.jay" { Binary EQ = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); EqualOp EO = new EqualOp(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -3024,8 +3065,8 @@ case 271: yyVal=EQ; } break; -case 272: - // line 2308 "./../src/mycompiler/myparser/JavaParser.jay" +case 275: + // line 2352 "./../src/mycompiler/myparser/JavaParser.jay" { Binary NEQ = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); NotEqualOp NEO = new NotEqualOp(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -3036,14 +3077,14 @@ case 272: yyVal=NEQ; } break; -case 273: - // line 2319 "./../src/mycompiler/myparser/JavaParser.jay" +case 276: + // line 2363 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 274: - // line 2323 "./../src/mycompiler/myparser/JavaParser.jay" +case 277: + // line 2367 "./../src/mycompiler/myparser/JavaParser.jay" { Binary LO = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); LessOp LOO = new LessOp(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -3054,8 +3095,8 @@ case 274: yyVal=LO; } break; -case 275: - // line 2333 "./../src/mycompiler/myparser/JavaParser.jay" +case 278: + // line 2377 "./../src/mycompiler/myparser/JavaParser.jay" { Binary GO = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); GreaterOp GOO = new GreaterOp(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -3066,8 +3107,8 @@ case 275: yyVal=GO; } break; -case 276: - // line 2343 "./../src/mycompiler/myparser/JavaParser.jay" +case 279: + // line 2387 "./../src/mycompiler/myparser/JavaParser.jay" { Binary LE = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); LessEquOp LEO = new LessEquOp(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -3078,8 +3119,8 @@ case 276: yyVal=LE; } break; -case 277: - // line 2353 "./../src/mycompiler/myparser/JavaParser.jay" +case 280: + // line 2397 "./../src/mycompiler/myparser/JavaParser.jay" { Binary GE = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); GreaterEquOp GEO = new GreaterEquOp(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -3090,8 +3131,8 @@ case 277: yyVal=GE; } break; -case 278: - // line 2363 "./../src/mycompiler/myparser/JavaParser.jay" +case 281: + // line 2407 "./../src/mycompiler/myparser/JavaParser.jay" { InstanceOf ISO=new InstanceOf(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); ISO.set_Expr(((Expr)yyVals[-2+yyTop])); @@ -3099,20 +3140,20 @@ case 278: yyVal=ISO; } break; -case 279: - // line 2371 "./../src/mycompiler/myparser/JavaParser.jay" +case 282: + // line 2415 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 280: - // line 2376 "./../src/mycompiler/myparser/JavaParser.jay" +case 283: + // line 2420 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 281: - // line 2380 "./../src/mycompiler/myparser/JavaParser.jay" +case 284: + // line 2424 "./../src/mycompiler/myparser/JavaParser.jay" { Binary AD = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); PlusOp PO = new PlusOp(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -3123,8 +3164,8 @@ case 281: yyVal=AD; } break; -case 282: - // line 2390 "./../src/mycompiler/myparser/JavaParser.jay" +case 285: + // line 2434 "./../src/mycompiler/myparser/JavaParser.jay" { Binary MI = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); MinusOp MO = new MinusOp(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -3135,14 +3176,14 @@ case 282: yyVal=MI; } break; -case 283: - // line 2401 "./../src/mycompiler/myparser/JavaParser.jay" +case 286: + // line 2445 "./../src/mycompiler/myparser/JavaParser.jay" { yyVal=((Expr)yyVals[0+yyTop]); } break; -case 284: - // line 2405 "./../src/mycompiler/myparser/JavaParser.jay" +case 287: + // line 2449 "./../src/mycompiler/myparser/JavaParser.jay" { Binary ML = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); TimesOp TO = new TimesOp(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -3153,8 +3194,8 @@ case 284: yyVal=ML; } break; -case 285: - // line 2415 "./../src/mycompiler/myparser/JavaParser.jay" +case 288: + // line 2459 "./../src/mycompiler/myparser/JavaParser.jay" { Binary DV = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); DivideOp DO = new DivideOp(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -3165,8 +3206,8 @@ case 285: yyVal = DV; } break; -case 286: - // line 2425 "./../src/mycompiler/myparser/JavaParser.jay" +case 289: + // line 2469 "./../src/mycompiler/myparser/JavaParser.jay" { Binary MD = new Binary(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); ModuloOp MO = new ModuloOp(((Expr)yyVals[-2+yyTop]).getOffset(),((Expr)yyVals[-2+yyTop]).getVariableLength()); @@ -3177,7 +3218,7 @@ case 286: yyVal =MD; } break; - // line 3181 "-" + // line 3222 "-" } yyTop -= yyLen[yyN]; yyState = yyStates[yyTop]; @@ -3208,35 +3249,35 @@ case 286: } protected static final short yyLhs [] = { -1, - 0, 0, 0, 0, 0, 99, 27, 27, 26, 93, - 93, 28, 28, 106, 106, 24, 25, 25, 23, 1, + 0, 0, 0, 0, 0, 100, 28, 28, 27, 94, + 94, 29, 29, 107, 107, 25, 26, 26, 23, 1, 1, 1, 1, 1, 1, 1, 1, 9, 9, 8, - 8, 2, 2, 2, 2, 113, 113, 113, 113, 113, - 113, 116, 116, 116, 7, 7, 41, 41, 29, 33, - 33, 3, 3, 34, 34, 16, 16, 42, 42, 42, - 42, 42, 42, 30, 4, 4, 32, 17, 17, 17, - 31, 114, 114, 115, 115, 5, 5, 18, 18, 111, - 107, 107, 10, 6, 20, 20, 11, 12, 12, 12, - 12, 12, 12, 14, 43, 43, 108, 108, 109, 109, - 109, 109, 49, 95, 98, 98, 94, 94, 96, 96, - 97, 97, 13, 13, 13, 13, 13, 13, 13, 13, + 8, 2, 2, 2, 2, 114, 114, 114, 114, 114, + 114, 117, 117, 117, 7, 7, 42, 42, 30, 34, + 34, 3, 3, 35, 35, 16, 16, 43, 43, 43, + 43, 43, 43, 31, 4, 4, 33, 17, 17, 17, + 24, 24, 32, 115, 115, 116, 116, 5, 5, 18, + 18, 112, 108, 108, 10, 6, 20, 20, 11, 12, + 12, 12, 12, 12, 12, 14, 44, 44, 109, 109, + 110, 110, 110, 110, 50, 96, 99, 99, 95, 95, + 97, 97, 98, 98, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, - 13, 13, 13, 40, 40, 40, 40, 19, 19, 44, - 45, 45, 51, 51, 110, 110, 39, 39, 15, 15, - 37, 37, 38, 21, 81, 81, 50, 50, 104, 104, - 36, 22, 79, 47, 82, 82, 82, 82, 82, 72, - 72, 35, 35, 48, 48, 80, 80, 80, 80, 87, - 88, 84, 85, 85, 85, 85, 85, 85, 85, 85, - 70, 70, 90, 78, 91, 91, 83, 83, 83, 69, - 100, 100, 73, 73, 73, 73, 73, 73, 89, 86, - 68, 68, 102, 46, 46, 52, 52, 71, 103, 101, - 101, 101, 101, 101, 101, 74, 75, 76, 77, 105, - 105, 105, 105, 92, 92, 67, 67, 58, 58, 58, - 58, 58, 56, 56, 56, 56, 55, 66, 66, 54, - 54, 54, 54, 57, 57, 57, 65, 65, 53, 53, - 53, 53, 53, 53, 53, 53, 112, 64, 64, 63, - 63, 63, 62, 62, 62, 62, 62, 62, 61, 60, - 60, 60, 59, 59, 59, 59, + 13, 13, 13, 13, 13, 41, 41, 41, 41, 19, + 19, 45, 46, 46, 52, 52, 111, 111, 40, 40, + 15, 15, 38, 38, 118, 39, 21, 82, 82, 51, + 51, 105, 105, 37, 22, 80, 48, 83, 83, 83, + 83, 83, 73, 73, 36, 36, 49, 49, 81, 81, + 81, 81, 88, 89, 85, 86, 86, 86, 86, 86, + 86, 86, 86, 71, 71, 91, 79, 92, 92, 84, + 84, 84, 70, 101, 101, 74, 74, 74, 74, 74, + 74, 90, 87, 69, 69, 103, 47, 47, 53, 53, + 72, 104, 102, 102, 102, 102, 102, 102, 75, 76, + 77, 78, 106, 106, 106, 106, 93, 93, 68, 68, + 59, 59, 59, 59, 59, 57, 57, 57, 57, 56, + 67, 67, 55, 55, 55, 55, 58, 58, 58, 66, + 66, 54, 54, 54, 54, 54, 54, 54, 54, 113, + 65, 65, 64, 64, 64, 63, 63, 63, 63, 63, + 63, 62, 61, 61, 61, 60, 60, 60, 60, }; protected static final short yyLen [] = { 2, 1, 2, 3, 2, 3, 3, 1, 2, 3, 1, @@ -3246,92 +3287,92 @@ case 286: 3, 1, 3, 3, 2, 3, 1, 2, 2, 2, 3, 2, 3, 2, 3, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, - 2, 1, 3, 0, 3, 1, 1, 1, 1, 2, - 2, 3, 6, 2, 3, 1, 3, 2, 3, 4, - 2, 3, 4, 2, 2, 3, 3, 4, 2, 3, - 3, 4, 2, 1, 1, 3, 1, 3, 1, 3, - 1, 3, 3, 2, 3, 4, 3, 4, 4, 5, - 2, 3, 3, 4, 3, 4, 4, 5, 1, 2, - 2, 2, 3, 1, 3, 1, 3, 1, 3, 1, - 1, 2, 1, 3, 4, 5, 1, 3, 3, 4, - 1, 1, 1, 1, 1, 1, 2, 1, 1, 3, - 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 2, 1, 1, 1, 1, 1, 5, - 7, 5, 9, 8, 8, 8, 7, 7, 7, 6, - 1, 1, 1, 2, 2, 3, 1, 1, 1, 1, - 3, 3, 1, 1, 1, 1, 1, 1, 7, 5, - 1, 3, 1, 1, 1, 2, 3, 3, 1, 1, - 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, - 4, 5, 6, 4, 5, 1, 3, 1, 1, 2, - 2, 1, 1, 1, 1, 1, 1, 1, 3, 1, - 1, 1, 1, 1, 2, 1, 1, 3, 1, 1, - 1, 1, 1, 1, 1, 1, 4, 1, 3, 1, - 3, 3, 1, 3, 3, 3, 3, 3, 1, 1, - 3, 3, 1, 3, 3, 3, + 1, 3, 2, 1, 3, 0, 3, 1, 1, 1, + 1, 2, 2, 3, 6, 2, 3, 1, 3, 2, + 3, 4, 2, 3, 4, 2, 2, 3, 3, 4, + 2, 3, 3, 4, 2, 1, 1, 3, 1, 3, + 1, 3, 1, 3, 3, 2, 3, 4, 3, 4, + 4, 5, 2, 3, 3, 4, 3, 4, 4, 5, + 1, 2, 2, 2, 3, 1, 3, 1, 3, 1, + 3, 1, 1, 2, 1, 3, 4, 5, 1, 3, + 3, 4, 1, 1, 2, 1, 1, 1, 1, 2, + 1, 1, 3, 1, 1, 1, 2, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, + 1, 1, 5, 7, 5, 9, 8, 8, 8, 7, + 7, 7, 6, 1, 1, 1, 2, 2, 3, 1, + 1, 1, 1, 3, 3, 1, 1, 1, 1, 1, + 1, 7, 5, 1, 3, 1, 1, 1, 2, 3, + 3, 1, 1, 1, 1, 1, 1, 1, 2, 2, + 2, 2, 3, 4, 5, 6, 4, 5, 1, 3, + 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, + 1, 3, 1, 1, 1, 1, 1, 2, 1, 1, + 3, 1, 1, 1, 1, 1, 1, 1, 1, 4, + 1, 3, 1, 3, 3, 1, 3, 3, 3, 3, + 3, 1, 1, 3, 3, 1, 3, 3, 3, }; protected static final short yyDefRed [] = { 0, - 62, 151, 173, 0, 63, 172, 60, 59, 58, 0, + 62, 153, 176, 0, 63, 175, 60, 59, 58, 0, 0, 0, 61, 19, 0, 14, 15, 0, 7, 0, - 153, 161, 152, 0, 0, 0, 0, 47, 0, 0, + 156, 164, 154, 0, 0, 0, 0, 47, 0, 0, 10, 0, 0, 13, 12, 0, 0, 0, 0, 0, - 0, 71, 8, 0, 0, 0, 0, 0, 0, 48, + 0, 73, 8, 0, 0, 0, 0, 0, 0, 48, 11, 0, 0, 0, 0, 0, 0, 20, 0, 0, - 6, 0, 9, 0, 0, 0, 0, 32, 0, 72, - 0, 135, 137, 5, 0, 0, 0, 0, 104, 105, + 6, 0, 9, 0, 0, 0, 0, 32, 0, 74, + 0, 137, 139, 5, 0, 0, 0, 0, 106, 107, 0, 49, 64, 67, 50, 0, 0, 0, 0, 45, - 0, 78, 0, 79, 0, 0, 56, 68, 0, 0, - 0, 154, 0, 0, 0, 70, 0, 69, 22, 0, + 0, 80, 0, 81, 0, 0, 56, 68, 0, 0, + 0, 157, 0, 0, 0, 70, 0, 69, 22, 0, 0, 24, 16, 0, 18, 0, 54, 0, 52, 0, - 65, 77, 76, 0, 0, 0, 0, 0, 34, 0, - 75, 21, 0, 0, 33, 0, 0, 0, 31, 0, - 80, 0, 0, 0, 111, 0, 0, 130, 0, 140, - 94, 0, 132, 46, 57, 0, 91, 88, 0, 0, + 65, 79, 78, 0, 0, 0, 0, 0, 34, 0, + 77, 21, 0, 0, 33, 0, 0, 0, 31, 0, + 82, 0, 0, 0, 113, 0, 0, 132, 0, 142, + 96, 0, 134, 46, 57, 0, 93, 90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 81, 26, 51, 29, 53, 66, 0, 84, 0, 55, - 73, 23, 0, 25, 35, 109, 0, 106, 0, 0, - 0, 251, 0, 259, 263, 265, 264, 260, 266, 261, - 262, 0, 0, 0, 193, 95, 0, 0, 138, 0, - 0, 0, 176, 0, 155, 0, 0, 250, 247, 0, - 0, 253, 0, 204, 205, 0, 0, 178, 165, 141, - 156, 168, 169, 166, 167, 177, 179, 203, 0, 0, - 123, 149, 158, 0, 143, 0, 0, 87, 0, 0, - 0, 0, 147, 0, 162, 139, 0, 0, 0, 0, - 0, 0, 242, 283, 0, 0, 273, 0, 0, 0, - 0, 0, 0, 0, 191, 170, 85, 238, 239, 245, - 246, 171, 192, 252, 256, 97, 0, 117, 92, 89, - 0, 0, 0, 133, 0, 0, 82, 0, 99, 0, - 0, 0, 27, 0, 0, 0, 195, 0, 0, 0, - 226, 227, 216, 0, 0, 0, 96, 142, 164, 213, - 0, 0, 228, 229, 194, 224, 225, 221, 222, 223, - 220, 0, 157, 0, 150, 112, 127, 118, 90, 0, - 0, 0, 240, 241, 255, 0, 0, 0, 0, 0, + 83, 26, 51, 29, 53, 66, 0, 86, 0, 55, + 75, 23, 0, 25, 35, 111, 0, 108, 0, 0, + 0, 254, 0, 262, 266, 268, 267, 263, 269, 264, + 265, 0, 0, 0, 196, 97, 0, 0, 140, 0, + 0, 0, 179, 0, 158, 0, 0, 253, 250, 0, + 0, 256, 0, 207, 208, 0, 0, 181, 168, 143, + 159, 171, 172, 169, 170, 180, 182, 206, 0, 0, + 125, 151, 161, 0, 145, 0, 0, 89, 0, 0, + 0, 0, 149, 0, 165, 141, 0, 0, 0, 0, + 0, 0, 245, 286, 0, 0, 276, 0, 0, 0, + 0, 0, 0, 0, 194, 173, 87, 241, 242, 248, + 249, 174, 195, 255, 259, 99, 0, 119, 94, 91, + 0, 0, 0, 135, 0, 0, 84, 0, 101, 0, + 0, 0, 27, 0, 0, 0, 198, 0, 0, 0, + 229, 230, 219, 0, 0, 0, 98, 144, 167, 216, + 0, 0, 231, 232, 197, 227, 228, 224, 225, 226, + 223, 0, 160, 0, 152, 114, 129, 120, 92, 0, + 0, 0, 243, 244, 258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 98, 124, 0, 0, 119, 93, 0, 101, - 100, 0, 0, 110, 0, 0, 0, 196, 0, 217, - 230, 159, 0, 214, 218, 215, 0, 201, 202, 144, - 148, 0, 0, 284, 285, 286, 0, 0, 278, 276, - 277, 274, 275, 0, 0, 0, 0, 0, 0, 0, - 128, 120, 0, 0, 102, 0, 0, 0, 0, 0, - 0, 0, 231, 0, 234, 0, 267, 145, 0, 83, - 0, 0, 0, 0, 0, 0, 0, 0, 180, 0, - 199, 198, 182, 160, 232, 0, 235, 146, 190, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 233, 189, - 188, 0, 187, 0, 0, 0, 0, 0, 181, 186, - 185, 184, 0, 0, 0, 183, 0, 210, 0, 209, + 0, 0, 100, 126, 0, 0, 121, 95, 0, 103, + 102, 0, 0, 112, 0, 0, 0, 199, 0, 220, + 233, 162, 0, 217, 221, 218, 0, 204, 205, 146, + 150, 0, 0, 287, 288, 289, 0, 0, 281, 279, + 280, 277, 278, 0, 0, 0, 0, 0, 0, 0, + 130, 122, 0, 0, 104, 0, 0, 0, 0, 0, + 0, 0, 234, 0, 237, 0, 270, 147, 0, 85, + 0, 0, 0, 0, 0, 0, 0, 0, 183, 0, + 202, 201, 185, 163, 235, 0, 238, 148, 193, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 236, 192, + 191, 0, 190, 0, 0, 0, 0, 0, 184, 189, + 188, 187, 0, 0, 0, 186, 0, 213, 0, 212, }; protected static final short yyDgoto [] = { 15, 16, 17, 68, 120, 121, 122, 58, 33, 40, 123, 91, 92, 93, 94, 95, 96, 97, 98, 208, 100, - 209, 102, 34, 35, 37, 19, 20, 211, 59, 82, - 21, 85, 60, 69, 22, 23, 24, 25, 254, 212, - 27, 28, 213, 151, 214, 385, 215, 216, 153, 245, - 314, 217, 218, 219, 220, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 222, 382, 223, 278, 279, 280, 281, 228, 0, 229, - 230, 231, 440, 232, 233, 441, 234, 235, 442, 236, - 237, 282, 29, 79, 80, 187, 146, 81, 30, 283, - 332, 321, 239, 383, 284, 31, 106, 107, 171, 301, - 108, 285, 0, 71, 42, 0, + 209, 102, 34, 0, 35, 37, 19, 20, 211, 59, + 82, 21, 85, 60, 69, 22, 23, 24, 25, 254, + 212, 27, 28, 213, 151, 214, 385, 215, 216, 153, + 245, 314, 217, 218, 219, 220, 262, 263, 264, 265, + 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 222, 382, 223, 278, 279, 280, 281, 228, 0, + 229, 230, 231, 440, 232, 233, 441, 234, 235, 442, + 236, 237, 282, 29, 79, 80, 187, 146, 81, 30, + 283, 332, 321, 239, 383, 284, 31, 106, 107, 171, + 301, 108, 285, 0, 71, 42, 0, 0, }; protected static final short yySindex [] = { 1033, 0, 0, 0, -231, 0, 0, 0, 0, 0, -209, @@ -3404,18 +3445,18 @@ case 286: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, -29, 0, 0, 0, 0, 0, 542, 0, 173, + 0, -29, 0, 0, 0, 0, 0, 407, 0, 173, 681, 0, 0, 0, 0, 0, 0, 0, 0, 1019, 0, 0, 0, 0, 0, -55, -34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 39, 44, - 0, 544, 0, 52, 0, 0, 0, 0, 0, 0, + 0, 542, 0, 52, 0, 0, 0, 0, 0, 0, 0, 1997, 0, 0, 1723, 1618, 0, 5, 1629, 1122, 1133, 1294, 1338, 1406, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, 82, 0, 0, -12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1432, - 0, 0, 0, 0, 0, 545, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 544, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301, 0, 0, 0, 0, 0, 0, 0, 0, @@ -3433,61 +3474,61 @@ case 286: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; - protected static final short yyGindex [] = { 558, - 0, 0, 84, 0, 486, 0, 77, 559, 563, 0, - 262, 0, 41, 0, 2633, 0, 512, 0, 36, 86, - 1, -116, 19, 0, 0, 69, 585, -10, 552, -134, - -50, 7, 12, 553, 0, 0, 359, -128, 0, 573, - 258, -1, -79, 0, -157, 0, 0, 0, 382, 285, - 92, 0, 0, 0, 0, -63, 0, -147, 128, 0, - 110, 115, 263, 277, 278, 276, 279, 0, 0, 311, - 0, -151, 0, -45, -6, 55, 121, 0, 0, -176, - -194, 2374, -82, 0, 0, 0, 0, 0, 0, 0, - 0, 312, 351, -56, 504, 0, 0, 580, 0, 160, - 0, 0, 0, -196, 237, 356, 0, 549, 478, 0, - 0, 0, 0, 0, 0, 0, + protected static final short yyGindex [] = { 557, + 0, 0, 84, 0, 485, 0, 77, 558, 559, 0, + 262, 0, 41, 0, 2633, 0, 521, 0, 36, 86, + 1, -116, 19, 0, 0, 0, 69, 577, -10, 537, + -134, -50, 7, 12, 539, 0, 0, 361, -128, 0, + 573, 258, -1, -79, 0, -157, 0, 0, 0, 382, + 287, 92, 0, 0, 0, 0, -63, 0, -147, 128, + 0, 110, 115, 269, 270, 276, 277, 279, 0, 0, + 305, 0, -151, 0, -45, -6, 55, 121, 0, 0, + -176, -194, 2374, -82, 0, 0, 0, 0, 0, 0, + 0, 0, 311, 351, -56, 504, 0, 0, 579, 0, + 160, 0, 0, 0, -196, 237, 356, 0, 540, 478, + 0, 0, 0, 0, 0, 0, 0, 0, }; protected static final short yyTable [] = { 36, - 38, 74, 115, 206, 83, 84, 141, 277, 186, 242, - 19, 162, 300, 150, 162, 84, 19, 253, 18, 318, - 162, 19, 57, 286, 207, 50, 30, 243, 57, 162, - 19, 19, 145, 251, 67, 162, 19, 162, 28, 308, - 111, 270, 270, 243, 18, 270, 270, 270, 270, 270, - 270, 270, 19, 252, 129, 311, 312, 101, 128, 18, - 84, 19, 121, 270, 130, 18, 208, 19, 114, 32, - 110, 393, 117, 18, 18, 103, 221, 84, 162, 160, - 323, 324, 131, 131, 18, 18, 134, 354, 43, 355, - 243, 14, 99, 162, 224, 162, 101, 125, 270, 41, - 313, 83, 113, 50, 101, 318, 221, 125, 331, 18, - 103, 343, 344, 345, 103, 156, 122, 173, 129, 57, - 43, 45, 341, 103, 224, 50, 121, 333, 270, 18, - 157, 99, 114, 225, 180, 109, 112, 67, 18, 163, - 115, 243, 18, 372, 183, 18, 18, 131, 18, 252, + 38, 76, 115, 209, 83, 84, 141, 277, 186, 242, + 19, 165, 300, 150, 165, 84, 19, 253, 18, 318, + 165, 19, 57, 286, 210, 50, 30, 243, 57, 165, + 19, 19, 145, 254, 67, 165, 19, 165, 28, 308, + 111, 273, 273, 243, 18, 273, 273, 273, 273, 273, + 273, 273, 19, 255, 131, 311, 312, 101, 128, 18, + 84, 19, 123, 273, 130, 18, 211, 19, 116, 32, + 110, 393, 117, 18, 18, 103, 221, 84, 165, 160, + 323, 324, 131, 133, 18, 18, 134, 354, 43, 355, + 243, 14, 99, 165, 224, 165, 101, 127, 273, 41, + 313, 83, 115, 50, 101, 318, 221, 125, 331, 18, + 105, 343, 344, 345, 103, 156, 124, 173, 131, 57, + 43, 45, 341, 103, 224, 50, 123, 333, 273, 18, + 157, 99, 116, 225, 180, 109, 112, 67, 18, 163, + 117, 243, 18, 372, 183, 18, 18, 133, 18, 252, 221, 132, 129, 376, 377, 18, 256, 379, 210, 135, - 125, 125, 18, 225, 126, 116, 113, 55, 224, 386, - 18, 30, 414, 138, 103, 374, 144, 318, 18, 66, - 122, 56, 39, 28, 18, 30, 172, 56, 210, 164, + 125, 127, 18, 225, 128, 118, 115, 55, 224, 386, + 18, 30, 414, 138, 105, 374, 144, 318, 18, 66, + 124, 56, 39, 28, 18, 30, 172, 56, 210, 164, 336, 139, 310, 310, 226, 426, 138, 373, 394, 395, - 396, 156, 247, 296, 115, 391, 83, 225, 41, 182, - 184, 74, 13, 107, 174, 45, 289, 243, 13, 185, - 248, 416, 399, 418, 226, 18, 2, 446, 126, 116, - 3, 107, 210, 13, 251, 246, 221, 221, 46, 108, + 396, 156, 247, 296, 117, 391, 83, 225, 41, 182, + 184, 76, 13, 109, 174, 45, 289, 243, 13, 185, + 248, 416, 399, 418, 226, 18, 2, 446, 128, 118, + 3, 109, 210, 13, 251, 246, 221, 221, 46, 110, 2, 384, 6, 438, 3, 427, 54, 316, 310, 310, - 310, 287, 245, 245, 224, 224, 6, 108, 315, 303, - 227, 114, 19, 74, 62, 432, 63, 435, 226, 202, - 444, 19, 64, 246, 246, 18, 18, 19, 19, 19, + 310, 287, 248, 248, 224, 224, 6, 110, 315, 303, + 227, 114, 19, 76, 62, 432, 63, 435, 226, 202, + 444, 19, 64, 249, 249, 18, 18, 19, 19, 19, 72, 452, 454, 202, 19, 19, 19, 19, 62, 83, - 227, 19, 65, 225, 225, 251, 251, 438, 438, 238, - 351, 61, 438, 466, 467, 468, 270, 73, 221, 270, - 270, 270, 270, 270, 105, 252, 252, 2, 210, 210, + 227, 19, 65, 225, 225, 254, 254, 438, 438, 238, + 351, 61, 438, 466, 467, 468, 273, 73, 221, 273, + 273, 273, 273, 273, 105, 255, 255, 2, 210, 210, 335, 3, 18, 334, 127, 156, 224, 78, 124, 238, 352, 353, 113, 6, 227, 310, 310, 310, 310, 310, 368, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 18, 105, 226, 226, 221, 221, 18, 16, 202, 326, 327, 328, 329, 225, 166, 221, 330, 18, - 44, 137, 17, 238, 224, 224, 240, 127, 138, 2, + 44, 137, 17, 238, 224, 224, 240, 127, 140, 2, 53, 124, 310, 3, 51, 224, 221, 221, 166, 221, - 210, 477, 478, 86, 221, 6, 480, 140, 221, 51, + 210, 477, 478, 88, 221, 6, 480, 140, 221, 51, 221, 221, 77, 142, 224, 224, 240, 224, 51, 221, 221, 221, 224, 225, 225, 221, 224, 144, 224, 224, 227, 227, 14, 152, 225, 348, 226, 224, 224, 224, @@ -3495,7 +3536,7 @@ case 286: 3, 334, 334, 225, 225, 423, 225, 159, 422, 170, 240, 225, 6, 429, 161, 225, 422, 225, 225, 238, 238, 400, 401, 402, 403, 178, 225, 225, 225, 147, - 404, 405, 225, 74, 226, 226, 397, 398, 2, 118, + 404, 405, 225, 76, 226, 226, 397, 398, 2, 118, 13, 13, 3, 255, 290, 226, 13, 13, 13, 13, 302, 261, 227, 13, 6, 304, 447, 459, 258, 422, 422, 259, 305, 260, 226, 226, 2, 226, 306, 309, @@ -3508,27 +3549,27 @@ case 286: 227, 227, 26, 227, 456, 457, 458, 455, 227, 238, 238, 462, 227, 464, 227, 227, 473, 474, 475, 479, 238, 1, 2, 227, 227, 227, 4, 3, 47, 227, - 175, 134, 86, 174, 74, 176, 75, 155, 240, 238, - 238, 76, 238, 70, 52, 261, 342, 238, 390, 26, - 406, 238, 258, 238, 238, 259, 133, 260, 136, 104, - 337, 338, 238, 238, 238, 407, 409, 408, 238, 126, - 410, 188, 388, 389, 116, 0, 297, 0, 0, 0, - 0, 0, 0, 169, 261, 0, 240, 240, 0, 0, + 88, 136, 177, 74, 176, 75, 52, 76, 240, 238, + 238, 133, 238, 70, 136, 261, 155, 238, 342, 26, + 390, 238, 258, 238, 238, 259, 406, 260, 407, 104, + 337, 338, 238, 238, 238, 408, 388, 409, 238, 126, + 410, 188, 389, 116, 169, 0, 297, 0, 0, 0, + 0, 0, 0, 0, 261, 0, 240, 240, 0, 0, 0, 258, 413, 149, 259, 0, 260, 240, 104, 0, 0, 261, 364, 0, 0, 0, 367, 168, 258, 0, 0, 259, 0, 260, 0, 0, 240, 240, 0, 240, 0, 0, 126, 0, 240, 0, 177, 417, 240, 179, 240, 240, 181, 0, 0, 140, 0, 0, 0, 240, - 240, 240, 0, 0, 0, 240, 244, 244, 244, 0, - 0, 244, 244, 244, 244, 244, 0, 244, 0, 0, - 0, 0, 244, 257, 0, 0, 0, 0, 293, 244, - 244, 219, 244, 0, 0, 192, 411, 412, 0, 0, + 240, 240, 0, 0, 0, 240, 244, 247, 247, 0, + 0, 247, 247, 247, 247, 247, 0, 247, 0, 0, + 0, 0, 244, 257, 0, 0, 0, 0, 293, 247, + 247, 222, 247, 0, 0, 192, 411, 412, 0, 0, 0, 194, 195, 196, 197, 198, 199, 200, 201, 14, 0, 261, 0, 0, 0, 0, 203, 204, 258, 425, - 0, 259, 0, 260, 244, 0, 0, 257, 261, 244, + 0, 259, 0, 260, 247, 0, 0, 257, 261, 244, 0, 0, 0, 0, 0, 258, 431, 0, 259, 192, 260, 0, 0, 0, 257, 194, 195, 196, 197, 198, - 199, 200, 201, 14, 244, 0, 192, 0, 0, 0, + 199, 200, 201, 14, 247, 0, 192, 0, 0, 0, 203, 204, 194, 195, 196, 197, 198, 199, 200, 201, 14, 0, 261, 0, 0, 0, 0, 203, 204, 258, 244, 0, 259, 0, 260, 0, 0, 0, 0, 261, @@ -3543,142 +3584,142 @@ case 286: 200, 201, 14, 0, 0, 192, 0, 0, 0, 203, 204, 194, 195, 196, 197, 198, 199, 200, 201, 14, 0, 0, 261, 0, 0, 0, 203, 204, 0, 258, - 453, 0, 259, 244, 260, 0, 0, 0, 0, 261, + 453, 0, 259, 247, 260, 0, 0, 0, 0, 261, 0, 0, 0, 0, 0, 0, 258, 465, 0, 259, 0, 260, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 244, 244, 244, 244, 244, 244, 244, 244, - 0, 0, 0, 0, 219, 219, 219, 219, 261, 0, - 0, 219, 0, 257, 0, 258, 0, 0, 259, 0, + 0, 0, 247, 247, 247, 247, 247, 247, 247, 247, + 0, 0, 0, 0, 222, 222, 222, 222, 261, 0, + 0, 222, 0, 257, 0, 258, 0, 0, 259, 0, 260, 0, 0, 0, 0, 192, 0, 0, 0, 0, 257, 194, 195, 196, 197, 198, 199, 200, 201, 14, 0, 0, 192, 0, 0, 0, 203, 204, 194, 195, 196, 197, 198, 199, 200, 201, 14, 0, 0, 0, - 0, 0, 0, 203, 204, 243, 243, 0, 0, 243, - 243, 243, 243, 243, 257, 243, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 192, 243, 243, 0, - 243, 257, 194, 195, 196, 197, 198, 199, 200, 201, + 0, 0, 0, 203, 204, 246, 246, 0, 0, 246, + 246, 246, 246, 246, 257, 246, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 192, 246, 246, 0, + 246, 257, 194, 195, 196, 197, 198, 199, 200, 201, 14, 0, 0, 192, 0, 0, 0, 203, 204, 194, 195, 196, 197, 198, 199, 200, 201, 14, 0, 0, - 192, 0, 243, 0, 203, 204, 194, 195, 196, 197, + 192, 0, 246, 0, 203, 204, 194, 195, 196, 197, 198, 199, 200, 201, 14, 0, 0, 257, 0, 0, 0, 203, 204, 0, 0, 0, 0, 0, 0, 192, - 0, 0, 243, 0, 0, 194, 195, 196, 197, 198, - 199, 200, 201, 14, 0, 0, 0, 0, 257, 0, - 203, 204, 257, 257, 257, 257, 257, 257, 257, 248, - 248, 0, 0, 248, 248, 248, 248, 248, 248, 248, - 257, 257, 0, 257, 257, 0, 0, 0, 0, 0, - 0, 248, 248, 0, 248, 0, 192, 0, 0, 0, + 0, 0, 246, 0, 0, 194, 195, 196, 197, 198, + 199, 200, 201, 14, 0, 0, 0, 0, 260, 0, + 203, 204, 260, 260, 260, 260, 260, 260, 260, 251, + 251, 0, 0, 251, 251, 251, 251, 251, 251, 251, + 260, 260, 0, 260, 257, 0, 0, 0, 0, 0, + 0, 251, 251, 0, 251, 0, 192, 0, 0, 0, 0, 257, 194, 195, 196, 197, 198, 199, 200, 201, - 14, 0, 0, 192, 0, 257, 0, 203, 204, 194, + 14, 0, 0, 192, 0, 260, 0, 203, 204, 194, 195, 196, 197, 198, 199, 200, 201, 14, 0, 0, 1, 0, 0, 0, 203, 204, 4, 0, 0, 0, - 257, 0, 5, 0, 0, 257, 0, 0, 0, 7, - 8, 9, 192, 11, 12, 0, 248, 13, 194, 195, + 257, 0, 5, 0, 0, 260, 0, 0, 0, 7, + 8, 9, 192, 11, 12, 0, 251, 13, 194, 195, 196, 197, 198, 199, 200, 201, 14, 0, 0, 0, - 0, 0, 0, 203, 204, 74, 74, 0, 74, 74, - 74, 74, 74, 74, 74, 74, 0, 0, 0, 1, - 2, 243, 0, 0, 3, 4, 0, 74, 0, 0, - 74, 5, 0, 0, 0, 0, 6, 0, 7, 8, + 0, 0, 0, 203, 204, 76, 76, 0, 76, 76, + 76, 76, 76, 76, 76, 76, 0, 0, 0, 1, + 2, 246, 0, 0, 3, 4, 0, 76, 0, 0, + 76, 5, 0, 0, 0, 0, 6, 0, 7, 8, 9, 10, 11, 12, 0, 0, 13, 0, 0, 0, - 243, 243, 243, 243, 243, 243, 243, 243, 0, 74, - 236, 236, 74, 14, 236, 236, 236, 236, 236, 236, - 236, 0, 0, 0, 1, 0, 0, 0, 0, 0, - 48, 0, 236, 236, 0, 236, 5, 0, 0, 0, - 0, 74, 74, 7, 8, 9, 0, 0, 49, 0, - 0, 13, 0, 0, 211, 211, 0, 0, 211, 211, - 211, 211, 211, 211, 211, 0, 0, 236, 0, 0, - 0, 0, 1, 0, 257, 0, 211, 211, 4, 211, - 0, 0, 0, 0, 5, 248, 0, 0, 0, 0, + 246, 246, 246, 246, 246, 246, 246, 246, 0, 76, + 239, 239, 76, 14, 239, 239, 239, 239, 239, 239, + 239, 0, 0, 0, 1, 0, 0, 0, 0, 0, + 48, 0, 239, 239, 0, 239, 5, 0, 0, 0, + 0, 76, 76, 7, 8, 9, 0, 0, 49, 0, + 0, 13, 0, 0, 214, 214, 0, 0, 214, 214, + 214, 214, 214, 214, 214, 0, 0, 239, 0, 0, + 0, 0, 1, 0, 260, 0, 214, 214, 4, 214, + 0, 0, 0, 0, 5, 251, 0, 0, 0, 0, 0, 7, 8, 9, 0, 0, 12, 0, 0, 13, - 0, 0, 0, 257, 257, 257, 257, 257, 257, 257, - 257, 211, 0, 0, 248, 248, 248, 248, 248, 248, - 248, 248, 200, 200, 0, 0, 200, 200, 200, 200, - 200, 200, 200, 0, 0, 0, 0, 0, 0, 0, - 0, 211, 0, 0, 200, 200, 0, 200, 244, 244, - 0, 0, 244, 244, 244, 244, 244, 0, 244, 0, + 0, 0, 0, 260, 260, 260, 260, 260, 260, 260, + 260, 214, 0, 0, 251, 251, 251, 251, 251, 251, + 251, 251, 203, 203, 0, 0, 203, 203, 203, 203, + 203, 203, 203, 0, 0, 0, 0, 0, 0, 0, + 0, 214, 0, 0, 203, 203, 0, 203, 247, 247, + 0, 0, 247, 247, 247, 247, 247, 0, 247, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 244, 244, 0, 244, 0, 74, 74, 0, 0, 200, - 74, 74, 0, 0, 0, 0, 0, 74, 0, 0, - 0, 74, 74, 0, 74, 74, 74, 74, 74, 74, - 74, 0, 74, 0, 0, 244, 258, 0, 0, 200, - 258, 258, 258, 258, 258, 258, 258, 0, 0, 74, - 74, 74, 74, 74, 74, 74, 74, 74, 258, 258, - 0, 258, 237, 237, 0, 244, 237, 237, 237, 237, - 237, 237, 237, 249, 249, 0, 236, 249, 249, 249, - 249, 249, 249, 249, 237, 237, 0, 237, 0, 0, - 0, 0, 0, 258, 0, 249, 249, 0, 249, 0, - 0, 0, 0, 0, 0, 236, 236, 236, 236, 236, - 236, 236, 236, 0, 0, 0, 0, 0, 0, 237, - 211, 212, 212, 258, 0, 212, 212, 212, 212, 212, - 212, 212, 0, 0, 0, 0, 0, 0, 0, 0, - 134, 0, 0, 212, 212, 0, 212, 0, 0, 211, - 211, 211, 211, 211, 0, 211, 211, 0, 134, 0, - 249, 0, 0, 0, 279, 279, 0, 0, 279, 279, - 0, 279, 0, 279, 279, 268, 268, 0, 212, 268, - 268, 268, 268, 268, 268, 268, 279, 279, 200, 279, - 0, 0, 0, 0, 0, 0, 0, 268, 268, 0, - 268, 0, 0, 0, 0, 0, 0, 0, 212, 0, - 0, 0, 0, 0, 244, 0, 0, 200, 200, 200, - 200, 279, 200, 200, 200, 0, 0, 0, 0, 0, - 269, 269, 268, 0, 269, 269, 269, 269, 269, 269, - 269, 0, 0, 244, 244, 244, 244, 244, 244, 244, - 244, 279, 269, 269, 0, 269, 0, 0, 0, 271, - 271, 0, 268, 271, 271, 271, 271, 271, 271, 271, - 280, 0, 258, 280, 0, 280, 280, 280, 280, 0, - 0, 271, 0, 0, 0, 0, 0, 269, 0, 0, - 0, 280, 280, 0, 280, 0, 0, 0, 237, 0, - 0, 258, 258, 258, 258, 258, 258, 258, 258, 249, - 0, 0, 0, 0, 272, 272, 271, 269, 272, 272, - 272, 272, 272, 272, 272, 0, 280, 237, 237, 237, - 237, 237, 237, 237, 237, 0, 272, 0, 249, 249, - 249, 249, 249, 249, 249, 249, 271, 0, 0, 0, - 0, 0, 0, 134, 134, 0, 280, 212, 134, 134, - 0, 0, 0, 0, 0, 134, 0, 0, 0, 0, - 134, 272, 134, 134, 134, 134, 134, 134, 0, 0, - 134, 0, 0, 0, 165, 0, 212, 212, 212, 212, - 212, 0, 212, 212, 0, 0, 0, 134, 0, 281, - 279, 272, 281, 165, 281, 281, 281, 281, 0, 0, - 0, 268, 0, 0, 0, 0, 0, 0, 0, 0, - 281, 281, 0, 281, 0, 0, 0, 0, 0, 279, - 279, 279, 279, 279, 279, 279, 279, 0, 0, 0, - 0, 268, 268, 0, 268, 268, 268, 268, 0, 0, - 0, 0, 0, 0, 0, 281, 282, 0, 0, 282, - 0, 282, 282, 282, 282, 0, 269, 165, 0, 165, - 0, 0, 0, 0, 0, 0, 89, 282, 282, 0, - 282, 0, 0, 0, 0, 281, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 269, 269, 0, 269, - 269, 269, 269, 0, 0, 280, 0, 0, 0, 0, - 0, 0, 282, 207, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 271, 0, 0, 271, 271, 271, - 271, 271, 205, 0, 280, 280, 280, 280, 280, 280, - 280, 280, 282, 254, 254, 0, 0, 254, 254, 254, - 254, 254, 254, 254, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 254, 254, 0, 254, 0, - 0, 207, 0, 0, 0, 0, 0, 0, 0, 272, - 0, 0, 272, 272, 272, 272, 272, 0, 0, 0, + 247, 247, 0, 247, 0, 76, 76, 0, 0, 203, + 76, 76, 0, 0, 0, 0, 0, 76, 0, 0, + 0, 76, 76, 0, 76, 76, 76, 76, 76, 76, + 76, 0, 76, 0, 0, 247, 261, 0, 0, 203, + 261, 261, 261, 261, 261, 261, 261, 0, 0, 76, + 76, 76, 76, 76, 76, 76, 76, 76, 261, 261, + 0, 261, 240, 240, 0, 247, 240, 240, 240, 240, + 240, 240, 240, 252, 252, 0, 239, 252, 252, 252, + 252, 252, 252, 252, 240, 240, 0, 240, 0, 0, + 0, 0, 0, 261, 0, 252, 252, 0, 252, 0, + 0, 0, 0, 0, 0, 239, 239, 239, 239, 239, + 239, 239, 239, 0, 0, 0, 0, 0, 0, 240, + 214, 215, 215, 261, 0, 215, 215, 215, 215, 215, + 215, 215, 0, 0, 0, 0, 0, 0, 0, 0, + 136, 0, 0, 215, 215, 0, 215, 0, 0, 214, + 214, 214, 214, 214, 0, 214, 214, 0, 136, 0, + 252, 0, 0, 0, 282, 282, 0, 0, 282, 282, + 0, 282, 0, 282, 282, 271, 271, 0, 215, 271, + 271, 271, 271, 271, 271, 271, 282, 282, 203, 282, + 0, 0, 0, 0, 0, 0, 0, 271, 271, 0, + 271, 0, 0, 0, 0, 0, 0, 0, 215, 0, + 0, 0, 0, 0, 247, 0, 0, 203, 203, 203, + 203, 282, 203, 203, 203, 0, 0, 0, 0, 0, + 272, 272, 271, 0, 272, 272, 272, 272, 272, 272, + 272, 0, 0, 247, 247, 247, 247, 247, 247, 247, + 247, 282, 272, 272, 0, 272, 0, 0, 0, 274, + 274, 0, 271, 274, 274, 274, 274, 274, 274, 274, + 283, 0, 261, 283, 0, 283, 283, 283, 283, 0, + 0, 274, 0, 0, 0, 0, 0, 272, 0, 0, + 0, 283, 283, 0, 283, 0, 0, 0, 240, 0, + 0, 261, 261, 261, 261, 261, 261, 261, 261, 252, + 0, 0, 0, 0, 275, 275, 274, 272, 275, 275, + 275, 275, 275, 275, 275, 0, 283, 240, 240, 240, + 240, 240, 240, 240, 240, 0, 275, 0, 252, 252, + 252, 252, 252, 252, 252, 252, 274, 0, 0, 0, + 0, 0, 0, 136, 136, 0, 283, 215, 136, 136, + 0, 0, 0, 0, 0, 136, 0, 0, 0, 0, + 136, 275, 136, 136, 136, 136, 136, 136, 0, 0, + 136, 0, 0, 0, 168, 0, 215, 215, 215, 215, + 215, 0, 215, 215, 0, 0, 0, 136, 0, 284, + 282, 275, 284, 168, 284, 284, 284, 284, 0, 0, + 0, 271, 0, 0, 0, 0, 0, 0, 0, 0, + 284, 284, 0, 284, 0, 0, 0, 0, 0, 282, + 282, 282, 282, 282, 282, 282, 282, 0, 0, 0, + 0, 271, 271, 0, 271, 271, 271, 271, 0, 0, + 0, 0, 0, 0, 0, 284, 285, 0, 0, 285, + 0, 285, 285, 285, 285, 0, 272, 168, 0, 168, + 0, 0, 0, 0, 0, 0, 89, 285, 285, 0, + 285, 0, 0, 0, 0, 284, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 272, 272, 0, 272, + 272, 272, 272, 0, 0, 283, 0, 0, 0, 0, + 0, 0, 285, 207, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 274, 0, 0, 274, 274, 274, + 274, 274, 205, 0, 283, 283, 283, 283, 283, 283, + 283, 283, 285, 257, 257, 0, 0, 257, 257, 257, + 257, 257, 257, 257, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 257, 257, 0, 257, 0, + 0, 207, 0, 0, 0, 0, 0, 0, 0, 275, + 0, 0, 275, 275, 275, 275, 275, 0, 0, 0, 205, 0, 0, 0, 0, 0, 140, 0, 206, 0, - 254, 0, 165, 0, 0, 0, 165, 0, 0, 0, - 0, 197, 0, 0, 0, 165, 165, 0, 165, 0, - 0, 0, 0, 0, 0, 0, 0, 165, 207, 0, - 254, 165, 0, 0, 281, 0, 165, 165, 165, 165, - 165, 165, 165, 165, 165, 165, 0, 205, 0, 0, - 0, 0, 165, 165, 140, 0, 299, 0, 0, 0, - 0, 0, 0, 281, 281, 281, 281, 281, 281, 281, - 281, 0, 0, 1, 2, 0, 207, 0, 3, 0, + 257, 0, 168, 0, 0, 0, 168, 0, 0, 0, + 0, 200, 0, 0, 0, 168, 168, 0, 168, 0, + 0, 0, 0, 0, 0, 0, 0, 168, 207, 0, + 257, 168, 0, 0, 284, 0, 168, 168, 168, 168, + 168, 168, 168, 168, 168, 168, 0, 205, 0, 0, + 0, 0, 168, 168, 140, 0, 299, 0, 0, 0, + 0, 0, 0, 284, 284, 284, 284, 284, 284, 284, + 284, 0, 0, 1, 2, 0, 207, 0, 3, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, - 6, 282, 7, 8, 9, 205, 0, 0, 0, 0, + 6, 285, 7, 8, 9, 205, 0, 0, 0, 0, 13, 0, 0, 0, 0, 0, 0, 165, 0, 0, 0, 140, 0, 317, 0, 0, 0, 118, 0, 0, - 282, 282, 282, 282, 282, 282, 282, 282, 0, 0, + 285, 285, 285, 285, 285, 285, 285, 285, 0, 0, 0, 2, 207, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 189, 190, 0, 6, 0, 0, 0, 205, 0, 0, 0, 0, 191, 0, 0, 140, 192, 370, 0, 0, 0, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 0, 0, 0, 0, 254, + 198, 199, 200, 201, 202, 0, 0, 0, 0, 257, 207, 203, 204, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 0, 0, 205, - 0, 0, 189, 190, 0, 6, 0, 0, 254, 254, - 254, 254, 254, 254, 191, 140, 0, 371, 298, 207, + 0, 0, 189, 190, 0, 6, 0, 0, 257, 257, + 257, 257, 257, 257, 191, 140, 0, 371, 298, 207, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 0, 0, 0, 0, 0, 205, 203, 204, 0, 0, 0, 0, 0, 2, 0, 0, 0, @@ -3689,8 +3730,8 @@ case 286: 0, 0, 0, 0, 2, 0, 203, 204, 3, 0, 0, 0, 140, 0, 0, 0, 0, 189, 190, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 191, - 136, 0, 0, 192, 0, 0, 0, 0, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 136, 0, + 138, 0, 0, 192, 0, 0, 0, 0, 193, 194, + 195, 196, 197, 198, 199, 200, 201, 202, 138, 0, 0, 140, 0, 0, 203, 204, 0, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 189, 190, 89, 6, 0, 0, 0, @@ -3710,11 +3751,11 @@ case 286: 0, 191, 0, 0, 0, 192, 0, 0, 0, 0, 193, 194, 195, 196, 197, 198, 199, 200, 201, 14, 0, 175, 0, 0, 0, 0, 203, 204, 0, 0, - 0, 0, 0, 136, 136, 0, 0, 0, 136, 136, - 0, 0, 0, 0, 0, 136, 0, 0, 0, 0, - 136, 0, 136, 136, 136, 136, 136, 136, 0, 0, - 136, 0, 1, 2, 0, 0, 0, 3, 0, 0, - 0, 0, 0, 0, 5, 0, 0, 136, 0, 6, + 0, 0, 0, 138, 138, 0, 0, 0, 138, 138, + 0, 0, 0, 0, 0, 138, 0, 0, 0, 0, + 138, 0, 138, 138, 138, 138, 138, 138, 0, 0, + 138, 0, 1, 2, 0, 0, 0, 3, 0, 0, + 0, 0, 0, 0, 5, 0, 0, 138, 0, 6, 0, 7, 8, 9, 0, 0, 0, 0, 0, 86, 0, 0, 1, 2, 0, 0, 87, 3, 0, 0, 0, 0, 0, 0, 5, 0, 88, 0, 0, 6, @@ -3806,12 +3847,12 @@ class yyCheck0 { 450, 451, 0, 453, 40, 40, 267, 59, 458, 420, 421, 41, 462, 41, 464, 465, 41, 41, 41, 267, 431, 0, 0, 473, 474, 475, 0, 0, 26, 479, - 59, 301, 59, 59, 47, 120, 48, 96, 372, 450, - 451, 49, 453, 41, 30, 33, 258, 458, 334, 47, - 358, 462, 40, 464, 465, 43, 75, 45, 76, 57, - 249, 250, 473, 474, 475, 359, 361, 360, 479, 67, - 362, 138, 332, 332, 65, -1, 169, -1, -1, -1, - -1, -1, -1, 105, 33, -1, 420, 421, -1, -1, + 59, 301, 59, 47, 120, 48, 30, 49, 372, 450, + 451, 75, 453, 41, 76, 33, 96, 458, 258, 47, + 334, 462, 40, 464, 465, 43, 358, 45, 359, 57, + 249, 250, 473, 474, 475, 360, 332, 361, 479, 67, + 362, 138, 332, 65, 105, -1, 169, -1, -1, -1, + -1, -1, -1, -1, 33, -1, 420, 421, -1, -1, -1, 40, 41, 91, 43, -1, 45, 431, 96, -1, -1, 33, 291, -1, -1, -1, 295, 105, 40, -1, -1, 43, -1, 45, -1, -1, 450, 451, -1, 453, diff --git a/src/mycompiler/myparser/JavaParser.jay b/src/mycompiler/myparser/JavaParser.jay index 042059fd..16b86385 100755 --- a/src/mycompiler/myparser/JavaParser.jay +++ b/src/mycompiler/myparser/JavaParser.jay @@ -226,6 +226,7 @@ public Vector testPair = new Vector(); %type variabledeclarator %type variabledeclaratorid %type simplename +%type typename %type qualifiedname %type importqualifiedname %type importdeclaration @@ -786,6 +787,19 @@ classbodydeclaration : classmemberdeclaration $$=$1; } //*/ + +typename : simplename + { + $$=$1; + } + | IDENTIFIER '.' typename + { + UsedId UI = new UsedId($1.getOffset()); + UI.set_Name( $1.getLexem() + "." + $3 ); + UI.setOffset($1.getOffset());//hinzugef�gt hoth: 07.04.2006 + $$ = UI; + } + classorinterfacetype : simplename parameter { if ($2 != null) { @@ -1240,6 +1254,12 @@ type : primitivetype { $$=$1; } + /* + | referencelongtype + { + $$=$1; + } + */ |referencetype '[' ']' { $1.setArray(true); @@ -1357,6 +1377,28 @@ primitivetype :BOOLEAN $$=$1; } +referencelongtype : typename parameter + { + if ($2 != null) { + //$1.set_ParaList($2.get_ParaList()); + $1.set_ParaList($2);//Änderung von Andreas Stadelmeier. Type statt GenericVarType + /* otth: originale (also diese) Parameterliste retten */ + //((UsedId)$1).vParaOrg = new Vector( $2.get_ParaList() ); + } + UsedId uid = $1; + RefType RT = new RefType(uid.getOffset()); + + RT.set_ParaList(uid.get_RealParaList()); + RT.setName(uid.getQualifiedName()); + + + //PL 05-07-30 eingefuegt containedTypes ANFANG + containedTypes.addElement(RT); + //PL 05-07-30 eingefuegt containedTypes ENDE + + $$=RT; + } + referencetype :classorinterfacetype { org.apache.log4j.Logger.getLogger("parser").debug("T->Parser->referenctype: " + $1); @@ -1375,6 +1417,8 @@ referencetype :classorinterfacetype $$=RT; } + + /* 05-07-28 PL Parameterdeklarationen zur classorinterfacetype verschoben */ variabledeclarator : variabledeclaratorid