0001: /* The following code was generated by JFlex 1.3 on 2/14/01 2:21 PM */
0002:
0003: /*
0004: * Copyright (c) 2001, Jacob Smullyan.
0005: *
0006: * This is part of SkunkDAV, a WebDAV client. See http://skunkdav.sourceforge.net/
0007: * for the latest version.
0008: *
0009: * SkunkDAV is free software; you can redistribute it and/or
0010: * modify it under the terms of the GNU General Public License as published
0011: * by the Free Software Foundation; either version 2, or (at your option)
0012: * any later version.
0013: *
0014: * SkunkDAV is distributed in the hope that it will be useful,
0015: * but WITHOUT ANY WARRANTY; without even the implied warranty of
0016: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
0017: * General Public License for more details.
0018: *
0019: * You should have received a copy of the GNU General Public License
0020: * along with SkunkDAV; see the file COPYING. If not, write to the Free
0021: * Software Foundation, 59 Temple Place - Suite 330, Boston, MA
0022: * 02111-1307, USA.
0023: */
0024:
0025: /*
0026: This jflex file is based on the java.flex file that comes with the JFlex distribution.
0027: */
0028:
0029: package org.skunk.swing.text.syntax;
0030:
0031: //for main method
0032: import java.io.FileNotFoundException;
0033: import java.io.FileReader;
0034: import java.io.IOException;
0035:
0036: /**
0037: * This class is a scanner generated by
0038: * <a href="http://www.jflex.de/">JFlex</a> 1.3
0039: * on 2/14/01 2:21 PM from the specification file
0040: * <tt>file:/home/smulloni/workdir/skunkdav/org/skunk/swing/text/syntax/java.flex</tt>
0041: */
0042: public class JavaFlexScanner extends FlexScanner {
0043:
0044: /** This character denotes the end of file */
0045: final public static int YYEOF = -1;
0046:
0047: /** initial size of the lookahead buffer */
0048: final private static int YY_BUFFERSIZE = 16384;
0049:
0050: /** lexical states */
0051: final public static int SINGLE_LINE_COMMENT_STATE = 3;
0052: final public static int YYINITIAL = 0;
0053: final public static int DOCCOMMENT_STATE = 4;
0054: final public static int CHAR_STATE = 2;
0055: final public static int STRING_STATE = 1;
0056: final public static int MULTI_LINE_COMMENT_STATE = 5;
0057:
0058: /**
0059: * Translates characters to character classes
0060: */
0061: final private static String yycmap_packed = "\11\7\1\3\1\2\1\0\1\3\1\1\16\7\4\0\1\3\1\62"
0062: + "\1\67\1\0\1\6\1\62\1\64\1\70\1\56\1\56\1\4\1\66"
0063: + "\1\56\1\23\1\21\1\5\1\10\1\16\2\15\4\17\2\11\1\63"
0064: + "\1\56\1\61\1\57\1\60\1\63\1\25\3\14\1\20\1\22\1\20"
0065: + "\5\6\1\12\13\6\1\13\2\6\1\56\1\24\1\56\1\62\1\6"
0066: + "\1\0\1\26\1\50\1\41\1\47\1\35\1\51\1\55\1\31\1\37"
0067: + "\1\6\1\45\1\44\1\43\1\40\1\32\1\42\1\6\1\33\1\36"
0068: + "\1\30\1\27\1\34\1\52\1\46\1\53\1\54\1\56\1\65\1\56"
0069: + "\1\63\41\7\2\0\4\6\4\0\1\6\12\0\1\6\4\0\1\6"
0070: + "\5\0\27\6\1\0\37\6\1\0\376\6\4\0\36\6\70\0\131\6"
0071: + "\7\0\11\6\2\0\7\6\16\0\2\6\16\0\5\6\33\0\106\7"
0072: + "\32\0\2\7\30\0\1\6\13\0\1\6\1\0\3\6\1\0\1\6"
0073: + "\1\0\24\6\1\0\54\6\1\0\7\6\3\0\1\6\1\0\1\6"
0074: + "\1\0\1\6\1\0\1\6\1\0\22\6\15\0\14\6\1\0\102\6"
0075: + "\1\0\14\6\1\0\44\6\1\0\4\7\11\0\65\6\2\0\2\6"
0076: + "\2\0\2\6\3\0\34\6\2\0\10\6\2\0\2\6\67\0\46\6"
0077: + "\2\0\1\6\7\0\47\6\11\0\21\7\1\0\27\7\1\0\3\7"
0078: + "\1\0\1\7\1\0\2\7\1\0\1\7\13\0\33\6\5\0\3\6"
0079: + "\56\0\32\6\5\0\13\6\10\7\15\0\12\7\6\0\1\7\107\6"
0080: + "\2\0\5\6\1\0\17\6\1\0\4\6\1\0\1\6\7\7\2\0"
0081: + "\6\7\2\6\2\7\1\0\4\7\2\0\12\7\u0207\0\3\7\1\0"
0082: + "\65\6\2\0\1\7\1\6\20\7\3\0\4\7\3\0\12\6\2\7"
0083: + "\2\0\12\7\21\0\3\7\1\0\10\6\2\0\2\6\2\0\26\6"
0084: + "\1\0\7\6\1\0\1\6\3\0\4\6\2\0\1\7\1\0\7\7"
0085: + "\2\0\2\7\2\0\3\7\11\0\1\7\4\0\2\6\1\0\3\6"
0086: + "\2\7\2\0\12\7\4\6\16\0\1\7\2\0\6\6\4\0\2\6"
0087: + "\2\0\26\6\1\0\7\6\1\0\2\6\1\0\2\6\1\0\2\6"
0088: + "\2\0\1\7\1\0\5\7\4\0\2\7\2\0\3\7\13\0\4\6"
0089: + "\1\0\1\6\7\0\14\7\3\6\14\0\3\7\1\0\7\6\1\0"
0090: + "\1\6\1\0\3\6\1\0\26\6\1\0\7\6\1\0\2\6\1\0"
0091: + "\5\6\2\0\1\7\1\6\10\7\1\0\3\7\1\0\3\7\22\0"
0092: + "\1\6\5\0\12\7\21\0\3\7\1\0\10\6\2\0\2\6\2\0"
0093: + "\26\6\1\0\7\6\1\0\2\6\2\0\4\6\2\0\1\7\1\6"
0094: + "\6\7\3\0\2\7\2\0\3\7\10\0\2\7\4\0\2\6\1\0"
0095: + "\3\6\4\0\12\7\22\0\2\7\1\0\6\6\3\0\3\6\1\0"
0096: + "\4\6\3\0\2\6\1\0\1\6\1\0\2\6\3\0\2\6\3\0"
0097: + "\3\6\3\0\10\6\1\0\3\6\4\0\5\7\3\0\3\7\1\0"
0098: + "\4\7\11\0\1\7\17\0\11\7\21\0\3\7\1\0\10\6\1\0"
0099: + "\3\6\1\0\27\6\1\0\12\6\1\0\5\6\4\0\7\7\1\0"
0100: + "\3\7\1\0\4\7\7\0\2\7\11\0\2\6\4\0\12\7\22\0"
0101: + "\2\7\1\0\10\6\1\0\3\6\1\0\27\6\1\0\12\6\1\0"
0102: + "\5\6\4\0\7\7\1\0\3\7\1\0\4\7\7\0\2\7\7\0"
0103: + "\1\6\1\0\2\6\4\0\12\7\22\0\2\7\1\0\10\6\1\0"
0104: + "\3\6\1\0\27\6\1\0\20\6\4\0\6\7\2\0\3\7\1\0"
0105: + "\4\7\11\0\1\7\10\0\2\6\4\0\12\7\221\0\56\6\1\0"
0106: + "\1\6\1\7\2\6\7\7\4\0\10\6\10\7\1\0\12\7\47\0"
0107: + "\2\6\1\0\1\6\2\0\2\6\1\0\1\6\2\0\1\6\6\0"
0108: + "\4\6\1\0\7\6\1\0\3\6\1\0\1\6\1\0\1\6\2\0"
0109: + "\2\6\1\0\2\6\1\0\1\6\1\7\2\6\6\7\1\0\2\7"
0110: + "\1\6\2\0\5\6\1\0\1\6\1\0\6\7\2\0\12\7\2\0"
0111: + "\2\6\72\0\2\7\6\0\12\7\13\0\1\7\1\0\1\7\1\0"
0112: + "\1\7\4\0\2\7\10\6\1\0\41\6\7\0\24\7\1\0\6\7"
0113: + "\4\0\6\7\1\0\1\7\1\0\25\7\3\0\7\7\1\0\1\7"
0114: + "\346\0\46\6\12\0\47\6\11\0\132\6\5\0\104\6\5\0\122\6"
0115: + "\u0c06\0\234\6\4\0\132\6\6\0\26\6\2\0\6\6\2\0\46\6"
0116: + "\2\0\6\6\2\0\10\6\1\0\1\6\1\0\1\6\1\0\1\6"
0117: + "\1\0\37\6\2\0\65\6\1\0\7\6\1\0\1\6\3\0\3\6"
0118: + "\1\0\7\6\3\0\4\6\2\0\6\6\4\0\15\6\5\0\3\6"
0119: + "\1\0\7\6\17\0\4\7\32\0\5\7\20\0\2\6\51\0\6\7"
0120: + "\17\0\1\6\40\0\15\6\43\0\15\7\4\0\1\7\40\0\1\6"
0121: + "\4\0\1\6\2\0\12\6\1\0\1\6\2\0\6\6\6\0\1\6"
0122: + "\1\0\1\6\1\0\1\6\1\0\10\6\1\0\6\6\47\0\43\6"
0123: + "\u0e82\0\1\6\1\0\1\6\31\0\11\6\6\7\1\0\5\6\13\0"
0124: + "\124\6\4\0\2\7\4\6\2\0\132\6\1\0\3\6\6\0\50\6"
0125: + "\4\0\136\6\u1c71\0\u51a6\6\u0c5a\0\u2ba4\6\u215c\0\u012e\6\322\0\7\6"
0126: + "\14\0\5\6\6\0\1\7\12\6\1\0\15\6\1\0\5\6\1\0"
0127: + "\1\6\1\0\2\6\1\0\2\6\1\0\154\6\41\0\u016b\6\22\0"
0128: + "\100\6\2\0\66\6\50\0\14\6\44\0\4\7\17\0\2\6\30\0"
0129: + "\3\6\31\0\1\6\6\0\3\6\1\0\1\6\1\0\207\6\2\0"
0130: + "\1\7\4\0\1\6\13\0\12\7\7\0\32\6\4\0\1\6\1\0"
0131: + "\32\6\13\0\131\6\3\0\6\6\2\0\6\6\2\0\6\6\2\0"
0132: + "\3\6\3\0\2\6\3\0\2\6\31\0";
0133:
0134: /**
0135: * Translates characters to character classes
0136: */
0137: final private static char[] yycmap = yy_unpack_cmap(yycmap_packed);
0138:
0139: /**
0140: * Translates a state to a row index in the transition table
0141: */
0142: final private static int yy_rowMap[] = { 0, 57, 114, 171, 228, 285,
0143: 342, 399, 342, 456, 513, 570, 627, 684, 741, 798, 855, 912,
0144: 969, 1026, 1083, 1140, 1197, 1254, 1311, 1368, 1425, 1482,
0145: 1539, 1596, 1653, 1710, 342, 1767, 1824, 342, 1881, 1938,
0146: 1995, 342, 342, 2052, 2109, 2052, 2166, 2223, 342, 2280,
0147: 342, 2337, 342, 342, 2394, 2451, 2508, 2565, 2622, 342,
0148: 2679, 2736, 342, 2793, 2850, 2907, 2964, 3021, 3078, 3135,
0149: 3192, 3249, 3306, 3363, 3420, 3477, 3534, 3591, 3648, 3705,
0150: 3762, 3819, 570, 3876, 3933, 3990, 4047, 4104, 4161, 4218,
0151: 4275, 4332, 4389, 4446, 4503, 4560, 4617, 4674, 4731, 4788,
0152: 4845, 4902, 4959, 5016, 5073, 5130, 342, 342, 342, 5187,
0153: 5244, 2166, 342, 5301, 5358, 5415, 5472, 5529, 5586, 5643,
0154: 5700, 5757, 342, 342, 5814, 5871, 5928, 5985, 6042, 6099,
0155: 6156, 6213, 6270, 6327, 6384, 6441, 6498, 6555, 6612, 6669,
0156: 6726, 6783, 6840, 6897, 6954, 7011, 7068, 7125, 7182, 7239,
0157: 570, 7296, 7353, 7410, 7467, 7524, 7581, 7638, 7695, 7752,
0158: 7809, 7866, 7923, 7980, 8037, 8094, 8151, 8208, 8265, 8322,
0159: 5244, 2166, 8379, 8436, 8493, 8550, 8607, 8664, 8721, 8778,
0160: 8835, 8892, 8949, 9006, 9063, 9120, 570, 9177, 570, 9234,
0161: 9291, 9348, 9405, 9462, 9519, 9576, 9633, 9690, 9747, 9804,
0162: 9861, 9918, 9975, 10032, 10089, 10146, 10203, 10260, 10317,
0163: 10374, 10431, 10488, 10545, 10602, 10659, 10716, 342,
0164: 10773, 10830, 10887, 10944, 11001, 11058, 11115, 6213,
0165: 11172, 11229, 11286, 11343, 11400, 11457, 11514, 11571,
0166: 11628, 11685, 11742, 11799, 11856, 11913, 11970, 12027,
0167: 12084, 12141, 12198, 12255, 12312, 12369, 12426, 12483,
0168: 12540, 12597, 12654, 12711, 12768, 12825, 12882, 12939,
0169: 12996, 13053, 570, 13110, 13167, 13224, 13281, 13338,
0170: 13395, 13452, 13509, 13566, 13623, 13680, 13737, 13794,
0171: 13851, 13908, 13965, 14022, 14079, 14136, 14193, 14250,
0172: 14307, 14364, 14421, 14478, 14535, 14592, 14649, 14706,
0173: 14763, 14820, 14877, 14934, 14991, 15048, 15105, 570,
0174: 15162, 15219, 15276, 15333, 15390, 15447, 15504, 15561,
0175: 15618, 15675, 15732, 15789, 15846, 15903, 15960, 16017,
0176: 16074, 16131, 16188, 16245, 16302 };
0177:
0178: /**
0179: * The packed transition table of the DFA (part 0)
0180: */
0181: final private static String yy_packed0 = "\1\7\1\10\2\11\1\12\1\13\1\14\1\7\1\15"
0182: + "\1\16\3\14\3\16\1\14\1\17\1\14\1\20\2\7"
0183: + "\1\21\1\14\1\22\2\14\1\23\1\24\1\25\1\26"
0184: + "\1\27\1\30\1\31\1\32\1\14\1\33\2\14\1\34"
0185: + "\1\35\1\36\1\37\2\14\1\40\1\41\1\12\1\42"
0186: + "\1\43\1\12\1\44\1\45\1\46\1\47\1\50\1\51"
0187: + "\1\52\1\53\1\54\21\52\1\7\44\52\1\55\1\56"
0188: + "\1\57\21\55\1\60\43\55\1\7\1\61\1\62\1\63"
0189: + "\66\61\2\64\1\7\1\64\1\65\20\64\1\66\43\64"
0190: + "\4\67\1\70\64\67\73\0\1\11\145\0\1\44\15\0"
0191: + "\1\71\1\72\51\0\1\44\17\0\13\14\1\0\1\14"
0192: + "\3\0\30\14\23\0\1\73\1\74\1\75\1\76\1\0"
0193: + "\1\77\1\100\1\77\1\75\1\101\1\102\12\0\1\102"
0194: + "\6\0\1\75\1\0\1\76\1\75\1\0\1\75\27\0"
0195: + "\2\16\1\75\2\0\3\16\1\75\1\101\1\102\12\0"
0196: + "\1\102\6\0\1\75\2\0\1\75\1\0\1\75\27\0"
0197: + "\2\101\3\0\3\101\74\0\1\44\33\0\1\44\17\0"
0198: + "\13\14\1\0\1\14\3\0\22\14\1\103\5\14\21\0"
0199: + "\13\14\1\0\1\14\3\0\3\14\1\104\1\14\1\105"
0200: + "\22\14\21\0\13\14\1\0\1\14\3\0\7\14\1\106"
0201: + "\20\14\21\0\13\14\1\0\1\14\3\0\4\14\1\107"
0202: + "\23\14\21\0\13\14\1\0\1\14\3\0\16\14\1\110"
0203: + "\1\14\1\111\7\14\21\0\13\14\1\0\1\14\3\0"
0204: + "\1\14\1\112\1\113\1\114\20\14\1\115\1\116\2\14"
0205: + "\21\0\13\14\1\0\1\14\3\0\12\14\1\117\2\14"
0206: + "\1\120\5\14\1\121\4\14\21\0\13\14\1\0\1\14"
0207: + "\3\0\1\122\1\123\5\14\1\124\20\14\21\0\13\14"
0208: + "\1\0\1\14\3\0\1\125\2\14\1\126\1\127\11\14"
0209: + "\1\130\11\14\21\0\13\14\1\0\1\14\3\0\1\131"
0210: + "\1\132\3\14\1\133\22\14\21\0\13\14\1\0\1\14"
0211: + "\3\0\4\14\1\134\23\14\21\0\13\14\1\0\1\14"
0212: + "\3\0\4\14\1\135\2\14\1\136\20\14\21\0\13\14"
0213: + "\1\0\1\14\3\0\4\14\1\137\1\140\17\14\1\141"
0214: + "\2\14\21\0\13\14\1\0\1\14\3\0\1\142\3\14"
0215: + "\1\143\4\14\1\144\4\14\1\145\11\14\21\0\13\14"
0216: + "\1\0\1\14\3\0\3\14\1\146\24\14\21\0\13\14"
0217: + "\1\0\1\14\3\0\4\14\1\147\23\14\72\0\1\44"
0218: + "\1\150\67\0\1\44\1\0\1\12\66\0\1\44\4\0"
0219: + "\1\44\63\0\1\44\5\0\1\44\62\0\1\44\6\0"
0220: + "\1\44\71\0\1\151\3\0\1\152\64\0\1\151\71\0"
0221: + "\1\153\2\0\1\57\66\0\2\57\1\0\5\57\1\154"
0222: + "\4\57\2\154\1\155\4\57\1\156\3\57\1\156\2\57"
0223: + "\1\156\4\57\1\156\7\57\2\156\15\57\2\156\2\0"
0224: + "\1\63\73\0\1\157\111\0\1\160\4\0\1\161\1\162"
0225: + "\1\163\1\164\3\0\1\165\1\0\1\166\2\0\1\167"
0226: + "\21\0\4\67\1\170\70\67\1\170\1\171\63\67\4\0"
0227: + "\1\172\74\0\1\73\1\74\1\75\2\0\1\77\1\100"
0228: + "\1\77\1\75\1\101\1\102\12\0\1\102\6\0\1\75"
0229: + "\2\0\1\75\1\0\1\75\27\0\2\74\3\0\3\74"
0230: + "\1\75\1\101\1\102\12\0\1\102\11\0\1\75\1\0"
0231: + "\1\75\27\0\1\173\1\174\2\0\5\174\1\0\1\174"
0232: + "\3\0\1\174\6\0\1\174\3\0\1\174\5\0\3\174"
0233: + "\27\0\1\175\1\74\1\75\2\0\3\175\1\75\1\101"
0234: + "\1\102\12\0\1\102\6\0\1\75\2\0\1\75\1\0"
0235: + "\1\75\27\0\1\77\1\74\1\75\2\0\3\77\1\75"
0236: + "\1\101\1\102\12\0\1\102\6\0\1\75\2\0\1\75"
0237: + "\1\0\1\75\27\0\2\101\3\0\3\101\1\75\1\0"
0238: + "\1\102\12\0\1\102\11\0\1\75\1\0\1\75\27\0"
0239: + "\2\176\3\0\3\176\3\0\1\177\42\0\1\177\10\0"
0240: + "\13\14\1\0\1\14\3\0\10\14\1\200\17\14\21\0"
0241: + "\13\14\1\0\1\14\3\0\5\14\1\201\3\14\1\202"
0242: + "\16\14\21\0\13\14\1\0\1\14\3\0\1\203\1\204"
0243: + "\23\14\1\121\2\14\21\0\13\14\1\0\1\14\3\0"
0244: + "\2\14\1\205\25\14\21\0\13\14\1\0\1\14\3\0"
0245: + "\11\14\1\206\4\14\1\207\11\14\21\0\13\14\1\0"
0246: + "\1\14\3\0\10\14\1\210\17\14\21\0\13\14\1\0"
0247: + "\1\14\3\0\2\14\1\211\25\14\21\0\13\14\1\0"
0248: + "\1\14\3\0\14\14\1\212\13\14\21\0\13\14\1\0"
0249: + "\1\14\3\0\1\213\4\14\1\214\22\14\21\0\13\14"
0250: + "\1\0\1\14\3\0\4\14\1\215\23\14\21\0\13\14"
0251: + "\1\0\1\14\3\0\11\14\1\216\16\14\21\0\13\14"
0252: + "\1\0\1\14\3\0\12\14\1\217\15\14\21\0\13\14"
0253: + "\1\0\1\14\3\0\2\14\1\220\5\14\1\221\17\14"
0254: + "\21\0\13\14\1\0\1\14\3\0\14\14\1\222\13\14"
0255: + "\21\0\13\14\1\0\1\14\3\0\2\14\1\223\25\14"
0256: + "\21\0\13\14\1\0\1\14\3\0\16\14\1\224\11\14"
0257: + "\21\0\13\14\1\0\1\14\3\0\24\14\1\225\3\14"
0258: + "\21\0\13\14\1\0\1\14\3\0\2\14\1\226\5\14"
0259: + "\1\210\17\14\21\0\13\14\1\0\1\14\3\0\1\227"
0260: + "\27\14\21\0\13\14\1\0\1\14\3\0\12\14\1\230"
0261: + "\15\14\21\0\13\14\1\0\1\14\3\0\1\231\27\14"
0262: + "\21\0\13\14\1\0\1\14\3\0\13\14\1\232\14\14"
0263: + "\21\0\13\14\1\0\1\14\3\0\22\14\1\233\5\14"
0264: + "\21\0\13\14\1\0\1\14\3\0\4\14\1\234\4\14"
0265: + "\1\235\16\14\21\0\13\14\1\0\1\14\3\0\12\14"
0266: + "\1\236\15\14\21\0\13\14\1\0\1\14\3\0\1\14"
0267: + "\1\237\26\14\21\0\13\14\1\0\1\14\3\0\23\14"
0268: + "\1\240\4\14\21\0\13\14\1\0\1\14\3\0\4\14"
0269: + "\1\241\23\14\21\0\13\14\1\0\1\14\3\0\7\14"
0270: + "\1\242\20\14\21\0\13\14\1\0\1\14\3\0\2\14"
0271: + "\1\243\25\14\21\0\13\14\1\0\1\14\3\0\16\14"
0272: + "\1\244\11\14\21\0\13\14\1\0\1\14\3\0\5\14"
0273: + "\1\121\22\14\21\0\13\14\1\0\1\14\3\0\12\14"
0274: + "\1\245\15\14\21\0\13\14\1\0\1\14\3\0\4\14"
0275: + "\1\246\23\14\21\0\13\14\1\0\1\14\3\0\11\14"
0276: + "\1\247\16\14\21\0\13\14\1\0\1\14\3\0\2\14"
0277: + "\1\250\25\14\72\0\1\44\1\12\20\0\1\251\4\0"
0278: + "\3\251\50\0\1\153\10\0\1\252\4\0\3\252\50\0"
0279: + "\1\153\27\0\1\253\76\0\1\254\70\0\1\255\101\0"
0280: + "\1\256\57\0\1\257\1\0\1\260\57\0\1\261\101\0"
0281: + "\1\262\66\0\1\263\33\0\4\67\1\170\1\0\63\67"
0282: + "\10\0\1\173\1\174\1\75\1\0\5\174\1\0\1\174"
0283: + "\3\0\1\174\6\0\1\174\3\0\1\174\2\0\1\75"
0284: + "\2\0\3\174\27\0\2\264\1\75\1\0\5\264\1\0"
0285: + "\1\264\3\0\1\264\6\0\1\264\3\0\1\264\2\0"
0286: + "\1\75\2\0\3\264\27\0\1\265\1\74\1\75\2\0"
0287: + "\3\265\1\75\1\101\1\102\12\0\1\102\6\0\1\75"
0288: + "\2\0\1\75\1\0\1\75\27\0\2\176\3\0\3\176"
0289: + "\1\75\26\0\1\75\1\0\1\75\27\0\2\176\3\0"
0290: + "\3\176\57\0\13\14\1\0\1\14\3\0\2\14\1\266"
0291: + "\25\14\21\0\13\14\1\0\1\14\3\0\4\14\1\267"
0292: + "\23\14\21\0\13\14\1\0\1\14\3\0\10\14\1\225"
0293: + "\17\14\21\0\13\14\1\0\1\14\3\0\12\14\1\270"
0294: + "\15\14\21\0\13\14\1\0\1\14\3\0\7\14\1\271"
0295: + "\20\14\21\0\13\14\1\0\1\14\3\0\1\14\1\272"
0296: + "\26\14\21\0\13\14\1\0\1\14\3\0\21\14\1\273"
0297: + "\6\14\21\0\13\14\1\0\1\14\3\0\1\274\27\14"
0298: + "\21\0\13\14\1\0\1\14\3\0\7\14\1\121\20\14"
0299: + "\21\0\13\14\1\0\1\14\3\0\7\14\1\275\20\14"
0300: + "\21\0\13\14\1\0\1\14\3\0\7\14\1\276\20\14"
0301: + "\21\0\13\14\1\0\1\14\3\0\2\14\1\277\25\14"
0302: + "\21\0\13\14\1\0\1\14\3\0\11\14\1\300\16\14"
0303: + "\21\0\13\14\1\0\1\14\3\0\5\14\1\301\22\14"
0304: + "\21\0\13\14\1\0\1\14\3\0\2\14\1\226\25\14"
0305: + "\21\0\13\14\1\0\1\14\3\0\13\14\1\302\14\14"
0306: + "\21\0\13\14\1\0\1\14\3\0\7\14\1\303\20\14"
0307: + "\21\0\13\14\1\0\1\14\3\0\2\14\1\304\25\14"
0308: + "\21\0\13\14\1\0\1\14\3\0\4\14\1\305\11\14"
0309: + "\1\306\11\14\21\0\13\14\1\0\1\14\3\0\11\14"
0310: + "\1\307\16\14\21\0\13\14\1\0\1\14\3\0\16\14"
0311: + "\1\273\11\14\21\0\13\14\1\0\1\14\3\0\13\14"
0312: + "\1\310\14\14\21\0\13\14\1\0\1\14\3\0\5\14"
0313: + "\1\273\22\14\21\0\13\14\1\0\1\14\3\0\2\14"
0314: + "\1\311\5\14\1\312\17\14\21\0\13\14\1\0\1\14"
0315: + "\3\0\10\14\1\202\17\14\21\0\13\14\1\0\1\14"
0316: + "\3\0\17\14\1\313\10\14\21\0\13\14\1\0\1\14"
0317: + "\3\0\16\14\1\277\11\14\21\0\13\14\1\0\1\14"
0318: + "\3\0\2\14\1\314\25\14\21\0\13\14\1\0\1\14"
0319: + "\3\0\6\14\1\315\21\14\21\0\13\14\1\0\1\14"
0320: + "\3\0\27\14\1\273\21\0\13\14\1\0\1\14\3\0"
0321: + "\22\14\1\316\5\14\21\0\13\14\1\0\1\14\3\0"
0322: + "\1\317\27\14\21\0\13\14\1\0\1\14\3\0\16\14"
0323: + "\1\320\11\14\21\0\13\14\1\0\1\14\3\0\1\321"
0324: + "\27\14\21\0\13\14\1\0\1\14\3\0\7\14\1\273"
0325: + "\20\14\21\0\13\14\1\0\1\14\3\0\10\14\1\204"
0326: + "\17\14\21\0\13\14\1\0\1\14\3\0\1\322\27\14"
0327: + "\21\0\13\14\1\0\1\14\3\0\1\301\27\14\21\0"
0328: + "\13\14\1\0\1\14\3\0\16\14\1\210\11\14\21\0"
0329: + "\13\14\1\0\1\14\3\0\4\14\1\121\23\14\43\0"
0330: + "\1\323\70\0\1\324\73\0\1\325\76\0\1\326\64\0"
0331: + "\1\327\73\0\1\330\63\0\1\331\75\0\1\332\72\0"
0332: + "\1\333\36\0\2\334\1\75\1\0\5\334\1\0\1\334"
0333: + "\3\0\1\334\6\0\1\334\3\0\1\334\2\0\1\75"
0334: + "\2\0\3\334\27\0\1\335\1\74\1\75\2\0\3\335"
0335: + "\1\75\1\101\1\102\12\0\1\102\6\0\1\75\2\0"
0336: + "\1\75\1\0\1\75\25\0\13\14\1\0\1\14\3\0"
0337: + "\5\14\1\336\22\14\21\0\13\14\1\0\1\14\3\0"
0338: + "\24\14\1\337\3\14\21\0\13\14\1\0\1\14\3\0"
0339: + "\10\14\1\340\17\14\21\0\13\14\1\0\1\14\3\0"
0340: + "\5\14\1\341\22\14\21\0\13\14\1\0\1\14\3\0"
0341: + "\2\14\1\342\25\14\21\0\13\14\1\0\1\14\3\0"
0342: + "\12\14\1\343\15\14\21\0\13\14\1\0\1\14\3\0"
0343: + "\5\14\1\225\22\14\21\0\13\14\1\0\1\14\3\0"
0344: + "\11\14\1\344\16\14\21\0\13\14\1\0\1\14\3\0"
0345: + "\13\14\1\345\14\14\21\0\13\14\1\0\1\14\3\0"
0346: + "\2\14\1\273\25\14\21\0\13\14\1\0\1\14\3\0"
0347: + "\3\14\1\346\24\14\21\0\13\14\1\0\1\14\3\0"
0348: + "\5\14\1\347\22\14\21\0\13\14\1\0\1\14\3\0"
0349: + "\1\350\27\14\21\0\13\14\1\0\1\14\3\0\5\14"
0350: + "\1\351\22\14\21\0\13\14\1\0\1\14\3\0\7\14"
0351: + "\1\352\20\14\21\0\13\14\1\0\1\14\3\0\6\14"
0352: + "\1\353\21\14\21\0\13\14\1\0\1\14\3\0\3\14"
0353: + "\1\121\24\14\21\0\13\14\1\0\1\14\3\0\11\14"
0354: + "\1\354\16\14\21\0\13\14\1\0\1\14\3\0\2\14"
0355: + "\1\225\25\14\21\0\13\14\1\0\1\14\3\0\1\355"
0356: + "\27\14\21\0\13\14\1\0\1\14\3\0\7\14\1\356"
0357: + "\20\14\21\0\13\14\1\0\1\14\3\0\1\357\27\14"
0358: + "\21\0\13\14\1\0\1\14\3\0\16\14\1\243\11\14"
0359: + "\21\0\13\14\1\0\1\14\3\0\1\14\1\360\26\14"
0360: + "\21\0\13\14\1\0\1\14\3\0\7\14\1\361\20\14"
0361: + "\21\0\13\14\1\0\1\14\3\0\17\14\1\121\10\14"
0362: + "\21\0\13\14\1\0\1\14\3\0\16\14\1\362\11\14"
0363: + "\44\0\1\363\66\0\1\364\77\0\1\365\67\0\1\366"
0364: + "\74\0\1\257\55\0\1\367\107\0\1\327\56\0\1\370"
0365: + "\45\0\2\371\1\75\1\0\5\371\1\0\1\371\3\0"
0366: + "\1\371\6\0\1\371\3\0\1\371\2\0\1\75\2\0"
0367: + "\3\371\27\0\1\372\1\74\1\75\2\0\3\372\1\75"
0368: + "\1\101\1\102\12\0\1\102\6\0\1\75\2\0\1\75"
0369: + "\1\0\1\75\25\0\13\14\1\0\1\14\3\0\1\373"
0370: + "\27\14\21\0\13\14\1\0\1\14\3\0\11\14\1\374"
0371: + "\16\14\21\0\13\14\1\0\1\14\3\0\12\14\1\121"
0372: + "\15\14\21\0\13\14\1\0\1\14\3\0\11\14\1\375"
0373: + "\16\14\21\0\13\14\1\0\1\14\3\0\21\14\1\202"
0374: + "\6\14\21\0\13\14\1\0\1\14\3\0\13\14\1\225"
0375: + "\14\14\21\0\13\14\1\0\1\14\3\0\2\14\1\376"
0376: + "\25\14\21\0\13\14\1\0\1\14\3\0\5\14\1\377"
0377: + "\22\14\21\0\13\14\1\0\1\14\3\0\23\14\1\u0100"
0378: + "\4\14\21\0\13\14\1\0\1\14\3\0\12\14\1\u0101"
0379: + "\15\14\21\0\13\14\1\0\1\14\3\0\2\14\1\u0102"
0380: + "\25\14\21\0\13\14\1\0\1\14\3\0\15\14\1\u0103"
0381: + "\12\14\21\0\13\14\1\0\1\14\3\0\7\14\1\225"
0382: + "\20\14\21\0\13\14\1\0\1\14\3\0\12\14\1\u0104"
0383: + "\15\14\21\0\13\14\1\0\1\14\3\0\27\14\1\u0105"
0384: + "\21\0\13\14\1\0\1\14\3\0\13\14\1\u0106\14\14"
0385: + "\21\0\13\14\1\0\1\14\3\0\2\14\1\353\25\14"
0386: + "\21\0\13\14\1\0\1\14\3\0\16\14\1\u0107\11\14"
0387: + "\21\0\13\14\1\0\1\14\3\0\1\u0108\27\14\21\0"
0388: + "\13\14\1\0\1\14\3\0\16\14\1\u0109\11\14\45\0"
0389: + "\1\u010a\71\0\1\u010b\74\0\1\u010c\73\0\1\u010d\71\0"
0390: + "\1\327\62\0\1\u010e\43\0\2\u010f\1\75\1\0\5\u010f"
0391: + "\1\0\1\u010f\3\0\1\u010f\6\0\1\u010f\3\0\1\u010f"
0392: + "\2\0\1\75\2\0\3\u010f\27\0\1\u0110\1\74\1\75"
0393: + "\2\0\3\u0110\1\75\1\101\1\102\12\0\1\102\6\0"
0394: + "\1\75\2\0\1\75\1\0\1\75\25\0\13\14\1\0"
0395: + "\1\14\3\0\13\14\1\312\14\14\21\0\13\14\1\0"
0396: + "\1\14\3\0\7\14\1\u0111\20\14\21\0\13\14\1\0"
0397: + "\1\14\3\0\16\14\1\353\11\14\21\0\13\14\1\0"
0398: + "\1\14\3\0\23\14\1\u0112\4\14\21\0\13\14\1\0"
0399: + "\1\14\3\0\4\14\1\u0113\23\14\21\0\13\14\1\0"
0400: + "\1\14\3\0\1\u0114\27\14\21\0\13\14\1\0\1\14"
0401: + "\3\0\13\14\1\u0115\14\14\21\0\13\14\1\0\1\14"
0402: + "\3\0\7\14\1\u0116\20\14\21\0\13\14\1\0\1\14"
0403: + "\3\0\1\14\1\210\26\14\21\0\13\14\1\0\1\14"
0404: + "\3\0\7\14\1\u0102\20\14\21\0\13\14\1\0\1\14"
0405: + "\3\0\2\14\1\u0117\25\14\21\0\13\14\1\0\1\14"
0406: + "\3\0\2\14\1\121\25\14\21\0\13\14\1\0\1\14"
0407: + "\3\0\12\14\1\273\15\14\21\0\13\14\1\0\1\14"
0408: + "\3\0\25\14\1\121\2\14\46\0\1\327\75\0\1\327"
0409: + "\62\0\1\u010b\66\0\1\365\101\0\1\u0118\37\0\2\u0119"
0410: + "\1\75\1\0\5\u0119\1\0\1\u0119\3\0\1\u0119\6\0"
0411: + "\1\u0119\3\0\1\u0119\2\0\1\75\2\0\3\u0119\27\0"
0412: + "\1\u011a\1\74\1\75\2\0\3\u011a\1\75\1\101\1\102"
0413: + "\12\0\1\102\6\0\1\75\2\0\1\75\1\0\1\75"
0414: + "\25\0\13\14\1\0\1\14\3\0\12\14\1\312\15\14"
0415: + "\21\0\13\14\1\0\1\14\3\0\14\14\1\225\13\14"
0416: + "\21\0\13\14\1\0\1\14\3\0\12\14\1\u011b\15\14"
0417: + "\21\0\13\14\1\0\1\14\3\0\13\14\1\353\14\14"
0418: + "\21\0\13\14\1\0\1\14\3\0\7\14\1\u011c\20\14"
0419: + "\21\0\13\14\1\0\1\14\3\0\12\14\1\u011d\15\14"
0420: + "\21\0\13\14\1\0\1\14\3\0\7\14\1\u011e\20\14"
0421: + "\41\0\1\u011f\52\0\2\u0120\1\75\1\0\5\u0120\1\0"
0422: + "\1\u0120\3\0\1\u0120\6\0\1\u0120\3\0\1\u0120\2\0"
0423: + "\1\75\2\0\3\u0120\27\0\1\u0121\1\74\1\75\2\0"
0424: + "\3\u0121\1\75\1\101\1\102\12\0\1\102\6\0\1\75"
0425: + "\2\0\1\75\1\0\1\75\25\0\13\14\1\0\1\14"
0426: + "\3\0\11\14\1\u0122\16\14\21\0\13\14\1\0\1\14"
0427: + "\3\0\4\14\1\u0123\23\14\21\0\13\14\1\0\1\14"
0428: + "\3\0\2\14\1\202\25\14\21\0\13\14\1\0\1\14"
0429: + "\3\0\21\14\1\225\6\14\43\0\1\u0124\50\0\2\u0125"
0430: + "\1\75\1\0\5\u0125\1\0\1\u0125\3\0\1\u0125\6\0"
0431: + "\1\u0125\3\0\1\u0125\2\0\1\75\2\0\3\u0125\27\0"
0432: + "\1\u0126\1\74\1\75\2\0\3\u0126\1\75\1\101\1\102"
0433: + "\12\0\1\102\6\0\1\75\2\0\1\75\1\0\1\75"
0434: + "\25\0\13\14\1\0\1\14\3\0\26\14\1\u0117\1\14"
0435: + "\21\0\13\14\1\0\1\14\3\0\23\14\1\u0127\4\14"
0436: + "\50\0\1\u0128\43\0\2\u0129\1\75\1\0\5\u0129\1\0"
0437: + "\1\u0129\3\0\1\u0129\6\0\1\u0129\3\0\1\u0129\2\0"
0438: + "\1\75\2\0\3\u0129\27\0\1\u012a\1\74\1\75\2\0"
0439: + "\3\u012a\1\75\1\101\1\102\12\0\1\102\6\0\1\75"
0440: + "\2\0\1\75\1\0\1\75\66\0\1\327\31\0\2\u012b"
0441: + "\1\75\1\0\5\u012b\1\0\1\u012b\3\0\1\u012b\6\0"
0442: + "\1\u012b\3\0\1\u012b\2\0\1\75\2\0\3\u012b\27\0"
0443: + "\1\u012c\1\74\1\75\2\0\3\u012c\1\75\1\101\1\102"
0444: + "\12\0\1\102\6\0\1\75\2\0\1\75\1\0\1\75"
0445: + "\27\0\2\u012d\1\75\1\0\5\u012d\1\0\1\u012d\3\0"
0446: + "\1\u012d\6\0\1\u012d\3\0\1\u012d\2\0\1\75\2\0"
0447: + "\3\u012d\27\0\1\u012e\1\74\1\75\2\0\3\u012e\1\75"
0448: + "\1\101\1\102\12\0\1\102\6\0\1\75\2\0\1\75"
0449: + "\1\0\1\75\27\0\2\u012f\1\75\1\0\5\u012f\1\0"
0450: + "\1\u012f\3\0\1\u012f\6\0\1\u012f\3\0\1\u012f\2\0"
0451: + "\1\75\2\0\3\u012f\27\0\1\u0130\1\74\1\75\2\0"
0452: + "\3\u0130\1\75\1\101\1\102\12\0\1\102\6\0\1\75"
0453: + "\2\0\1\75\1\0\1\75\27\0\2\u0131\1\75\1\0"
0454: + "\5\u0131\1\0\1\u0131\3\0\1\u0131\6\0\1\u0131\3\0"
0455: + "\1\u0131\2\0\1\75\2\0\3\u0131\27\0\1\u0132\1\74"
0456: + "\1\75\2\0\3\u0132\1\75\1\101\1\102\12\0\1\102"
0457: + "\6\0\1\75\2\0\1\75\1\0\1\75\27\0\2\u0133"
0458: + "\1\75\1\0\5\u0133\1\0\1\u0133\3\0\1\u0133\6\0"
0459: + "\1\u0133\3\0\1\u0133\2\0\1\75\2\0\3\u0133\27\0"
0460: + "\1\u0134\1\74\1\75\2\0\3\u0134\1\75\1\101\1\102"
0461: + "\12\0\1\102\6\0\1\75\2\0\1\75\1\0\1\75"
0462: + "\27\0\2\u0135\1\75\1\0\5\u0135\1\0\1\u0135\3\0"
0463: + "\1\u0135\6\0\1\u0135\3\0\1\u0135\2\0\1\75\2\0"
0464: + "\3\u0135\27\0\1\u0136\1\74\1\75\2\0\3\u0136\1\75"
0465: + "\1\101\1\102\12\0\1\102\6\0\1\75\2\0\1\75"
0466: + "\1\0\1\75\27\0\2\u0137\1\75\1\0\5\u0137\1\0"
0467: + "\1\u0137\3\0\1\u0137\6\0\1\u0137\3\0\1\u0137\2\0"
0468: + "\1\75\2\0\3\u0137\27\0\1\u0138\1\74\1\75\2\0"
0469: + "\3\u0138\1\75\1\101\1\102\12\0\1\102\6\0\1\75"
0470: + "\2\0\1\75\1\0\1\75\31\0\1\75\31\0\1\75"
0471: + "\34\0\1\u0139\1\74\1\75\2\0\3\u0139\1\75\1\101"
0472: + "\1\102\12\0\1\102\6\0\1\75\2\0\1\75\1\0"
0473: + "\1\75\27\0\1\u013a\1\74\1\75\2\0\3\u013a\1\75"
0474: + "\1\101\1\102\12\0\1\102\6\0\1\75\2\0\1\75"
0475: + "\1\0\1\75\27\0\1\u013b\1\74\1\75\2\0\3\u013b"
0476: + "\1\75\1\101\1\102\12\0\1\102\6\0\1\75\2\0"
0477: + "\1\75\1\0\1\75\27\0\1\u013c\1\74\1\75\2\0"
0478: + "\3\u013c\1\75\1\101\1\102\12\0\1\102\6\0\1\75"
0479: + "\2\0\1\75\1\0\1\75\27\0\2\74\1\75\2\0"
0480: + "\3\74\1\75\1\101\1\102\12\0\1\102\6\0\1\75"
0481: + "\2\0\1\75\1\0\1\75\17\0";
0482:
0483: /**
0484: * The transition table of the DFA
0485: */
0486: final private static int yytrans[] = yy_unpack();
0487:
0488: /* error codes */
0489: final private static int YY_UNKNOWN_ERROR = 0;
0490: final private static int YY_ILLEGAL_STATE = 1;
0491: final private static int YY_NO_MATCH = 2;
0492: final private static int YY_PUSHBACK_2BIG = 3;
0493:
0494: /* error messages for the codes above */
0495: final private static String YY_ERROR_MSG[] = {
0496: "Unkown internal scanner error",
0497: "Internal error: unknown state",
0498: "Error: could not match input",
0499: "Error: pushback value was too large" };
0500:
0501: /**
0502: * YY_ATTRIBUTE[aState] contains the attributes of state <code>aState</code>
0503: */
0504: private final static byte YY_ATTRIBUTE[] = { 0, 0, 0, 0, 0, 1, 9,
0505: 1, 9, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
0506: 1, 1, 1, 1, 1, 9, 1, 1, 9, 1, 1, 1, 9, 9, 1, 1, 1, 1, 1, 9,
0507: 1, 9, 1, 9, 9, 1, 1, 1, 1, 1, 9, 1, 1, 9, 0, 1, 1, 1, 0, 1,
0508: 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
0509: 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 9, 9, 9,
0510: 1, 1, 1, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 9, 1, 1, 1, 1, 0,
0511: 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
0512: 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
0513: 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1,
0514: 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
0515: 1, 1, 1, 0, 0, 0, 0, 9, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1,
0516: 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
0517: 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,
0518: 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0,
0519: 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0,
0520: 1, 0, 1, 0, 1, 1, 1, 1, 1 };
0521:
0522: /** the input device */
0523: private java.io.Reader yy_reader;
0524:
0525: /** the current state of the DFA */
0526: private int yy_state;
0527:
0528: /** the current lexical state */
0529: private int yy_lexical_state = YYINITIAL;
0530:
0531: /** this buffer contains the current text to be matched and is
0532: the source of the yytext() string */
0533: private char yy_buffer[] = new char[YY_BUFFERSIZE];
0534:
0535: /** the textposition at the last accepting state */
0536: private int yy_markedPos;
0537:
0538: /** the textposition at the last state to be included in yytext */
0539: private int yy_pushbackPos;
0540:
0541: /** the current text position in the buffer */
0542: private int yy_currentPos;
0543:
0544: /** startRead marks the beginning of the yytext() string in the buffer */
0545: private int yy_startRead;
0546:
0547: /** endRead marks the last character in the buffer, that has been read
0548: from input */
0549: private int yy_endRead;
0550:
0551: /** number of newlines encountered up to the start of the matched text */
0552: private int yyline;
0553:
0554: /** the number of characters up to the start of the matched text */
0555: private int yychar;
0556:
0557: /**
0558: * the number of characters from the last newline up to the start of the
0559: * matched text
0560: */
0561: private int yycolumn;
0562:
0563: /**
0564: * yy_atBOL == true <=> the scanner is currently at the beginning of a line
0565: */
0566: private boolean yy_atBOL = true;
0567:
0568: /** yy_atEOF == true <=> the scanner is at the EOF */
0569: private boolean yy_atEOF;
0570:
0571: /* user code: */
0572: public void scan() throws IOException {
0573: while (!yy_atEOF) {
0574: yylex();
0575: }
0576: }
0577:
0578: private int applyStyle(int type) {
0579: return applyStyle(type, yychar, yylength());
0580: }
0581:
0582: /**
0583: * Runs the scanner on input files.
0584: *
0585: * This is a standalone scanner, i.e. it will print any unmatched
0586: * text to System.out unchanged.
0587: *
0588: * @param argv the command line, contains the filenames to run
0589: * the scanner on.
0590: */
0591: public static void main(String argv[]) {
0592: boolean DEBUG = false;
0593:
0594: for (int i = 0; i < argv.length; i++) {
0595: JavaFlexScanner scanner = null;
0596: try {
0597: scanner = new JavaFlexScanner(new FileReader(argv[i]));
0598: } catch (FileNotFoundException e) {
0599: System.out.println("File not found : \"" + argv[i]
0600: + "\"");
0601: System.exit(1);
0602: } catch (IOException e) {
0603: System.out.println("Error opening file \"" + argv[i]
0604: + "\"");
0605: System.exit(1);
0606: } catch (ArrayIndexOutOfBoundsException e) {
0607: System.out
0608: .println("Usage : java JavaFlexScanner <inputfile>");
0609: System.exit(1);
0610: }
0611:
0612: try {
0613: long time = System.currentTimeMillis();
0614: while (!scanner.yy_atEOF) {
0615: int t = scanner.yylex();
0616: if (t == -1) {
0617: long nextTime = System.currentTimeMillis();
0618: System.out.println(new StringBuffer(
0619: "SCAN COMPLETED IN ").append(
0620: nextTime - time)
0621: .append(" milliseconds").toString());
0622: System.exit(0);
0623: } else if (DEBUG) {
0624: System.out.print(SyntaxStyle.getStyle(
0625: StyleBufferUtilities.getStyle(t))
0626: .getName());
0627: System.out.print(": \t");
0628: System.out.println(scanner.yytext());
0629: }
0630: }
0631: } catch (IOException e) {
0632: System.out
0633: .println("An I/O error occured while scanning :");
0634: System.out.println(e);
0635: System.exit(1);
0636: } catch (Exception e) {
0637: e.printStackTrace();
0638: System.exit(1);
0639: }
0640: }
0641: }
0642:
0643: /**
0644: * Creates a new scanner
0645: * There is also a java.io.InputStream version of this constructor.
0646: *
0647: * @param in the java.io.Reader to read input from.
0648: */
0649: public JavaFlexScanner(java.io.Reader in) {
0650: this .yy_reader = in;
0651: }
0652:
0653: /**
0654: * Creates a new scanner.
0655: * There is also java.io.Reader version of this constructor.
0656: *
0657: * @param in the java.io.Inputstream to read input from.
0658: */
0659: public JavaFlexScanner(java.io.InputStream in) {
0660: this (new java.io.InputStreamReader(in));
0661: }
0662:
0663: /**
0664: * Unpacks the split, compressed DFA transition table.
0665: *
0666: * @return the unpacked transition table
0667: */
0668: private static int[] yy_unpack() {
0669: int[] trans = new int[16359];
0670: int offset = 0;
0671: offset = yy_unpack(yy_packed0, offset, trans);
0672: return trans;
0673: }
0674:
0675: /**
0676: * Unpacks the compressed DFA transition table.
0677: *
0678: * @param packed the packed transition table
0679: * @return the index of the last entry
0680: */
0681: private static int yy_unpack(String packed, int offset, int[] trans) {
0682: int i = 0; /* index in packed string */
0683: int j = offset; /* index in unpacked array */
0684: int l = packed.length();
0685: while (i < l) {
0686: int count = packed.charAt(i++);
0687: int value = packed.charAt(i++);
0688: value--;
0689: do
0690: trans[j++] = value;
0691: while (--count > 0);
0692: }
0693: return j;
0694: }
0695:
0696: /**
0697: * Unpacks the compressed character translation table.
0698: *
0699: * @param packed the packed character translation table
0700: * @return the unpacked character translation table
0701: */
0702: private static char[] yy_unpack_cmap(String packed) {
0703: char[] map = new char[0x10000];
0704: int i = 0; /* index in packed string */
0705: int j = 0; /* index in unpacked array */
0706: while (i < 1432) {
0707: int count = packed.charAt(i++);
0708: char value = packed.charAt(i++);
0709: do
0710: map[j++] = value;
0711: while (--count > 0);
0712: }
0713: return map;
0714: }
0715:
0716: /**
0717: * Gets the next input character.
0718: *
0719: * @return the next character of the input stream, EOF if the
0720: * end of the stream is reached.
0721: * @exception IOException if any I/O-Error occurs
0722: */
0723: private int yy_advance() throws java.io.IOException {
0724:
0725: /* standard case */
0726: if (yy_currentPos < yy_endRead)
0727: return yy_buffer[yy_currentPos++];
0728:
0729: /* if the eof is reached, we don't need to work hard */
0730: if (yy_atEOF)
0731: return YYEOF;
0732:
0733: /* otherwise: need to refill the buffer */
0734:
0735: /* first: make room (if you can) */
0736: if (yy_startRead > 0) {
0737: System.arraycopy(yy_buffer, yy_startRead, yy_buffer, 0,
0738: yy_endRead - yy_startRead);
0739:
0740: /* translate stored positions */
0741: yy_endRead -= yy_startRead;
0742: yy_currentPos -= yy_startRead;
0743: yy_markedPos -= yy_startRead;
0744: yy_pushbackPos -= yy_startRead;
0745: yy_startRead = 0;
0746: }
0747:
0748: /* is the buffer big enough? */
0749: if (yy_currentPos >= yy_buffer.length) {
0750: /* if not: blow it up */
0751: char newBuffer[] = new char[yy_currentPos * 2];
0752: System.arraycopy(yy_buffer, 0, newBuffer, 0,
0753: yy_buffer.length);
0754: yy_buffer = newBuffer;
0755: }
0756:
0757: /* finally: fill the buffer with new input */
0758: int numRead = yy_reader.read(yy_buffer, yy_endRead,
0759: yy_buffer.length - yy_endRead);
0760:
0761: if (numRead == -1)
0762: return YYEOF;
0763:
0764: yy_endRead += numRead;
0765:
0766: return yy_buffer[yy_currentPos++];
0767: }
0768:
0769: /**
0770: * Closes the input stream.
0771: */
0772: final public void yyclose() throws java.io.IOException {
0773: yy_atEOF = true; /* indicate end of file */
0774: yy_endRead = yy_startRead; /* invalidate buffer */
0775:
0776: if (yy_reader != null)
0777: yy_reader.close();
0778: }
0779:
0780: /**
0781: * Closes the current stream, and resets the
0782: * scanner to read from a new input stream.
0783: *
0784: * All internal variables are reset, the old input stream
0785: * <b>cannot</b> be reused (internal buffer is discarded and lost).
0786: * Lexical state is set to <tt>YY_INITIAL</tt>.
0787: *
0788: * @param reader the new input stream
0789: */
0790: final public void yyreset(java.io.Reader reader)
0791: throws java.io.IOException {
0792: yyclose();
0793: yy_reader = reader;
0794: yy_atBOL = true;
0795: yy_atEOF = false;
0796: yy_endRead = yy_startRead = 0;
0797: yy_currentPos = yy_markedPos = yy_pushbackPos = 0;
0798: yyline = yychar = yycolumn = 0;
0799: yy_lexical_state = YYINITIAL;
0800: }
0801:
0802: /**
0803: * Returns the current lexical state.
0804: */
0805: final public int yystate() {
0806: return yy_lexical_state;
0807: }
0808:
0809: /**
0810: * Enters a new lexical state
0811: *
0812: * @param newState the new lexical state
0813: */
0814: final public void yybegin(int newState) {
0815: yy_lexical_state = newState;
0816: }
0817:
0818: /**
0819: * Returns the text matched by the current regular expression.
0820: */
0821: final public String yytext() {
0822: return new String(yy_buffer, yy_startRead, yy_markedPos
0823: - yy_startRead);
0824: }
0825:
0826: /**
0827: * Returns the character at position <tt>pos</tt> from the
0828: * matched text.
0829: *
0830: * It is equivalent to yytext().charAt(pos), but faster
0831: *
0832: * @param pos the position of the character to fetch.
0833: * A value from 0 to yylength()-1.
0834: *
0835: * @return the character at position pos
0836: */
0837: final public char yycharat(int pos) {
0838: return yy_buffer[yy_startRead + pos];
0839: }
0840:
0841: /**
0842: * Returns the length of the matched text region.
0843: */
0844: final public int yylength() {
0845: return yy_markedPos - yy_startRead;
0846: }
0847:
0848: /**
0849: * Reports an error that occured while scanning.
0850: *
0851: * In a wellformed scanner (no or only correct usage of
0852: * yypushback(int) and a match-all fallback rule) this method
0853: * will only be called with things that "Can't Possibly Happen".
0854: * If this method is called, something is seriously wrong
0855: * (e.g. a JFlex bug producing a faulty scanner etc.).
0856: *
0857: * Usual syntax/scanner level error handling should be done
0858: * in error fallback rules.
0859: *
0860: * @param errorCode the code of the errormessage to display
0861: */
0862: private void yy_ScanError(int errorCode) {
0863: String message;
0864: try {
0865: message = YY_ERROR_MSG[errorCode];
0866: } catch (ArrayIndexOutOfBoundsException e) {
0867: message = YY_ERROR_MSG[YY_UNKNOWN_ERROR];
0868: }
0869:
0870: throw new Error(message);
0871: }
0872:
0873: /**
0874: * Pushes the specified amount of characters back into the input stream.
0875: *
0876: * They will be read again by then next call of the scanning method
0877: *
0878: * @param number the number of characters to be read again.
0879: * This number must not be greater than yylength()!
0880: */
0881: private void yypushback(int number) {
0882: if (number > yylength())
0883: yy_ScanError(YY_PUSHBACK_2BIG);
0884:
0885: yy_markedPos -= number;
0886: }
0887:
0888: /**
0889: * Resumes scanning until the next regular expression is matched,
0890: * the end of input is encountered or an I/O-Error occurs.
0891: *
0892: * @return the next token
0893: * @exception IOException if any I/O-Error occurs
0894: */
0895: public int yylex() throws java.io.IOException {
0896: int yy_input;
0897: int yy_action;
0898:
0899: while (true) {
0900:
0901: yychar += yylength();
0902:
0903: yy_action = -1;
0904:
0905: yy_currentPos = yy_startRead = yy_markedPos;
0906:
0907: yy_state = yy_lexical_state;
0908:
0909: yy_forAction: {
0910: while (true) {
0911:
0912: yy_input = yy_advance();
0913:
0914: if (yy_input == YYEOF)
0915: break yy_forAction;
0916:
0917: int yy_next = yytrans[yy_rowMap[yy_state]
0918: + yycmap[yy_input]];
0919: if (yy_next == -1)
0920: break yy_forAction;
0921: yy_state = yy_next;
0922:
0923: int yy_attributes = YY_ATTRIBUTE[yy_state];
0924: if ((yy_attributes & 1) > 0) {
0925: yy_action = yy_state;
0926: yy_markedPos = yy_currentPos;
0927: if ((yy_attributes & 8) > 0)
0928: break yy_forAction;
0929: }
0930:
0931: }
0932: }
0933:
0934: switch (yy_action) {
0935:
0936: case 7:
0937: case 8: { /* ignore */
0938: return applyStyle(SyntaxStyle.DEFAULT);
0939: }
0940: case 317:
0941: break;
0942: case 40: {
0943: yybegin(CHAR_STATE);
0944: spanStart = yychar;
0945: }
0946: case 318:
0947: break;
0948: case 120: {
0949: yybegin(YYINITIAL);
0950: return applyStyle(SyntaxStyle.COMMENT2, spanStart,
0951: yylength() + yychar - spanStart);
0952: }
0953: case 319:
0954: break;
0955: case 57: {
0956: yybegin(SINGLE_LINE_COMMENT_STATE);
0957: spanStart = yychar;
0958: return applyStyle(SyntaxStyle.COMMENT1);
0959: }
0960: case 320:
0961: break;
0962: case 257: {
0963: return applyStyle(SyntaxStyle.INCLUDE);
0964: }
0965: case 321:
0966: break;
0967: case 214: {
0968: applyStyle(SyntaxStyle.COMMENT3, spanStart, yychar
0969: - spanStart);
0970: spanStart = yychar + yylength();
0971: return applyStyle(SyntaxStyle.TAG4);
0972: }
0973: case 322:
0974: break;
0975: case 184: {
0976: return applyStyle(SyntaxStyle.LITERAL4);
0977: }
0978: case 323:
0979: break;
0980: case 148:
0981: case 241: {
0982: return applyStyle(SyntaxStyle.KEYWORD1);
0983: }
0984: case 324:
0985: break;
0986: case 143:
0987: case 186: {
0988: return applyStyle(SyntaxStyle.KEYWORD2);
0989: }
0990: case 325:
0991: break;
0992: case 121: {
0993: yybegin(DOCCOMMENT_STATE);
0994: spanStart = yychar;
0995: return applyStyle(SyntaxStyle.COMMENT3);
0996: }
0997: case 326:
0998: break;
0999: case 110: {
1000: yybegin(YYINITIAL);
1001: return applyStyle(SyntaxStyle.COMMENT3, spanStart,
1002: yylength() + yychar - spanStart);
1003: }
1004: case 327:
1005: break;
1006: case 106: {
1007: yybegin(YYINITIAL);
1008: return applyStyle(SyntaxStyle.LITERAL3, spanStart,
1009: yylength() + yychar - spanStart);
1010: }
1011: case 328:
1012: break;
1013: case 104: {
1014: yybegin(YYINITIAL);
1015: return applyStyle(SyntaxStyle.LITERAL1, spanStart,
1016: yylength() + yychar - spanStart);
1017: }
1018: case 329:
1019: break;
1020: case 39: {
1021: yybegin(STRING_STATE);
1022: spanStart = yychar;
1023: }
1024: case 330:
1025: break;
1026: case 14:
1027: case 32: {
1028: return applyStyle(SyntaxStyle.SEPARATOR1);
1029: }
1030: case 331:
1031: break;
1032: case 12:
1033: case 13:
1034: case 58:
1035: case 59:
1036: case 60:
1037: case 62:
1038: case 63:
1039: case 64:
1040: case 122:
1041: case 123:
1042: case 124:
1043: case 125:
1044: case 179:
1045: case 180:
1046: case 219:
1047: case 220:
1048: case 248:
1049: case 249:
1050: case 270:
1051: case 271:
1052: case 280:
1053: case 281:
1054: case 287:
1055: case 288:
1056: case 292:
1057: case 293:
1058: case 297:
1059: case 299:
1060: case 301:
1061: case 303:
1062: case 305:
1063: case 307:
1064: case 309:
1065: case 311:
1066: case 312:
1067: case 313:
1068: case 314:
1069: case 315: {
1070: return applyStyle(SyntaxStyle.LITERAL2);
1071: }
1072: case 332:
1073: break;
1074: case 11:
1075: case 16:
1076: case 17:
1077: case 18:
1078: case 19:
1079: case 20:
1080: case 21:
1081: case 22:
1082: case 23:
1083: case 24:
1084: case 25:
1085: case 26:
1086: case 27:
1087: case 28:
1088: case 29:
1089: case 30:
1090: case 31:
1091: case 66:
1092: case 67:
1093: case 68:
1094: case 69:
1095: case 70:
1096: case 71:
1097: case 72:
1098: case 73:
1099: case 74:
1100: case 75:
1101: case 76:
1102: case 77:
1103: case 78:
1104: case 79:
1105: case 81:
1106: case 82:
1107: case 83:
1108: case 84:
1109: case 85:
1110: case 86:
1111: case 87:
1112: case 88:
1113: case 89:
1114: case 90:
1115: case 91:
1116: case 93:
1117: case 94:
1118: case 95:
1119: case 96:
1120: case 97:
1121: case 98:
1122: case 99:
1123: case 100:
1124: case 101:
1125: case 102:
1126: case 127:
1127: case 128:
1128: case 129:
1129: case 130:
1130: case 131:
1131: case 132:
1132: case 133:
1133: case 134:
1134: case 135:
1135: case 136:
1136: case 137:
1137: case 138:
1138: case 139:
1139: case 140:
1140: case 141:
1141: case 142:
1142: case 144:
1143: case 145:
1144: case 146:
1145: case 147:
1146: case 149:
1147: case 150:
1148: case 151:
1149: case 152:
1150: case 153:
1151: case 154:
1152: case 155:
1153: case 156:
1154: case 157:
1155: case 158:
1156: case 159:
1157: case 160:
1158: case 161:
1159: case 162:
1160: case 163:
1161: case 164:
1162: case 165:
1163: case 166:
1164: case 167:
1165: case 181:
1166: case 182:
1167: case 183:
1168: case 185:
1169: case 187:
1170: case 188:
1171: case 189:
1172: case 190:
1173: case 191:
1174: case 192:
1175: case 193:
1176: case 194:
1177: case 195:
1178: case 196:
1179: case 197:
1180: case 198:
1181: case 199:
1182: case 200:
1183: case 201:
1184: case 202:
1185: case 203:
1186: case 204:
1187: case 205:
1188: case 206:
1189: case 207:
1190: case 208:
1191: case 209:
1192: case 221:
1193: case 223:
1194: case 224:
1195: case 225:
1196: case 226:
1197: case 227:
1198: case 228:
1199: case 229:
1200: case 230:
1201: case 231:
1202: case 232:
1203: case 233:
1204: case 234:
1205: case 235:
1206: case 236:
1207: case 237:
1208: case 238:
1209: case 239:
1210: case 240:
1211: case 250:
1212: case 251:
1213: case 252:
1214: case 253:
1215: case 254:
1216: case 255:
1217: case 256:
1218: case 258:
1219: case 259:
1220: case 260:
1221: case 261:
1222: case 262:
1223: case 263:
1224: case 264:
1225: case 272:
1226: case 273:
1227: case 274:
1228: case 275:
1229: case 276:
1230: case 277:
1231: case 278:
1232: case 282:
1233: case 283:
1234: case 284:
1235: case 285:
1236: case 289:
1237: case 290: {
1238: return applyStyle(SyntaxStyle.IDENTIFIER1);
1239: }
1240: case 333:
1241: break;
1242: case 9:
1243: case 10:
1244: case 15:
1245: case 33:
1246: case 34:
1247: case 35:
1248: case 36:
1249: case 37:
1250: case 38:
1251: case 103:
1252: case 294: {
1253: return applyStyle(SyntaxStyle.OPERATOR);
1254: }
1255: case 334:
1256: break;
1257: case 6:
1258: case 41:
1259: case 44:
1260: case 47:
1261: case 55: {
1262: return applyStyle(SyntaxStyle.DEFAULT);
1263: }
1264: case 335:
1265: break;
1266: case 5:
1267: case 54: {
1268: applyStyle(SyntaxStyle.COMMENT2);
1269: }
1270: case 336:
1271: break;
1272: case 42:
1273: case 43:
1274: case 105: {
1275: yybegin(YYINITIAL);
1276: return applyStyle(SyntaxStyle.ERROR, spanStart,
1277: yylength() + yychar - spanStart);
1278: }
1279: case 337:
1280: break;
1281: case 45:
1282: case 46:
1283: case 107:
1284: case 108:
1285: case 109: {
1286: yybegin(YYINITIAL);
1287: return applyStyle(SyntaxStyle.ERROR, spanStart, yychar
1288: - spanStart);
1289: }
1290: case 338:
1291: break;
1292: case 48: {
1293: applyStyle(SyntaxStyle.COMMENT1);
1294: }
1295: case 339:
1296: break;
1297: case 49:
1298: case 50: {
1299: yybegin(YYINITIAL);
1300: return applyStyle(SyntaxStyle.COMMENT1, spanStart,
1301: yylength() + yychar - spanStart);
1302: }
1303: case 340:
1304: break;
1305: case 51:
1306: case 52:
1307: case 53: {
1308: return applyStyle(SyntaxStyle.COMMENT3);
1309: }
1310: case 341:
1311: break;
1312: case 56: {
1313: yybegin(MULTI_LINE_COMMENT_STATE);
1314: spanStart = yychar;
1315: return applyStyle(SyntaxStyle.COMMENT2);
1316: }
1317: case 342:
1318: break;
1319: case 80:
1320: case 92:
1321: case 222: {
1322: return applyStyle(SyntaxStyle.KEYWORD3);
1323: }
1324: case 343:
1325: break;
1326: default:
1327: if (yy_input == YYEOF && yy_startRead == yy_currentPos) {
1328: yy_atEOF = true;
1329: {
1330: return -1;
1331: }
1332: } else {
1333: yy_ScanError(YY_NO_MATCH);
1334: }
1335: }
1336: }
1337: }
1338:
1339: }
|