001 /* The following code was generated by JFlex 1.3.5 on 7/3/08 11:06 AM */ 002 003 package toolbus.parsercup; 004 005 006 /* Lexical syntax for ToolBus scripts */ 007 import java.io.IOException; 008 009 import java_cup.runtime.Symbol; 010 import toolbus.exceptions.SyntaxErrorException; 011 012 013 /** 014 * This class is a scanner generated by 015 * <a href="http://www.jflex.de/">JFlex</a> 1.3.5 016 * on 7/3/08 11:06 AM from the specification file 017 * <tt>file:/export/scratch1/lankamp/metaClipse/toolbus-ng/src/toolbus/parsercup/toolbus.jflex</tt> 018 */ 019 public class Lexer implements java_cup.runtime.Scanner { 020 021 /** This character denotes the end of file */ 022 final public static int YYEOF = -1; 023 024 /** initial size of the lookahead buffer */ 025 final private static int YY_BUFFERSIZE = 16384; 026 027 /** lexical states */ 028 final public static int STRING = 1; 029 final public static int YYINITIAL = 0; 030 final public static int INCLUDE = 2; 031 032 /** 033 * Translates characters to character classes 034 */ 035 final private static String yycmap_packed = 036 "\11\0\1\3\1\2\1\0\1\3\1\1\22\0\1\3\1\0\1\54"+ 037 "\1\50\1\0\1\6\2\0\1\55\1\56\1\5\1\20\1\57\1\13"+ 038 "\1\15\1\4\1\14\11\10\1\64\1\0\1\51\1\65\1\53\1\67"+ 039 "\1\0\4\12\1\17\25\12\1\62\1\52\1\63\1\0\1\11\1\0"+ 040 "\1\37\1\33\1\27\1\23\1\16\1\36\1\25\1\44\1\34\1\7"+ 041 "\1\41\1\43\1\24\1\22\1\30\1\35\1\42\1\26\1\21\1\31"+ 042 "\1\32\1\40\1\46\1\45\1\47\1\7\1\60\1\66\1\61\uff82\0"; 043 044 /** 045 * Translates characters to character classes 046 */ 047 final private static char [] yycmap = yy_unpack_cmap(yycmap_packed); 048 049 /** 050 * Translates a state to a row index in the transition table 051 */ 052 final private static int yy_rowMap [] = { 053 0, 56, 112, 168, 224, 168, 280, 168, 336, 392, 054 448, 504, 560, 616, 168, 672, 728, 784, 840, 896, 055 952, 1008, 1064, 1120, 1176, 1232, 1288, 1344, 1400, 1456, 056 1512, 1568, 1624, 1680, 1736, 168, 168, 168, 168, 168, 057 168, 168, 168, 1792, 168, 1848, 168, 1904, 1960, 168, 058 2016, 168, 168, 2072, 2128, 2184, 616, 2240, 2296, 2352, 059 168, 2408, 2464, 2520, 2576, 2632, 2688, 2744, 2800, 2856, 060 2912, 2968, 3024, 3080, 3136, 3192, 3248, 392, 392, 392, 061 3304, 392, 3360, 3416, 3472, 3528, 3584, 3640, 3696, 3752, 062 168, 168, 168, 168, 168, 168, 168, 168, 3808, 3864, 063 3920, 3976, 4032, 4088, 4144, 4200, 4256, 4312, 4368, 4424, 064 4480, 4536, 4592, 4648, 4704, 4760, 4816, 4872, 392, 4928, 065 4984, 5040, 5096, 5152, 5208, 5264, 5320, 392, 5376, 5432, 066 5488, 5544, 5600, 5656, 3808, 5712, 5768, 392, 5824, 5880, 067 5936, 5992, 6048, 6104, 6160, 6216, 6272, 392, 6328, 6384, 068 6440, 392, 6496, 6552, 392, 6608, 6664, 6720, 6776, 6832, 069 6888, 392, 392, 6944, 7000, 7056, 7112, 7168, 7224, 7224, 070 7280, 7336, 7392, 7448, 7504, 7560, 7616, 7672, 7728, 7784, 071 7840, 7896, 7952, 8008, 392, 392, 8064, 8120, 8176, 8232, 072 8288, 8344, 8400, 8456, 8512, 8568, 8624, 392, 8680, 8736, 073 8792, 8848, 8904, 8960, 392, 9016, 9072, 9128, 9184, 9240, 074 9296, 9352, 392, 9408, 9464, 9520, 392, 9576, 9632, 9688, 075 9744, 9800, 9856, 9912, 9968, 10024, 10080, 10136, 10192, 10248, 076 10304, 10360, 10416, 10472, 10528, 392, 10584, 10640, 10696, 10752, 077 10808, 10864, 392, 10920, 10976, 168, 11032, 11088, 11144, 168, 078 392, 11200, 11256, 392, 11312, 11368, 11424, 11480, 11536, 11592, 079 11648, 392, 11704, 11760, 11816, 11872, 392, 11928, 11984, 12040, 080 12096, 392, 392, 392, 12152, 12208, 392, 12264, 12320, 168, 081 12376, 168, 392, 392, 12432, 12488, 12544, 12600, 392, 12656, 082 392, 12712, 12768, 392, 12824, 12880, 12936, 12992, 13048, 13104, 083 13160, 13216, 13272, 168, 13328, 13384, 13440, 13496, 392, 13552, 084 392, 13608, 13664, 13720, 13776, 392, 13832, 392, 392, 13888, 085 13944, 392, 14000, 14056, 14112, 14168, 14224, 14280, 14336, 14392, 086 14448, 14504, 14560, 14616, 14672, 14728, 392, 392, 14784, 392, 087 392, 392, 14840, 14896, 14952, 15008, 15064, 392, 392, 15120, 088 15176, 15232, 392, 392, 392 089 }; 090 091 /** 092 * The packed transition table of the DFA (part 0) 093 */ 094 final private static String yy_packed0 = 095 "\1\4\1\5\2\6\1\7\1\10\1\11\1\12\1\13"+ 096 "\2\14\1\15\1\16\1\17\1\20\1\14\1\21\1\22"+ 097 "\1\23\1\24\1\12\1\25\1\26\1\27\1\12\1\30"+ 098 "\1\31\1\12\1\32\1\33\1\34\1\35\1\12\1\36"+ 099 "\1\12\1\37\1\40\3\12\1\41\1\42\1\4\1\43"+ 100 "\1\44\1\45\1\46\1\47\1\50\1\51\1\52\1\53"+ 101 "\1\54\1\55\1\56\1\57\1\60\2\4\47\60\1\61"+ 102 "\1\60\1\62\13\60\1\63\2\4\46\63\1\64\1\4"+ 103 "\1\65\1\4\13\63\72\0\1\6\71\0\1\66\1\67"+ 104 "\70\0\1\66\70\0\2\12\1\0\3\12\1\0\2\12"+ 105 "\1\0\27\12\30\0\1\13\3\0\1\13\1\70\61\0"+ 106 "\6\14\1\0\2\14\1\0\27\14\30\0\1\13\3\0"+ 107 "\1\16\63\0\1\71\3\0\1\71\1\70\61\0\2\12"+ 108 "\1\0\3\12\1\0\2\12\1\0\1\12\1\72\20\12"+ 109 "\1\73\1\12\1\74\2\12\73\0\1\75\23\0\2\12"+ 110 "\1\0\3\12\1\0\2\12\1\0\1\12\1\76\7\12"+ 111 "\1\77\11\12\1\100\3\12\27\0\2\12\1\0\3\12"+ 112 "\1\0\2\12\1\0\7\12\1\101\17\12\27\0\2\12"+ 113 "\1\0\3\12\1\0\1\102\1\12\1\0\27\12\27\0"+ 114 "\2\12\1\0\3\12\1\0\1\103\1\12\1\0\27\12"+ 115 "\27\0\2\12\1\0\3\12\1\0\1\104\1\12\1\0"+ 116 "\27\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 117 "\5\12\1\105\1\12\1\106\12\12\1\107\4\12\27\0"+ 118 "\2\12\1\0\3\12\1\0\2\12\1\0\5\12\1\110"+ 119 "\1\12\1\111\3\12\1\112\2\12\1\113\4\12\1\114"+ 120 "\3\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 121 "\1\12\1\115\25\12\27\0\2\12\1\0\3\12\1\0"+ 122 "\2\12\1\0\1\116\1\117\13\12\1\120\11\12\27\0"+ 123 "\2\12\1\0\3\12\1\0\2\12\1\0\5\12\1\121"+ 124 "\21\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 125 "\13\12\1\122\2\12\1\123\10\12\27\0\2\12\1\0"+ 126 "\3\12\1\0\2\12\1\0\12\12\1\124\14\12\27\0"+ 127 "\2\12\1\0\3\12\1\0\2\12\1\0\13\12\1\125"+ 128 "\13\12\27\0\2\12\1\0\3\12\1\0\1\126\1\12"+ 129 "\1\0\27\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 130 "\1\0\7\12\1\127\17\12\36\0\1\130\4\0\1\131"+ 131 "\10\0\1\132\53\0\1\133\122\0\1\134\101\0\1\135"+ 132 "\70\0\1\136\1\0\1\60\2\0\47\60\1\0\1\60"+ 133 "\1\0\13\60\22\0\1\137\3\0\1\140\2\0\1\141"+ 134 "\22\0\1\142\13\0\1\63\2\0\46\63\4\0\13\63"+ 135 "\1\66\1\5\1\6\65\66\5\143\1\144\62\143\10\0"+ 136 "\1\145\3\0\1\145\62\0\2\12\1\0\3\12\1\0"+ 137 "\2\12\1\0\2\12\1\146\24\12\27\0\2\12\1\0"+ 138 "\3\12\1\0\2\12\1\0\1\147\26\12\27\0\2\12"+ 139 "\1\0\3\12\1\0\1\150\1\12\1\0\27\12\27\0"+ 140 "\2\12\1\0\3\12\1\0\2\12\1\0\2\12\1\151"+ 141 "\24\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 142 "\12\12\1\152\14\12\27\0\2\12\1\0\3\12\1\0"+ 143 "\2\12\1\0\11\12\1\153\15\12\27\0\2\12\1\0"+ 144 "\1\12\1\154\1\12\1\0\2\12\1\0\27\12\27\0"+ 145 "\2\12\1\0\3\12\1\0\2\12\1\0\22\12\1\155"+ 146 "\4\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 147 "\10\12\1\156\16\12\27\0\2\12\1\0\3\12\1\0"+ 148 "\2\12\1\0\6\12\1\157\7\12\1\160\10\12\27\0"+ 149 "\2\12\1\0\3\12\1\0\1\161\1\12\1\0\27\12"+ 150 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\3\12"+ 151 "\1\162\23\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 152 "\1\0\16\12\1\163\10\12\27\0\2\12\1\0\3\12"+ 153 "\1\0\2\12\1\0\11\12\1\164\15\12\27\0\2\12"+ 154 "\1\0\3\12\1\0\2\12\1\0\7\12\1\165\17\12"+ 155 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\3\12"+ 156 "\1\166\23\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 157 "\1\0\11\12\1\167\15\12\27\0\2\12\1\0\3\12"+ 158 "\1\0\1\170\1\12\1\0\27\12\27\0\2\12\1\0"+ 159 "\3\12\1\0\2\12\1\0\1\171\1\12\1\172\24\12"+ 160 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\7\12"+ 161 "\1\173\3\12\1\174\13\12\27\0\2\12\1\0\3\12"+ 162 "\1\0\2\12\1\0\22\12\1\175\4\12\27\0\2\12"+ 163 "\1\0\3\12\1\0\2\12\1\0\1\176\26\12\27\0"+ 164 "\2\12\1\0\3\12\1\0\2\12\1\0\1\12\1\177"+ 165 "\25\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 166 "\10\12\1\200\16\12\27\0\2\12\1\0\3\12\1\0"+ 167 "\2\12\1\0\1\201\26\12\42\0\1\202\63\0\1\203"+ 168 "\73\0\1\204\13\0\1\205\31\0\5\143\1\206\66\143"+ 169 "\1\207\1\206\62\143\10\0\1\145\3\0\1\145\1\0"+ 170 "\2\210\57\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 171 "\22\12\1\211\4\12\27\0\2\12\1\0\3\12\1\0"+ 172 "\1\212\1\12\1\0\27\12\27\0\2\12\1\0\3\12"+ 173 "\1\0\2\12\1\0\6\12\1\213\20\12\27\0\2\12"+ 174 "\1\0\1\12\1\214\1\12\1\0\2\12\1\0\27\12"+ 175 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\1\215"+ 176 "\26\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 177 "\10\12\1\216\16\12\27\0\2\12\1\0\3\12\1\0"+ 178 "\2\12\1\0\1\12\1\217\25\12\27\0\2\12\1\0"+ 179 "\3\12\1\0\2\12\1\0\10\12\1\220\5\12\1\221"+ 180 "\10\12\27\0\2\12\1\0\1\12\1\222\1\12\1\0"+ 181 "\2\12\1\0\27\12\27\0\2\12\1\0\1\12\1\223"+ 182 "\1\12\1\0\2\12\1\0\27\12\27\0\2\12\1\0"+ 183 "\3\12\1\0\2\12\1\0\2\12\1\224\24\12\27\0"+ 184 "\2\12\1\0\3\12\1\0\2\12\1\0\16\12\1\225"+ 185 "\10\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 186 "\3\12\1\226\23\12\27\0\2\12\1\0\3\12\1\0"+ 187 "\2\12\1\0\1\227\26\12\27\0\2\12\1\0\3\12"+ 188 "\1\0\1\230\1\12\1\0\27\12\27\0\2\12\1\0"+ 189 "\3\12\1\0\2\12\1\0\22\12\1\231\4\12\27\0"+ 190 "\2\12\1\0\3\12\1\0\1\232\1\12\1\0\27\12"+ 191 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\1\12"+ 192 "\1\233\25\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 193 "\1\0\11\12\1\234\15\12\27\0\2\12\1\0\3\12"+ 194 "\1\0\1\235\1\12\1\0\27\12\27\0\2\12\1\0"+ 195 "\3\12\1\0\2\12\1\0\6\12\1\236\20\12\27\0"+ 196 "\2\12\1\0\3\12\1\0\2\12\1\0\1\12\1\237"+ 197 "\25\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 198 "\1\240\26\12\27\0\2\12\1\0\1\12\1\241\1\12"+ 199 "\1\0\2\12\1\0\27\12\27\0\2\12\1\0\3\12"+ 200 "\1\0\2\12\1\0\2\12\1\242\24\12\27\0\2\12"+ 201 "\1\0\3\12\1\0\2\12\1\0\10\12\1\243\16\12"+ 202 "\43\0\1\244\102\0\1\245\60\0\1\246\62\0\1\247"+ 203 "\1\250\44\0\4\143\1\6\1\206\62\143\10\0\1\251"+ 204 "\2\0\1\252\1\251\3\0\1\252\56\0\2\12\1\0"+ 205 "\3\12\1\0\1\253\1\12\1\0\27\12\27\0\2\12"+ 206 "\1\0\3\12\1\0\2\12\1\0\11\12\1\254\15\12"+ 207 "\27\0\2\12\1\0\3\12\1\0\1\255\1\12\1\0"+ 208 "\1\12\1\256\1\257\1\260\1\12\1\261\1\262\1\12"+ 209 "\1\263\5\12\1\264\1\12\1\265\6\12\27\0\2\12"+ 210 "\1\0\3\12\1\0\2\12\1\0\6\12\1\266\20\12"+ 211 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\2\12"+ 212 "\1\267\24\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 213 "\1\0\7\12\1\270\17\12\27\0\2\12\1\0\3\12"+ 214 "\1\0\2\12\1\0\16\12\1\271\10\12\27\0\2\12"+ 215 "\1\0\3\12\1\0\2\12\1\0\26\12\1\272\27\0"+ 216 "\2\12\1\0\3\12\1\0\2\12\1\0\14\12\1\273"+ 217 "\12\12\27\0\2\12\1\0\3\12\1\0\1\274\1\12"+ 218 "\1\0\1\12\1\275\1\276\1\277\1\12\1\300\1\301"+ 219 "\5\12\1\302\2\12\1\303\7\12\27\0\2\12\1\0"+ 220 "\3\12\1\0\2\12\1\0\10\12\1\304\16\12\27\0"+ 221 "\2\12\1\0\3\12\1\0\2\12\1\0\16\12\1\305"+ 222 "\10\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 223 "\1\306\26\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 224 "\1\0\12\12\1\307\14\12\27\0\2\12\1\0\3\12"+ 225 "\1\0\2\12\1\0\7\12\1\310\17\12\27\0\2\12"+ 226 "\1\0\3\12\1\0\2\12\1\0\12\12\1\311\14\12"+ 227 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\15\12"+ 228 "\1\312\11\12\27\0\2\12\1\0\3\12\1\0\1\313"+ 229 "\1\12\1\0\27\12\27\0\2\12\1\0\3\12\1\0"+ 230 "\2\12\1\0\10\12\1\314\16\12\27\0\2\12\1\0"+ 231 "\3\12\1\0\1\315\1\12\1\0\27\12\27\0\2\12"+ 232 "\1\0\3\12\1\0\2\12\1\0\2\12\1\316\5\12"+ 233 "\1\317\16\12\54\0\1\320\67\0\1\321\76\0\1\322"+ 234 "\47\0\1\323\62\0\1\324\61\0\1\251\3\0\1\251"+ 235 "\62\0\2\12\1\0\3\12\1\0\2\12\1\0\10\12"+ 236 "\1\325\16\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 237 "\1\0\10\12\1\326\16\12\27\0\2\12\1\0\3\12"+ 238 "\1\0\2\12\1\0\17\12\1\327\7\12\27\0\2\12"+ 239 "\1\0\3\12\1\0\2\12\1\0\7\12\1\330\17\12"+ 240 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\7\12"+ 241 "\1\331\17\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 242 "\1\0\1\332\26\12\27\0\2\12\1\0\3\12\1\0"+ 243 "\1\333\1\12\1\0\27\12\27\0\2\12\1\0\3\12"+ 244 "\1\0\2\12\1\0\16\12\1\334\10\12\27\0\2\12"+ 245 "\1\0\3\12\1\0\1\335\1\12\1\0\27\12\27\0"+ 246 "\2\12\1\0\3\12\1\0\2\12\1\0\6\12\1\336"+ 247 "\20\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 248 "\13\12\1\337\13\12\27\0\2\12\1\0\3\12\1\0"+ 249 "\2\12\1\0\5\12\1\340\21\12\27\0\2\12\1\0"+ 250 "\3\12\1\0\2\12\1\0\7\12\1\341\17\12\27\0"+ 251 "\2\12\1\0\3\12\1\0\2\12\1\0\10\12\1\342"+ 252 "\16\12\27\0\2\12\1\0\3\12\1\0\1\343\1\12"+ 253 "\1\0\27\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 254 "\1\0\17\12\1\344\7\12\27\0\2\12\1\0\3\12"+ 255 "\1\0\2\12\1\0\7\12\1\345\17\12\27\0\2\12"+ 256 "\1\0\3\12\1\0\2\12\1\0\13\12\1\346\13\12"+ 257 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\1\347"+ 258 "\26\12\27\0\2\12\1\0\3\12\1\0\1\350\1\12"+ 259 "\1\0\27\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 260 "\1\0\7\12\1\351\17\12\27\0\2\12\1\0\3\12"+ 261 "\1\0\1\352\1\12\1\0\27\12\27\0\2\12\1\0"+ 262 "\3\12\1\0\2\12\1\0\16\12\1\353\10\12\27\0"+ 263 "\2\12\1\0\3\12\1\0\1\354\1\12\1\0\27\12"+ 264 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\1\12"+ 265 "\1\355\25\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 266 "\1\0\11\12\1\356\15\12\27\0\2\12\1\0\3\12"+ 267 "\1\0\2\12\1\0\11\12\1\357\15\12\27\0\2\12"+ 268 "\1\0\3\12\1\0\2\12\1\0\1\360\26\12\27\0"+ 269 "\2\12\1\0\3\12\1\0\2\12\1\0\13\12\1\361"+ 270 "\13\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 271 "\1\362\26\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 272 "\1\0\15\12\1\363\11\12\27\0\2\12\1\0\3\12"+ 273 "\1\0\1\364\1\12\1\0\27\12\27\0\2\12\1\0"+ 274 "\3\12\1\0\2\12\1\0\13\12\1\365\13\12\56\0"+ 275 "\1\366\53\0\1\367\77\0\1\370\53\0\1\371\107\0"+ 276 "\1\372\40\0\2\12\1\0\3\12\1\0\1\373\1\12"+ 277 "\1\0\27\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 278 "\1\0\16\12\1\374\10\12\27\0\2\12\1\0\3\12"+ 279 "\1\0\2\12\1\0\10\12\1\375\16\12\27\0\2\12"+ 280 "\1\0\3\12\1\0\2\12\1\0\4\12\1\376\22\12"+ 281 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\1\377"+ 282 "\26\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 283 "\1\12\1\u0100\25\12\27\0\2\12\1\0\3\12\1\0"+ 284 "\2\12\1\0\5\12\1\u0101\21\12\27\0\2\12\1\0"+ 285 "\3\12\1\0\2\12\1\0\20\12\1\u0102\6\12\27\0"+ 286 "\2\12\1\0\3\12\1\0\2\12\1\0\22\12\1\u0103"+ 287 "\4\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 288 "\13\12\1\u0104\13\12\27\0\2\12\1\0\3\12\1\0"+ 289 "\2\12\1\0\25\12\1\u0105\1\12\27\0\2\12\1\0"+ 290 "\3\12\1\0\1\u0106\1\12\1\0\27\12\27\0\2\12"+ 291 "\1\0\3\12\1\0\2\12\1\0\5\12\1\u0107\21\12"+ 292 "\27\0\2\12\1\0\3\12\1\0\1\u0108\1\12\1\0"+ 293 "\27\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 294 "\10\12\1\u0109\16\12\27\0\2\12\1\0\3\12\1\0"+ 295 "\2\12\1\0\1\u010a\26\12\27\0\2\12\1\0\3\12"+ 296 "\1\0\2\12\1\0\4\12\1\u010b\22\12\27\0\2\12"+ 297 "\1\0\3\12\1\0\2\12\1\0\21\12\1\u010c\5\12"+ 298 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\1\12"+ 299 "\1\u010d\25\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 300 "\1\0\5\12\1\u010e\21\12\27\0\2\12\1\0\3\12"+ 301 "\1\0\2\12\1\0\22\12\1\u010f\4\12\27\0\2\12"+ 302 "\1\0\3\12\1\0\2\12\1\0\2\12\1\u0110\24\12"+ 303 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\1\u0111"+ 304 "\26\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 305 "\10\12\1\u0112\16\12\27\0\2\12\1\0\3\12\1\0"+ 306 "\2\12\1\0\6\12\1\u0113\20\12\27\0\2\12\1\0"+ 307 "\3\12\1\0\2\12\1\0\1\12\1\u0114\25\12\27\0"+ 308 "\2\12\1\0\3\12\1\0\2\12\1\0\1\u0115\26\12"+ 309 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\22\12"+ 310 "\1\u0116\4\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 311 "\1\0\3\12\1\u0117\23\12\36\0\1\u0118\74\0\1\u0119"+ 312 "\102\0\1\u011a\40\0\2\12\1\0\3\12\1\0\2\12"+ 313 "\1\0\22\12\1\u011b\4\12\27\0\2\12\1\0\3\12"+ 314 "\1\0\1\u011c\1\12\1\0\27\12\27\0\2\12\1\0"+ 315 "\3\12\1\0\2\12\1\0\14\12\1\u011d\12\12\27\0"+ 316 "\2\12\1\0\3\12\1\0\2\12\1\0\6\12\1\u011e"+ 317 "\20\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 318 "\3\12\1\u011f\23\12\27\0\2\12\1\0\1\12\1\u0120"+ 319 "\1\12\1\0\2\12\1\0\27\12\27\0\2\12\1\0"+ 320 "\3\12\1\0\2\12\1\0\22\12\1\u0121\4\12\27\0"+ 321 "\2\12\1\0\3\12\1\0\2\12\1\0\12\12\1\u0122"+ 322 "\14\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 323 "\1\12\1\u0123\25\12\27\0\2\12\1\0\3\12\1\0"+ 324 "\2\12\1\0\15\12\1\u0124\11\12\27\0\2\12\1\0"+ 325 "\3\12\1\0\2\12\1\0\1\12\1\u0125\25\12\27\0"+ 326 "\2\12\1\0\3\12\1\0\1\u0126\1\12\1\0\27\12"+ 327 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\6\12"+ 328 "\1\u0127\20\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 329 "\1\0\11\12\1\u0128\15\12\27\0\2\12\1\0\3\12"+ 330 "\1\0\2\12\1\0\1\12\1\u0129\25\12\27\0\2\12"+ 331 "\1\0\3\12\1\0\2\12\1\0\15\12\1\u012a\11\12"+ 332 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\11\12"+ 333 "\1\u012b\15\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 334 "\1\0\5\12\1\u012c\21\12\27\0\2\12\1\0\3\12"+ 335 "\1\0\1\u012d\1\12\1\0\27\12\27\0\2\12\1\0"+ 336 "\3\12\1\0\2\12\1\0\16\12\1\u012e\10\12\27\0"+ 337 "\2\12\1\0\3\12\1\0\1\u012f\1\12\1\0\27\12"+ 338 "\36\0\1\u0130\60\0\2\12\1\0\3\12\1\0\2\12"+ 339 "\1\0\7\12\1\u0131\17\12\27\0\2\12\1\0\3\12"+ 340 "\1\0\1\u0132\1\12\1\0\27\12\27\0\2\12\1\0"+ 341 "\3\12\1\0\2\12\1\0\13\12\1\u0133\13\12\27\0"+ 342 "\2\12\1\0\3\12\1\0\1\u0134\1\12\1\0\27\12"+ 343 "\27\0\2\12\1\0\3\12\1\0\1\u0135\1\12\1\0"+ 344 "\27\12\27\0\2\12\1\0\1\12\1\u0136\1\12\1\0"+ 345 "\2\12\1\0\27\12\27\0\2\12\1\0\3\12\1\0"+ 346 "\2\12\1\0\10\12\1\u0137\16\12\27\0\2\12\1\0"+ 347 "\3\12\1\0\2\12\1\0\7\12\1\u0138\17\12\27\0"+ 348 "\2\12\1\0\3\12\1\0\1\u0139\1\12\1\0\27\12"+ 349 "\27\0\2\12\1\0\3\12\1\0\1\u013a\1\12\1\0"+ 350 "\27\12\27\0\2\12\1\0\1\12\1\u013b\1\12\1\0"+ 351 "\2\12\1\0\27\12\27\0\2\12\1\0\3\12\1\0"+ 352 "\1\u013c\1\12\1\0\27\12\27\0\2\12\1\0\3\12"+ 353 "\1\0\2\12\1\0\13\12\1\u013d\13\12\27\0\2\12"+ 354 "\1\0\3\12\1\0\2\12\1\0\2\12\1\u013e\24\12"+ 355 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\26\12"+ 356 "\1\u013f\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 357 "\7\12\1\u0140\17\12\27\0\2\12\1\0\3\12\1\0"+ 358 "\2\12\1\0\1\12\1\u0141\25\12\27\0\2\12\1\0"+ 359 "\3\12\1\0\2\12\1\0\22\12\1\u0142\4\12\27\0"+ 360 "\2\12\1\0\3\12\1\0\2\12\1\0\1\12\1\u0143"+ 361 "\25\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 362 "\17\12\1\u0144\7\12\27\0\2\12\1\0\3\12\1\0"+ 363 "\2\12\1\0\1\u0145\26\12\27\0\2\12\1\0\3\12"+ 364 "\1\0\2\12\1\0\1\12\1\u0146\25\12\27\0\2\12"+ 365 "\1\0\3\12\1\0\2\12\1\0\1\u0147\26\12\27\0"+ 366 "\2\12\1\0\3\12\1\0\2\12\1\0\6\12\1\u0148"+ 367 "\20\12\27\0\2\12\1\0\3\12\1\0\2\12\1\0"+ 368 "\1\u0149\26\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 369 "\1\0\12\12\1\u014a\14\12\27\0\2\12\1\0\3\12"+ 370 "\1\0\2\12\1\0\11\12\1\u014b\15\12\27\0\2\12"+ 371 "\1\0\3\12\1\0\2\12\1\0\1\u014c\26\12\27\0"+ 372 "\2\12\1\0\3\12\1\0\2\12\1\0\16\12\1\u014d"+ 373 "\10\12\27\0\2\12\1\0\3\12\1\0\1\u014e\1\12"+ 374 "\1\0\27\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 375 "\1\0\10\12\1\u014f\16\12\27\0\2\12\1\0\3\12"+ 376 "\1\0\2\12\1\0\1\12\1\u0150\25\12\27\0\2\12"+ 377 "\1\0\3\12\1\0\2\12\1\0\10\12\1\u0151\16\12"+ 378 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\10\12"+ 379 "\1\u0152\16\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 380 "\1\0\10\12\1\u0153\16\12\27\0\2\12\1\0\3\12"+ 381 "\1\0\1\u0154\1\12\1\0\27\12\27\0\2\12\1\0"+ 382 "\3\12\1\0\2\12\1\0\10\12\1\u0155\16\12\27\0"+ 383 "\2\12\1\0\3\12\1\0\1\u0156\1\12\1\0\27\12"+ 384 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\10\12"+ 385 "\1\u0157\16\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 386 "\1\0\1\12\1\u0158\25\12\27\0\2\12\1\0\3\12"+ 387 "\1\0\2\12\1\0\16\12\1\u0159\10\12\27\0\2\12"+ 388 "\1\0\3\12\1\0\1\u015a\1\12\1\0\27\12\27\0"+ 389 "\2\12\1\0\3\12\1\0\2\12\1\0\16\12\1\u015b"+ 390 "\10\12\27\0\2\12\1\0\3\12\1\0\1\u015c\1\12"+ 391 "\1\0\27\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 392 "\1\0\10\12\1\u015d\16\12\27\0\2\12\1\0\3\12"+ 393 "\1\0\2\12\1\0\10\12\1\u015e\16\12\27\0\2\12"+ 394 "\1\0\3\12\1\0\2\12\1\0\6\12\1\u015f\20\12"+ 395 "\27\0\2\12\1\0\3\12\1\0\2\12\1\0\10\12"+ 396 "\1\u0160\16\12\27\0\2\12\1\0\3\12\1\0\2\12"+ 397 "\1\0\1\u0161\26\12\27\0\2\12\1\0\3\12\1\0"+ 398 "\2\12\1\0\10\12\1\u0162\16\12\27\0\2\12\1\0"+ 399 "\3\12\1\0\2\12\1\0\1\u0163\26\12\20\0"; 400 401 /** 402 * The transition table of the DFA 403 */ 404 final private static int yytrans [] = yy_unpack(); 405 406 407 /* error codes */ 408 final private static int YY_UNKNOWN_ERROR = 0; 409 final private static int YY_NO_MATCH = 2; 410 411 /* error messages for the codes above */ 412 final private static String YY_ERROR_MSG[] = { 413 "Unkown internal scanner error", 414 "Internal error: unknown state", 415 "Error: could not match input", 416 "Error: pushback value was too large" 417 }; 418 419 /** 420 * YY_ATTRIBUTE[aState] contains the attributes of state <code>aState</code> 421 */ 422 private final static byte YY_ATTRIBUTE[] = { 423 0, 0, 0, 9, 1, 9, 1, 9, 1, 1, 1, 1, 1, 1, 9, 1, 424 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 425 1, 1, 1, 9, 9, 9, 9, 9, 9, 9, 9, 1, 9, 1, 9, 1, 426 1, 9, 1, 9, 9, 0, 0, 0, 0, 1, 1, 1, 9, 1, 1, 1, 427 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 428 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 9, 9, 9, 9, 9, 9, 429 9, 9, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 430 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 431 1, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 432 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 433 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 434 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 435 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 436 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 437 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 438 1, 1, 1, 1, 1, 9, 0, 0, 0, 9, 1, 1, 1, 1, 1, 1, 439 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 440 1, 1, 1, 1, 1, 1, 1, 9, 0, 9, 1, 1, 1, 1, 1, 1, 441 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 9, 442 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 443 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 444 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 445 1, 1, 1 446 }; 447 448 /** the input device */ 449 private java.io.Reader yy_reader; 450 451 /** the current state of the DFA */ 452 private int yy_state; 453 454 /** the current lexical state */ 455 private int yy_lexical_state = YYINITIAL; 456 457 /** this buffer contains the current text to be matched and is 458 the source of the yytext() string */ 459 private char yy_buffer[] = new char[YY_BUFFERSIZE]; 460 461 /** the textposition at the last accepting state */ 462 private int yy_markedPos; 463 464 /** the textposition at the last state to be included in yytext */ 465 private int yy_pushbackPos; 466 467 /** the current text position in the buffer */ 468 private int yy_currentPos; 469 470 /** startRead marks the beginning of the yytext() string in the buffer */ 471 private int yy_startRead; 472 473 /** endRead marks the last character in the buffer, that has been read 474 from input */ 475 private int yy_endRead; 476 477 /** number of newlines encountered up to the start of the matched text */ 478 private int yyline; 479 480 /** the number of characters up to the start of the matched text */ 481 private int yychar; 482 483 /** 484 * the number of characters from the last newline up to the start of the 485 * matched text 486 */ 487 private int yycolumn; 488 489 /** yy_atEOF == true <=> the scanner is at the EOF */ 490 private boolean yy_atEOF; 491 492 /** denotes if the user-EOF-code has already been executed */ 493 private boolean yy_eof_done; 494 495 /* user code: */ 496 private StringBuilder string = new StringBuilder(); 497 498 private Symbol symbol(int type){ 499 return new Symbol(type, yyline, yycolumn); 500 } 501 502 private Symbol symbol(int type, Object value){ 503 return new Symbol(type, yyline, yycolumn, value); 504 } 505 506 private volatile int previousYYchar = 0; 507 508 public int getPreviousPosition(){ 509 return previousYYchar; 510 } 511 512 public int getPosition(){ 513 return yychar; 514 } 515 516 517 /** 518 * Creates a new scanner 519 * There is also a java.io.InputStream version of this constructor. 520 * 521 * @param in the java.io.Reader to read input from. 522 */ 523 public Lexer(java.io.Reader in) { 524 this.yy_reader = in; 525 } 526 527 /** 528 * Creates a new scanner. 529 * There is also java.io.Reader version of this constructor. 530 * 531 * @param in the java.io.Inputstream to read input from. 532 */ 533 public Lexer(java.io.InputStream in) { 534 this(new java.io.InputStreamReader(in)); 535 } 536 537 /** 538 * Unpacks the split, compressed DFA transition table. 539 * 540 * @return the unpacked transition table 541 */ 542 private static int [] yy_unpack() { 543 int [] trans = new int[15288]; 544 int offset = 0; 545 offset = yy_unpack(yy_packed0, offset, trans); 546 return trans; 547 } 548 549 /** 550 * Unpacks the compressed DFA transition table. 551 * 552 * @param packed the packed transition table 553 * @return the index of the last entry 554 */ 555 private static int yy_unpack(String packed, int offset, int [] trans) { 556 int i = 0; /* index in packed string */ 557 int j = offset; /* index in unpacked array */ 558 int l = packed.length(); 559 while (i < l) { 560 int count = packed.charAt(i++); 561 int value = packed.charAt(i++); 562 value--; 563 do trans[j++] = value; while (--count > 0); 564 } 565 return j; 566 } 567 568 /** 569 * Unpacks the compressed character translation table. 570 * 571 * @param packed the packed character translation table 572 * @return the unpacked character translation table 573 */ 574 private static char [] yy_unpack_cmap(String packed) { 575 char [] map = new char[0x10000]; 576 int i = 0; /* index in packed string */ 577 int j = 0; /* index in unpacked array */ 578 while (i < 140) { 579 int count = packed.charAt(i++); 580 char value = packed.charAt(i++); 581 do map[j++] = value; while (--count > 0); 582 } 583 return map; 584 } 585 586 587 /** 588 * Refills the input buffer. 589 * 590 * @return <code>false</code>, iff there was new input. 591 * 592 * @exception IOException if any I/O-Error occurs 593 */ 594 private boolean yy_refill() throws java.io.IOException { 595 596 /* first: make room (if you can) */ 597 if (yy_startRead > 0) { 598 System.arraycopy(yy_buffer, yy_startRead, 599 yy_buffer, 0, 600 yy_endRead-yy_startRead); 601 602 /* translate stored positions */ 603 yy_endRead-= yy_startRead; 604 yy_currentPos-= yy_startRead; 605 yy_markedPos-= yy_startRead; 606 yy_pushbackPos-= yy_startRead; 607 yy_startRead = 0; 608 } 609 610 /* is the buffer big enough? */ 611 if (yy_currentPos >= yy_buffer.length) { 612 /* if not: blow it up */ 613 char newBuffer[] = new char[yy_currentPos*2]; 614 System.arraycopy(yy_buffer, 0, newBuffer, 0, yy_buffer.length); 615 yy_buffer = newBuffer; 616 } 617 618 /* finally: fill the buffer with new input */ 619 int numRead = yy_reader.read(yy_buffer, yy_endRead, 620 yy_buffer.length-yy_endRead); 621 622 if (numRead < 0) { 623 return true; 624 } 625 yy_endRead+= numRead; 626 return false; 627 } 628 629 630 /** 631 * Closes the input stream. 632 */ 633 final public void yyclose() throws java.io.IOException { 634 yy_atEOF = true; /* indicate end of file */ 635 yy_endRead = yy_startRead; /* invalidate buffer */ 636 637 if (yy_reader != null) 638 yy_reader.close(); 639 } 640 641 642 /** 643 * Closes the current stream, and resets the 644 * scanner to read from a new input stream. 645 * 646 * All internal variables are reset, the old input stream 647 * <b>cannot</b> be reused (internal buffer is discarded and lost). 648 * Lexical state is set to <tt>YY_INITIAL</tt>. 649 * 650 * @param reader the new input stream 651 */ 652 final public void yyreset(java.io.Reader reader) throws java.io.IOException { 653 yyclose(); 654 yy_reader = reader; 655 yy_atEOF = false; 656 yy_endRead = yy_startRead = 0; 657 yy_currentPos = yy_markedPos = yy_pushbackPos = 0; 658 yyline = yychar = yycolumn = 0; 659 yy_lexical_state = YYINITIAL; 660 } 661 662 663 /** 664 * Returns the current lexical state. 665 */ 666 final public int yystate() { 667 return yy_lexical_state; 668 } 669 670 671 /** 672 * Enters a new lexical state 673 * 674 * @param newState the new lexical state 675 */ 676 final public void yybegin(int newState) { 677 yy_lexical_state = newState; 678 } 679 680 681 /** 682 * Returns the text matched by the current regular expression. 683 */ 684 final public String yytext() { 685 return new String( yy_buffer, yy_startRead, yy_markedPos-yy_startRead ); 686 } 687 688 689 /** 690 * Returns the character at position <tt>pos</tt> from the 691 * matched text. 692 * 693 * It is equivalent to yytext().charAt(pos), but faster 694 * 695 * @param pos the position of the character to fetch. 696 * A value from 0 to yylength()-1. 697 * 698 * @return the character at position pos 699 */ 700 final public char yycharat(int pos) { 701 return yy_buffer[yy_startRead+pos]; 702 } 703 704 705 /** 706 * Returns the length of the matched text region. 707 */ 708 final public int yylength() { 709 return yy_markedPos-yy_startRead; 710 } 711 712 713 /** 714 * Reports an error that occured while scanning. 715 * 716 * In a wellformed scanner (no or only correct usage of 717 * yypushback(int) and a match-all fallback rule) this method 718 * will only be called with things that "Can't Possibly Happen". 719 * If this method is called, something is seriously wrong 720 * (e.g. a JFlex bug producing a faulty scanner etc.). 721 * 722 * Usual syntax/scanner level error handling should be done 723 * in error fallback rules. 724 * 725 * @param errorCode the code of the errormessage to display 726 */ 727 private void yy_ScanError(int errorCode) { 728 String message; 729 try { 730 message = YY_ERROR_MSG[errorCode]; 731 } 732 catch (ArrayIndexOutOfBoundsException e) { 733 message = YY_ERROR_MSG[YY_UNKNOWN_ERROR]; 734 } 735 736 throw new Error(message); 737 } 738 739 /** 740 * Contains user EOF-code, which will be executed exactly once, 741 * when the end of file is reached 742 */ 743 private void yy_do_eof() throws java.io.IOException { 744 if (!yy_eof_done) { 745 yy_eof_done = true; 746 yyclose(); 747 } 748 } 749 750 751 /** 752 * Resumes scanning until the next regular expression is matched, 753 * the end of input is encountered or an I/O-Error occurs. 754 * 755 * @return the next token 756 * @exception IOException if any I/O-Error occurs 757 */ 758 public java_cup.runtime.Symbol next_token() throws java.io.IOException { 759 previousYYchar = yychar; 760 761 int yy_input; 762 int yy_action; 763 764 // cached fields: 765 int yy_currentPos_l; 766 int yy_markedPos_l; 767 int yy_endRead_l = yy_endRead; 768 char [] yy_buffer_l = yy_buffer; 769 char [] yycmap_l = yycmap; 770 771 int [] yytrans_l = yytrans; 772 int [] yy_rowMap_l = yy_rowMap; 773 byte [] yy_attr_l = YY_ATTRIBUTE; 774 775 while (true) { 776 yy_markedPos_l = yy_markedPos; 777 778 yychar+= yy_markedPos_l-yy_startRead; 779 780 boolean yy_r = false; 781 for (yy_currentPos_l = yy_startRead; yy_currentPos_l < yy_markedPos_l; 782 yy_currentPos_l++) { 783 switch (yy_buffer_l[yy_currentPos_l]) { 784 case '\u000B': 785 case '\u000C': 786 case '\u0085': 787 case '\u2028': 788 case '\u2029': 789 yyline++; 790 yycolumn = 0; 791 yy_r = false; 792 break; 793 case '\r': 794 yyline++; 795 yycolumn = 0; 796 yy_r = true; 797 break; 798 case '\n': 799 if (yy_r) 800 yy_r = false; 801 else { 802 yyline++; 803 yycolumn = 0; 804 } 805 break; 806 default: 807 yy_r = false; 808 yycolumn++; 809 } 810 } 811 812 if (yy_r) { 813 // peek one character ahead if it is \n (if we have counted one line too much) 814 boolean yy_peek; 815 if (yy_markedPos_l < yy_endRead_l) 816 yy_peek = yy_buffer_l[yy_markedPos_l] == '\n'; 817 else if (yy_atEOF) 818 yy_peek = false; 819 else { 820 boolean eof = yy_refill(); 821 yy_markedPos_l = yy_markedPos; 822 yy_buffer_l = yy_buffer; 823 if (eof) 824 yy_peek = false; 825 else 826 yy_peek = yy_buffer_l[yy_markedPos_l] == '\n'; 827 } 828 if (yy_peek) yyline--; 829 } 830 yy_action = -1; 831 832 yy_currentPos_l = yy_currentPos = 833 yy_startRead = yy_markedPos_l; 834 835 yy_state = yy_lexical_state; 836 837 838 yy_forAction: { 839 while (true) { 840 841 if (yy_currentPos_l < yy_endRead_l) 842 yy_input = yy_buffer_l[yy_currentPos_l++]; 843 else if (yy_atEOF) { 844 yy_input = YYEOF; 845 break yy_forAction; 846 } 847 else { 848 // store back cached positions 849 yy_currentPos = yy_currentPos_l; 850 yy_markedPos = yy_markedPos_l; 851 boolean eof = yy_refill(); 852 // get translated positions and possibly new buffer 853 yy_currentPos_l = yy_currentPos; 854 yy_markedPos_l = yy_markedPos; 855 yy_buffer_l = yy_buffer; 856 yy_endRead_l = yy_endRead; 857 if (eof) { 858 yy_input = YYEOF; 859 break yy_forAction; 860 } 861 yy_input = yy_buffer_l[yy_currentPos_l++]; 862 } 863 int yy_next = yytrans_l[ yy_rowMap_l[yy_state] + yycmap_l[yy_input] ]; 864 if (yy_next == -1) break yy_forAction; 865 yy_state = yy_next; 866 867 int yy_attributes = yy_attr_l[yy_state]; 868 if ( (yy_attributes & 1) == 1 ) { 869 yy_action = yy_state; 870 yy_markedPos_l = yy_currentPos_l; 871 if ( (yy_attributes & 8) == 8 ) break yy_forAction; 872 } 873 874 } 875 } 876 877 // store back cached position 878 yy_markedPos = yy_markedPos_l; 879 880 switch (yy_action) { 881 882 case 340: 883 { return symbol(sym.ABS_TIMEOUT); } 884 case 356: break; 885 case 339: 886 { return symbol(sym.UNSUBSCRIBE); } 887 case 357: break; 888 case 337: 889 { return symbol(sym.REC_CONNECT); } 890 case 358: break; 891 case 336: 892 { return symbol(sym.REC_REQUEST); } 893 case 359: break; 894 case 321: 895 { return symbol(sym.SND_CANCEL); } 896 case 360: break; 897 case 90: 898 { return symbol(sym.LEFTCHOICE); } 899 case 361: break; 900 case 60: 901 { return symbol(sym.RIGHTCHOICE); } 902 case 362: break; 903 case 273: 904 { return symbol(sym.REL_TIMEOUT); } 905 case 363: break; 906 case 10: 907 case 13: 908 { return symbol(sym.INT, new Integer(yytext())); } 909 case 364: break; 910 case 318: 911 { return symbol(sym.ABS_DELAY); } 912 case 365: break; 913 case 317: 914 { return symbol(sym.UNDEFINED); } 915 case 366: break; 916 case 315: 917 { return symbol(sym.REC_VALUE); } 918 case 367: break; 919 case 310: 920 { return symbol(sym.REC_EVENT); } 921 case 368: break; 922 case 308: 923 { return symbol(sym.SUBSCRIBE); } 924 case 369: break; 925 case 293: 926 { return symbol(sym.REC_NOTE); } 927 case 370: break; 928 case 290: 929 { return symbol(sym.SHUTDOWN); } 930 case 371: break; 931 case 288: 932 { return symbol(sym.SND_KILL); } 933 case 372: break; 934 case 283: 935 { return symbol(sym.SND_NOTE); } 936 case 373: break; 937 case 282: 938 { return symbol(sym.SND_EVAL); } 939 case 374: break; 940 case 46: 941 { return symbol(sym.QUESTION); } 942 case 375: break; 943 case 185: 944 { return symbol(sym.REL_DELAY); } 945 case 376: break; 946 case 303: 947 { yybegin(INCLUDE); return symbol(sym.INCLUDE); } 948 case 377: break; 949 case 81: 950 { return symbol(sym.FI); } 951 case 378: break; 952 case 79: 953 { return symbol(sym.IF); } 954 case 379: break; 955 case 78: 956 { return symbol(sym.IN); } 957 case 380: break; 958 case 77: 959 { return symbol(sym.IS); } 960 case 381: break; 961 case 14: 962 { return symbol(sym.SEQ); } 963 case 382: break; 964 case 4: 965 case 5: 966 { /* ignore */ } 967 case 383: break; 968 case 118: 969 { return symbol(sym.TAU); } 970 case 384: break; 971 case 127: 972 { return symbol(sym.LET); } 973 case 385: break; 974 case 134: 975 { /* ignore */ } 976 case 386: break; 977 case 348: 978 { return symbol(sym.SND_ACK_EVENT); } 979 case 387: break; 980 case 347: 981 { return symbol(sym.SND_TERMINATE); } 982 case 388: break; 983 case 341: 984 { return symbol(sym.SND_RESPONSE); } 985 case 389: break; 986 case 49: 987 { yybegin(YYINITIAL); return symbol(sym.STRING, string.toString()); } 988 case 390: break; 989 case 43: 990 { return symbol(sym.COLON); } 991 case 391: break; 992 case 7: 993 { return symbol(sym.ITER); } 994 case 392: break; 995 case 36: 996 { return symbol(sym.LPAR); } 997 case 393: break; 998 case 37: 999 { return symbol(sym.RPAR); } 1000 case 394: break; 1001 case 38: 1002 { return symbol(sym.COMMA); } 1003 case 395: break; 1004 case 137: 1005 { return symbol(sym.ELSE); } 1006 case 396: break; 1007 case 147: 1008 { return symbol(sym.READ); } 1009 case 397: break; 1010 case 151: 1011 { return symbol(sym.TRUE); } 1012 case 398: break; 1013 case 152: 1014 { return symbol(sym.TOOL); } 1015 case 399: break; 1016 case 154: 1017 { return symbol(sym.THEN); } 1018 case 400: break; 1019 case 161: 1020 { return symbol(sym.KIND); } 1021 case 401: break; 1022 case 162: 1023 { return symbol(sym.HOST); } 1024 case 402: break; 1025 case 184: 1026 { return symbol(sym.DELTA); } 1027 case 403: break; 1028 case 197: 1029 { return symbol(sym.CLASS); } 1030 case 404: break; 1031 case 204: 1032 { return symbol(sym.FALSE); } 1033 case 405: break; 1034 case 245: 1035 { return symbol(sym.ENDIF); } 1036 case 406: break; 1037 case 249: 1038 { return symbol(sym.IFDEF); } 1039 case 407: break; 1040 case 3: 1041 case 6: 1042 case 8: 1043 case 12: 1044 case 32: 1045 case 45: 1046 { throw new SyntaxErrorException(yyline, yycolumn, yychar, yy_action); } 1047 case 408: break; 1048 case 48: 1049 { string.append('\\'); } 1050 case 409: break; 1051 case 94: 1052 { string.append('\n'); } 1053 case 410: break; 1054 case 95: 1055 { string.append('\r'); } 1056 case 411: break; 1057 case 96: 1058 { string.append('\t'); } 1059 case 412: break; 1060 case 97: 1061 { string.append('\"'); } 1062 case 413: break; 1063 case 51: 1064 { string.setLength(0); } 1065 case 414: break; 1066 case 354: 1067 { return symbol(sym.REC_PERF_STATS); } 1068 case 415: break; 1069 case 353: 1070 { return symbol(sym.REC_DISCONNECT); } 1071 case 416: break; 1072 case 352: 1073 { return symbol(sym.GET_PERF_STATS); } 1074 case 417: break; 1075 case 11: 1076 { return symbol(sym.NAME, yytext()); } 1077 case 418: break; 1078 case 9: 1079 case 15: 1080 case 17: 1081 case 18: 1082 case 19: 1083 case 20: 1084 case 21: 1085 case 22: 1086 case 23: 1087 case 24: 1088 case 25: 1089 case 26: 1090 case 27: 1091 case 28: 1092 case 29: 1093 case 30: 1094 case 31: 1095 case 57: 1096 case 58: 1097 case 59: 1098 case 61: 1099 case 62: 1100 case 63: 1101 case 64: 1102 case 65: 1103 case 66: 1104 case 67: 1105 case 68: 1106 case 69: 1107 case 70: 1108 case 71: 1109 case 72: 1110 case 73: 1111 case 74: 1112 case 75: 1113 case 76: 1114 case 80: 1115 case 82: 1116 case 83: 1117 case 84: 1118 case 85: 1119 case 86: 1120 case 101: 1121 case 102: 1122 case 103: 1123 case 104: 1124 case 105: 1125 case 106: 1126 case 107: 1127 case 108: 1128 case 109: 1129 case 110: 1130 case 111: 1131 case 112: 1132 case 113: 1133 case 114: 1134 case 115: 1135 case 116: 1136 case 117: 1137 case 119: 1138 case 120: 1139 case 121: 1140 case 122: 1141 case 123: 1142 case 124: 1143 case 125: 1144 case 126: 1145 case 128: 1146 case 136: 1147 case 138: 1148 case 139: 1149 case 140: 1150 case 141: 1151 case 142: 1152 case 143: 1153 case 144: 1154 case 145: 1155 case 146: 1156 case 148: 1157 case 149: 1158 case 150: 1159 case 153: 1160 case 155: 1161 case 156: 1162 case 157: 1163 case 158: 1164 case 159: 1165 case 160: 1166 case 170: 1167 case 171: 1168 case 172: 1169 case 173: 1170 case 174: 1171 case 175: 1172 case 176: 1173 case 177: 1174 case 178: 1175 case 179: 1176 case 180: 1177 case 181: 1178 case 182: 1179 case 183: 1180 case 186: 1181 case 187: 1182 case 188: 1183 case 189: 1184 case 190: 1185 case 191: 1186 case 192: 1187 case 193: 1188 case 194: 1189 case 195: 1190 case 196: 1191 case 198: 1192 case 199: 1193 case 200: 1194 case 201: 1195 case 202: 1196 case 203: 1197 case 205: 1198 case 206: 1199 case 213: 1200 case 214: 1201 case 215: 1202 case 217: 1203 case 218: 1204 case 219: 1205 case 220: 1206 case 221: 1207 case 222: 1208 case 223: 1209 case 224: 1210 case 225: 1211 case 226: 1212 case 227: 1213 case 228: 1214 case 229: 1215 case 230: 1216 case 231: 1217 case 232: 1218 case 233: 1219 case 234: 1220 case 236: 1221 case 237: 1222 case 238: 1223 case 239: 1224 case 240: 1225 case 241: 1226 case 243: 1227 case 244: 1228 case 251: 1229 case 252: 1230 case 254: 1231 case 255: 1232 case 256: 1233 case 257: 1234 case 258: 1235 case 259: 1236 case 260: 1237 case 262: 1238 case 263: 1239 case 264: 1240 case 265: 1241 case 267: 1242 case 268: 1243 case 269: 1244 case 270: 1245 case 274: 1246 case 275: 1247 case 277: 1248 case 278: 1249 case 284: 1250 case 285: 1251 case 286: 1252 case 287: 1253 case 289: 1254 case 291: 1255 case 292: 1256 case 294: 1257 case 295: 1258 case 296: 1259 case 297: 1260 case 298: 1261 case 299: 1262 case 300: 1263 case 301: 1264 case 302: 1265 case 304: 1266 case 305: 1267 case 306: 1268 case 307: 1269 case 309: 1270 case 311: 1271 case 312: 1272 case 313: 1273 case 314: 1274 case 316: 1275 case 319: 1276 case 320: 1277 case 322: 1278 case 323: 1279 case 324: 1280 case 325: 1281 case 326: 1282 case 327: 1283 case 328: 1284 case 329: 1285 case 330: 1286 case 331: 1287 case 332: 1288 case 333: 1289 case 334: 1290 case 335: 1291 case 338: 1292 case 342: 1293 case 343: 1294 case 344: 1295 case 345: 1296 case 346: 1297 case 349: 1298 case 350: 1299 case 351: 1300 { return symbol(sym.IDENT, yytext()); } 1301 case 419: break; 1302 case 100: 1303 case 168: 1304 { return symbol(sym.REAL, yytext()); } 1305 case 420: break; 1306 case 35: 1307 { string.setLength(0); yybegin(STRING); } 1308 case 421: break; 1309 case 92: 1310 { return symbol(sym.ASSIGN); } 1311 case 422: break; 1312 case 91: 1313 { return symbol(sym.DISRUPT); } 1314 case 423: break; 1315 case 52: 1316 { yybegin(YYINITIAL); return symbol(sym.FILENAME, string.toString()); } 1317 case 424: break; 1318 case 50: 1319 { string.append( yytext() ); } 1320 case 425: break; 1321 case 47: 1322 { string.append( yytext() ); } 1323 case 426: break; 1324 case 44: 1325 { return symbol(sym.EQUALS); } 1326 case 427: break; 1327 case 42: 1328 { return symbol(sym.RSQUARE); } 1329 case 428: break; 1330 case 16: 1331 { return symbol(sym.CHOICE); } 1332 case 429: break; 1333 case 33: 1334 { return symbol(sym.LANGLE); } 1335 case 430: break; 1336 case 34: 1337 { return symbol(sym.RANGLE); } 1338 case 431: break; 1339 case 39: 1340 { return symbol(sym.LBRACE); } 1341 case 432: break; 1342 case 40: 1343 { return symbol(sym.RBRACE); } 1344 case 433: break; 1345 case 41: 1346 { return symbol(sym.LSQUARE); } 1347 case 434: break; 1348 case 93: 1349 { return symbol(sym.FMERGE); } 1350 case 435: break; 1351 case 212: 1352 { return symbol(sym.ENDLET); } 1353 case 436: break; 1354 case 216: 1355 { return symbol(sym.SND_DO); } 1356 case 437: break; 1357 case 235: 1358 { return symbol(sym.CREATE); } 1359 case 438: break; 1360 case 242: 1361 { return symbol(sym.PRINTF); } 1362 case 439: break; 1363 case 250: 1364 { return symbol(sym.EXECUTE); } 1365 case 440: break; 1366 case 253: 1367 { return symbol(sym.SND_MSG); } 1368 case 441: break; 1369 case 261: 1370 { return symbol(sym.NO_NOTE); } 1371 case 442: break; 1372 case 266: 1373 { return symbol(sym.REC_MSG); } 1374 case 443: break; 1375 case 271: 1376 { return symbol(sym.COMMAND); } 1377 case 444: break; 1378 case 272: 1379 { return symbol(sym.TOOLBUS); } 1380 case 445: break; 1381 case 276: 1382 { return symbol(sym.PROCESS); } 1383 case 446: break; 1384 case 279: 1385 { return symbol(sym.DEFINE); } 1386 case 447: break; 1387 case 281: 1388 { return symbol(sym.IFNDEF); } 1389 case 448: break; 1390 default: 1391 if (yy_input == YYEOF && yy_startRead == yy_currentPos) { 1392 yy_atEOF = true; 1393 yy_do_eof(); 1394 { return new java_cup.runtime.Symbol(sym.EOF); } 1395 } 1396 yy_ScanError(YY_NO_MATCH); 1397 } 1398 } 1399 } 1400 1401 1402 }