// Technische Universitaet Muenchen
// Fakultaet fuer Informatik
-package iotpolicy.parser;
import java_cup.runtime.Symbol;
import java_cup.runtime.ComplexSymbolFactory;
private static final int [] ZZ_ACTION = zzUnpackAction();
private static final String ZZ_ACTION_PACKED_0 =
- "\2\0\1\1\1\2\2\3\1\4\16\2\1\5\1\6"+
+ "\2\0\1\1\1\2\2\3\1\4\17\2\1\5\1\6"+
"\1\7\1\10\1\11\1\12\1\13\1\14\1\15\1\16"+
- "\1\17\1\20\1\0\10\2\1\21\11\2\1\22\1\23"+
- "\1\24\1\25\1\26\25\2\1\27\1\30\3\2\1\31"+
- "\2\2\1\32\2\2\1\33\2\2\1\34\2\2\1\35"+
- "\7\2\1\36\2\2\1\37\2\2\1\40\1\41\1\42"+
- "\2\2\1\43\3\2\1\44\2\2\1\45\3\2\1\46"+
- "\1\47";
+ "\1\17\1\20\1\0\11\2\1\21\11\2\1\22\1\23"+
+ "\1\24\1\25\1\26\27\2\1\27\1\30\1\31\3\2"+
+ "\1\32\2\2\1\33\2\2\1\34\3\2\1\35\2\2"+
+ "\1\36\7\2\1\37\1\40\2\2\1\41\2\2\1\42"+
+ "\1\43\1\44\2\2\1\45\3\2\1\46\2\2\1\47"+
+ "\3\2\1\50\1\51";
private static int [] zzUnpackAction() {
- int [] result = new int[127];
+ int [] result = new int[134];
int offset = 0;
offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result);
return result;
private static final String ZZ_ROWMAP_PACKED_0 =
"\0\0\0\51\0\122\0\173\0\244\0\122\0\122\0\315"+
"\0\366\0\u011f\0\u0148\0\u0171\0\u019a\0\u01c3\0\u01ec\0\u0215"+
- "\0\u023e\0\u0267\0\u0290\0\u02b9\0\u02e2\0\122\0\122\0\122"+
- "\0\122\0\122\0\122\0\122\0\122\0\122\0\u030b\0\122"+
- "\0\u0334\0\u035d\0\u0386\0\u03af\0\u03d8\0\u0401\0\u042a\0\u0453"+
- "\0\u047c\0\u04a5\0\173\0\u04ce\0\u04f7\0\u0520\0\u0549\0\u0572"+
- "\0\u059b\0\u05c4\0\u05ed\0\u0616\0\122\0\122\0\122\0\122"+
- "\0\u063f\0\u0668\0\u0691\0\u06ba\0\u06e3\0\u070c\0\u0735\0\u075e"+
+ "\0\u023e\0\u0267\0\u0290\0\u02b9\0\u02e2\0\u030b\0\122\0\122"+
+ "\0\122\0\122\0\122\0\122\0\122\0\122\0\122\0\u0334"+
+ "\0\122\0\u035d\0\u0386\0\u03af\0\u03d8\0\u0401\0\u042a\0\u0453"+
+ "\0\u047c\0\u04a5\0\u04ce\0\u04f7\0\173\0\u0520\0\u0549\0\u0572"+
+ "\0\u059b\0\u05c4\0\u05ed\0\u0616\0\u063f\0\u0668\0\122\0\122"+
+ "\0\122\0\122\0\u0691\0\u06ba\0\u06e3\0\u070c\0\u0735\0\u075e"+
"\0\u0787\0\u07b0\0\u07d9\0\u0802\0\u082b\0\u0854\0\u087d\0\u08a6"+
- "\0\u08cf\0\u08f8\0\u0921\0\u094a\0\u0973\0\u099c\0\173\0\173"+
- "\0\u09c5\0\u09ee\0\u0a17\0\173\0\u0a40\0\u0a69\0\173\0\u0a92"+
- "\0\u0abb\0\173\0\u0ae4\0\u0b0d\0\173\0\u0b36\0\u0b5f\0\173"+
- "\0\u0b88\0\u0bb1\0\u0bda\0\u0c03\0\u0c2c\0\u0c55\0\u0c7e\0\173"+
- "\0\u0ca7\0\u0cd0\0\173\0\u0cf9\0\u0d22\0\173\0\173\0\173"+
- "\0\u0d4b\0\u0d74\0\173\0\u0d9d\0\u0dc6\0\u0def\0\173\0\u0e18"+
- "\0\u0e41\0\173\0\u0e6a\0\u0e93\0\u0ebc\0\173\0\173";
+ "\0\u08cf\0\u08f8\0\u0921\0\u094a\0\u0973\0\u099c\0\u09c5\0\u09ee"+
+ "\0\u0a17\0\u0a40\0\173\0\173\0\173\0\u0a69\0\u0a92\0\u0abb"+
+ "\0\173\0\u0ae4\0\u0b0d\0\173\0\u0b36\0\u0b5f\0\173\0\u0b88"+
+ "\0\u0bb1\0\u0bda\0\173\0\u0c03\0\u0c2c\0\173\0\u0c55\0\u0c7e"+
+ "\0\u0ca7\0\u0cd0\0\u0cf9\0\u0d22\0\u0d4b\0\173\0\173\0\u0d74"+
+ "\0\u0d9d\0\173\0\u0dc6\0\u0def\0\173\0\173\0\173\0\u0e18"+
+ "\0\u0e41\0\173\0\u0e6a\0\u0e93\0\u0ebc\0\173\0\u0ee5\0\u0f0e"+
+ "\0\173\0\u0f37\0\u0f60\0\u0f89\0\173\0\173";
private static int [] zzUnpackRowMap() {
- int [] result = new int[127];
+ int [] result = new int[134];
int offset = 0;
offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result);
return result;
private static final String ZZ_TRANS_PACKED_0 =
"\1\3\1\4\1\3\1\5\1\6\1\7\1\6\1\10"+
- "\2\4\1\11\2\4\1\12\1\13\2\4\1\14\1\4"+
- "\1\15\1\16\1\17\1\4\1\20\1\21\1\22\1\23"+
- "\1\24\1\4\1\25\1\26\1\27\1\30\1\31\1\32"+
- "\1\33\1\34\1\35\1\36\1\3\1\0\3\37\1\0"+
- "\1\3\31\37\1\40\10\37\1\41\1\37\52\0\2\4"+
- "\4\0\27\4\17\0\1\42\45\0\2\4\4\0\1\4"+
- "\1\43\25\4\14\0\2\4\4\0\2\4\1\44\1\4"+
- "\1\45\22\4\14\0\2\4\4\0\11\4\1\46\15\4"+
- "\14\0\2\4\4\0\5\4\1\47\2\4\1\50\16\4"+
- "\14\0\2\4\4\0\5\4\1\51\21\4\14\0\2\4"+
- "\4\0\12\4\1\52\14\4\14\0\2\4\4\0\3\4"+
- "\1\53\23\4\14\0\2\4\4\0\5\4\1\54\3\4"+
- "\1\55\15\4\14\0\2\4\4\0\4\4\1\56\10\4"+
- "\1\57\11\4\14\0\2\4\4\0\2\4\1\60\24\4"+
- "\14\0\2\4\4\0\5\4\1\61\21\4\14\0\2\4"+
- "\4\0\17\4\1\62\7\4\14\0\2\4\4\0\11\4"+
- "\1\63\15\4\14\0\2\4\4\0\1\64\26\4\13\0"+
- "\3\37\2\0\31\37\1\0\10\37\1\0\1\37\10\0"+
- "\1\65\1\66\3\0\1\67\20\0\1\70\17\0\1\6"+
- "\44\0\2\4\4\0\2\4\1\71\24\4\14\0\2\4"+
- "\4\0\6\4\1\72\20\4\14\0\2\4\4\0\5\4"+
- "\1\73\21\4\14\0\2\4\4\0\25\4\1\74\1\4"+
- "\14\0\2\4\4\0\5\4\1\75\21\4\14\0\2\4"+
- "\4\0\2\4\1\76\24\4\14\0\2\4\4\0\1\4"+
- "\1\77\25\4\14\0\2\4\4\0\5\4\1\100\21\4"+
- "\14\0\2\4\4\0\17\4\1\101\7\4\14\0\2\4"+
- "\4\0\3\4\1\102\23\4\14\0\2\4\4\0\15\4"+
- "\1\103\11\4\14\0\2\4\4\0\23\4\1\104\3\4"+
- "\14\0\2\4\4\0\6\4\1\105\20\4\14\0\2\4"+
- "\4\0\1\106\26\4\14\0\2\4\4\0\7\4\1\107"+
- "\17\4\14\0\2\4\4\0\2\4\1\110\24\4\14\0"+
- "\2\4\4\0\2\4\1\111\24\4\14\0\2\4\4\0"+
- "\11\4\1\112\15\4\14\0\2\4\4\0\1\113\26\4"+
- "\14\0\2\4\4\0\6\4\1\114\20\4\14\0\2\4"+
- "\4\0\17\4\1\115\7\4\14\0\2\4\4\0\12\4"+
- "\1\116\14\4\14\0\2\4\4\0\11\4\1\117\15\4"+
- "\14\0\2\4\4\0\13\4\1\120\13\4\14\0\2\4"+
- "\4\0\15\4\1\121\11\4\14\0\2\4\4\0\7\4"+
- "\1\122\17\4\14\0\2\4\4\0\20\4\1\123\6\4"+
- "\14\0\2\4\4\0\6\4\1\124\20\4\14\0\2\4"+
- "\4\0\15\4\1\125\11\4\14\0\2\4\4\0\1\126"+
- "\26\4\14\0\2\4\4\0\16\4\1\127\10\4\14\0"+
- "\2\4\4\0\12\4\1\130\14\4\14\0\2\4\4\0"+
- "\4\4\1\131\22\4\14\0\2\4\4\0\4\4\1\132"+
- "\22\4\14\0\2\4\4\0\6\4\1\133\20\4\14\0"+
- "\2\4\4\0\1\4\1\134\25\4\14\0\2\4\4\0"+
- "\2\4\1\135\24\4\14\0\2\4\4\0\1\136\26\4"+
- "\14\0\2\4\4\0\11\4\1\137\15\4\14\0\2\4"+
- "\4\0\2\4\1\140\24\4\14\0\2\4\4\0\12\4"+
- "\1\141\14\4\14\0\2\4\4\0\6\4\1\142\20\4"+
- "\14\0\2\4\4\0\7\4\1\143\17\4\14\0\2\4"+
- "\4\0\1\4\1\144\25\4\14\0\2\4\4\0\1\145"+
- "\26\4\14\0\2\4\4\0\5\4\1\146\21\4\14\0"+
- "\2\4\4\0\14\4\1\147\12\4\14\0\2\4\4\0"+
- "\13\4\1\150\13\4\14\0\2\4\4\0\6\4\1\151"+
- "\20\4\14\0\2\4\4\0\15\4\1\152\11\4\14\0"+
- "\2\4\4\0\11\4\1\153\15\4\14\0\2\4\4\0"+
- "\1\154\26\4\14\0\2\4\4\0\1\155\26\4\14\0"+
- "\2\4\4\0\13\4\1\156\13\4\14\0\2\4\4\0"+
- "\20\4\1\157\6\4\14\0\2\4\4\0\16\4\1\160"+
- "\10\4\14\0\2\4\4\0\15\4\1\161\11\4\14\0"+
- "\2\4\4\0\11\4\1\162\15\4\14\0\2\4\4\0"+
- "\1\4\1\163\25\4\14\0\2\4\4\0\23\4\1\164"+
- "\3\4\14\0\2\4\4\0\12\4\1\165\14\4\14\0"+
- "\2\4\4\0\20\4\1\166\6\4\14\0\2\4\4\0"+
- "\3\4\1\167\23\4\14\0\2\4\4\0\2\4\1\170"+
- "\24\4\14\0\2\4\4\0\1\171\26\4\14\0\2\4"+
- "\4\0\11\4\1\172\15\4\14\0\2\4\4\0\1\173"+
- "\26\4\14\0\2\4\4\0\2\4\1\174\24\4\14\0"+
- "\2\4\4\0\5\4\1\175\21\4\14\0\2\4\4\0"+
- "\10\4\1\176\16\4\14\0\2\4\4\0\1\4\1\177"+
- "\25\4\13\0";
+ "\2\4\1\11\2\4\1\12\1\13\1\4\1\14\1\15"+
+ "\1\4\1\16\1\17\1\20\1\4\1\21\1\22\1\23"+
+ "\1\24\1\25\1\4\1\26\1\27\1\30\1\31\1\32"+
+ "\1\33\1\34\1\35\1\36\1\37\1\3\1\0\3\40"+
+ "\1\0\1\3\31\40\1\41\10\40\1\42\1\40\52\0"+
+ "\2\4\4\0\27\4\17\0\1\43\45\0\2\4\4\0"+
+ "\1\4\1\44\25\4\14\0\2\4\4\0\2\4\1\45"+
+ "\1\4\1\46\22\4\14\0\2\4\4\0\11\4\1\47"+
+ "\15\4\14\0\2\4\4\0\5\4\1\50\2\4\1\51"+
+ "\16\4\14\0\2\4\4\0\1\4\1\52\25\4\14\0"+
+ "\2\4\4\0\5\4\1\53\21\4\14\0\2\4\4\0"+
+ "\12\4\1\54\14\4\14\0\2\4\4\0\3\4\1\55"+
+ "\23\4\14\0\2\4\4\0\5\4\1\56\3\4\1\57"+
+ "\15\4\14\0\2\4\4\0\4\4\1\60\10\4\1\61"+
+ "\11\4\14\0\2\4\4\0\2\4\1\62\24\4\14\0"+
+ "\2\4\4\0\5\4\1\63\21\4\14\0\2\4\4\0"+
+ "\17\4\1\64\7\4\14\0\2\4\4\0\11\4\1\65"+
+ "\15\4\14\0\2\4\4\0\1\66\26\4\13\0\3\40"+
+ "\2\0\31\40\1\0\10\40\1\0\1\40\10\0\1\67"+
+ "\1\70\3\0\1\71\20\0\1\72\17\0\1\6\44\0"+
+ "\2\4\4\0\2\4\1\73\24\4\14\0\2\4\4\0"+
+ "\6\4\1\74\20\4\14\0\2\4\4\0\5\4\1\75"+
+ "\21\4\14\0\2\4\4\0\25\4\1\76\1\4\14\0"+
+ "\2\4\4\0\5\4\1\77\21\4\14\0\2\4\4\0"+
+ "\2\4\1\100\24\4\14\0\2\4\4\0\17\4\1\101"+
+ "\7\4\14\0\2\4\4\0\1\4\1\102\25\4\14\0"+
+ "\2\4\4\0\5\4\1\103\21\4\14\0\2\4\4\0"+
+ "\17\4\1\104\7\4\14\0\2\4\4\0\3\4\1\105"+
+ "\23\4\14\0\2\4\4\0\15\4\1\106\11\4\14\0"+
+ "\2\4\4\0\23\4\1\107\3\4\14\0\2\4\4\0"+
+ "\6\4\1\110\20\4\14\0\2\4\4\0\1\111\26\4"+
+ "\14\0\2\4\4\0\7\4\1\112\17\4\14\0\2\4"+
+ "\4\0\2\4\1\113\24\4\14\0\2\4\4\0\2\4"+
+ "\1\114\24\4\14\0\2\4\4\0\11\4\1\115\15\4"+
+ "\14\0\2\4\4\0\1\116\16\4\1\117\7\4\14\0"+
+ "\2\4\4\0\6\4\1\120\20\4\14\0\2\4\4\0"+
+ "\17\4\1\121\7\4\14\0\2\4\4\0\12\4\1\122"+
+ "\14\4\14\0\2\4\4\0\11\4\1\123\15\4\14\0"+
+ "\2\4\4\0\24\4\1\124\2\4\14\0\2\4\4\0"+
+ "\13\4\1\125\13\4\14\0\2\4\4\0\15\4\1\126"+
+ "\11\4\14\0\2\4\4\0\7\4\1\127\17\4\14\0"+
+ "\2\4\4\0\20\4\1\130\6\4\14\0\2\4\4\0"+
+ "\6\4\1\131\20\4\14\0\2\4\4\0\15\4\1\132"+
+ "\11\4\14\0\2\4\4\0\1\133\26\4\14\0\2\4"+
+ "\4\0\16\4\1\134\10\4\14\0\2\4\4\0\12\4"+
+ "\1\135\14\4\14\0\2\4\4\0\4\4\1\136\22\4"+
+ "\14\0\2\4\4\0\4\4\1\137\22\4\14\0\2\4"+
+ "\4\0\6\4\1\140\20\4\14\0\2\4\4\0\1\4"+
+ "\1\141\25\4\14\0\2\4\4\0\20\4\1\142\6\4"+
+ "\14\0\2\4\4\0\2\4\1\143\24\4\14\0\2\4"+
+ "\4\0\1\144\26\4\14\0\2\4\4\0\11\4\1\145"+
+ "\15\4\14\0\2\4\4\0\2\4\1\146\24\4\14\0"+
+ "\2\4\4\0\12\4\1\147\14\4\14\0\2\4\4\0"+
+ "\6\4\1\150\20\4\14\0\2\4\4\0\7\4\1\151"+
+ "\17\4\14\0\2\4\4\0\1\4\1\152\25\4\14\0"+
+ "\2\4\4\0\1\153\26\4\14\0\2\4\4\0\5\4"+
+ "\1\154\21\4\14\0\2\4\4\0\14\4\1\155\12\4"+
+ "\14\0\2\4\4\0\13\4\1\156\13\4\14\0\2\4"+
+ "\4\0\2\4\1\157\24\4\14\0\2\4\4\0\6\4"+
+ "\1\160\20\4\14\0\2\4\4\0\15\4\1\161\11\4"+
+ "\14\0\2\4\4\0\11\4\1\162\15\4\14\0\2\4"+
+ "\4\0\1\163\26\4\14\0\2\4\4\0\1\164\26\4"+
+ "\14\0\2\4\4\0\13\4\1\165\13\4\14\0\2\4"+
+ "\4\0\20\4\1\166\6\4\14\0\2\4\4\0\16\4"+
+ "\1\167\10\4\14\0\2\4\4\0\15\4\1\170\11\4"+
+ "\14\0\2\4\4\0\11\4\1\171\15\4\14\0\2\4"+
+ "\4\0\1\4\1\172\25\4\14\0\2\4\4\0\23\4"+
+ "\1\173\3\4\14\0\2\4\4\0\12\4\1\174\14\4"+
+ "\14\0\2\4\4\0\20\4\1\175\6\4\14\0\2\4"+
+ "\4\0\3\4\1\176\23\4\14\0\2\4\4\0\2\4"+
+ "\1\177\24\4\14\0\2\4\4\0\1\200\26\4\14\0"+
+ "\2\4\4\0\11\4\1\201\15\4\14\0\2\4\4\0"+
+ "\1\202\26\4\14\0\2\4\4\0\2\4\1\203\24\4"+
+ "\14\0\2\4\4\0\5\4\1\204\21\4\14\0\2\4"+
+ "\4\0\10\4\1\205\16\4\14\0\2\4\4\0\1\4"+
+ "\1\206\25\4\13\0";
private static int [] zzUnpackTrans() {
- int [] result = new int[3813];
+ int [] result = new int[4018];
int offset = 0;
offset = zzUnpackTrans(ZZ_TRANS_PACKED_0, offset, result);
return result;
private static final int [] ZZ_ATTRIBUTE = zzUnpackAttribute();
private static final String ZZ_ATTRIBUTE_PACKED_0 =
- "\2\0\1\11\2\1\2\11\16\1\11\11\1\1\1\11"+
- "\1\1\1\0\22\1\4\11\107\1";
+ "\2\0\1\11\2\1\2\11\17\1\11\11\1\1\1\11"+
+ "\1\1\1\0\23\1\4\11\114\1";
private static int [] zzUnpackAttribute() {
- int [] result = new int[127];
+ int [] result = new int[134];
int offset = 0;
offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result);
return result;
{ /* throw new Error("Illegal character <"+ yytext()+">");*/
error("Illegal character <"+ yytext()+">");
}
- case 40: break;
+ case 42: break;
case 2:
{ return symbol("Identifier",IDENT, yytext());
}
- case 41: break;
+ case 43: break;
case 3:
{ /* ignore */
}
- case 42: break;
+ case 44: break;
case 4:
{ return symbol("semicolon",SEMICOLON);
}
- case 43: break;
+ case 45: break;
case 5:
{ string.setLength(0); yybegin(STRING);
}
- case 44: break;
+ case 46: break;
case 6:
{ return symbol("comma",COMMA);
}
- case 45: break;
+ case 47: break;
case 7:
{ return symbol("(",LPAR);
}
- case 46: break;
+ case 48: break;
case 8:
{ return symbol(")",RPAR);
}
- case 47: break;
+ case 49: break;
case 9:
{ return symbol("<",LANG);
}
- case 48: break;
+ case 50: break;
case 10:
{ return symbol(">",RANG);
}
- case 49: break;
+ case 51: break;
case 11:
{ return symbol("{",BEGIN);
}
- case 50: break;
+ case 52: break;
case 12:
{ return symbol("}",END);
}
- case 51: break;
+ case 53: break;
case 13:
{ return symbol("=",ASSIGN);
}
- case 52: break;
+ case 54: break;
case 14:
{ string.append( yytext() );
}
- case 53: break;
+ case 55: break;
case 15:
{ yybegin(YYINITIAL);
return symbol("StringConst",STRINGCONST,string.toString(),string.length());
}
- case 54: break;
+ case 56: break;
case 16:
{ string.append('\\');
}
- case 55: break;
+ case 57: break;
case 17:
{ return symbol("as",AS);
}
- case 56: break;
+ case 58: break;
case 18:
{ string.append('\n');
}
- case 57: break;
+ case 59: break;
case 19:
{ string.append('\t');
}
- case 58: break;
+ case 60: break;
case 20:
{ string.append('\r');
}
- case 59: break;
+ case 61: break;
case 21:
{ string.append('\"');
}
- case 60: break;
+ case 62: break;
case 22:
{ return symbol("int",TYPE, "int" );
}
- case 61: break;
+ case 63: break;
case 23:
{ return symbol("byte",TYPE, "byte" );
}
- case 62: break;
+ case 64: break;
case 24:
- { return symbol("long",TYPE, "long" );
+ { return symbol("enum",ENUM);
}
- case 63: break;
+ case 65: break;
case 25:
- { return symbol("char",TYPE, "char" );
+ { return symbol("long",TYPE, "long" );
}
- case 64: break;
+ case 66: break;
case 26:
- { return symbol("void",TYPE, "void" );
+ { return symbol("char",TYPE, "char" );
}
- case 65: break;
+ case 67: break;
case 27:
- { return symbol("with",WITH);
+ { return symbol("void",TYPE, "void" );
}
- case 66: break;
+ case 68: break;
case 28:
- { return symbol("short",TYPE, "short" );
+ { return symbol("with",WITH);
}
- case 67: break;
+ case 69: break;
case 29:
- { return symbol("float",TYPE, "float" );
+ { return symbol("short",TYPE, "short" );
}
- case 68: break;
+ case 70: break;
case 30:
- { return symbol("string",TYPE, "String" );
+ { return symbol("float",TYPE, "float" );
}
- case 69: break;
+ case 71: break;
case 31:
- { return symbol("double",TYPE, "double" );
+ { return symbol("string",TYPE, "String" );
}
- case 70: break;
+ case 72: break;
case 32:
- { return symbol("String",TYPE, "String" );
+ { return symbol("struct",STRUCT);
}
- case 71: break;
+ case 73: break;
case 33:
- { return symbol("public",PUBLIC);
+ { return symbol("double",TYPE, "double" );
}
- case 72: break;
+ case 74: break;
case 34:
- { return symbol("method",METHOD);
+ { return symbol("String",TYPE, "String" );
}
- case 73: break;
+ case 75: break;
case 35:
- { return symbol("boolean",TYPE, "boolean" );
+ { return symbol("public",PUBLIC);
}
- case 74: break;
+ case 76: break;
case 36:
- { return symbol("requires",REQUIRES);
+ { return symbol("method",METHOD);
}
- case 75: break;
+ case 77: break;
case 37:
- { return symbol("interface",INTERFACE);
+ { return symbol("boolean",TYPE, "boolean" );
}
- case 76: break;
+ case 78: break;
case 38:
- { return symbol("capability",CAPABILITY);
+ { return symbol("requires",REQUIRES);
}
- case 77: break;
+ case 79: break;
case 39:
+ { return symbol("interface",INTERFACE);
+ }
+ case 80: break;
+ case 40:
+ { return symbol("capability",CAPABILITY);
+ }
+ case 81: break;
+ case 41:
{ return symbol("description",DESCRIPTION);
}
- case 78: break;
+ case 82: break;
default:
zzScanError(ZZ_NO_MATCH);
}
//----------------------------------------------------
// The following code was generated by CUP v0.11b 20160615 (GIT 4ac7450)
//----------------------------------------------------
-package iotpolicy.parser;
import java_cup.runtime.ComplexSymbolFactory;
import java_cup.runtime.ScannerBuffer;
import javax.xml.transform.stream.*;
import java_cup.runtime.XMLElement;
-import iotpolicy.tree.ParseNode;
-
/** CUP v0.11b 20160615 (GIT 4ac7450) generated parser.
*/
@SuppressWarnings({"rawtypes"})
/** Production table. */
protected static final short _production_table[][] =
unpackFromStrings(new String[] {
- "\000\047\000\002\002\003\000\002\002\004\000\002\002" +
- "\003\000\002\003\011\000\002\004\004\000\002\004\002" +
- "\000\002\005\011\000\002\005\011\000\002\006\004\000" +
- "\002\006\002\000\002\007\005\000\002\007\004\000\002" +
- "\007\005\000\002\007\004\000\002\007\007\000\002\007" +
- "\007\000\002\007\011\000\002\007\011\000\002\007\011" +
- "\000\002\007\011\000\002\007\010\000\002\007\010\000" +
- "\002\007\012\000\002\007\012\000\002\007\012\000\002" +
- "\007\012\000\002\011\004\000\002\011\002\000\002\012" +
- "\007\000\002\013\004\000\002\013\002\000\002\014\006" +
- "\000\002\014\006\000\002\015\004\000\002\015\002\000" +
- "\002\016\012\000\002\017\003\000\002\017\005\000\002" +
- "\017\002" });
+ "\000\054\000\002\002\003\000\002\002\004\000\002\002" +
+ "\003\000\002\002\003\000\002\002\003\000\002\003\011" +
+ "\000\002\004\004\000\002\004\002\000\002\005\011\000" +
+ "\002\005\011\000\002\006\004\000\002\006\002\000\002" +
+ "\007\005\000\002\007\004\000\002\007\005\000\002\007" +
+ "\004\000\002\007\007\000\002\007\007\000\002\007\010" +
+ "\000\002\007\010\000\002\011\004\000\002\011\002\000" +
+ "\002\012\007\000\002\013\004\000\002\013\002\000\002" +
+ "\014\006\000\002\014\006\000\002\015\004\000\002\015" +
+ "\002\000\002\016\012\000\002\017\003\000\002\017\005" +
+ "\000\002\017\002\000\002\020\007\000\002\021\004\000" +
+ "\002\021\002\000\002\022\004\000\002\022\003\000\002" +
+ "\023\007\000\002\024\004\000\002\024\002\000\002\025" +
+ "\005\000\002\025\005\000\002\025\010" });
/** Access to production table. */
public short[][] production_table() {return _production_table;}
/** Parse-action table. */
protected static final short[][] _action_table =
unpackFromStrings(new String[] {
- "\000\127\000\010\002\uffdf\015\006\022\uffdf\001\002\000" +
- "\004\002\001\001\002\000\006\002\uffff\022\117\001\002" +
- "\000\004\016\011\001\002\000\004\002\010\001\002\000" +
- "\004\002\000\001\002\000\004\026\012\001\002\000\004" +
- "\012\013\001\002\000\010\013\ufffc\015\ufffc\017\ufffc\001" +
- "\002\000\010\013\uffe6\015\016\017\uffe6\001\002\000\010" +
- "\013\ufffd\015\ufffd\017\ufffd\001\002\000\006\025\041\026" +
- "\040\001\002\000\006\013\022\017\021\001\002\000\006" +
- "\013\uffe7\017\uffe7\001\002\000\004\026\023\001\002\000" +
- "\004\002\ufffe\001\002\000\004\012\024\001\002\000\010" +
- "\013\uffe3\020\uffe3\021\uffe3\001\002\000\010\013\030\020" +
- "\027\021\031\001\002\000\010\013\uffe4\020\uffe4\021\uffe4" +
- "\001\002\000\004\014\035\001\002\000\006\013\uffe5\017" +
- "\uffe5\001\002\000\004\014\032\001\002\000\004\027\033" +
- "\001\002\000\004\004\034\001\002\000\010\013\uffe1\020" +
- "\uffe1\021\uffe1\001\002\000\004\027\036\001\002\000\004" +
- "\004\037\001\002\000\010\013\uffe2\020\uffe2\021\uffe2\001" +
- "\002\000\004\026\111\001\002\000\004\026\042\001\002" +
- "\000\004\006\043\001\002\000\010\007\ufff8\025\ufff8\026" +
- "\ufff8\001\002\000\010\007\046\025\050\026\045\001\002" +
- "\000\006\010\054\026\055\001\002\000\004\004\053\001" +
- "\002\000\010\007\ufff9\025\ufff9\026\ufff9\001\002\000\004" +
- "\026\051\001\002\000\012\005\052\007\ufff6\025\ufff6\026" +
- "\ufff6\001\002\000\010\007\ufff7\025\ufff7\026\ufff7\001\002" +
- "\000\010\013\ufffb\015\ufffb\017\ufffb\001\002\000\006\025" +
- "\060\026\057\001\002\000\012\005\056\007\ufff4\025\ufff4" +
- "\026\ufff4\001\002\000\010\007\ufff5\025\ufff5\026\ufff5\001" +
- "\002\000\006\005\075\011\076\001\002\000\006\005\061" +
- "\011\062\001\002\000\006\025\066\026\065\001\002\000" +
- "\004\026\063\001\002\000\012\005\064\007\ufff3\025\ufff3" +
- "\026\ufff3\001\002\000\010\007\uffed\025\uffed\026\uffed\001" +
- "\002\000\004\011\072\001\002\000\004\011\067\001\002" +
- "\000\004\026\070\001\002\000\012\005\071\007\ufff1\025" +
- "\ufff1\026\ufff1\001\002\000\010\007\uffeb\025\uffeb\026\uffeb" +
- "\001\002\000\004\026\073\001\002\000\012\005\074\007" +
- "\ufff0\025\ufff0\026\ufff0\001\002\000\010\007\uffea\025\uffea" +
- "\026\uffea\001\002\000\006\025\102\026\101\001\002\000" +
- "\004\026\077\001\002\000\012\005\100\007\ufff2\025\ufff2" +
- "\026\ufff2\001\002\000\010\007\uffec\025\uffec\026\uffec\001" +
- "\002\000\004\011\106\001\002\000\004\011\103\001\002" +
- "\000\004\026\104\001\002\000\012\005\105\007\uffef\025" +
- "\uffef\026\uffef\001\002\000\010\007\uffe9\025\uffe9\026\uffe9" +
- "\001\002\000\004\026\107\001\002\000\012\005\110\007" +
- "\uffee\025\uffee\026\uffee\001\002\000\010\007\uffe8\025\uffe8" +
- "\026\uffe8\001\002\000\004\006\112\001\002\000\010\007" +
- "\ufff8\025\ufff8\026\ufff8\001\002\000\010\007\114\025\050" +
- "\026\045\001\002\000\004\004\115\001\002\000\010\013" +
- "\ufffa\015\ufffa\017\ufffa\001\002\000\006\002\uffe0\022\uffe0" +
- "\001\002\000\004\026\120\001\002\000\004\023\121\001" +
- "\002\000\010\005\uffdb\024\uffdb\026\122\001\002\000\006" +
- "\005\uffdd\024\uffdd\001\002\000\006\005\124\024\125\001" +
- "\002\000\004\026\131\001\002\000\004\016\126\001\002" +
- "\000\004\026\127\001\002\000\004\004\130\001\002\000" +
- "\006\002\uffde\022\uffde\001\002\000\006\005\uffdc\024\uffdc" +
- "\001\002" });
+ "\000\140\000\014\002\uffe5\015\012\022\uffe5\025\007\026" +
+ "\011\001\002\000\004\002\001\001\002\000\004\002\ufffd" +
+ "\001\002\000\004\002\ufffe\001\002\000\004\030\134\001" +
+ "\002\000\006\002\uffff\022\120\001\002\000\004\030\100" +
+ "\001\002\000\004\016\015\001\002\000\004\002\014\001" +
+ "\002\000\004\002\000\001\002\000\004\030\016\001\002" +
+ "\000\004\012\017\001\002\000\010\013\ufffa\015\ufffa\017" +
+ "\ufffa\001\002\000\010\013\uffec\015\022\017\uffec\001\002" +
+ "\000\010\013\ufffb\015\ufffb\017\ufffb\001\002\000\006\027" +
+ "\045\030\044\001\002\000\006\013\026\017\025\001\002" +
+ "\000\006\013\uffed\017\uffed\001\002\000\004\030\027\001" +
+ "\002\000\004\002\ufffc\001\002\000\004\012\030\001\002" +
+ "\000\010\013\uffe9\020\uffe9\021\uffe9\001\002\000\010\013" +
+ "\034\020\033\021\035\001\002\000\010\013\uffea\020\uffea" +
+ "\021\uffea\001\002\000\004\014\041\001\002\000\006\013" +
+ "\uffeb\017\uffeb\001\002\000\004\014\036\001\002\000\004" +
+ "\031\037\001\002\000\004\004\040\001\002\000\010\013" +
+ "\uffe7\020\uffe7\021\uffe7\001\002\000\004\031\042\001\002" +
+ "\000\004\004\043\001\002\000\010\013\uffe8\020\uffe8\021" +
+ "\uffe8\001\002\000\004\030\073\001\002\000\004\030\046" +
+ "\001\002\000\004\006\047\001\002\000\010\007\ufff6\027" +
+ "\ufff6\030\ufff6\001\002\000\010\007\052\027\054\030\051" +
+ "\001\002\000\006\010\060\030\061\001\002\000\004\004" +
+ "\057\001\002\000\010\007\ufff7\027\ufff7\030\ufff7\001\002" +
+ "\000\004\030\055\001\002\000\012\005\056\007\ufff4\027" +
+ "\ufff4\030\ufff4\001\002\000\010\007\ufff5\027\ufff5\030\ufff5" +
+ "\001\002\000\010\013\ufff9\015\ufff9\017\ufff9\001\002\000" +
+ "\006\027\064\030\063\001\002\000\012\005\062\007\ufff2" +
+ "\027\ufff2\030\ufff2\001\002\000\010\007\ufff3\027\ufff3\030" +
+ "\ufff3\001\002\000\004\011\070\001\002\000\004\011\065" +
+ "\001\002\000\004\030\066\001\002\000\012\005\067\007" +
+ "\ufff1\027\ufff1\030\ufff1\001\002\000\010\007\uffef\027\uffef" +
+ "\030\uffef\001\002\000\004\030\071\001\002\000\012\005" +
+ "\072\007\ufff0\027\ufff0\030\ufff0\001\002\000\010\007\uffee" +
+ "\027\uffee\030\uffee\001\002\000\004\006\074\001\002\000" +
+ "\010\007\ufff6\027\ufff6\030\ufff6\001\002\000\010\007\076" +
+ "\027\054\030\051\001\002\000\004\004\077\001\002\000" +
+ "\010\013\ufff8\015\ufff8\017\ufff8\001\002\000\004\012\101" +
+ "\001\002\000\010\013\uffd9\027\uffd9\030\uffd9\001\002\000" +
+ "\010\013\104\027\106\030\103\001\002\000\006\010\111" +
+ "\030\112\001\002\000\004\002\uffdb\001\002\000\010\013" +
+ "\uffda\027\uffda\030\uffda\001\002\000\004\030\107\001\002" +
+ "\000\004\004\110\001\002\000\010\013\uffd8\027\uffd8\030" +
+ "\uffd8\001\002\000\004\030\114\001\002\000\004\004\113" +
+ "\001\002\000\010\013\uffd7\027\uffd7\030\uffd7\001\002\000" +
+ "\004\011\115\001\002\000\004\030\116\001\002\000\004" +
+ "\004\117\001\002\000\010\013\uffd6\027\uffd6\030\uffd6\001" +
+ "\002\000\004\030\122\001\002\000\006\002\uffe6\022\uffe6" +
+ "\001\002\000\004\023\123\001\002\000\010\005\uffe1\024" +
+ "\uffe1\030\125\001\002\000\006\005\126\024\127\001\002" +
+ "\000\006\005\uffe3\024\uffe3\001\002\000\004\030\133\001" +
+ "\002\000\004\016\130\001\002\000\004\030\131\001\002" +
+ "\000\004\004\132\001\002\000\006\002\uffe4\022\uffe4\001" +
+ "\002\000\006\005\uffe2\024\uffe2\001\002\000\004\012\135" +
+ "\001\002\000\006\013\uffde\030\uffde\001\002\000\006\013" +
+ "\141\030\140\001\002\000\006\013\uffdf\030\uffdf\001\002" +
+ "\000\010\005\142\013\uffdc\030\uffdc\001\002\000\004\002" +
+ "\uffe0\001\002\000\006\013\uffdd\030\uffdd\001\002" });
/** Access to parse-action table. */
public short[][] action_table() {return _action_table;}
/** <code>reduce_goto</code> table. */
protected static final short[][] _reduce_table =
unpackFromStrings(new String[] {
- "\000\127\000\010\002\006\003\003\015\004\001\001\000" +
- "\002\001\001\000\004\016\115\001\001\000\002\001\001" +
- "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
- "\002\001\001\000\004\004\013\001\001\000\006\005\014" +
- "\011\016\001\001\000\002\001\001\000\002\001\001\000" +
- "\004\012\017\001\001\000\002\001\001\000\002\001\001" +
- "\000\002\001\001\000\002\001\001\000\004\013\024\001" +
- "\001\000\004\014\025\001\001\000\002\001\001\000\002" +
- "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
- "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
- "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
- "\002\001\001\000\002\001\001\000\004\006\043\001\001" +
- "\000\004\007\046\001\001\000\002\001\001\000\002\001" +
+ "\000\140\000\014\002\012\003\003\015\007\020\005\023" +
+ "\004\001\001\000\002\001\001\000\002\001\001\000\002" +
+ "\001\001\000\002\001\001\000\004\016\120\001\001\000" +
+ "\002\001\001\000\002\001\001\000\002\001\001\000\002" +
+ "\001\001\000\002\001\001\000\002\001\001\000\004\004" +
+ "\017\001\001\000\006\005\020\011\022\001\001\000\002" +
+ "\001\001\000\002\001\001\000\004\012\023\001\001\000" +
+ "\002\001\001\000\002\001\001\000\002\001\001\000\002" +
+ "\001\001\000\004\013\030\001\001\000\004\014\031\001" +
"\001\000\002\001\001\000\002\001\001\000\002\001\001" +
"\000\002\001\001\000\002\001\001\000\002\001\001\000" +
"\002\001\001\000\002\001\001\000\002\001\001\000\002" +
"\001\001\000\002\001\001\000\002\001\001\000\002\001" +
- "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
+ "\001\000\004\006\047\001\001\000\004\007\052\001\001" +
"\000\002\001\001\000\002\001\001\000\002\001\001\000" +
"\002\001\001\000\002\001\001\000\002\001\001\000\002" +
"\001\001\000\002\001\001\000\002\001\001\000\002\001" +
"\001\000\002\001\001\000\002\001\001\000\002\001\001" +
"\000\002\001\001\000\002\001\001\000\002\001\001\000" +
"\002\001\001\000\002\001\001\000\002\001\001\000\004" +
- "\006\112\001\001\000\004\007\046\001\001\000\002\001" +
- "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
- "\000\002\001\001\000\004\017\122\001\001\000\002\001" +
+ "\006\074\001\001\000\004\007\052\001\001\000\002\001" +
+ "\001\000\002\001\001\000\002\001\001\000\004\024\101" +
+ "\001\001\000\004\025\104\001\001\000\002\001\001\000" +
+ "\002\001\001\000\002\001\001\000\002\001\001\000\002" +
+ "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
"\001\000\002\001\001\000\002\001\001\000\002\001\001" +
"\000\002\001\001\000\002\001\001\000\002\001\001\000" +
- "\002\001\001" });
+ "\002\001\001\000\002\001\001\000\004\017\123\001\001" +
+ "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
+ "\002\001\001\000\002\001\001\000\002\001\001\000\002" +
+ "\001\001\000\002\001\001\000\002\001\001\000\004\021" +
+ "\135\001\001\000\004\022\136\001\001\000\002\001\001" +
+ "\000\002\001\001\000\002\001\001\000\002\001\001" });
/** Access to <code>reduce_goto</code> table. */
public short[][] reduce_table() {return _reduce_table;}
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 3: // intface ::= PUBLIC INTERFACE IDENT BEGIN methlist capablist END
+ case 3: // policy ::= enumdec
+ {
+ ParseNode RESULT =null;
+ int enleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
+ int enright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
+ ParseNode en = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
+
+ ParseNode pn = new ParseNode("policy");
+ pn.addChild(en);
+ RESULT = pn;
+
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("policy",0, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ }
+ return CUP$Parser$result;
+
+ /*. . . . . . . . . . . . . . . . . . . .*/
+ case 4: // policy ::= structdec
+ {
+ ParseNode RESULT =null;
+ int stleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
+ int stright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
+ ParseNode st = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
+
+ ParseNode pn = new ParseNode("policy");
+ pn.addChild(st);
+ RESULT = pn;
+
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("policy",0, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ }
+ return CUP$Parser$result;
+
+ /*. . . . . . . . . . . . . . . . . . . .*/
+ case 5: // intface ::= PUBLIC INTERFACE IDENT BEGIN methlist capablist END
{
ParseNode RESULT =null;
int idintleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 4: // methlist ::= methlist meth
+ case 6: // methlist ::= methlist meth
{
ParseNode RESULT =null;
int mlleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 5: // methlist ::=
+ case 7: // methlist ::=
{
ParseNode RESULT =null;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 6: // meth ::= PUBLIC TYPE IDENT LPAR paramlist RPAR SEMICOLON
+ case 8: // meth ::= PUBLIC TYPE IDENT LPAR paramlist RPAR SEMICOLON
{
ParseNode RESULT =null;
int typemethleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 7: // meth ::= PUBLIC IDENT IDENT LPAR paramlist RPAR SEMICOLON
+ case 9: // meth ::= PUBLIC IDENT IDENT LPAR paramlist RPAR SEMICOLON
{
ParseNode RESULT =null;
int clsmethleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 8: // paramlist ::= paramlist param
+ case 10: // paramlist ::= paramlist param
{
ParseNode RESULT =null;
int plleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 9: // paramlist ::=
+ case 11: // paramlist ::=
{
ParseNode RESULT =null;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 10: // param ::= TYPE IDENT COMMA
+ case 12: // param ::= TYPE IDENT COMMA
{
ParseNode RESULT =null;
int typeprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 11: // param ::= TYPE IDENT
+ case 13: // param ::= TYPE IDENT
{
ParseNode RESULT =null;
int typeprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 12: // param ::= IDENT IDENT COMMA
+ case 14: // param ::= IDENT IDENT COMMA
{
ParseNode RESULT =null;
int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 13: // param ::= IDENT IDENT
+ case 15: // param ::= IDENT IDENT
{
ParseNode RESULT =null;
int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 14: // param ::= IDENT LANG TYPE RANG IDENT
+ case 16: // param ::= IDENT LANG TYPE RANG IDENT
{
ParseNode RESULT =null;
int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 15: // param ::= IDENT LANG IDENT RANG IDENT
+ case 17: // param ::= IDENT LANG IDENT RANG IDENT
{
ParseNode RESULT =null;
int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 16: // param ::= IDENT LANG TYPE COMMA TYPE RANG IDENT
- {
- ParseNode RESULT =null;
- int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).left;
- int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).right;
- Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-6)).value;
- int typegen1left = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
- int typegen1right = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).right;
- Object typegen1 = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-4)).value;
- int typegen2left = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
- int typegen2right = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
- Object typegen2 = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
- int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
- int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
- Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
-
- ParseNode pn = new ParseNode("param");
- pn.addChild("param_class").setLiteral((String)clsprm
- + "<" + typegen1 + "," + typegen2 + ">");
- pn.addChild("param_ident").setLiteral(idprm);
- RESULT = pn;
-
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
- }
- return CUP$Parser$result;
-
- /*. . . . . . . . . . . . . . . . . . . .*/
- case 17: // param ::= IDENT LANG TYPE COMMA IDENT RANG IDENT
- {
- ParseNode RESULT =null;
- int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).left;
- int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).right;
- Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-6)).value;
- int typegenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
- int typegenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).right;
- Object typegen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-4)).value;
- int clsgenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
- int clsgenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
- Object clsgen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
- int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
- int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
- Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
-
- ParseNode pn = new ParseNode("param");
- pn.addChild("param_class").setLiteral((String)clsprm
- + "<" + typegen + "," + clsgen + ">");
- pn.addChild("param_ident").setLiteral(idprm);
- RESULT = pn;
-
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
- }
- return CUP$Parser$result;
-
- /*. . . . . . . . . . . . . . . . . . . .*/
- case 18: // param ::= IDENT LANG IDENT COMMA TYPE RANG IDENT
- {
- ParseNode RESULT =null;
- int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).left;
- int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).right;
- Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-6)).value;
- int clsgenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
- int clsgenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).right;
- Object clsgen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-4)).value;
- int typegenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
- int typegenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
- Object typegen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
- int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
- int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
- Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
-
- ParseNode pn = new ParseNode("param");
- pn.addChild("param_class").setLiteral((String)clsprm
- + "<" + clsgen + "," + typegen + ">");
- pn.addChild("param_ident").setLiteral(idprm);
- RESULT = pn;
-
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
- }
- return CUP$Parser$result;
-
- /*. . . . . . . . . . . . . . . . . . . .*/
- case 19: // param ::= IDENT LANG IDENT COMMA IDENT RANG IDENT
- {
- ParseNode RESULT =null;
- int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).left;
- int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).right;
- Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-6)).value;
- int clsgen1left = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
- int clsgen1right = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).right;
- Object clsgen1 = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-4)).value;
- int clsgen2left = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
- int clsgen2right = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
- Object clsgen2 = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
- int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
- int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
- Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
-
- ParseNode pn = new ParseNode("param");
- pn.addChild("param_class").setLiteral((String)clsprm
- + "<" + clsgen1 + "," + clsgen2 + ">");
- pn.addChild("param_ident").setLiteral(idprm);
- RESULT = pn;
-
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
- }
- return CUP$Parser$result;
-
- /*. . . . . . . . . . . . . . . . . . . .*/
- case 20: // param ::= IDENT LANG TYPE RANG IDENT COMMA
+ case 18: // param ::= IDENT LANG TYPE RANG IDENT COMMA
{
ParseNode RESULT =null;
int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 21: // param ::= IDENT LANG IDENT RANG IDENT COMMA
+ case 19: // param ::= IDENT LANG IDENT RANG IDENT COMMA
{
ParseNode RESULT =null;
int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 22: // param ::= IDENT LANG TYPE COMMA TYPE RANG IDENT COMMA
- {
- ParseNode RESULT =null;
- int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).left;
- int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).right;
- Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-7)).value;
- int typegen1left = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
- int typegen1right = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).right;
- Object typegen1 = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-5)).value;
- int typegen2left = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
- int typegen2right = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
- Object typegen2 = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
- int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
- int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
- Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
-
- ParseNode pn = new ParseNode("param");
- pn.addChild("param_class").setLiteral((String)clsprm
- + "<" + typegen1 + "," + typegen2 + ">");
- pn.addChild("param_ident").setLiteral(idprm);
- RESULT = pn;
-
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
- }
- return CUP$Parser$result;
-
- /*. . . . . . . . . . . . . . . . . . . .*/
- case 23: // param ::= IDENT LANG TYPE COMMA IDENT RANG IDENT COMMA
- {
- ParseNode RESULT =null;
- int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).left;
- int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).right;
- Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-7)).value;
- int typegenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
- int typegenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).right;
- Object typegen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-5)).value;
- int clsgenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
- int clsgenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
- Object clsgen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
- int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
- int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
- Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
-
- ParseNode pn = new ParseNode("param");
- pn.addChild("param_class").setLiteral((String)clsprm
- + "<" + typegen + "," + clsgen + ">");
- pn.addChild("param_ident").setLiteral(idprm);
- RESULT = pn;
-
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
- }
- return CUP$Parser$result;
-
- /*. . . . . . . . . . . . . . . . . . . .*/
- case 24: // param ::= IDENT LANG IDENT COMMA TYPE RANG IDENT COMMA
- {
- ParseNode RESULT =null;
- int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).left;
- int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).right;
- Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-7)).value;
- int clsgenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
- int clsgenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).right;
- Object clsgen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-5)).value;
- int typegenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
- int typegenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
- Object typegen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
- int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
- int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
- Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
-
- ParseNode pn = new ParseNode("param");
- pn.addChild("param_class").setLiteral((String)clsprm
- + "<" + clsgen + "," + typegen + ">");
- pn.addChild("param_ident").setLiteral(idprm);
- RESULT = pn;
-
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
- }
- return CUP$Parser$result;
-
- /*. . . . . . . . . . . . . . . . . . . .*/
- case 25: // param ::= IDENT LANG IDENT COMMA IDENT RANG IDENT COMMA
- {
- ParseNode RESULT =null;
- int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).left;
- int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).right;
- Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-7)).value;
- int clsgen1left = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
- int clsgen1right = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).right;
- Object clsgen1 = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-5)).value;
- int clsgen2left = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
- int clsgen2right = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
- Object clsgen2 = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
- int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
- int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
- Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
-
- ParseNode pn = new ParseNode("param");
- pn.addChild("param_class").setLiteral((String)clsprm
- + "<" + clsgen1 + "," + clsgen2 + ">");
- pn.addChild("param_ident").setLiteral(idprm);
- RESULT = pn;
-
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
- }
- return CUP$Parser$result;
-
- /*. . . . . . . . . . . . . . . . . . . .*/
- case 26: // capablist ::= capablist capab
+ case 20: // capablist ::= capablist capab
{
ParseNode RESULT =null;
int clleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 27: // capablist ::=
+ case 21: // capablist ::=
{
ParseNode RESULT =null;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 28: // capab ::= CAPABILITY IDENT BEGIN capabcont END
+ case 22: // capab ::= CAPABILITY IDENT BEGIN capabcont END
{
ParseNode RESULT =null;
int idcapleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 29: // capabcont ::= capabcont cont
+ case 23: // capabcont ::= capabcont cont
{
ParseNode RESULT =null;
int ccontleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 30: // capabcont ::=
+ case 24: // capabcont ::=
{
ParseNode RESULT =null;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 31: // cont ::= DESCRIPTION ASSIGN STRINGCONST SEMICOLON
+ case 25: // cont ::= DESCRIPTION ASSIGN STRINGCONST SEMICOLON
{
ParseNode RESULT =null;
int dscleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 32: // cont ::= METHOD ASSIGN STRINGCONST SEMICOLON
+ case 26: // cont ::= METHOD ASSIGN STRINGCONST SEMICOLON
{
ParseNode RESULT =null;
int mtdleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 33: // reqlist ::= reqlist require
+ case 27: // reqlist ::= reqlist require
{
ParseNode RESULT =null;
int rlleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 34: // reqlist ::=
+ case 28: // reqlist ::=
{
ParseNode RESULT =null;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 35: // require ::= REQUIRES IDENT WITH capintlist AS INTERFACE IDENT SEMICOLON
+ case 29: // require ::= REQUIRES IDENT WITH capintlist AS INTERFACE IDENT SEMICOLON
{
ParseNode RESULT =null;
int idintleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 36: // capintlist ::= IDENT
+ case 30: // capintlist ::= IDENT
{
ParseNode RESULT =null;
int idcapleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 37: // capintlist ::= capintlist COMMA IDENT
+ case 31: // capintlist ::= capintlist COMMA IDENT
{
ParseNode RESULT =null;
int cilleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 38: // capintlist ::=
+ case 32: // capintlist ::=
{
ParseNode RESULT =null;
}
return CUP$Parser$result;
+ /*. . . . . . . . . . . . . . . . . . . .*/
+ case 33: // enumdec ::= ENUM IDENT BEGIN enumlist END
+ {
+ ParseNode RESULT =null;
+ int idenumdecleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
+ int idenumdecright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
+ Object idenumdec = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
+ int elleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
+ int elright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
+ ParseNode el = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
+
+ ParseNode pn = new ParseNode("enum_dec");
+ pn.addChild("enum_dec_ident").setLiteral(idenumdec);
+ pn.addChild(el);
+ RESULT = pn;
+
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("enumdec",14, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ }
+ return CUP$Parser$result;
+
+ /*. . . . . . . . . . . . . . . . . . . .*/
+ case 34: // enumlist ::= enumlist enummem
+ {
+ ParseNode RESULT =null;
+ int elleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
+ int elright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
+ ParseNode el = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
+ int eleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
+ int eright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
+ ParseNode e = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
+
+ el.addChild(e);
+ RESULT = el;
+
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("enumlist",15, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ }
+ return CUP$Parser$result;
+
+ /*. . . . . . . . . . . . . . . . . . . .*/
+ case 35: // enumlist ::=
+ {
+ ParseNode RESULT =null;
+
+ ParseNode pn = new ParseNode("enum_list");
+ RESULT = pn;
+
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("enumlist",15, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ }
+ return CUP$Parser$result;
+
+ /*. . . . . . . . . . . . . . . . . . . .*/
+ case 36: // enummem ::= IDENT COMMA
+ {
+ ParseNode RESULT =null;
+ int idenumleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
+ int idenumright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
+ Object idenum = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
+
+ ParseNode pn = new ParseNode("enum_mem");
+ pn.addChild("enum_ident").setLiteral(idenum);
+ RESULT = pn;
+
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("enummem",16, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ }
+ return CUP$Parser$result;
+
+ /*. . . . . . . . . . . . . . . . . . . .*/
+ case 37: // enummem ::= IDENT
+ {
+ ParseNode RESULT =null;
+ int idenumleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
+ int idenumright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
+ Object idenum = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
+
+ ParseNode pn = new ParseNode("enum_mem");
+ pn.addChild("enum_ident").setLiteral(idenum);
+ RESULT = pn;
+
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("enummem",16, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ }
+ return CUP$Parser$result;
+
+ /*. . . . . . . . . . . . . . . . . . . .*/
+ case 38: // structdec ::= STRUCT IDENT BEGIN structlist END
+ {
+ ParseNode RESULT =null;
+ int idstructdecleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
+ int idstructdecright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
+ Object idstructdec = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
+ int slleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
+ int slright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
+ ParseNode sl = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
+
+ ParseNode pn = new ParseNode("struct_dec");
+ pn.addChild("struct_dec_ident").setLiteral(idstructdec);
+ pn.addChild(sl);
+ RESULT = pn;
+
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("structdec",17, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ }
+ return CUP$Parser$result;
+
+ /*. . . . . . . . . . . . . . . . . . . .*/
+ case 39: // structlist ::= structlist structmem
+ {
+ ParseNode RESULT =null;
+ int slleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
+ int slright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
+ ParseNode sl = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
+ int sleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
+ int sright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
+ ParseNode s = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
+
+ sl.addChild(s);
+ RESULT = sl;
+
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("structlist",18, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ }
+ return CUP$Parser$result;
+
+ /*. . . . . . . . . . . . . . . . . . . .*/
+ case 40: // structlist ::=
+ {
+ ParseNode RESULT =null;
+
+ ParseNode pn = new ParseNode("enum_list");
+ RESULT = pn;
+
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("structlist",18, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ }
+ return CUP$Parser$result;
+
+ /*. . . . . . . . . . . . . . . . . . . .*/
+ case 41: // structmem ::= TYPE IDENT SEMICOLON
+ {
+ ParseNode RESULT =null;
+ int typestrleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
+ int typestrright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
+ Object typestr = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
+ int idstrleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
+ int idstrright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
+ Object idstr = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
+
+ ParseNode pn = new ParseNode("struct_mem");
+ pn.addChild("struct_type").setLiteral(typestr);
+ pn.addChild("struct_ident").setLiteral(idstr);
+ RESULT = pn;
+
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("structmem",19, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ }
+ return CUP$Parser$result;
+
+ /*. . . . . . . . . . . . . . . . . . . .*/
+ case 42: // structmem ::= IDENT IDENT SEMICOLON
+ {
+ ParseNode RESULT =null;
+ int clsstrleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
+ int clsstrright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
+ Object clsstr = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
+ int idstrleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
+ int idstrright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
+ Object idstr = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
+
+ ParseNode pn = new ParseNode("struct_mem");
+ pn.addChild("struct_class").setLiteral(clsstr);
+ pn.addChild("struct_ident").setLiteral(idstr);
+ RESULT = pn;
+
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("structmem",19, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ }
+ return CUP$Parser$result;
+
+ /*. . . . . . . . . . . . . . . . . . . .*/
+ case 43: // structmem ::= IDENT LANG IDENT RANG IDENT SEMICOLON
+ {
+ ParseNode RESULT =null;
+ int clsstrleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
+ int clsstrright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).right;
+ Object clsstr = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-5)).value;
+ int clsgenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
+ int clsgenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
+ Object clsgen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
+ int idstrleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
+ int idstrright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
+ Object idstr = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
+
+ ParseNode pn = new ParseNode("struct_mem");
+ pn.addChild("struct_class").setLiteral((String)clsstr + "<" + clsgen + ">");
+ pn.addChild("struct_ident").setLiteral(idstr);
+ RESULT = pn;
+
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("structmem",19, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ }
+ return CUP$Parser$result;
+
/* . . . . . .*/
default:
throw new Exception(