001 /*
002 * Cobertura - http://cobertura.sourceforge.net/
003 *
004 * This file was taken from JavaNCSS
005 * http://www.kclee.com/clemens/java/javancss/
006 * Copyright (C) 2000 Chr. Clemens Lee <clemens a.t kclee d.o.t com>
007 *
008 * Cobertura is free software; you can redistribute it and/or modify
009 * it under the terms of the GNU General Public License as published
010 * by the Free Software Foundation; either version 2 of the License,
011 * or (at your option) any later version.
012 *
013 * Cobertura is distributed in the hope that it will be useful, but
014 * WITHOUT ANY WARRANTY; without even the implied warranty of
015 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
016 * General Public License for more details.
017 *
018 * You should have received a copy of the GNU General Public License
019 * along with Cobertura; if not, write to the Free Software
020 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
021 * USA
022 */
023
024
025 /*
026 *
027 * WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING
028 *
029 * WARNING TO COBERTURA DEVELOPERS
030 *
031 * DO NOT MODIFY THIS FILE!
032 *
033 * MODIFY THE FILES UNDER THE JAVANCSS DIRECTORY LOCATED AT THE ROOT OF THE COBERTURA PROJECT.
034 *
035 * FOLLOW THE PROCEDURE FOR MERGING THE LATEST JAVANCSS INTO COBERTURA LOCATED AT
036 * javancss/coberturaREADME.txt
037 *
038 * WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING
039 */
040 /* Generated By:JavaCC: Do not edit this line. JavaParser.java */
041 package net.sourceforge.cobertura.javancss.parser;
042
043 import java.util.*;
044
045 import net.sourceforge.cobertura.javancss.ccl.Util;
046
047 import net.sourceforge.cobertura.javancss.FunctionMetric;
048 import net.sourceforge.cobertura.javancss.ObjectMetric;
049 import net.sourceforge.cobertura.javancss.PackageMetric;
050
051 /**
052 * Java source code parser based on a grammar compiled by
053 * JavaCC from Java1.1.jj to the JavaParser class.<p>
054 *
055 * This class is responsible for parsing Java code and counting
056 * all metrics during this parsing process.
057 * The rest of the application is only responsible for invoking
058 * this parser in a convenient way and to present the results
059 * to the user.<p>
060 *
061 * This grammar is based on the Java grammar that comes as an
062 * example with JavaCC, but has been extended to collect the
063 * metrics data (and adapted to support real life and jdk 1.4
064 * Java sources as well).
065 *
066 * @author Sriram Sankar (original JavaCC grammar)
067 * , Chr. Clemens Lee <clemens@kclee.com> (JavaNCSS metrics)
068 * , additional counting of javadoc comments done by
069 * Emilio Gongora, <emilio@sms.nl> and
070 * Guillermo Rodriguez, <guille@sms.nl>.
071 * Anonymous class count patch by Vesa Karvonnen, <vesa_karvonen@hotmail.com> 2002-10-30.
072 * @version 2000-01-31 $Id: Java1.1.jj 171 2009-05-31 20:12:01Z hboutemy $
073 */
074 public class JavaParser implements JavaParserInterface, JavaParserConstants {
075 {
076 /* // DEBUG MODE
077 Util.setDebug( true );
078 // */
079 }
080 private boolean _bReturn = false;
081 private int _ncss = 0; // general counter
082 private int _loc = 0;
083 private int _cyc = 1;
084 private int _localCases = 0;
085 private String _sName = ""; // name of last token
086 private String _sParameter = "";
087 private String _sPackage = "";
088 private String _sClass = "";
089 private String _sFunction = "";
090 private int _functions = 0; // number of functions in this class
091 //private int _topLevelClasses = 0;
092 private int _classes = 0;
093 private int _classLevel = 0;
094 private int _anonClassCount = 1;
095
096 private int _jvdcLines = 0; // added by SMS
097 private int _jvdc = 0;
098 private boolean _bPrivate = true;//false; // added by SMS
099 private boolean _bPublic = true; // added by SMS
100
101 /**
102 * For each class the number of formal
103 * comments in toplevel methods, constructors, inner
104 * classes, and for the class itself are counted.
105 * The top level comment has to be directly before
106 * the class definition, not before the package or
107 * import statement as it is often seen in source code
108 * examples (at the beginning of your source files you
109 * should instead put your copyright notice).
110 */
111 private int _javadocs = 0; // global javadocs
112 private List/*<FunctionMetric>*/ _vFunctions = new ArrayList(); // holds the statistics for each method
113
114 /**
115 * Metrics for each class/interface are stored in this
116 * vector.
117 */
118 private List/*<ObjectMetric>*/ _vClasses = new ArrayList();
119 private List _vImports = new ArrayList();
120 private Object[] _aoPackage = null;
121 private Map/*<String,PackageMetric>*/ _htPackage = new HashMap();
122 private PackageMetric _pPackageMetric;
123
124 private Token _tmpToken = null;
125 /** Argh, too much of a state machine. */
126 private Token _tmpResultToken = null;
127
128 private String _formatPackage(String sPackage_) {
129 if (sPackage_.equals("")) {
130 return ".";
131 }
132
133 return sPackage_.substring(0, sPackage_.length() - 1);
134 }
135
136 public void parse() throws Exception {
137 CompilationUnit();
138 }
139
140 public void parseImportUnit() throws Exception {
141 ImportUnit();
142 }
143
144 public int getNcss() {
145 return _ncss;
146 }
147
148 public int getLOC() {
149 return _loc;
150 }
151
152 // added by SMS
153 public int getJvdc() {
154 return _jvdc;
155 }
156
157 /*public int getTopLevelClasses() {
158 return _topLevelClasses;
159 }*/
160
161 public List/*<FunctionMetric>*/ getFunction() {
162 return _vFunctions;
163 }
164
165 /**
166 * @return Top level classes in sorted order
167 */
168 public List/*<ObjectMetric>*/ getObject() {
169 Collections.sort(_vClasses);
170 return _vClasses;
171 }
172
173 /**
174 * @return The empty package consists of the name ".".
175 */
176 public Map/*<String,PackageMetric>*/ getPackage() {
177 return _htPackage;
178 }
179
180 public List getImports() {
181 return _vImports;
182 }
183
184 /**
185 * name, beginLine, ...
186 */
187 public Object[] getPackageObjects() {
188 return _aoPackage;
189 }
190
191 /**
192 * if javancss is used with cat *.java a long
193 * input stream might get generated, so line
194 * number information in case of an parse exception
195 * is not very useful.
196 */
197 public String getLastFunction() {
198 return _sPackage + _sClass + _sFunction;
199 }
200
201 /**
202 * Class to hold modifiers.
203 */
204 static public final class ModifierSet
205 {
206 /* Definitions of the bits in the modifiers field. */
207 public static final int PUBLIC = 0x0001;
208 public static final int PROTECTED = 0x0002;
209 public static final int PRIVATE = 0x0004;
210 public static final int ABSTRACT = 0x0008;
211 public static final int STATIC = 0x0010;
212 public static final int FINAL = 0x0020;
213 public static final int SYNCHRONIZED = 0x0040;
214 public static final int NATIVE = 0x0080;
215 public static final int TRANSIENT = 0x0100;
216 public static final int VOLATILE = 0x0200;
217 public static final int STRICTFP = 0x1000;
218
219 /** A set of accessors that indicate whether the specified modifier
220 is in the set. */
221
222 public boolean isPublic(int modifiers)
223 {
224 return (modifiers & PUBLIC) != 0;
225 }
226
227 public boolean isProtected(int modifiers)
228 {
229 return (modifiers & PROTECTED) != 0;
230 }
231
232 public boolean isPrivate(int modifiers)
233 {
234 return (modifiers & PRIVATE) != 0;
235 }
236
237 public boolean isStatic(int modifiers)
238 {
239 return (modifiers & STATIC) != 0;
240 }
241
242 public boolean isAbstract(int modifiers)
243 {
244 return (modifiers & ABSTRACT) != 0;
245 }
246
247 public boolean isFinal(int modifiers)
248 {
249 return (modifiers & FINAL) != 0;
250 }
251
252 public boolean isNative(int modifiers)
253 {
254 return (modifiers & NATIVE) != 0;
255 }
256
257 public boolean isStrictfp(int modifiers)
258 {
259 return (modifiers & STRICTFP) != 0;
260 }
261
262 public boolean isSynchronized(int modifiers)
263 {
264 return (modifiers & SYNCHRONIZED) != 0;
265 }
266
267 public boolean isTransient(int modifiers)
268 {
269 return (modifiers & TRANSIENT) != 0;
270 }
271
272 public boolean isVolatile(int modifiers)
273 {
274 return (modifiers & VOLATILE) != 0;
275 }
276
277 /**
278 * Removes the given modifier.
279 */
280 static int removeModifier(int modifiers, int mod)
281 {
282 return modifiers & ~mod;
283 }
284 }
285
286 /*****************************************
287 * THE JAVA LANGUAGE GRAMMAR STARTS HERE *
288 *****************************************/
289
290 /*
291 * Program structuring syntax follows.
292 */
293 final public void CompilationUnit() throws ParseException {
294 int oldNcss = 0;
295
296 // added by SMS
297 int oldFormal = 0;
298 int oldSingle = 0;
299 int oldMulti = 0;
300
301 JavaParserTokenManager._iSingleComments = 0;
302 JavaParserTokenManager._iMultiComments = 0;
303 JavaParserTokenManager._iFormalComments = 0;
304
305 JavaParserTokenManager._iMultiCommentsLast = 0;
306
307 _bPrivate = true;
308 _sPackage = "";
309 _pPackageMetric = new PackageMetric(); // this object manages the metrics
310
311 if (jj_2_1(2147483647)) {
312 PackageDeclaration();
313 } else {
314 ;
315 }
316 label_1:
317 while (true) {
318 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
319 case IMPORT:
320 ;
321 break;
322 default:
323 jj_la1[0] = jj_gen;
324 break label_1;
325 }
326 ImportDeclaration();
327 }
328 label_2:
329 while (true) {
330 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
331 case ABSTRACT:
332 case CLASS:
333 case ENUM:
334 case FINAL:
335 case INTERFACE:
336 case NATIVE:
337 case PRIVATE:
338 case PROTECTED:
339 case PUBLIC:
340 case STATIC:
341 case TESTAAAA:
342 case SYNCHRONIZED:
343 case TRANSIENT:
344 case VOLATILE:
345 case SEMICOLON:
346 case AT:
347 ;
348 break;
349 default:
350 jj_la1[1] = jj_gen;
351 break label_2;
352 }
353 TypeDeclaration();
354 }
355 // Package classes and functions are set inside
356 // class and interface bodies.
357 _pPackageMetric.ncss = _ncss;
358
359 // added by SMS
360 _pPackageMetric.javadocsLn = JavaParserTokenManager._iFormalComments;
361 _pPackageMetric.singleLn = JavaParserTokenManager._iSingleComments;
362 _pPackageMetric.multiLn = JavaParserTokenManager._iMultiComments;
363 //
364
365 _htPackage.put(_formatPackage(_sPackage),
366 _pPackageMetric);
367 label_3:
368 while (true) {
369 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
370 case IMPORT:
371 case PACKAGE:
372 case AT:
373 ;
374 break;
375 default:
376 jj_la1[2] = jj_gen;
377 break label_3;
378 }
379 oldNcss = _ncss;
380 _sPackage = "";
381 _pPackageMetric = new PackageMetric();
382
383 // added by SMS
384 oldFormal = JavaParserTokenManager._iFormalComments;
385 oldSingle = JavaParserTokenManager._iSingleComments;
386 oldMulti = JavaParserTokenManager._iMultiComments;
387 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
388 case PACKAGE:
389 case AT:
390 PackageDeclaration();
391 break;
392 case IMPORT:
393 ImportDeclaration();
394 break;
395 default:
396 jj_la1[3] = jj_gen;
397 jj_consume_token(-1);
398 throw new ParseException();
399 }
400 label_4:
401 while (true) {
402 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
403 case IMPORT:
404 ;
405 break;
406 default:
407 jj_la1[4] = jj_gen;
408 break label_4;
409 }
410 ImportDeclaration();
411 }
412 label_5:
413 while (true) {
414 TypeDeclaration();
415 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
416 case ABSTRACT:
417 case CLASS:
418 case ENUM:
419 case FINAL:
420 case INTERFACE:
421 case NATIVE:
422 case PRIVATE:
423 case PROTECTED:
424 case PUBLIC:
425 case STATIC:
426 case TESTAAAA:
427 case SYNCHRONIZED:
428 case TRANSIENT:
429 case VOLATILE:
430 case SEMICOLON:
431 case AT:
432 ;
433 break;
434 default:
435 jj_la1[5] = jj_gen;
436 break label_5;
437 }
438 }
439 // Package classes and functions are set inside
440 // class and interface bodies.
441 _pPackageMetric.ncss = _ncss - oldNcss;
442
443 // added by SMS
444 _pPackageMetric.javadocsLn = JavaParserTokenManager._iFormalComments - oldFormal;
445 _pPackageMetric.singleLn = JavaParserTokenManager._iSingleComments - oldSingle;
446 _pPackageMetric.multiLn = JavaParserTokenManager._iMultiComments - oldMulti;
447 //
448
449 PackageMetric pckmPrevious = (PackageMetric)_htPackage.
450 get(_formatPackage(_sPackage));
451 _pPackageMetric.add(pckmPrevious);
452 _htPackage.put(_formatPackage(_sPackage),
453 _pPackageMetric);
454 }
455 jj_consume_token(0);
456 Token pToken = getToken(1);
457 _loc = pToken.endLine;
458 }
459
460 final public void ImportUnit() throws ParseException {
461 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
462 case PACKAGE:
463 case AT:
464 PackageDeclaration();
465 break;
466 default:
467 jj_la1[6] = jj_gen;
468 ;
469 }
470 label_6:
471 while (true) {
472 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
473 case IMPORT:
474 ;
475 break;
476 default:
477 jj_la1[7] = jj_gen;
478 break label_6;
479 }
480 ImportDeclaration();
481 }
482 label_7:
483 while (true) {
484 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
485 case ABSTRACT:
486 case FINAL:
487 case PUBLIC:
488 case TESTAAAA:
489 case SYNCHRONIZED:
490 ;
491 break;
492 default:
493 jj_la1[8] = jj_gen;
494 break label_7;
495 }
496 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
497 case ABSTRACT:
498 jj_consume_token(ABSTRACT);
499 break;
500 case FINAL:
501 jj_consume_token(FINAL);
502 break;
503 case PUBLIC:
504 jj_consume_token(PUBLIC);
505 break;
506 case SYNCHRONIZED:
507 jj_consume_token(SYNCHRONIZED);
508 break;
509 case TESTAAAA:
510 jj_consume_token(TESTAAAA);
511 break;
512 default:
513 jj_la1[9] = jj_gen;
514 jj_consume_token(-1);
515 throw new ParseException();
516 }
517 }
518 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
519 case CLASS:
520 jj_consume_token(CLASS);
521 break;
522 case INTERFACE:
523 jj_consume_token(INTERFACE);
524 break;
525 default:
526 jj_la1[10] = jj_gen;
527 jj_consume_token(-1);
528 throw new ParseException();
529 }
530 }
531
532 final public void PackageDeclaration() throws ParseException {
533 int beginLine = 1;
534 int beginColumn = 1;
535 label_8:
536 while (true) {
537 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
538 case AT:
539 ;
540 break;
541 default:
542 jj_la1[11] = jj_gen;
543 break label_8;
544 }
545 Annotation();
546 }
547 jj_consume_token(PACKAGE);
548 _anonClassCount = 1;
549
550 Token pToken = getToken( 0 );
551 beginLine = pToken.beginLine ;
552 beginColumn = pToken.beginColumn;
553 _aoPackage = new Object[ 5 ];
554 Name();
555 _aoPackage[ 0 ] = _sName;
556 _aoPackage[ 1 ] = new Integer( beginLine );
557 _aoPackage[ 2 ] = new Integer( beginColumn );
558 jj_consume_token(SEMICOLON);
559 _aoPackage[ 3 ] = new Integer( getToken( 0 ).endLine );
560 _aoPackage[ 4 ] = new Integer( getToken( 0 ).endColumn );
561 _ncss++;
562 Util.debug( "_ncss++" );
563 _sPackage = _sName + ".";
564 }
565
566 final public void ImportDeclaration() throws ParseException {
567 int beginLine = 1;
568 int beginColumn = 1;
569 Object[] aoImport = null;
570 jj_consume_token(IMPORT);
571 Token pToken = getToken( 0 );
572 beginLine = pToken.beginLine ;
573 beginColumn = pToken.beginColumn;
574 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
575 case STATIC:
576 jj_consume_token(STATIC);
577 break;
578 default:
579 jj_la1[12] = jj_gen;
580 ;
581 }
582 Name();
583 aoImport = new Object[ 5 ];
584 aoImport[ 0 ] = _sName;
585 aoImport[ 1 ] = new Integer( beginLine );
586 aoImport[ 2 ] = new Integer( beginColumn );
587 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
588 case DOT:
589 jj_consume_token(DOT);
590 jj_consume_token(STAR);
591 aoImport[ 0 ] = aoImport[ 0 ].toString() + ".*";
592 break;
593 default:
594 jj_la1[13] = jj_gen;
595 ;
596 }
597 jj_consume_token(SEMICOLON);
598 aoImport[ 3 ] = new Integer( getToken( 0 ).endLine );
599 aoImport[ 4 ] = new Integer( getToken( 0 ).endColumn );
600 _vImports.add( aoImport );
601 _ncss++;
602 Util.debug( "_ncss++" );
603 }
604
605 final public void TypeDeclaration() throws ParseException {
606 int modifiers;
607 if (jj_2_2(2147483647)) {
608 ClassDeclaration();
609 } else if (jj_2_3(2147483647)) {
610 modifiers = Modifiers();
611 EnumDeclaration(modifiers);
612 } else if (jj_2_4(2147483647)) {
613 InterfaceDeclaration();
614 } else {
615 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
616 case ABSTRACT:
617 case FINAL:
618 case NATIVE:
619 case PRIVATE:
620 case PROTECTED:
621 case PUBLIC:
622 case STATIC:
623 case TESTAAAA:
624 case SYNCHRONIZED:
625 case TRANSIENT:
626 case VOLATILE:
627 case AT:
628 modifiers = Modifiers();
629 AnnotationTypeDeclaration(modifiers);
630 break;
631 case SEMICOLON:
632 jj_consume_token(SEMICOLON);
633 break;
634 default:
635 jj_la1[14] = jj_gen;
636 jj_consume_token(-1);
637 throw new ParseException();
638 }
639 }
640 }
641
642 /*
643 * Declaration syntax follows.
644 */
645 final public void ClassDeclaration() throws ParseException {
646 Token tmpToken = null;
647 _javadocs = 0;
648 ObjectMetric metric = null;
649
650 // added by SMS
651 int oldSingle = 0;
652 int oldMulti = 0;
653
654 _jvdcLines = 0;
655 boolean bTemp = _bPublic;
656 _bPublic = false;
657 //
658
659 //Added by REYNAUD Sebastien (LOGICA)
660 Token myToken = null;
661 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
662 case AT:
663 myToken = getToken(1);
664 Annotation();
665 tmpToken = myToken;
666 break;
667 default:
668 jj_la1[15] = jj_gen;
669 ;
670 }
671 label_9:
672 while (true) {
673 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
674 case AT:
675 ;
676 break;
677 default:
678 jj_la1[16] = jj_gen;
679 break label_9;
680 }
681 Annotation();
682 }
683 label_10:
684 while (true) {
685 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
686 case ABSTRACT:
687 case FINAL:
688 case PUBLIC:
689 case TESTAAAA:
690 case SYNCHRONIZED:
691 ;
692 break;
693 default:
694 jj_la1[17] = jj_gen;
695 break label_10;
696 }
697 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
698 case ABSTRACT:
699 jj_consume_token(ABSTRACT);
700 if ( tmpToken == null ) {
701 tmpToken = getToken( 0 );
702 }
703 break;
704 case FINAL:
705 jj_consume_token(FINAL);
706 if ( tmpToken == null ) {
707 tmpToken = getToken( 0 );
708 }
709 break;
710 case PUBLIC:
711 jj_consume_token(PUBLIC);
712 _bPublic = true; // added by SMS
713 if ( tmpToken == null ) {
714 tmpToken = getToken( 0 );
715 }
716 break;
717 case SYNCHRONIZED:
718 jj_consume_token(SYNCHRONIZED);
719 if ( tmpToken == null ) {
720 tmpToken = getToken( 0 );
721 }
722 break;
723 case TESTAAAA:
724 jj_consume_token(TESTAAAA);
725 if ( tmpToken == null ) {
726 tmpToken = getToken( 0 );
727 }
728 break;
729 default:
730 jj_la1[18] = jj_gen;
731 jj_consume_token(-1);
732 throw new ParseException();
733 }
734 }
735 if ( tmpToken == null ) {
736 tmpToken = getToken( 1 );
737 }
738 while( tmpToken.specialToken != null ) {
739 if ( tmpToken.specialToken.image.startsWith( "/**" ) ) {
740 _javadocs++;
741 Util.debug( "ClassDeclaration()._javadocs++" );
742 if (_bPublic || _bPrivate) {
743 Util.debug( "_jvdc++" );
744 _jvdc++;
745 _jvdcLines += JavaParserTokenManager._iMultiCommentsLast;
746 JavaParserTokenManager._iFormalComments += JavaParserTokenManager._iMultiCommentsLast;
747 }
748 JavaParserTokenManager._iMultiComments -= JavaParserTokenManager._iMultiCommentsLast;
749 break;
750 } else if ( tmpToken.specialToken.image.startsWith( "/*" ) ) {
751 break;
752 }
753
754 //System.out.println("\n"+tmpToken.specialToken.image);
755
756 tmpToken = tmpToken.specialToken;
757 }
758
759 oldSingle = JavaParserTokenManager._iSingleComments;
760 oldMulti = JavaParserTokenManager._iMultiComments;
761 UnmodifiedClassDeclaration();
762 /* removed by SMS
763 while( tmpToken.specialToken != null ) {
764 if ( tmpToken.specialToken.image.startsWith( "/**" ) ) {
765 _javadocs++;
766 }
767 tmpToken = tmpToken.specialToken;
768 }
769 */
770 metric = (ObjectMetric)_vClasses.get( _vClasses.size() - 1);
771 metric.javadocs = _javadocs;
772
773 // added by SMS
774 metric.javadocsLn = _jvdcLines;
775 metric.singleLn = JavaParserTokenManager._iSingleComments - oldSingle;
776 metric.multiLn = JavaParserTokenManager._iMultiComments - oldMulti;
777 //
778
779 // added by SMS
780 _bPublic = bTemp;
781 }
782
783 final public void UnmodifiedClassDeclaration() throws ParseException {
784 String sOldClass = _sClass;
785 int oldNcss = _ncss;
786 int oldFunctions = _functions;
787 int oldClasses = _classes;
788
789 //Added by REYNAUD Sebastien (LOGICA)
790 int oldJavadocs = _javadocs;
791 if (!_sClass.equals("")) {
792 _sClass += ".";
793 }
794 _sClass += getToken(2).image;
795 _classLevel ++;
796 Modifiers();
797 jj_consume_token(CLASS);
798 Identifier();
799 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
800 case LT:
801 TypeParameters();
802 break;
803 default:
804 jj_la1[19] = jj_gen;
805 ;
806 }
807 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
808 case EXTENDS:
809 jj_consume_token(EXTENDS);
810 Name();
811 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
812 case LT:
813 TypeArguments();
814 break;
815 default:
816 jj_la1[20] = jj_gen;
817 ;
818 }
819 label_11:
820 while (true) {
821 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
822 case DOT:
823 ;
824 break;
825 default:
826 jj_la1[21] = jj_gen;
827 break label_11;
828 }
829 jj_consume_token(DOT);
830 Name();
831 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
832 case LT:
833 TypeArguments();
834 break;
835 default:
836 jj_la1[22] = jj_gen;
837 ;
838 }
839 }
840 break;
841 default:
842 jj_la1[23] = jj_gen;
843 ;
844 }
845 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
846 case IMPLEMENTS:
847 jj_consume_token(IMPLEMENTS);
848 NameList();
849 break;
850 default:
851 jj_la1[24] = jj_gen;
852 ;
853 }
854 ClassBody();
855 _ncss++;
856 Util.debug( "_ncss++" );
857 _classLevel--;
858 if (_classLevel == 0) {
859 //_topLevelClasses++;
860 ObjectMetric metric = new ObjectMetric();
861 metric.name = _sPackage + _sClass;
862 metric.ncss = _ncss - oldNcss;
863 metric.functions = _functions - oldFunctions;
864 metric.classes = _classes - oldClasses;
865 Token lastToken = getToken( 0 );
866 //metric.add( new Integer( lastToken.endLine ) );
867 //metric.add( new Integer( lastToken.endColumn ) );
868 //metric.add( new Integer( _javadocs ) );
869 _vClasses.add( metric );
870 _pPackageMetric.functions += _functions - oldFunctions;
871 _pPackageMetric.classes++;
872
873 // added by SMS
874 _pPackageMetric.javadocs += _javadocs;
875 //_pPackageMetric.javadocsLn += JavaParserTokenManager._iFormalComments - oldFormal;
876 //_pPackageMetric.singleLn += JavaParserTokenManager._iSingleComments - oldSingle;
877 //_pPackageMetric.multiLn += JavaParserTokenManager._iMultiComments - oldMulti;
878 //
879 }
880 //Added by REYNAUD Sebastien (LOGICA)
881 else
882 {
883 ObjectMetric metric1 = new ObjectMetric();
884 metric1.name = _sPackage + _sClass ;
885 metric1.ncss = _ncss - oldNcss;
886 metric1.functions = _functions - oldFunctions;
887 metric1.classes = _classes - oldClasses;
888 Token lastToken = getToken( 0 );
889 _vClasses.add( metric1 );
890 _pPackageMetric.functions += _functions - oldFunctions;
891 _pPackageMetric.classes++;
892 metric1.javadocs = _javadocs - oldJavadocs;
893 }
894 //
895
896 _functions = oldFunctions;
897 _classes = oldClasses + 1;
898 _sClass = sOldClass;
899 }
900
901 final public void ClassBody() throws ParseException {
902 jj_consume_token(LBRACE);
903 label_12:
904 while (true) {
905 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
906 case ABSTRACT:
907 case ASSERT:
908 case BOOLEAN:
909 case BYTE:
910 case CHAR:
911 case CLASS:
912 case DOUBLE:
913 case ENUM:
914 case FINAL:
915 case FLOAT:
916 case INT:
917 case INTERFACE:
918 case LONG:
919 case NATIVE:
920 case PRIVATE:
921 case PROTECTED:
922 case PUBLIC:
923 case SHORT:
924 case STATIC:
925 case TESTAAAA:
926 case SYNCHRONIZED:
927 case TRANSIENT:
928 case VOID:
929 case VOLATILE:
930 case IDENTIFIER:
931 case LBRACE:
932 case SEMICOLON:
933 case AT:
934 case LT:
935 ;
936 break;
937 default:
938 jj_la1[25] = jj_gen;
939 break label_12;
940 }
941 ClassBodyDeclaration();
942 }
943 jj_consume_token(RBRACE);
944 }
945
946 final public void NestedClassDeclaration() throws ParseException {
947 // added by SMS
948 Token tmpToken = null;
949
950 boolean bTemp = _bPublic;
951 _bPublic = false;
952 boolean bPublic = false;
953
954 //Added by REYNAUD Sebastien (LOGICA)
955 Token myToken = null;
956 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
957 case AT:
958 myToken = getToken(1);
959 Annotation();
960 tmpToken = myToken;
961 break;
962 default:
963 jj_la1[26] = jj_gen;
964 ;
965 }
966 label_13:
967 while (true) {
968 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
969 case AT:
970 ;
971 break;
972 default:
973 jj_la1[27] = jj_gen;
974 break label_13;
975 }
976 Annotation();
977 }
978 if(tmpToken==null)
979 {
980 tmpToken = getToken( 1 );
981 }
982 label_14:
983 while (true) {
984 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
985 case ABSTRACT:
986 case FINAL:
987 case PRIVATE:
988 case PROTECTED:
989 case PUBLIC:
990 case STATIC:
991 case TESTAAAA:
992 ;
993 break;
994 default:
995 jj_la1[28] = jj_gen;
996 break label_14;
997 }
998 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
999 case STATIC:
1000 jj_consume_token(STATIC);
1001 break;
1002 case ABSTRACT:
1003 jj_consume_token(ABSTRACT);
1004 break;
1005 case FINAL:
1006 jj_consume_token(FINAL);
1007 break;
1008 case PUBLIC:
1009 jj_consume_token(PUBLIC);
1010 bPublic = true;
1011 break;
1012 case PROTECTED:
1013 jj_consume_token(PROTECTED);
1014 bPublic = true;
1015 break;
1016 case PRIVATE:
1017 jj_consume_token(PRIVATE);
1018 break;
1019 case TESTAAAA:
1020 jj_consume_token(TESTAAAA);
1021 break;
1022 default:
1023 jj_la1[29] = jj_gen;
1024 jj_consume_token(-1);
1025 throw new ParseException();
1026 }
1027 }
1028 //tmpToken = getToken( 0 );//Removed by REYNAUD Sebastien (LOGICA)
1029
1030 while( tmpToken.specialToken != null ) {
1031 if ( tmpToken.specialToken.image.startsWith( "/**" ) ) {
1032 _javadocs++;
1033 Util.debug( "NestedClassDeclaration()._javadocs++" );
1034 if ((_bPublic && bPublic) || _bPrivate) {
1035 Util.debug( "_jvdc++" );
1036 _jvdc++;
1037 _jvdcLines += JavaParserTokenManager._iMultiCommentsLast;
1038 JavaParserTokenManager._iFormalComments += JavaParserTokenManager._iMultiCommentsLast;
1039 }
1040 JavaParserTokenManager._iMultiComments -= JavaParserTokenManager._iMultiCommentsLast;
1041 break;
1042 } else if ( tmpToken.specialToken.image.startsWith( "/*" ) ) {
1043 break;
1044 }
1045
1046 //System.out.println("\n"+tmpToken.specialToken.image);
1047
1048 tmpToken = tmpToken.specialToken;
1049 }
1050 UnmodifiedClassDeclaration();
1051 //added by SMS
1052 _bPublic = bTemp;
1053 }
1054
1055 final public void ClassBodyDeclaration() throws ParseException {
1056 int modifiers;
1057 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1058 case SEMICOLON:
1059 EmptyStatement();
1060 break;
1061 default:
1062 jj_la1[31] = jj_gen;
1063 if (jj_2_5(2)) {
1064 Initializer();
1065 } else if (jj_2_6(2147483647)) {
1066 modifiers = Modifiers();
1067 AnnotationTypeDeclaration(modifiers);
1068 } else if (jj_2_7(2147483647)) {
1069 CreationAnnotation();
1070 } else if (jj_2_8(2147483647)) {
1071 NestedClassDeclaration();
1072 } else if (jj_2_9(2147483647)) {
1073 //LOOKAHEAD( ( "static" | "abstract" | "final" | "public" | "protected" | "private" | "strictfp" )* "interface" )
1074 modifiers = Modifiers();
1075 NestedInterfaceDeclaration();
1076 } else if (jj_2_10(2147483647)) {
1077 modifiers = Modifiers();
1078 EnumDeclaration(modifiers);
1079 } else if (jj_2_11(2147483647)) {
1080 ConstructorDeclaration();
1081 } else if (jj_2_12(2147483647)) {
1082 MethodDeclaration();
1083 } else {
1084 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1085 case BOOLEAN:
1086 case BYTE:
1087 case CHAR:
1088 case DOUBLE:
1089 case FINAL:
1090 case FLOAT:
1091 case INT:
1092 case LONG:
1093 case PRIVATE:
1094 case PROTECTED:
1095 case PUBLIC:
1096 case SHORT:
1097 case STATIC:
1098 case TRANSIENT:
1099 case VOLATILE:
1100 case IDENTIFIER:
1101 case AT:
1102 label_15:
1103 while (true) {
1104 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1105 case AT:
1106 ;
1107 break;
1108 default:
1109 jj_la1[30] = jj_gen;
1110 break label_15;
1111 }
1112 Annotation();
1113 }
1114 FieldDeclaration();
1115 break;
1116 default:
1117 jj_la1[32] = jj_gen;
1118 jj_consume_token(-1);
1119 throw new ParseException();
1120 }
1121 }
1122 }
1123 }
1124
1125 // This production is to determine lookahead only.
1126 final public void MethodDeclarationLookahead() throws ParseException {
1127 label_16:
1128 while (true) {
1129 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1130 case AT:
1131 ;
1132 break;
1133 default:
1134 jj_la1[33] = jj_gen;
1135 break label_16;
1136 }
1137 Annotation();
1138 }
1139 label_17:
1140 while (true) {
1141 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1142 case ABSTRACT:
1143 case FINAL:
1144 case NATIVE:
1145 case PRIVATE:
1146 case PROTECTED:
1147 case PUBLIC:
1148 case STATIC:
1149 case TESTAAAA:
1150 case SYNCHRONIZED:
1151 ;
1152 break;
1153 default:
1154 jj_la1[34] = jj_gen;
1155 break label_17;
1156 }
1157 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1158 case PUBLIC:
1159 jj_consume_token(PUBLIC);
1160 break;
1161 case PROTECTED:
1162 jj_consume_token(PROTECTED);
1163 break;
1164 case PRIVATE:
1165 jj_consume_token(PRIVATE);
1166 break;
1167 case STATIC:
1168 jj_consume_token(STATIC);
1169 break;
1170 case ABSTRACT:
1171 jj_consume_token(ABSTRACT);
1172 break;
1173 case FINAL:
1174 jj_consume_token(FINAL);
1175 break;
1176 case NATIVE:
1177 jj_consume_token(NATIVE);
1178 break;
1179 case SYNCHRONIZED:
1180 jj_consume_token(SYNCHRONIZED);
1181 break;
1182 case TESTAAAA:
1183 jj_consume_token(TESTAAAA);
1184 break;
1185 default:
1186 jj_la1[35] = jj_gen;
1187 jj_consume_token(-1);
1188 throw new ParseException();
1189 }
1190 }
1191 label_18:
1192 while (true) {
1193 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1194 case AT:
1195 ;
1196 break;
1197 default:
1198 jj_la1[36] = jj_gen;
1199 break label_18;
1200 }
1201 Annotation();
1202 }
1203 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1204 case LT:
1205 TypeParameters();
1206 break;
1207 default:
1208 jj_la1[37] = jj_gen;
1209 ;
1210 }
1211 ResultType();
1212 Identifier();
1213 jj_consume_token(LPAREN);
1214 }
1215
1216 final public void InterfaceDeclaration() throws ParseException {
1217 Token tmpToken = null;
1218 _javadocs = 0;
1219 //boolean bClassComment = false;
1220 ObjectMetric metric = null;
1221
1222 // added by SMS
1223 int oldSingle;
1224 int oldMulti;
1225
1226 _jvdcLines = 0;
1227 boolean bTemp = _bPublic;
1228 _bPublic = false;
1229 //
1230
1231 //Added by REYNAUD Sebastien (LOGICA)
1232 Token myToken=null;
1233 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1234 case AT:
1235 myToken = getToken(1);
1236 Annotation();
1237 tmpToken = myToken;
1238 break;
1239 default:
1240 jj_la1[38] = jj_gen;
1241 ;
1242 }
1243 label_19:
1244 while (true) {
1245 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1246 case AT:
1247 ;
1248 break;
1249 default:
1250 jj_la1[39] = jj_gen;
1251 break label_19;
1252 }
1253 Annotation();
1254 }
1255 label_20:
1256 while (true) {
1257 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1258 case ABSTRACT:
1259 case PUBLIC:
1260 case TESTAAAA:
1261 ;
1262 break;
1263 default:
1264 jj_la1[40] = jj_gen;
1265 break label_20;
1266 }
1267 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1268 case TESTAAAA:
1269 jj_consume_token(TESTAAAA);
1270 break;
1271 case ABSTRACT:
1272 jj_consume_token(ABSTRACT);
1273 if ( tmpToken == null ) {
1274 tmpToken = getToken( 0 );
1275 }
1276 break;
1277 case PUBLIC:
1278 jj_consume_token(PUBLIC);
1279 _bPublic = true; // added by SMS
1280 if ( tmpToken == null ) {
1281 tmpToken = getToken( 0 );
1282 }
1283 break;
1284 default:
1285 jj_la1[41] = jj_gen;
1286 jj_consume_token(-1);
1287 throw new ParseException();
1288 }
1289 }
1290 if ( tmpToken == null ) {
1291 tmpToken = getToken( 1 );
1292 }
1293 while( tmpToken.specialToken != null ) {
1294 if ( tmpToken.specialToken.image.startsWith( "/**" ) ) {
1295 _javadocs++;
1296 Util.debug( "InterfaceDeclaration()._javadocs++" );
1297 if (_bPublic || _bPrivate) {
1298 Util.debug( "_jvdc++" );
1299 _jvdc++;
1300 _jvdcLines += JavaParserTokenManager._iMultiCommentsLast;
1301 JavaParserTokenManager._iFormalComments += JavaParserTokenManager._iMultiCommentsLast;
1302 }
1303 JavaParserTokenManager._iMultiComments -= JavaParserTokenManager._iMultiCommentsLast;
1304 break;
1305 } else if ( tmpToken.specialToken.image.startsWith( "/*" ) ) {
1306 break;
1307 }
1308
1309 //System.out.println("\n"+tmpToken.specialToken.image);
1310
1311 tmpToken = tmpToken.specialToken;
1312 }
1313
1314 oldSingle = JavaParserTokenManager._iSingleComments;
1315 oldMulti = JavaParserTokenManager._iMultiComments;
1316 UnmodifiedInterfaceDeclaration();
1317 /* removed by SMS
1318 while( tmpToken.specialToken != null ) {
1319 if ( tmpToken.specialToken.image.startsWith( "/**" ) ) {
1320 _javadocs++;
1321 bClassComment = true;
1322 }
1323 tmpToken = tmpToken.specialToken;
1324 }*/
1325 metric = (ObjectMetric)_vClasses.get( _vClasses.size() - 1 );
1326 metric.javadocs = _javadocs;
1327
1328 // added by SMS
1329 metric.javadocsLn = _jvdcLines;
1330 metric.singleLn = JavaParserTokenManager._iSingleComments - oldSingle;
1331 metric.multiLn = JavaParserTokenManager._iMultiComments - oldMulti;
1332 //
1333
1334 // added by SMS
1335 _bPublic = bTemp;
1336 }
1337
1338 final public void NestedInterfaceDeclaration() throws ParseException {
1339 // added by SMS
1340 Token tmpToken = null;
1341
1342 boolean bTemp = _bPublic;
1343 _bPublic = false;
1344 boolean bPublic = false;
1345
1346 //Added by REYNAUD Sebastien (LOGICA)
1347 Token myToken=null;
1348 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1349 case AT:
1350 myToken = getToken(1);
1351 Annotation();
1352 tmpToken = myToken;
1353 break;
1354 default:
1355 jj_la1[42] = jj_gen;
1356 ;
1357 }
1358 label_21:
1359 while (true) {
1360 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1361 case AT:
1362 ;
1363 break;
1364 default:
1365 jj_la1[43] = jj_gen;
1366 break label_21;
1367 }
1368 Annotation();
1369 }
1370 if(tmpToken==null)
1371 {
1372 tmpToken = getToken( 1 );
1373 }
1374 label_22:
1375 while (true) {
1376 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1377 case ABSTRACT:
1378 case FINAL:
1379 case PRIVATE:
1380 case PROTECTED:
1381 case PUBLIC:
1382 case STATIC:
1383 case TESTAAAA:
1384 ;
1385 break;
1386 default:
1387 jj_la1[44] = jj_gen;
1388 break label_22;
1389 }
1390 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1391 case STATIC:
1392 jj_consume_token(STATIC);
1393 break;
1394 case ABSTRACT:
1395 jj_consume_token(ABSTRACT);
1396 break;
1397 case FINAL:
1398 jj_consume_token(FINAL);
1399 break;
1400 case PUBLIC:
1401 jj_consume_token(PUBLIC);
1402 bPublic = true;
1403 break;
1404 case PROTECTED:
1405 jj_consume_token(PROTECTED);
1406 bPublic = true;
1407 break;
1408 case PRIVATE:
1409 jj_consume_token(PRIVATE);
1410 break;
1411 case TESTAAAA:
1412 jj_consume_token(TESTAAAA);
1413 break;
1414 default:
1415 jj_la1[45] = jj_gen;
1416 jj_consume_token(-1);
1417 throw new ParseException();
1418 }
1419 }
1420 //tmpToken = getToken( 0 ); //Removed by REYNAUD Sebastien (LOGICA)
1421
1422 while( tmpToken.specialToken != null ) {
1423 if ( tmpToken.specialToken.image.startsWith( "/**" ) ) {
1424 _javadocs++;
1425 if ((_bPublic && bPublic) || _bPrivate) {
1426 Util.debug( "_jvdc++" );
1427 _jvdc++;
1428 _jvdcLines += JavaParserTokenManager._iMultiCommentsLast;
1429 JavaParserTokenManager._iFormalComments += JavaParserTokenManager._iMultiCommentsLast;
1430 }
1431 JavaParserTokenManager._iMultiComments -= JavaParserTokenManager._iMultiCommentsLast;
1432 break;
1433 } else if ( tmpToken.specialToken.image.startsWith( "/*" ) ) {
1434 break;
1435 }
1436
1437 //System.out.println("\n"+tmpToken.specialToken.image);
1438
1439 tmpToken = tmpToken.specialToken;
1440 }
1441 UnmodifiedInterfaceDeclaration();
1442 // added by SMS
1443 _bPublic = bTemp;
1444 }
1445
1446 final public void UnmodifiedInterfaceDeclaration() throws ParseException {
1447 String sOldClass = _sClass;
1448 int oldNcss = _ncss;
1449 int oldFunctions = _functions;
1450 int oldClasses = _classes;
1451
1452 //Added by REYNAUD Sebastien (LOGICA)
1453 int oldJavadocs = _javadocs;
1454 if (!_sClass.equals("")) {
1455 _sClass += ".";
1456 }
1457 _sClass += getToken(2).image;
1458 _classLevel ++;
1459 jj_consume_token(INTERFACE);
1460 Identifier();
1461 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1462 case LT:
1463 TypeParameters();
1464 break;
1465 default:
1466 jj_la1[46] = jj_gen;
1467 ;
1468 }
1469 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1470 case EXTENDS:
1471 jj_consume_token(EXTENDS);
1472 NameList();
1473 break;
1474 default:
1475 jj_la1[47] = jj_gen;
1476 ;
1477 }
1478 jj_consume_token(LBRACE);
1479 label_23:
1480 while (true) {
1481 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1482 case ABSTRACT:
1483 case BOOLEAN:
1484 case BYTE:
1485 case CHAR:
1486 case CLASS:
1487 case DOUBLE:
1488 case ENUM:
1489 case FINAL:
1490 case FLOAT:
1491 case INT:
1492 case INTERFACE:
1493 case LONG:
1494 case NATIVE:
1495 case PRIVATE:
1496 case PROTECTED:
1497 case PUBLIC:
1498 case SHORT:
1499 case STATIC:
1500 case TESTAAAA:
1501 case SYNCHRONIZED:
1502 case TRANSIENT:
1503 case VOID:
1504 case VOLATILE:
1505 case IDENTIFIER:
1506 case SEMICOLON:
1507 case AT:
1508 case LT:
1509 ;
1510 break;
1511 default:
1512 jj_la1[48] = jj_gen;
1513 break label_23;
1514 }
1515 InterfaceMemberDeclaration();
1516 }
1517 jj_consume_token(RBRACE);
1518 _ncss++;
1519 Util.debug( "_ncss++" );
1520 _classLevel--;
1521 if (_classLevel == 0)
1522 {
1523 //_topLevelClasses++;
1524 ObjectMetric metric = new ObjectMetric();
1525 metric.name = _sPackage + _sClass;
1526 metric.ncss = _ncss - oldNcss;
1527 metric.functions = _functions - oldFunctions;
1528 metric.classes = _classes - oldClasses;
1529 //metric.add( Util.getConstantObject() );
1530 //metric.add( Util.getConstantObject() );
1531 _vClasses.add( metric );
1532 _pPackageMetric.functions += _functions - oldFunctions;
1533 _pPackageMetric.classes++;
1534
1535 // added by SMS
1536 _pPackageMetric.javadocs += _javadocs;
1537 //_pPackageMetric.javadocsLn += JavaParserTokenManager._iFormalComments - oldFormal;
1538 //_pPackageMetric.singleLn += JavaParserTokenManager._iSingleComments - oldSingle;
1539 //_pPackageMetric.multiLn += JavaParserTokenManager._iMultiComments - oldMulti;
1540 //
1541 }
1542 //Added by REYNAUD Sebastien (LOGICA)
1543 else
1544 {
1545 ObjectMetric metric1 = new ObjectMetric();
1546 metric1.name = _sPackage + _sClass;
1547 metric1.ncss = _ncss - oldNcss;
1548 metric1.functions = _functions - oldFunctions;
1549 metric1.classes = _classes - oldClasses;
1550 Token lastToken = getToken( 0 );
1551 _vClasses.add( metric1 );
1552 _pPackageMetric.functions += _functions - oldFunctions;
1553 _pPackageMetric.classes++;
1554 //_pPackageMetric.javadocs += _javadocs;
1555 metric1.javadocs = _javadocs - oldJavadocs;
1556 }
1557 //
1558
1559 _functions = oldFunctions;
1560 _classes = oldClasses + 1;
1561 _sClass = sOldClass;
1562 }
1563
1564 final public void InterfaceMemberDeclaration() throws ParseException {
1565 int modifiers;
1566 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1567 case SEMICOLON:
1568 EmptyStatement();
1569 break;
1570 default:
1571 jj_la1[49] = jj_gen;
1572 if (jj_2_13(2147483647)) {
1573 NestedClassDeclaration();
1574 } else if (jj_2_14(2147483647)) {
1575 NestedInterfaceDeclaration();
1576 } else if (jj_2_15(2147483647)) {
1577 modifiers = Modifiers();
1578 EnumDeclaration(modifiers);
1579 } else if (jj_2_16(2147483647)) {
1580 MethodDeclaration();
1581 } else {
1582 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1583 case ABSTRACT:
1584 case BOOLEAN:
1585 case BYTE:
1586 case CHAR:
1587 case DOUBLE:
1588 case FINAL:
1589 case FLOAT:
1590 case INT:
1591 case LONG:
1592 case NATIVE:
1593 case PRIVATE:
1594 case PROTECTED:
1595 case PUBLIC:
1596 case SHORT:
1597 case STATIC:
1598 case TESTAAAA:
1599 case SYNCHRONIZED:
1600 case TRANSIENT:
1601 case VOLATILE:
1602 case IDENTIFIER:
1603 case AT:
1604 modifiers = Modifiers();
1605 FieldDeclaration();
1606 break;
1607 default:
1608 jj_la1[50] = jj_gen;
1609 jj_consume_token(-1);
1610 throw new ParseException();
1611 }
1612 }
1613 }
1614 }
1615
1616 final public void FieldDeclaration() throws ParseException {
1617 // added by SMS
1618 Token tmpToken = null;
1619 boolean bPublic = false;
1620 label_24:
1621 while (true) {
1622 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1623 case FINAL:
1624 case PRIVATE:
1625 case PROTECTED:
1626 case PUBLIC:
1627 case STATIC:
1628 case TRANSIENT:
1629 case VOLATILE:
1630 ;
1631 break;
1632 default:
1633 jj_la1[51] = jj_gen;
1634 break label_24;
1635 }
1636 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1637 case PUBLIC:
1638 jj_consume_token(PUBLIC);
1639 bPublic = true;
1640 break;
1641 case PROTECTED:
1642 jj_consume_token(PROTECTED);
1643 bPublic = true;
1644 break;
1645 case PRIVATE:
1646 jj_consume_token(PRIVATE);
1647 break;
1648 case STATIC:
1649 jj_consume_token(STATIC);
1650 break;
1651 case FINAL:
1652 jj_consume_token(FINAL);
1653 break;
1654 case TRANSIENT:
1655 jj_consume_token(TRANSIENT);
1656 break;
1657 case VOLATILE:
1658 jj_consume_token(VOLATILE);
1659 break;
1660 default:
1661 jj_la1[52] = jj_gen;
1662 jj_consume_token(-1);
1663 throw new ParseException();
1664 }
1665 }
1666 tmpToken = getToken( 0 );
1667
1668 while( tmpToken.specialToken != null )
1669 {
1670 if ( tmpToken.specialToken.image.startsWith( "/**" ) )
1671 {
1672 if ((bPublic && _bPublic) || _bPrivate)
1673 {
1674 //_javadocs++;
1675 Util.debug( "_jvdc++" );
1676 _jvdc++;
1677 _jvdcLines += JavaParserTokenManager._iMultiCommentsLast;
1678 JavaParserTokenManager._iFormalComments += JavaParserTokenManager._iMultiCommentsLast;
1679 }
1680 JavaParserTokenManager._iMultiComments -= JavaParserTokenManager._iMultiCommentsLast;
1681 break;
1682 }
1683 else if ( tmpToken.specialToken.image.startsWith( "/*" ) )
1684 {
1685 break;
1686 }
1687
1688 //System.out.println("\n"+tmpToken.specialToken.image);
1689
1690 tmpToken = tmpToken.specialToken;
1691 }
1692 label_25:
1693 while (true) {
1694 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1695 case AT:
1696 ;
1697 break;
1698 default:
1699 jj_la1[53] = jj_gen;
1700 break label_25;
1701 }
1702 Annotation();
1703 }
1704 Type();
1705 VariableDeclarator();
1706 label_26:
1707 while (true) {
1708 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1709 case COMMA:
1710 ;
1711 break;
1712 default:
1713 jj_la1[54] = jj_gen;
1714 break label_26;
1715 }
1716 jj_consume_token(COMMA);
1717 VariableDeclarator();
1718 }
1719 jj_consume_token(SEMICOLON);
1720 _ncss++; Util.debug( "_ncss++" );
1721 }
1722
1723 final public void VariableDeclarator() throws ParseException {
1724 VariableDeclaratorId();
1725 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1726 case ASSIGN:
1727 jj_consume_token(ASSIGN);
1728 VariableInitializer();
1729 break;
1730 default:
1731 jj_la1[55] = jj_gen;
1732 ;
1733 }
1734 }
1735
1736 final public void VariableDeclaratorId() throws ParseException {
1737 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1738 case ENUM:
1739 jj_consume_token(ENUM);
1740 break;
1741 case ASSERT:
1742 case IDENTIFIER:
1743 Identifier();
1744 break;
1745 default:
1746 jj_la1[56] = jj_gen;
1747 jj_consume_token(-1);
1748 throw new ParseException();
1749 }
1750 label_27:
1751 while (true) {
1752 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1753 case LBRACKET:
1754 ;
1755 break;
1756 default:
1757 jj_la1[57] = jj_gen;
1758 break label_27;
1759 }
1760 jj_consume_token(LBRACKET);
1761 jj_consume_token(RBRACKET);
1762 _sName += "[]";
1763 }
1764 }
1765
1766 final public void VariableInitializer() throws ParseException {
1767 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1768 case LBRACE:
1769 ArrayInitializer();
1770 break;
1771 case ASSERT:
1772 case BOOLEAN:
1773 case BYTE:
1774 case CHAR:
1775 case DOUBLE:
1776 case ENUM:
1777 case FALSE:
1778 case FLOAT:
1779 case INT:
1780 case LONG:
1781 case NEW:
1782 case NULL:
1783 case SHORT:
1784 case SUPER:
1785 case THIS:
1786 case TRUE:
1787 case VOID:
1788 case INTEGER_LITERAL:
1789 case FLOATING_POINT_LITERAL:
1790 case CHARACTER_LITERAL:
1791 case STRING_LITERAL:
1792 case IDENTIFIER:
1793 case LPAREN:
1794 case BANG:
1795 case TILDE:
1796 case INCR:
1797 case DECR:
1798 case PLUS:
1799 case MINUS:
1800 Expression();
1801 break;
1802 default:
1803 jj_la1[58] = jj_gen;
1804 jj_consume_token(-1);
1805 throw new ParseException();
1806 }
1807 }
1808
1809 final public void ArrayInitializer() throws ParseException {
1810 jj_consume_token(LBRACE);
1811 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1812 case ASSERT:
1813 case BOOLEAN:
1814 case BYTE:
1815 case CHAR:
1816 case DOUBLE:
1817 case ENUM:
1818 case FALSE:
1819 case FLOAT:
1820 case INT:
1821 case LONG:
1822 case NEW:
1823 case NULL:
1824 case SHORT:
1825 case SUPER:
1826 case THIS:
1827 case TRUE:
1828 case VOID:
1829 case INTEGER_LITERAL:
1830 case FLOATING_POINT_LITERAL:
1831 case CHARACTER_LITERAL:
1832 case STRING_LITERAL:
1833 case IDENTIFIER:
1834 case LPAREN:
1835 case LBRACE:
1836 case BANG:
1837 case TILDE:
1838 case INCR:
1839 case DECR:
1840 case PLUS:
1841 case MINUS:
1842 VariableInitializer();
1843 label_28:
1844 while (true) {
1845 if (jj_2_17(2)) {
1846 ;
1847 } else {
1848 break label_28;
1849 }
1850 jj_consume_token(COMMA);
1851 VariableInitializer();
1852 }
1853 break;
1854 default:
1855 jj_la1[59] = jj_gen;
1856 ;
1857 }
1858 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1859 case COMMA:
1860 jj_consume_token(COMMA);
1861 break;
1862 default:
1863 jj_la1[60] = jj_gen;
1864 ;
1865 }
1866 jj_consume_token(RBRACE);
1867 }
1868
1869 final public void MethodDeclaration() throws ParseException {
1870 int oldNcss = _ncss;
1871 int oldFunctions = _functions;
1872 String sOldFunction = _sFunction;
1873 int oldcyc = _cyc;
1874 boolean bOldReturn = _bReturn;
1875 Token tmpToken = null;
1876 int jvdc = 0;
1877
1878 // added by SMS
1879 int jvdcLines = 0;
1880 int oldSingle;
1881 int oldMulti;
1882 boolean bPublic = false;
1883 //
1884
1885 //Added by REYNAUD Sebastien (LOGICA)
1886 Token myToken = null;
1887 _tmpToken=null;
1888 if ( _tmpToken != null )
1889 {
1890 tmpToken = _tmpToken;
1891 }
1892 label_29:
1893 while (true) {
1894 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1895 case AT:
1896 ;
1897 break;
1898 default:
1899 jj_la1[61] = jj_gen;
1900 break label_29;
1901 }
1902 myToken = getToken(1);
1903 Annotation();
1904 if ( tmpToken == null ) {
1905
1906 //tmpToken = getToken( 0 ); //Removed by REYNAUD Sebastien (LOGICA)
1907
1908 //Added by REYNAUD Sebastien (LOGICA)
1909 tmpToken = myToken;
1910 //
1911 }
1912 }
1913 label_30:
1914 while (true) {
1915 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1916 case ABSTRACT:
1917 case FINAL:
1918 case NATIVE:
1919 case PRIVATE:
1920 case PROTECTED:
1921 case PUBLIC:
1922 case STATIC:
1923 case TESTAAAA:
1924 case SYNCHRONIZED:
1925 ;
1926 break;
1927 default:
1928 jj_la1[62] = jj_gen;
1929 break label_30;
1930 }
1931 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1932 case PUBLIC:
1933 jj_consume_token(PUBLIC);
1934 bPublic = true;
1935 if ( tmpToken == null ) {
1936 tmpToken = getToken( 0 );
1937 }
1938 break;
1939 case PROTECTED:
1940 jj_consume_token(PROTECTED);
1941 bPublic = true;
1942 if ( tmpToken == null ) {
1943 tmpToken = getToken( 0 );
1944 }
1945 break;
1946 case PRIVATE:
1947 jj_consume_token(PRIVATE);
1948 if ( tmpToken == null ) {
1949 tmpToken = getToken( 0 );
1950 }
1951 break;
1952 case STATIC:
1953 jj_consume_token(STATIC);
1954 if ( tmpToken == null ) {
1955 tmpToken = getToken( 0 );
1956 }
1957 break;
1958 case ABSTRACT:
1959 jj_consume_token(ABSTRACT);
1960 if ( tmpToken == null ) {
1961 tmpToken = getToken( 0 );
1962 }
1963 break;
1964 case FINAL:
1965 jj_consume_token(FINAL);
1966 if ( tmpToken == null ) {
1967 tmpToken = getToken( 0 );
1968 }
1969 break;
1970 case NATIVE:
1971 jj_consume_token(NATIVE);
1972 if ( tmpToken == null ) {
1973 tmpToken = getToken( 0 );
1974 }
1975 break;
1976 case SYNCHRONIZED:
1977 jj_consume_token(SYNCHRONIZED);
1978 if ( tmpToken == null ) {
1979 tmpToken = getToken( 0 );
1980 }
1981 break;
1982 case TESTAAAA:
1983 jj_consume_token(TESTAAAA);
1984 if ( tmpToken == null ) {
1985 tmpToken = getToken( 0 );
1986 }
1987 break;
1988 default:
1989 jj_la1[63] = jj_gen;
1990 jj_consume_token(-1);
1991 throw new ParseException();
1992 }
1993 }
1994 label_31:
1995 while (true) {
1996 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1997 case AT:
1998 ;
1999 break;
2000 default:
2001 jj_la1[64] = jj_gen;
2002 break label_31;
2003 }
2004 Annotation();
2005 }
2006 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2007 case LT:
2008 TypeParameters();
2009 break;
2010 default:
2011 jj_la1[65] = jj_gen;
2012 ;
2013 }
2014 _tmpResultToken = null;
2015 ResultType();
2016 if ( tmpToken == null )
2017 {
2018 tmpToken = _tmpResultToken;
2019 if ( tmpToken == null )
2020 {
2021 tmpToken = getToken( 0 );
2022 }
2023 Util.debug( "result type tmpToken: " + tmpToken );
2024 }
2025 MethodDeclarator();
2026 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2027 case THROWS:
2028 jj_consume_token(THROWS);
2029 NameList();
2030 break;
2031 default:
2032 jj_la1[66] = jj_gen;
2033 ;
2034 }
2035 _cyc = 1;
2036 _bReturn = false;
2037 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2038 case LBRACE:
2039 Block();
2040 break;
2041 case SEMICOLON:
2042 jj_consume_token(SEMICOLON);
2043 break;
2044 default:
2045 jj_la1[67] = jj_gen;
2046 jj_consume_token(-1);
2047 throw new ParseException();
2048 }
2049 // added by SMS
2050 {
2051 Util.debug( "Token: " + String.valueOf( tmpToken.image ) );
2052 while( tmpToken.specialToken != null )
2053 {
2054 Util.debug( "Token comment: " + String.valueOf( tmpToken.specialToken.image ) );
2055 if ( tmpToken.specialToken.image.startsWith( "/**" ) )
2056 {
2057 _javadocs++;
2058 Util.debug( "MethodDeclaration()._javadocs++" );
2059 jvdc++;
2060 if ((bPublic && _bPublic) || _bPrivate) {
2061 Util.debug( "_jvdc++" );
2062 _jvdc++;
2063 jvdcLines = JavaParserTokenManager._iMultiCommentsLast;
2064 _jvdcLines += jvdcLines;
2065 JavaParserTokenManager._iFormalComments += jvdcLines;
2066 }
2067 JavaParserTokenManager._iMultiComments -= jvdcLines;
2068 break;
2069 } else if ( tmpToken.specialToken.image.startsWith( "/*" ) ) {
2070 jvdcLines = 0;
2071 break;
2072 }
2073
2074 //System.out.println("\n"+tmpToken.specialToken.image);
2075
2076 tmpToken = tmpToken.specialToken;
2077 }
2078
2079 oldSingle = JavaParserTokenManager._iSingleComments;
2080 oldMulti = JavaParserTokenManager._iMultiComments;
2081 }
2082
2083
2084 // removed by ccl
2085 /*
2086 while( tmpToken.specialToken != null ) {
2087 if ( tmpToken.specialToken.image.startsWith( "/**" ) ) {
2088 jvdc++;
2089 _javadocs++;
2090 }
2091 tmpToken = tmpToken.specialToken;
2092 }
2093 */
2094 // removed by SMS
2095 /*
2096 while( tmpToken.specialToken != null ) {
2097 if ( tmpToken.specialToken.image.startsWith( "/**" ) ) {
2098 jvdc++;
2099 _javadocs++;
2100 _bJavadoc = true;
2101 }
2102
2103 tmpToken = tmpToken.specialToken;
2104 }
2105 */
2106
2107 if (_bReturn)
2108 {
2109 _cyc--;
2110 }
2111 _ncss++;
2112 Util.debug( "MethodDeclaration()._ncss++" );
2113
2114 FunctionMetric functionMetrics = new FunctionMetric();
2115 functionMetrics.name = _sPackage + _sClass + _sFunction;
2116 functionMetrics.ncss = _ncss - oldNcss;
2117 functionMetrics.ccn = _cyc;
2118 functionMetrics.javadocs = jvdc;
2119
2120 // added by SMS
2121 functionMetrics.javadocsLn = 0; //jvdcLines;
2122 functionMetrics.singleLn = 0; //JavaParserTokenManager._iSingleComments - oldSingle;
2123 functionMetrics.multiLn = 0; //JavaParserTokenManager._iMultiComments - oldMulti;
2124 //
2125
2126 // specially added for Cobertura
2127 // Commenting out for now until the rest of patch 2353196 is applied.
2128 //functionMetrics.beginLine = (new Integer(beginLine));
2129 //functionMetrics.endLine = (new Integer(endLine));
2130
2131 _vFunctions.add(functionMetrics);
2132 _sFunction = sOldFunction;
2133 _functions = oldFunctions + 1;
2134 _cyc = oldcyc;
2135 _bReturn = bOldReturn;
2136
2137 //Added by REYNAUD Sebastien (LOGICA)
2138 _tmpToken = null;
2139 //
2140
2141 }
2142
2143 final public void MethodDeclarator() throws ParseException {
2144 _sFunction = "." + getToken(1).image;
2145 Identifier();
2146 FormalParameters();
2147 _sFunction += _sParameter;
2148 label_32:
2149 while (true) {
2150 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2151 case LBRACKET:
2152 ;
2153 break;
2154 default:
2155 jj_la1[68] = jj_gen;
2156 break label_32;
2157 }
2158 jj_consume_token(LBRACKET);
2159 jj_consume_token(RBRACKET);
2160 _sFunction += "[]";
2161 }
2162 }
2163
2164 final public void FormalParameters() throws ParseException {
2165 _sParameter = "(";
2166 jj_consume_token(LPAREN);
2167 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2168 case ABSTRACT:
2169 case BOOLEAN:
2170 case BYTE:
2171 case CHAR:
2172 case DOUBLE:
2173 case FINAL:
2174 case FLOAT:
2175 case INT:
2176 case LONG:
2177 case NATIVE:
2178 case PRIVATE:
2179 case PROTECTED:
2180 case PUBLIC:
2181 case SHORT:
2182 case STATIC:
2183 case TESTAAAA:
2184 case SYNCHRONIZED:
2185 case TRANSIENT:
2186 case VOLATILE:
2187 case IDENTIFIER:
2188 case AT:
2189 FormalParameter();
2190 _sParameter += _sName;
2191 label_33:
2192 while (true) {
2193 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2194 case COMMA:
2195 ;
2196 break;
2197 default:
2198 jj_la1[69] = jj_gen;
2199 break label_33;
2200 }
2201 jj_consume_token(COMMA);
2202 FormalParameter();
2203 _sParameter += "," + _sName;
2204 }
2205 break;
2206 default:
2207 jj_la1[70] = jj_gen;
2208 ;
2209 }
2210 jj_consume_token(RPAREN);
2211 _sParameter += ")";
2212 }
2213
2214 final public void FormalParameter() throws ParseException {
2215 Modifiers();
2216 Type();
2217 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2218 case ELLIPSIS:
2219 jj_consume_token(ELLIPSIS);
2220 break;
2221 default:
2222 jj_la1[71] = jj_gen;
2223 ;
2224 }
2225 VariableDeclaratorId();
2226 }
2227
2228 final public void ConstructorDeclaration() throws ParseException {
2229 int oldNcss = _ncss;
2230 int oldFunctions = _functions;
2231 String sOldFunction = _sFunction;
2232 int oldcyc = _cyc;
2233 boolean bOldReturn = _bReturn;
2234 Token tmpToken = null;
2235 int jvdc = 0;
2236
2237 // added by SMS
2238 int oldSingle;
2239 int oldMulti;
2240 int jvdcLines = 0;
2241 boolean bPublic = false;
2242 //
2243
2244 //Added by REYNAUD Sebastien (LOGICA)
2245 Token myToken = null;
2246 label_34:
2247 while (true) {
2248 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2249 case AT:
2250 ;
2251 break;
2252 default:
2253 jj_la1[72] = jj_gen;
2254 break label_34;
2255 }
2256 myToken = getToken(1);
2257 Annotation();
2258 if ( tmpToken == null )
2259 {
2260 tmpToken = myToken;
2261 }
2262 }
2263 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2264 case PRIVATE:
2265 case PROTECTED:
2266 case PUBLIC:
2267 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2268 case PUBLIC:
2269 jj_consume_token(PUBLIC);
2270 bPublic = true;
2271 if ( tmpToken == null ) {
2272 tmpToken = getToken( 0 );
2273 }
2274 break;
2275 case PROTECTED:
2276 jj_consume_token(PROTECTED);
2277 bPublic = true;
2278 if ( tmpToken == null ) {
2279 tmpToken = getToken( 0 );
2280 }
2281 break;
2282 case PRIVATE:
2283 jj_consume_token(PRIVATE);
2284 if ( tmpToken == null ) {
2285 tmpToken = getToken( 0 );
2286 }
2287 break;
2288 default:
2289 jj_la1[73] = jj_gen;
2290 jj_consume_token(-1);
2291 throw new ParseException();
2292 }
2293 break;
2294 default:
2295 jj_la1[74] = jj_gen;
2296 ;
2297 }
2298 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2299 case LT:
2300 TypeParameters();
2301 break;
2302 default:
2303 jj_la1[75] = jj_gen;
2304 ;
2305 }
2306 Identifier();
2307 if ( tmpToken == null ) {
2308 tmpToken = getToken( 0 );
2309 }
2310 _cyc = 1;
2311 _sFunction = _sPackage + _sClass + "." + getToken(0).image;
2312 FormalParameters();
2313 _sFunction += _sParameter;
2314 _bReturn = false;
2315 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2316 case THROWS:
2317 jj_consume_token(THROWS);
2318 NameList();
2319 break;
2320 default:
2321 jj_la1[76] = jj_gen;
2322 ;
2323 }
2324 jj_consume_token(LBRACE);
2325 if (jj_2_18(2147483647)) {
2326 ExplicitConstructorInvocation();
2327 } else {
2328 ;
2329 }
2330 if (jj_2_19(2147483647)) {
2331 ExplicitConstructorInvocation();
2332 } else {
2333 ;
2334 }
2335 while( tmpToken.specialToken != null ) {
2336 if ( tmpToken.specialToken.image.startsWith( "/**" ) ) {
2337 _javadocs++;
2338 jvdc++;
2339 if ((bPublic && _bPublic) || _bPrivate) {
2340 Util.debug( "_jvdc++" );
2341 _jvdc++;
2342 jvdcLines = JavaParserTokenManager._iMultiCommentsLast;
2343 _jvdcLines += jvdcLines;
2344 JavaParserTokenManager._iFormalComments += jvdcLines;
2345 }
2346 JavaParserTokenManager._iMultiComments -= jvdcLines;
2347 break;
2348 } else if ( tmpToken.specialToken.image.startsWith( "/*" ) ) {
2349 jvdcLines = 0;
2350 break;
2351 }
2352
2353 //System.out.println("\n"+tmpToken.specialToken.image);
2354
2355 tmpToken = tmpToken.specialToken;
2356 }
2357
2358
2359 oldSingle = JavaParserTokenManager._iSingleComments;
2360 oldMulti = JavaParserTokenManager._iMultiComments;
2361 label_35:
2362 while (true) {
2363 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2364 case ABSTRACT:
2365 case ASSERT:
2366 case BOOLEAN:
2367 case BREAK:
2368 case BYTE:
2369 case CHAR:
2370 case CLASS:
2371 case CONTINUE:
2372 case DO:
2373 case DOUBLE:
2374 case ENUM:
2375 case FALSE:
2376 case FINAL:
2377 case FLOAT:
2378 case FOR:
2379 case IF:
2380 case INT:
2381 case INTERFACE:
2382 case LONG:
2383 case NATIVE:
2384 case NEW:
2385 case NULL:
2386 case PRIVATE:
2387 case PROTECTED:
2388 case PUBLIC:
2389 case RETURN:
2390 case SHORT:
2391 case STATIC:
2392 case TESTAAAA:
2393 case SUPER:
2394 case SWITCH:
2395 case SYNCHRONIZED:
2396 case THIS:
2397 case THROW:
2398 case TRANSIENT:
2399 case TRUE:
2400 case TRY:
2401 case VOID:
2402 case VOLATILE:
2403 case WHILE:
2404 case INTEGER_LITERAL:
2405 case FLOATING_POINT_LITERAL:
2406 case CHARACTER_LITERAL:
2407 case STRING_LITERAL:
2408 case IDENTIFIER:
2409 case LPAREN:
2410 case LBRACE:
2411 case SEMICOLON:
2412 case AT:
2413 case INCR:
2414 case DECR:
2415 ;
2416 break;
2417 default:
2418 jj_la1[77] = jj_gen;
2419 break label_35;
2420 }
2421 BlockStatement();
2422 }
2423 jj_consume_token(RBRACE);
2424 /*
2425 while( tmpToken.specialToken != null ) {
2426 if ( tmpToken.specialToken.image.startsWith( "/**" ) ) {
2427 jvdc++;
2428 _javadocs++;
2429 }
2430 tmpToken = tmpToken.specialToken;
2431 }
2432 */
2433 if (_bReturn) {
2434 _cyc--;
2435 }
2436 _ncss++;
2437 Util.debug( "_ncss++" );
2438
2439 FunctionMetric functionMetrics = new FunctionMetric();
2440 functionMetrics.name = _sFunction;
2441 functionMetrics.ncss = _ncss - oldNcss;
2442 functionMetrics.ccn = _cyc;
2443 functionMetrics.javadocs = jvdc;
2444
2445 // added by SMS
2446 functionMetrics.javadocsLn = jvdcLines;
2447 functionMetrics.singleLn = JavaParserTokenManager._iSingleComments - oldSingle;
2448 functionMetrics.multiLn = JavaParserTokenManager._iMultiComments - oldMulti;
2449 //
2450 // specially added for Cobertura
2451 // Commenting out for now until the rest of patch 2353196 is applied.
2452 //functionMetrics.endLine = beginLine;
2453 //functionMetrics.endLine = endLine;
2454
2455 _vFunctions.add(functionMetrics);
2456 _sFunction = sOldFunction;
2457 _functions = oldFunctions + 1;
2458 _cyc = oldcyc;
2459 _bReturn = bOldReturn;
2460
2461 //Added by REYNAUD Sebastien (LOGICA)
2462 _tmpToken = null;
2463 //
2464
2465 }
2466
2467 final public void ExplicitConstructorInvocation() throws ParseException {
2468 if (jj_2_21(2147483647)) {
2469 jj_consume_token(THIS);
2470 Arguments();
2471 jj_consume_token(SEMICOLON);
2472 _ncss++; Util.debug( "_ncss++" );
2473 } else {
2474 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2475 case ASSERT:
2476 case BOOLEAN:
2477 case BYTE:
2478 case CHAR:
2479 case DOUBLE:
2480 case ENUM:
2481 case FALSE:
2482 case FLOAT:
2483 case INT:
2484 case LONG:
2485 case NEW:
2486 case NULL:
2487 case SHORT:
2488 case SUPER:
2489 case THIS:
2490 case TRUE:
2491 case VOID:
2492 case INTEGER_LITERAL:
2493 case FLOATING_POINT_LITERAL:
2494 case CHARACTER_LITERAL:
2495 case STRING_LITERAL:
2496 case IDENTIFIER:
2497 case LPAREN:
2498 if (jj_2_20(2147483647)) {
2499 PrimaryExpression();
2500 jj_consume_token(DOT);
2501 } else {
2502 ;
2503 }
2504 jj_consume_token(SUPER);
2505 Arguments();
2506 jj_consume_token(SEMICOLON);
2507 _ncss++; Util.debug( "_ncss++" );
2508 //System.out.println( "\n\nAfter ExplicitConstructorInvocation\n" );
2509
2510 break;
2511 default:
2512 jj_la1[78] = jj_gen;
2513 jj_consume_token(-1);
2514 throw new ParseException();
2515 }
2516 }
2517 }
2518
2519 final public void Initializer() throws ParseException {
2520 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2521 case STATIC:
2522 jj_consume_token(STATIC);
2523 break;
2524 default:
2525 jj_la1[79] = jj_gen;
2526 ;
2527 }
2528 Block();
2529 _ncss++; Util.debug( "_ncss++" );
2530 }
2531
2532 /*
2533 * Type, name and expression syntax follows.
2534 */
2535 final public void Type() throws ParseException {
2536 if (jj_2_22(2)) {
2537 ReferenceType();
2538 } else {
2539 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2540 case BOOLEAN:
2541 case BYTE:
2542 case CHAR:
2543 case DOUBLE:
2544 case FLOAT:
2545 case INT:
2546 case LONG:
2547 case SHORT:
2548 PrimitiveType();
2549 _sName = getToken(0).image;
2550 break;
2551 default:
2552 jj_la1[80] = jj_gen;
2553 jj_consume_token(-1);
2554 throw new ParseException();
2555 }
2556 }
2557 }
2558
2559 /*
2560 ccl 2008-01-24
2561 {
2562 ( PrimitiveType()
2563 {
2564 _sName = getToken(0).image;
2565 }
2566 | Name()
2567 [TypeArguments() ["." Identifier()] ]
2568 ) ( "[" "]" { _sName += "[]"; } )*
2569 }
2570 */
2571
2572 /*
2573 * Takes special consideration for assert.
2574 */
2575 final public void FieldTypeLookahead() throws ParseException {
2576 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2577 case BOOLEAN:
2578 case BYTE:
2579 case CHAR:
2580 case DOUBLE:
2581 case FLOAT:
2582 case INT:
2583 case LONG:
2584 case SHORT:
2585 PrimitiveType();
2586 break;
2587 case IDENTIFIER:
2588 FieldTypeNameLookahead();
2589 break;
2590 default:
2591 jj_la1[81] = jj_gen;
2592 jj_consume_token(-1);
2593 throw new ParseException();
2594 }
2595 label_36:
2596 while (true) {
2597 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2598 case LBRACKET:
2599 ;
2600 break;
2601 default:
2602 jj_la1[82] = jj_gen;
2603 break label_36;
2604 }
2605 jj_consume_token(LBRACKET);
2606 jj_consume_token(RBRACKET);
2607 }
2608 }
2609
2610 final public void PrimitiveType() throws ParseException {
2611 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2612 case BOOLEAN:
2613 jj_consume_token(BOOLEAN);
2614 break;
2615 case CHAR:
2616 jj_consume_token(CHAR);
2617 break;
2618 case BYTE:
2619 jj_consume_token(BYTE);
2620 break;
2621 case SHORT:
2622 jj_consume_token(SHORT);
2623 break;
2624 case INT:
2625 jj_consume_token(INT);
2626 break;
2627 case LONG:
2628 jj_consume_token(LONG);
2629 break;
2630 case FLOAT:
2631 jj_consume_token(FLOAT);
2632 break;
2633 case DOUBLE:
2634 jj_consume_token(DOUBLE);
2635 break;
2636 default:
2637 jj_la1[83] = jj_gen;
2638 jj_consume_token(-1);
2639 throw new ParseException();
2640 }
2641 }
2642
2643 final public void ResultType() throws ParseException {
2644 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2645 case VOID:
2646 jj_consume_token(VOID);
2647 break;
2648 case BOOLEAN:
2649 case BYTE:
2650 case CHAR:
2651 case DOUBLE:
2652 case FLOAT:
2653 case INT:
2654 case LONG:
2655 case SHORT:
2656 case IDENTIFIER:
2657 Type();
2658 break;
2659 default:
2660 jj_la1[84] = jj_gen;
2661 jj_consume_token(-1);
2662 throw new ParseException();
2663 }
2664 }
2665
2666 final public void Name() throws ParseException {
2667 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2668 case ENUM:
2669 jj_consume_token(ENUM);
2670 break;
2671 case ASSERT:
2672 case IDENTIFIER:
2673 Identifier();
2674 break;
2675 default:
2676 jj_la1[85] = jj_gen;
2677 jj_consume_token(-1);
2678 throw new ParseException();
2679 }
2680 _sName = getToken(0).image;
2681 _tmpResultToken = getToken( 0 );
2682 Util.debug( "Name._tmpResultToken: " + _tmpResultToken );
2683 label_37:
2684 while (true) {
2685 if (jj_2_23(2)) {
2686 ;
2687 } else {
2688 break label_37;
2689 }
2690 jj_consume_token(DOT);
2691 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2692 case ENUM:
2693 jj_consume_token(ENUM);
2694 break;
2695 case ASSERT:
2696 case IDENTIFIER:
2697 Identifier();
2698 break;
2699 default:
2700 jj_la1[86] = jj_gen;
2701 jj_consume_token(-1);
2702 throw new ParseException();
2703 }
2704 _sName += "." + getToken(0).image;
2705 }
2706 }
2707
2708 /**
2709 * Takes special consideration for assert.
2710 */
2711 final public void FieldTypeNameLookahead() throws ParseException {
2712 jj_consume_token(IDENTIFIER);
2713 label_38:
2714 while (true) {
2715 if (jj_2_24(2)) {
2716 ;
2717 } else {
2718 break label_38;
2719 }
2720 jj_consume_token(DOT);
2721 Identifier();
2722 }
2723 }
2724
2725 final public void NameList() throws ParseException {
2726 Name();
2727 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2728 case LT:
2729 TypeArguments();
2730 break;
2731 default:
2732 jj_la1[87] = jj_gen;
2733 ;
2734 }
2735 label_39:
2736 while (true) {
2737 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2738 case COMMA:
2739 ;
2740 break;
2741 default:
2742 jj_la1[88] = jj_gen;
2743 break label_39;
2744 }
2745 jj_consume_token(COMMA);
2746 Name();
2747 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2748 case LT:
2749 TypeArguments();
2750 break;
2751 default:
2752 jj_la1[89] = jj_gen;
2753 ;
2754 }
2755 }
2756 }
2757
2758 /*
2759 * Expression syntax follows.
2760 */
2761 final public void Expression() throws ParseException {
2762 if (jj_2_25(2147483647)) {
2763 Assignment();
2764 } else {
2765 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2766 case ASSERT:
2767 case BOOLEAN:
2768 case BYTE:
2769 case CHAR:
2770 case DOUBLE:
2771 case ENUM:
2772 case FALSE:
2773 case FLOAT:
2774 case INT:
2775 case LONG:
2776 case NEW:
2777 case NULL:
2778 case SHORT:
2779 case SUPER:
2780 case THIS:
2781 case TRUE:
2782 case VOID:
2783 case INTEGER_LITERAL:
2784 case FLOATING_POINT_LITERAL:
2785 case CHARACTER_LITERAL:
2786 case STRING_LITERAL:
2787 case IDENTIFIER:
2788 case LPAREN:
2789 case BANG:
2790 case TILDE:
2791 case INCR:
2792 case DECR:
2793 case PLUS:
2794 case MINUS:
2795 ConditionalExpression();
2796 break;
2797 default:
2798 jj_la1[90] = jj_gen;
2799 jj_consume_token(-1);
2800 throw new ParseException();
2801 }
2802 }
2803 }
2804
2805 final public void Assignment() throws ParseException {
2806 PrimaryExpression();
2807 AssignmentOperator();
2808 Expression();
2809 }
2810
2811 final public void AssignmentOperator() throws ParseException {
2812 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2813 case ASSIGN:
2814 jj_consume_token(ASSIGN);
2815 break;
2816 case STARASSIGN:
2817 jj_consume_token(STARASSIGN);
2818 break;
2819 case SLASHASSIGN:
2820 jj_consume_token(SLASHASSIGN);
2821 break;
2822 case REMASSIGN:
2823 jj_consume_token(REMASSIGN);
2824 break;
2825 case PLUSASSIGN:
2826 jj_consume_token(PLUSASSIGN);
2827 break;
2828 case MINUSASSIGN:
2829 jj_consume_token(MINUSASSIGN);
2830 break;
2831 case LSHIFTASSIGN:
2832 jj_consume_token(LSHIFTASSIGN);
2833 break;
2834 case RSIGNEDSHIFTASSIGN:
2835 jj_consume_token(RSIGNEDSHIFTASSIGN);
2836 break;
2837 case RUNSIGNEDSHIFTASSIGN:
2838 jj_consume_token(RUNSIGNEDSHIFTASSIGN);
2839 break;
2840 case ANDASSIGN:
2841 jj_consume_token(ANDASSIGN);
2842 break;
2843 case XORASSIGN:
2844 jj_consume_token(XORASSIGN);
2845 break;
2846 case ORASSIGN:
2847 jj_consume_token(ORASSIGN);
2848 break;
2849 default:
2850 jj_la1[91] = jj_gen;
2851 jj_consume_token(-1);
2852 throw new ParseException();
2853 }
2854 }
2855
2856 final public void ConditionalExpression() throws ParseException {
2857 ConditionalOrExpression();
2858 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2859 case HOOK:
2860 jj_consume_token(HOOK);
2861 Expression();
2862 jj_consume_token(COLON);
2863 ConditionalExpression();
2864 _cyc++;
2865 break;
2866 default:
2867 jj_la1[92] = jj_gen;
2868 ;
2869 }
2870 }
2871
2872 final public void ConditionalOrExpression() throws ParseException {
2873 ConditionalAndExpression();
2874 label_40:
2875 while (true) {
2876 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2877 case SC_OR:
2878 ;
2879 break;
2880 default:
2881 jj_la1[93] = jj_gen;
2882 break label_40;
2883 }
2884 jj_consume_token(SC_OR);
2885 _cyc++;
2886 ConditionalAndExpression();
2887 }
2888 }
2889
2890 final public void ConditionalAndExpression() throws ParseException {
2891 InclusiveOrExpression();
2892 label_41:
2893 while (true) {
2894 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2895 case SC_AND:
2896 ;
2897 break;
2898 default:
2899 jj_la1[94] = jj_gen;
2900 break label_41;
2901 }
2902 jj_consume_token(SC_AND);
2903 _cyc++;
2904 InclusiveOrExpression();
2905 }
2906 }
2907
2908 final public void InclusiveOrExpression() throws ParseException {
2909 ExclusiveOrExpression();
2910 label_42:
2911 while (true) {
2912 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2913 case BIT_OR:
2914 ;
2915 break;
2916 default:
2917 jj_la1[95] = jj_gen;
2918 break label_42;
2919 }
2920 jj_consume_token(BIT_OR);
2921 ExclusiveOrExpression();
2922 }
2923 }
2924
2925 final public void ExclusiveOrExpression() throws ParseException {
2926 AndExpression();
2927 label_43:
2928 while (true) {
2929 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2930 case XOR:
2931 ;
2932 break;
2933 default:
2934 jj_la1[96] = jj_gen;
2935 break label_43;
2936 }
2937 jj_consume_token(XOR);
2938 AndExpression();
2939 }
2940 }
2941
2942 final public void AndExpression() throws ParseException {
2943 EqualityExpression();
2944 label_44:
2945 while (true) {
2946 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2947 case BIT_AND:
2948 ;
2949 break;
2950 default:
2951 jj_la1[97] = jj_gen;
2952 break label_44;
2953 }
2954 jj_consume_token(BIT_AND);
2955 EqualityExpression();
2956 }
2957 }
2958
2959 final public void EqualityExpression() throws ParseException {
2960 InstanceOfExpression();
2961 label_45:
2962 while (true) {
2963 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2964 case EQ:
2965 case NE:
2966 ;
2967 break;
2968 default:
2969 jj_la1[98] = jj_gen;
2970 break label_45;
2971 }
2972 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2973 case EQ:
2974 jj_consume_token(EQ);
2975 break;
2976 case NE:
2977 jj_consume_token(NE);
2978 break;
2979 default:
2980 jj_la1[99] = jj_gen;
2981 jj_consume_token(-1);
2982 throw new ParseException();
2983 }
2984 InstanceOfExpression();
2985 }
2986 }
2987
2988 final public void InstanceOfExpression() throws ParseException {
2989 RelationalExpression();
2990 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2991 case INSTANCEOF:
2992 jj_consume_token(INSTANCEOF);
2993 Type();
2994 break;
2995 default:
2996 jj_la1[100] = jj_gen;
2997 ;
2998 }
2999 }
3000
3001 final public void RelationalExpression() throws ParseException {
3002 ShiftExpression();
3003 label_46:
3004 while (true) {
3005 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3006 case GT:
3007 case LT:
3008 case LE:
3009 case GE:
3010 ;
3011 break;
3012 default:
3013 jj_la1[101] = jj_gen;
3014 break label_46;
3015 }
3016 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3017 case LT:
3018 jj_consume_token(LT);
3019 break;
3020 case GT:
3021 jj_consume_token(GT);
3022 break;
3023 case LE:
3024 jj_consume_token(LE);
3025 break;
3026 case GE:
3027 jj_consume_token(GE);
3028 break;
3029 default:
3030 jj_la1[102] = jj_gen;
3031 jj_consume_token(-1);
3032 throw new ParseException();
3033 }
3034 ShiftExpression();
3035 }
3036 }
3037
3038 final public void ShiftExpression() throws ParseException {
3039 AdditiveExpression();
3040 label_47:
3041 while (true) {
3042 if (jj_2_26(3)) {
3043 ;
3044 } else {
3045 break label_47;
3046 }
3047 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3048 case LSHIFT:
3049 jj_consume_token(LSHIFT);
3050 break;
3051 case GT:
3052 jj_consume_token(GT);
3053 jj_consume_token(GT);
3054 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3055 case GT:
3056 jj_consume_token(GT);
3057 break;
3058 default:
3059 jj_la1[103] = jj_gen;
3060 ;
3061 }
3062 break;
3063 default:
3064 jj_la1[104] = jj_gen;
3065 jj_consume_token(-1);
3066 throw new ParseException();
3067 }
3068 AdditiveExpression();
3069 }
3070 }
3071
3072 final public void AdditiveExpression() throws ParseException {
3073 MultiplicativeExpression();
3074 label_48:
3075 while (true) {
3076 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3077 case PLUS:
3078 case MINUS:
3079 ;
3080 break;
3081 default:
3082 jj_la1[105] = jj_gen;
3083 break label_48;
3084 }
3085 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3086 case PLUS:
3087 jj_consume_token(PLUS);
3088 break;
3089 case MINUS:
3090 jj_consume_token(MINUS);
3091 break;
3092 default:
3093 jj_la1[106] = jj_gen;
3094 jj_consume_token(-1);
3095 throw new ParseException();
3096 }
3097 MultiplicativeExpression();
3098 }
3099 }
3100
3101 final public void MultiplicativeExpression() throws ParseException {
3102 UnaryExpression();
3103 label_49:
3104 while (true) {
3105 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3106 case STAR:
3107 case SLASH:
3108 case REM:
3109 ;
3110 break;
3111 default:
3112 jj_la1[107] = jj_gen;
3113 break label_49;
3114 }
3115 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3116 case STAR:
3117 jj_consume_token(STAR);
3118 break;
3119 case SLASH:
3120 jj_consume_token(SLASH);
3121 break;
3122 case REM:
3123 jj_consume_token(REM);
3124 break;
3125 default:
3126 jj_la1[108] = jj_gen;
3127 jj_consume_token(-1);
3128 throw new ParseException();
3129 }
3130 UnaryExpression();
3131 }
3132 }
3133
3134 final public void UnaryExpression() throws ParseException {
3135 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3136 case PLUS:
3137 case MINUS:
3138 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3139 case PLUS:
3140 jj_consume_token(PLUS);
3141 break;
3142 case MINUS:
3143 jj_consume_token(MINUS);
3144 break;
3145 default:
3146 jj_la1[109] = jj_gen;
3147 jj_consume_token(-1);
3148 throw new ParseException();
3149 }
3150 UnaryExpression();
3151 break;
3152 case INCR:
3153 PreIncrementExpression();
3154 break;
3155 case DECR:
3156 PreDecrementExpression();
3157 break;
3158 case ASSERT:
3159 case BOOLEAN:
3160 case BYTE:
3161 case CHAR:
3162 case DOUBLE:
3163 case ENUM:
3164 case FALSE:
3165 case FLOAT:
3166 case INT:
3167 case LONG:
3168 case NEW:
3169 case NULL:
3170 case SHORT:
3171 case SUPER:
3172 case THIS:
3173 case TRUE:
3174 case VOID:
3175 case INTEGER_LITERAL:
3176 case FLOATING_POINT_LITERAL:
3177 case CHARACTER_LITERAL:
3178 case STRING_LITERAL:
3179 case IDENTIFIER:
3180 case LPAREN:
3181 case BANG:
3182 case TILDE:
3183 UnaryExpressionNotPlusMinus();
3184 break;
3185 default:
3186 jj_la1[110] = jj_gen;
3187 jj_consume_token(-1);
3188 throw new ParseException();
3189 }
3190 }
3191
3192 final public void PreIncrementExpression() throws ParseException {
3193 jj_consume_token(INCR);
3194 PrimaryExpression();
3195 }
3196
3197 final public void PreDecrementExpression() throws ParseException {
3198 jj_consume_token(DECR);
3199 PrimaryExpression();
3200 }
3201
3202 final public void UnaryExpressionNotPlusMinus() throws ParseException {
3203 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3204 case BANG:
3205 case TILDE:
3206 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3207 case TILDE:
3208 jj_consume_token(TILDE);
3209 break;
3210 case BANG:
3211 jj_consume_token(BANG);
3212 break;
3213 default:
3214 jj_la1[111] = jj_gen;
3215 jj_consume_token(-1);
3216 throw new ParseException();
3217 }
3218 UnaryExpression();
3219 break;
3220 default:
3221 jj_la1[112] = jj_gen;
3222 if (jj_2_27(2147483647)) {
3223 CastExpression();
3224 } else {
3225 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3226 case ASSERT:
3227 case BOOLEAN:
3228 case BYTE:
3229 case CHAR:
3230 case DOUBLE:
3231 case ENUM:
3232 case FALSE:
3233 case FLOAT:
3234 case INT:
3235 case LONG:
3236 case NEW:
3237 case NULL:
3238 case SHORT:
3239 case SUPER:
3240 case THIS:
3241 case TRUE:
3242 case VOID:
3243 case INTEGER_LITERAL:
3244 case FLOATING_POINT_LITERAL:
3245 case CHARACTER_LITERAL:
3246 case STRING_LITERAL:
3247 case IDENTIFIER:
3248 case LPAREN:
3249 PostfixExpression();
3250 break;
3251 default:
3252 jj_la1[113] = jj_gen;
3253 jj_consume_token(-1);
3254 throw new ParseException();
3255 }
3256 }
3257 }
3258 }
3259
3260 // This production is to determine lookahead only. The LOOKAHEAD specifications
3261 // below are not used, but they are there just to indicate that we know about
3262 // this.
3263 final public void CastLookahead() throws ParseException {
3264 if (jj_2_28(2)) {
3265 jj_consume_token(LPAREN);
3266 PrimitiveType();
3267 } else if (jj_2_29(2147483647)) {
3268 jj_consume_token(LPAREN);
3269 Type();
3270 jj_consume_token(LBRACKET);
3271 jj_consume_token(RBRACKET);
3272 } else {
3273 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3274 case LPAREN:
3275 jj_consume_token(LPAREN);
3276 Type();
3277 jj_consume_token(RPAREN);
3278 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3279 case TILDE:
3280 jj_consume_token(TILDE);
3281 break;
3282 case BANG:
3283 jj_consume_token(BANG);
3284 break;
3285 case LPAREN:
3286 jj_consume_token(LPAREN);
3287 break;
3288 case ASSERT:
3289 case IDENTIFIER:
3290 Identifier();
3291 break;
3292 case THIS:
3293 jj_consume_token(THIS);
3294 break;
3295 case SUPER:
3296 jj_consume_token(SUPER);
3297 break;
3298 case NEW:
3299 jj_consume_token(NEW);
3300 break;
3301 case FALSE:
3302 case NULL:
3303 case TRUE:
3304 case INTEGER_LITERAL:
3305 case FLOATING_POINT_LITERAL:
3306 case CHARACTER_LITERAL:
3307 case STRING_LITERAL:
3308 Literal();
3309 break;
3310 default:
3311 jj_la1[114] = jj_gen;
3312 jj_consume_token(-1);
3313 throw new ParseException();
3314 }
3315 break;
3316 default:
3317 jj_la1[115] = jj_gen;
3318 jj_consume_token(-1);
3319 throw new ParseException();
3320 }
3321 }
3322 }
3323
3324 // To fix bug Test48.java. Clemens [2000-10-03]
3325 final public void PostfixLookahead() throws ParseException {
3326 jj_consume_token(LPAREN);
3327 Name();
3328 label_50:
3329 while (true) {
3330 if (jj_2_30(2)) {
3331 ;
3332 } else {
3333 break label_50;
3334 }
3335 jj_consume_token(LBRACKET);
3336 jj_consume_token(RBRACKET);
3337 }
3338 jj_consume_token(DOT);
3339 }
3340
3341 final public void PostfixExpression() throws ParseException {
3342 PrimaryExpression();
3343 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3344 case INCR:
3345 case DECR:
3346 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3347 case INCR:
3348 jj_consume_token(INCR);
3349 break;
3350 case DECR:
3351 jj_consume_token(DECR);
3352 break;
3353 default:
3354 jj_la1[116] = jj_gen;
3355 jj_consume_token(-1);
3356 throw new ParseException();
3357 }
3358 break;
3359 default:
3360 jj_la1[117] = jj_gen;
3361 ;
3362 }
3363 }
3364
3365 final public void CastExpression() throws ParseException {
3366 if (jj_2_31(2147483647)) {
3367 jj_consume_token(LPAREN);
3368 Type();
3369 jj_consume_token(RPAREN);
3370 UnaryExpression();
3371 } else {
3372 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3373 case LPAREN:
3374 jj_consume_token(LPAREN);
3375 Type();
3376 jj_consume_token(RPAREN);
3377 UnaryExpressionNotPlusMinus();
3378 break;
3379 default:
3380 jj_la1[118] = jj_gen;
3381 jj_consume_token(-1);
3382 throw new ParseException();
3383 }
3384 }
3385 }
3386
3387 final public void PrimaryExpression() throws ParseException {
3388 PrimaryPrefix();
3389 label_51:
3390 while (true) {
3391 if (jj_2_32(2)) {
3392 ;
3393 } else {
3394 break label_51;
3395 }
3396 PrimarySuffix();
3397 }
3398 }
3399
3400 final public void PrimaryPrefix() throws ParseException {
3401 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3402 case FALSE:
3403 case NULL:
3404 case TRUE:
3405 case INTEGER_LITERAL:
3406 case FLOATING_POINT_LITERAL:
3407 case CHARACTER_LITERAL:
3408 case STRING_LITERAL:
3409 Literal();
3410 break;
3411 case THIS:
3412 jj_consume_token(THIS);
3413 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3414 case DOT:
3415 jj_consume_token(DOT);
3416 break;
3417 default:
3418 jj_la1[119] = jj_gen;
3419 ;
3420 }
3421 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3422 case ASSERT:
3423 case IDENTIFIER:
3424 Identifier();
3425 break;
3426 default:
3427 jj_la1[120] = jj_gen;
3428 ;
3429 }
3430 break;
3431 default:
3432 jj_la1[123] = jj_gen;
3433 if (jj_2_34(2)) {
3434 jj_consume_token(SUPER);
3435 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3436 case DOT:
3437 jj_consume_token(DOT);
3438 break;
3439 default:
3440 jj_la1[121] = jj_gen;
3441 ;
3442 }
3443 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3444 case ASSERT:
3445 case IDENTIFIER:
3446 Identifier();
3447 break;
3448 default:
3449 jj_la1[122] = jj_gen;
3450 ;
3451 }
3452 } else {
3453 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3454 case LPAREN:
3455 jj_consume_token(LPAREN);
3456 Expression();
3457 jj_consume_token(RPAREN);
3458 break;
3459 case NEW:
3460 AllocationExpression();
3461 break;
3462 default:
3463 jj_la1[124] = jj_gen;
3464 if (jj_2_35(2147483647)) {
3465 ResultType();
3466 jj_consume_token(DOT);
3467 jj_consume_token(CLASS);
3468 } else {
3469 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3470 case ASSERT:
3471 case ENUM:
3472 case IDENTIFIER:
3473 Name();
3474 if (jj_2_33(3)) {
3475 jj_consume_token(DOT);
3476 jj_consume_token(SUPER);
3477 jj_consume_token(DOT);
3478 Identifier();
3479 } else {
3480 ;
3481 }
3482 break;
3483 default:
3484 jj_la1[125] = jj_gen;
3485 jj_consume_token(-1);
3486 throw new ParseException();
3487 }
3488 }
3489 }
3490 }
3491 }
3492 }
3493
3494 final public void PrimarySuffix() throws ParseException {
3495 if (jj_2_36(2)) {
3496 jj_consume_token(DOT);
3497 jj_consume_token(THIS);
3498 } else if (jj_2_37(2)) {
3499 jj_consume_token(DOT);
3500 AllocationExpression();
3501 } else if (jj_2_38(3)) {
3502 MemberSelector();
3503 } else {
3504 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3505 case LBRACKET:
3506 jj_consume_token(LBRACKET);
3507 Expression();
3508 jj_consume_token(RBRACKET);
3509 break;
3510 case DOT:
3511 jj_consume_token(DOT);
3512 Identifier();
3513 break;
3514 case LPAREN:
3515 Arguments();
3516 break;
3517 default:
3518 jj_la1[126] = jj_gen;
3519 jj_consume_token(-1);
3520 throw new ParseException();
3521 }
3522 }
3523 }
3524
3525 final public void Literal() throws ParseException {
3526 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3527 case INTEGER_LITERAL:
3528 jj_consume_token(INTEGER_LITERAL);
3529 break;
3530 case FLOATING_POINT_LITERAL:
3531 jj_consume_token(FLOATING_POINT_LITERAL);
3532 break;
3533 case CHARACTER_LITERAL:
3534 jj_consume_token(CHARACTER_LITERAL);
3535 break;
3536 case STRING_LITERAL:
3537 jj_consume_token(STRING_LITERAL);
3538 break;
3539 case FALSE:
3540 case TRUE:
3541 BooleanLiteral();
3542 break;
3543 case NULL:
3544 NullLiteral();
3545 break;
3546 default:
3547 jj_la1[127] = jj_gen;
3548 jj_consume_token(-1);
3549 throw new ParseException();
3550 }
3551 }
3552
3553 final public void BooleanLiteral() throws ParseException {
3554 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3555 case TRUE:
3556 jj_consume_token(TRUE);
3557 break;
3558 case FALSE:
3559 jj_consume_token(FALSE);
3560 break;
3561 default:
3562 jj_la1[128] = jj_gen;
3563 jj_consume_token(-1);
3564 throw new ParseException();
3565 }
3566 }
3567
3568 final public void NullLiteral() throws ParseException {
3569 jj_consume_token(NULL);
3570 }
3571
3572 final public void Arguments() throws ParseException {
3573 jj_consume_token(LPAREN);
3574 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3575 case ASSERT:
3576 case BOOLEAN:
3577 case BYTE:
3578 case CHAR:
3579 case DOUBLE:
3580 case ENUM:
3581 case FALSE:
3582 case FLOAT:
3583 case INT:
3584 case LONG:
3585 case NEW:
3586 case NULL:
3587 case SHORT:
3588 case SUPER:
3589 case THIS:
3590 case TRUE:
3591 case VOID:
3592 case INTEGER_LITERAL:
3593 case FLOATING_POINT_LITERAL:
3594 case CHARACTER_LITERAL:
3595 case STRING_LITERAL:
3596 case IDENTIFIER:
3597 case LPAREN:
3598 case BANG:
3599 case TILDE:
3600 case INCR:
3601 case DECR:
3602 case PLUS:
3603 case MINUS:
3604 ArgumentList();
3605 break;
3606 default:
3607 jj_la1[129] = jj_gen;
3608 ;
3609 }
3610 jj_consume_token(RPAREN);
3611 }
3612
3613 final public void ArgumentList() throws ParseException {
3614 Expression();
3615 label_52:
3616 while (true) {
3617 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3618 case COMMA:
3619 ;
3620 break;
3621 default:
3622 jj_la1[130] = jj_gen;
3623 break label_52;
3624 }
3625 jj_consume_token(COMMA);
3626 Expression();
3627 }
3628 }
3629
3630 final public void AllocationExpression() throws ParseException {
3631 String sOldClass = _sClass;
3632 //int oldNcss = _ncss;
3633 int oldFunctions = _functions;
3634 int oldClasses = _classes;
3635 String sName;
3636
3637 //Added by REYNAUD Sebastien (LOGICA)
3638 int oldJavadocs = _javadocs;
3639 int oldNcss = _ncss;
3640 if (jj_2_39(2)) {
3641 jj_consume_token(NEW);
3642 PrimitiveType();
3643 ArrayDimsAndInits();
3644 } else {
3645 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3646 case NEW:
3647 jj_consume_token(NEW);
3648 Name();
3649 sName = _sName;
3650 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3651 case LT:
3652 TypeArguments();
3653 break;
3654 default:
3655 jj_la1[131] = jj_gen;
3656 ;
3657 }
3658 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3659 case LBRACKET:
3660 ArrayDimsAndInits();
3661 break;
3662 case LPAREN:
3663 Arguments();
3664 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3665 case LBRACE:
3666 if (!_sClass.equals("")) {
3667 _sClass += ".";
3668 }
3669 /*_sClass += sName;*/
3670 //_sClass += sName + "$" + _anonClassCount ;//Removed by REYNAUD Sebastien (LOGICA)
3671
3672 //Added by REYNAUD Sebastien (LOGICA)
3673 _sClass += sName;
3674 //
3675 _classLevel ++;
3676 ClassBody();
3677 //Added by REYNAUD Sebastien (LOGICA)
3678 ObjectMetric metric = new ObjectMetric();
3679 metric.name = _sPackage + _sClass;
3680 metric.ncss = _ncss - oldNcss;
3681 metric.functions = _functions - oldFunctions;
3682 metric.classes = _classes - oldClasses;
3683 Token lastToken = getToken( 0 );
3684 _vClasses.add( metric );
3685 _pPackageMetric.functions += _functions - oldFunctions;
3686 _pPackageMetric.classes++;
3687 metric.javadocs = _javadocs - oldJavadocs;
3688 //
3689 _classLevel--;
3690 _functions = oldFunctions;
3691 _classes = oldClasses + 1;
3692 _sClass = sOldClass;
3693 break;
3694 default:
3695 jj_la1[132] = jj_gen;
3696 ;
3697 }
3698 break;
3699 default:
3700 jj_la1[133] = jj_gen;
3701 jj_consume_token(-1);
3702 throw new ParseException();
3703 }
3704 break;
3705 default:
3706 jj_la1[134] = jj_gen;
3707 jj_consume_token(-1);
3708 throw new ParseException();
3709 }
3710 }
3711 }
3712
3713 /*
3714 * The third LOOKAHEAD specification below is to parse to PrimarySuffix
3715 * if there is an expression between the "[...]".
3716 */
3717 final public void ArrayDimsAndInits() throws ParseException {
3718 if (jj_2_42(2)) {
3719 label_53:
3720 while (true) {
3721 jj_consume_token(LBRACKET);
3722 Expression();
3723 jj_consume_token(RBRACKET);
3724 if (jj_2_40(2)) {
3725 ;
3726 } else {
3727 break label_53;
3728 }
3729 }
3730 label_54:
3731 while (true) {
3732 if (jj_2_41(2)) {
3733 ;
3734 } else {
3735 break label_54;
3736 }
3737 jj_consume_token(LBRACKET);
3738 jj_consume_token(RBRACKET);
3739 }
3740 } else {
3741 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3742 case LBRACKET:
3743 label_55:
3744 while (true) {
3745 jj_consume_token(LBRACKET);
3746 jj_consume_token(RBRACKET);
3747 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3748 case LBRACKET:
3749 ;
3750 break;
3751 default:
3752 jj_la1[135] = jj_gen;
3753 break label_55;
3754 }
3755 }
3756 ArrayInitializer();
3757 break;
3758 default:
3759 jj_la1[136] = jj_gen;
3760 jj_consume_token(-1);
3761 throw new ParseException();
3762 }
3763 }
3764 }
3765
3766 /*
3767 * Statement syntax follows.
3768 */
3769 final public void Statement() throws ParseException {
3770 _bReturn = false;
3771 if (jj_2_43(2)) {
3772 LabeledStatement();
3773 } else if (jj_2_44(2147483647)) {
3774 AssertStatement();
3775 } else {
3776 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3777 case LBRACE:
3778 Block();
3779 break;
3780 case SEMICOLON:
3781 EmptyStatement();
3782 break;
3783 case ASSERT:
3784 case BOOLEAN:
3785 case BYTE:
3786 case CHAR:
3787 case DOUBLE:
3788 case ENUM:
3789 case FALSE:
3790 case FLOAT:
3791 case INT:
3792 case LONG:
3793 case NEW:
3794 case NULL:
3795 case SHORT:
3796 case SUPER:
3797 case THIS:
3798 case TRUE:
3799 case VOID:
3800 case INTEGER_LITERAL:
3801 case FLOATING_POINT_LITERAL:
3802 case CHARACTER_LITERAL:
3803 case STRING_LITERAL:
3804 case IDENTIFIER:
3805 case LPAREN:
3806 case INCR:
3807 case DECR:
3808 StatementExpression();
3809 jj_consume_token(SEMICOLON);
3810 _ncss++; Util.debug( "_ncss++" );
3811 break;
3812 case SWITCH:
3813 SwitchStatement();
3814 break;
3815 case IF:
3816 IfStatement();
3817 _cyc++;
3818 break;
3819 case WHILE:
3820 WhileStatement();
3821 _cyc++;
3822 break;
3823 case DO:
3824 DoStatement();
3825 _cyc++;
3826 break;
3827 case FOR:
3828 ForStatement();
3829 _cyc++;
3830 break;
3831 case BREAK:
3832 BreakStatement();
3833 break;
3834 case CONTINUE:
3835 ContinueStatement();
3836 break;
3837 case RETURN:
3838 ReturnStatement();
3839 break;
3840 case THROW:
3841 ThrowStatement();
3842 break;
3843 case SYNCHRONIZED:
3844 SynchronizedStatement();
3845 break;
3846 case TRY:
3847 TryStatement();
3848 break;
3849 default:
3850 jj_la1[137] = jj_gen;
3851 jj_consume_token(-1);
3852 throw new ParseException();
3853 }
3854 }
3855 }
3856
3857 final public void LabeledStatement() throws ParseException {
3858 Identifier();
3859 jj_consume_token(COLON);
3860 Statement();
3861 _ncss++; Util.debug( "_ncss++" );
3862 }
3863
3864 final public void AssertStatementLookahead() throws ParseException {
3865 jj_consume_token(ASSERT);
3866 Expression();
3867 }
3868
3869 final public void AssertStatement() throws ParseException {
3870 jj_consume_token(ASSERT);
3871 Expression();
3872 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3873 case COLON:
3874 jj_consume_token(COLON);
3875 Expression();
3876 break;
3877 default:
3878 jj_la1[138] = jj_gen;
3879 ;
3880 }
3881 jj_consume_token(SEMICOLON);
3882 _ncss++; Util.debug( "_ncss++" );
3883 }
3884
3885 final public void Block() throws ParseException {
3886 jj_consume_token(LBRACE);
3887 label_56:
3888 while (true) {
3889 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3890 case ABSTRACT:
3891 case ASSERT:
3892 case BOOLEAN:
3893 case BREAK:
3894 case BYTE:
3895 case CHAR:
3896 case CLASS:
3897 case CONTINUE:
3898 case DO:
3899 case DOUBLE:
3900 case ENUM:
3901 case FALSE:
3902 case FINAL:
3903 case FLOAT:
3904 case FOR:
3905 case IF:
3906 case INT:
3907 case INTERFACE:
3908 case LONG:
3909 case NATIVE:
3910 case NEW:
3911 case NULL:
3912 case PRIVATE:
3913 case PROTECTED:
3914 case PUBLIC:
3915 case RETURN:
3916 case SHORT:
3917 case STATIC:
3918 case TESTAAAA:
3919 case SUPER:
3920 case SWITCH:
3921 case SYNCHRONIZED:
3922 case THIS:
3923 case THROW:
3924 case TRANSIENT:
3925 case TRUE:
3926 case TRY:
3927 case VOID:
3928 case VOLATILE:
3929 case WHILE:
3930 case INTEGER_LITERAL:
3931 case FLOATING_POINT_LITERAL:
3932 case CHARACTER_LITERAL:
3933 case STRING_LITERAL:
3934 case IDENTIFIER:
3935 case LPAREN:
3936 case LBRACE:
3937 case SEMICOLON:
3938 case AT:
3939 case INCR:
3940 case DECR:
3941 ;
3942 break;
3943 default:
3944 jj_la1[139] = jj_gen;
3945 break label_56;
3946 }
3947 BlockStatement();
3948 }
3949 jj_consume_token(RBRACE);
3950 }
3951
3952 final public void BlockStatement() throws ParseException {
3953 if (jj_2_45(2147483647)) {
3954 LocalVariableDeclaration();
3955 jj_consume_token(SEMICOLON);
3956 _ncss++; Util.debug( "_ncss++" );
3957 } else {
3958 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
3959 case ASSERT:
3960 case BOOLEAN:
3961 case BREAK:
3962 case BYTE:
3963 case CHAR:
3964 case CONTINUE:
3965 case DO:
3966 case DOUBLE:
3967 case ENUM:
3968 case FALSE:
3969 case FLOAT:
3970 case FOR:
3971 case IF:
3972 case INT:
3973 case LONG:
3974 case NEW:
3975 case NULL:
3976 case RETURN:
3977 case SHORT:
3978 case SUPER:
3979 case SWITCH:
3980 case SYNCHRONIZED:
3981 case THIS:
3982 case THROW:
3983 case TRUE:
3984 case TRY:
3985 case VOID:
3986 case WHILE:
3987 case INTEGER_LITERAL:
3988 case FLOATING_POINT_LITERAL:
3989 case CHARACTER_LITERAL:
3990 case STRING_LITERAL:
3991 case IDENTIFIER:
3992 case LPAREN:
3993 case LBRACE:
3994 case SEMICOLON:
3995 case INCR:
3996 case DECR:
3997 Statement();
3998 break;
3999 case ABSTRACT:
4000 case CLASS:
4001 case FINAL:
4002 case NATIVE:
4003 case PRIVATE:
4004 case PROTECTED:
4005 case PUBLIC:
4006 case STATIC:
4007 case TESTAAAA:
4008 case TRANSIENT:
4009 case VOLATILE:
4010 case AT:
4011 UnmodifiedClassDeclaration();
4012 break;
4013 case INTERFACE:
4014 UnmodifiedInterfaceDeclaration();
4015 break;
4016 default:
4017 jj_la1[140] = jj_gen;
4018 jj_consume_token(-1);
4019 throw new ParseException();
4020 }
4021 }
4022 }
4023
4024 /*void LocalVariableDeclaration() :
4025 {}
4026 {
4027 [ "final" ] Type() VariableDeclarator() ( "," VariableDeclarator() )*
4028 }*/
4029 final public void LocalVariableDeclaration() throws ParseException {
4030 Modifiers();
4031 Type();
4032 VariableDeclarator();
4033 label_57:
4034 while (true) {
4035 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4036 case COMMA:
4037 ;
4038 break;
4039 default:
4040 jj_la1[141] = jj_gen;
4041 break label_57;
4042 }
4043 jj_consume_token(COMMA);
4044 VariableDeclarator();
4045 }
4046 }
4047
4048 final public void EmptyStatement() throws ParseException {
4049 jj_consume_token(SEMICOLON);
4050 }
4051
4052 final public void StatementExpression() throws ParseException {
4053 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4054 case INCR:
4055 PreIncrementExpression();
4056 break;
4057 case DECR:
4058 PreDecrementExpression();
4059 break;
4060 case ASSERT:
4061 case BOOLEAN:
4062 case BYTE:
4063 case CHAR:
4064 case DOUBLE:
4065 case ENUM:
4066 case FALSE:
4067 case FLOAT:
4068 case INT:
4069 case LONG:
4070 case NEW:
4071 case NULL:
4072 case SHORT:
4073 case SUPER:
4074 case THIS:
4075 case TRUE:
4076 case VOID:
4077 case INTEGER_LITERAL:
4078 case FLOATING_POINT_LITERAL:
4079 case CHARACTER_LITERAL:
4080 case STRING_LITERAL:
4081 case IDENTIFIER:
4082 case LPAREN:
4083 PrimaryExpression();
4084 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4085 case ASSIGN:
4086 case INCR:
4087 case DECR:
4088 case PLUSASSIGN:
4089 case MINUSASSIGN:
4090 case STARASSIGN:
4091 case SLASHASSIGN:
4092 case ANDASSIGN:
4093 case ORASSIGN:
4094 case XORASSIGN:
4095 case REMASSIGN:
4096 case LSHIFTASSIGN:
4097 case RSIGNEDSHIFTASSIGN:
4098 case RUNSIGNEDSHIFTASSIGN:
4099 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4100 case INCR:
4101 jj_consume_token(INCR);
4102 break;
4103 case DECR:
4104 jj_consume_token(DECR);
4105 break;
4106 case ASSIGN:
4107 case PLUSASSIGN:
4108 case MINUSASSIGN:
4109 case STARASSIGN:
4110 case SLASHASSIGN:
4111 case ANDASSIGN:
4112 case ORASSIGN:
4113 case XORASSIGN:
4114 case REMASSIGN:
4115 case LSHIFTASSIGN:
4116 case RSIGNEDSHIFTASSIGN:
4117 case RUNSIGNEDSHIFTASSIGN:
4118 AssignmentOperator();
4119 Expression();
4120 break;
4121 default:
4122 jj_la1[142] = jj_gen;
4123 jj_consume_token(-1);
4124 throw new ParseException();
4125 }
4126 break;
4127 default:
4128 jj_la1[143] = jj_gen;
4129 ;
4130 }
4131 break;
4132 default:
4133 jj_la1[144] = jj_gen;
4134 jj_consume_token(-1);
4135 throw new ParseException();
4136 }
4137 }
4138
4139 final public void SwitchStatement() throws ParseException {
4140 _localCases = 0;
4141 jj_consume_token(SWITCH);
4142 jj_consume_token(LPAREN);
4143 Expression();
4144 jj_consume_token(RPAREN);
4145 jj_consume_token(LBRACE);
4146 label_58:
4147 while (true) {
4148 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4149 case CASE:
4150 case _DEFAULT:
4151 ;
4152 break;
4153 default:
4154 jj_la1[145] = jj_gen;
4155 break label_58;
4156 }
4157 SwitchLabel();
4158 label_59:
4159 while (true) {
4160 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4161 case ABSTRACT:
4162 case ASSERT:
4163 case BOOLEAN:
4164 case BREAK:
4165 case BYTE:
4166 case CHAR:
4167 case CLASS:
4168 case CONTINUE:
4169 case DO:
4170 case DOUBLE:
4171 case ENUM:
4172 case FALSE:
4173 case FINAL:
4174 case FLOAT:
4175 case FOR:
4176 case IF:
4177 case INT:
4178 case INTERFACE:
4179 case LONG:
4180 case NATIVE:
4181 case NEW:
4182 case NULL:
4183 case PRIVATE:
4184 case PROTECTED:
4185 case PUBLIC:
4186 case RETURN:
4187 case SHORT:
4188 case STATIC:
4189 case TESTAAAA:
4190 case SUPER:
4191 case SWITCH:
4192 case SYNCHRONIZED:
4193 case THIS:
4194 case THROW:
4195 case TRANSIENT:
4196 case TRUE:
4197 case TRY:
4198 case VOID:
4199 case VOLATILE:
4200 case WHILE:
4201 case INTEGER_LITERAL:
4202 case FLOATING_POINT_LITERAL:
4203 case CHARACTER_LITERAL:
4204 case STRING_LITERAL:
4205 case IDENTIFIER:
4206 case LPAREN:
4207 case LBRACE:
4208 case SEMICOLON:
4209 case AT:
4210 case INCR:
4211 case DECR:
4212 ;
4213 break;
4214 default:
4215 jj_la1[146] = jj_gen;
4216 break label_59;
4217 }
4218 BlockStatement();
4219 }
4220 }
4221 jj_consume_token(RBRACE);
4222 _ncss++; Util.debug( "_ncss++" );
4223 }
4224
4225 final public void SwitchLabel() throws ParseException {
4226 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4227 case CASE:
4228 jj_consume_token(CASE);
4229 Expression();
4230 jj_consume_token(COLON);
4231 _ncss++;
4232 Util.debug( "_ncss++" );
4233 _localCases++;
4234 _cyc++;
4235 break;
4236 case _DEFAULT:
4237 jj_consume_token(_DEFAULT);
4238 jj_consume_token(COLON);
4239 _ncss++; Util.debug( "_ncss++" );
4240 break;
4241 default:
4242 jj_la1[147] = jj_gen;
4243 jj_consume_token(-1);
4244 throw new ParseException();
4245 }
4246 }
4247
4248 final public void IfStatement() throws ParseException {
4249 jj_consume_token(IF);
4250 jj_consume_token(LPAREN);
4251 Expression();
4252 jj_consume_token(RPAREN);
4253 Statement();
4254 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4255 case ELSE:
4256 jj_consume_token(ELSE);
4257 _ncss++; Util.debug( "_ncss++" );
4258 Statement();
4259 break;
4260 default:
4261 jj_la1[148] = jj_gen;
4262 ;
4263 }
4264 _ncss++; Util.debug( "_ncss++" );
4265 }
4266
4267 final public void WhileStatement() throws ParseException {
4268 jj_consume_token(WHILE);
4269 jj_consume_token(LPAREN);
4270 Expression();
4271 jj_consume_token(RPAREN);
4272 Statement();
4273 _ncss++; Util.debug( "_ncss++" );
4274 }
4275
4276 final public void DoStatement() throws ParseException {
4277 jj_consume_token(DO);
4278 Statement();
4279 jj_consume_token(WHILE);
4280 jj_consume_token(LPAREN);
4281 Expression();
4282 jj_consume_token(RPAREN);
4283 jj_consume_token(SEMICOLON);
4284 _ncss++; Util.debug( "_ncss++" );
4285 }
4286
4287 final public void ForStatement() throws ParseException {
4288 jj_consume_token(FOR);
4289 jj_consume_token(LPAREN);
4290 if (jj_2_46(2147483647)) {
4291 Modifiers();
4292 Type();
4293 jj_consume_token(IDENTIFIER);
4294 jj_consume_token(COLON);
4295 Expression();
4296 } else {
4297 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4298 case ABSTRACT:
4299 case ASSERT:
4300 case BOOLEAN:
4301 case BYTE:
4302 case CHAR:
4303 case DOUBLE:
4304 case ENUM:
4305 case FALSE:
4306 case FINAL:
4307 case FLOAT:
4308 case INT:
4309 case LONG:
4310 case NATIVE:
4311 case NEW:
4312 case NULL:
4313 case PRIVATE:
4314 case PROTECTED:
4315 case PUBLIC:
4316 case SHORT:
4317 case STATIC:
4318 case TESTAAAA:
4319 case SUPER:
4320 case SYNCHRONIZED:
4321 case THIS:
4322 case TRANSIENT:
4323 case TRUE:
4324 case VOID:
4325 case VOLATILE:
4326 case INTEGER_LITERAL:
4327 case FLOATING_POINT_LITERAL:
4328 case CHARACTER_LITERAL:
4329 case STRING_LITERAL:
4330 case IDENTIFIER:
4331 case LPAREN:
4332 case SEMICOLON:
4333 case AT:
4334 case INCR:
4335 case DECR:
4336 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4337 case ABSTRACT:
4338 case ASSERT:
4339 case BOOLEAN:
4340 case BYTE:
4341 case CHAR:
4342 case DOUBLE:
4343 case ENUM:
4344 case FALSE:
4345 case FINAL:
4346 case FLOAT:
4347 case INT:
4348 case LONG:
4349 case NATIVE:
4350 case NEW:
4351 case NULL:
4352 case PRIVATE:
4353 case PROTECTED:
4354 case PUBLIC:
4355 case SHORT:
4356 case STATIC:
4357 case TESTAAAA:
4358 case SUPER:
4359 case SYNCHRONIZED:
4360 case THIS:
4361 case TRANSIENT:
4362 case TRUE:
4363 case VOID:
4364 case VOLATILE:
4365 case INTEGER_LITERAL:
4366 case FLOATING_POINT_LITERAL:
4367 case CHARACTER_LITERAL:
4368 case STRING_LITERAL:
4369 case IDENTIFIER:
4370 case LPAREN:
4371 case AT:
4372 case INCR:
4373 case DECR:
4374 ForInit();
4375 break;
4376 default:
4377 jj_la1[149] = jj_gen;
4378 ;
4379 }
4380 jj_consume_token(SEMICOLON);
4381 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4382 case ASSERT:
4383 case BOOLEAN:
4384 case BYTE:
4385 case CHAR:
4386 case DOUBLE:
4387 case ENUM:
4388 case FALSE:
4389 case FLOAT:
4390 case INT:
4391 case LONG:
4392 case NEW:
4393 case NULL:
4394 case SHORT:
4395 case SUPER:
4396 case THIS:
4397 case TRUE:
4398 case VOID:
4399 case INTEGER_LITERAL:
4400 case FLOATING_POINT_LITERAL:
4401 case CHARACTER_LITERAL:
4402 case STRING_LITERAL:
4403 case IDENTIFIER:
4404 case LPAREN:
4405 case BANG:
4406 case TILDE:
4407 case INCR:
4408 case DECR:
4409 case PLUS:
4410 case MINUS:
4411 Expression();
4412 break;
4413 default:
4414 jj_la1[150] = jj_gen;
4415 ;
4416 }
4417 jj_consume_token(SEMICOLON);
4418 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4419 case ASSERT:
4420 case BOOLEAN:
4421 case BYTE:
4422 case CHAR:
4423 case DOUBLE:
4424 case ENUM:
4425 case FALSE:
4426 case FLOAT:
4427 case INT:
4428 case LONG:
4429 case NEW:
4430 case NULL:
4431 case SHORT:
4432 case SUPER:
4433 case THIS:
4434 case TRUE:
4435 case VOID:
4436 case INTEGER_LITERAL:
4437 case FLOATING_POINT_LITERAL:
4438 case CHARACTER_LITERAL:
4439 case STRING_LITERAL:
4440 case IDENTIFIER:
4441 case LPAREN:
4442 case INCR:
4443 case DECR:
4444 ForUpdate();
4445 break;
4446 default:
4447 jj_la1[151] = jj_gen;
4448 ;
4449 }
4450 break;
4451 default:
4452 jj_la1[152] = jj_gen;
4453 jj_consume_token(-1);
4454 throw new ParseException();
4455 }
4456 }
4457 jj_consume_token(RPAREN);
4458 Statement();
4459 _ncss++; Util.debug( "_ncss++" );
4460 }
4461
4462 final public void ForInit() throws ParseException {
4463 if (jj_2_47(2147483647)) {
4464 LocalVariableDeclaration();
4465 } else {
4466 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4467 case ASSERT:
4468 case BOOLEAN:
4469 case BYTE:
4470 case CHAR:
4471 case DOUBLE:
4472 case ENUM:
4473 case FALSE:
4474 case FLOAT:
4475 case INT:
4476 case LONG:
4477 case NEW:
4478 case NULL:
4479 case SHORT:
4480 case SUPER:
4481 case THIS:
4482 case TRUE:
4483 case VOID:
4484 case INTEGER_LITERAL:
4485 case FLOATING_POINT_LITERAL:
4486 case CHARACTER_LITERAL:
4487 case STRING_LITERAL:
4488 case IDENTIFIER:
4489 case LPAREN:
4490 case INCR:
4491 case DECR:
4492 StatementExpressionList();
4493 break;
4494 default:
4495 jj_la1[153] = jj_gen;
4496 jj_consume_token(-1);
4497 throw new ParseException();
4498 }
4499 }
4500 }
4501
4502 final public void StatementExpressionList() throws ParseException {
4503 StatementExpression();
4504 label_60:
4505 while (true) {
4506 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4507 case COMMA:
4508 ;
4509 break;
4510 default:
4511 jj_la1[154] = jj_gen;
4512 break label_60;
4513 }
4514 jj_consume_token(COMMA);
4515 StatementExpression();
4516 }
4517 }
4518
4519 final public void ForUpdate() throws ParseException {
4520 StatementExpressionList();
4521 }
4522
4523 final public void BreakStatement() throws ParseException {
4524 jj_consume_token(BREAK);
4525 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4526 case ASSERT:
4527 case IDENTIFIER:
4528 Identifier();
4529 break;
4530 default:
4531 jj_la1[155] = jj_gen;
4532 ;
4533 }
4534 jj_consume_token(SEMICOLON);
4535 _ncss++; Util.debug( "_ncss++" );
4536 }
4537
4538 final public void ContinueStatement() throws ParseException {
4539 jj_consume_token(CONTINUE);
4540 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4541 case ASSERT:
4542 case IDENTIFIER:
4543 Identifier();
4544 break;
4545 default:
4546 jj_la1[156] = jj_gen;
4547 ;
4548 }
4549 jj_consume_token(SEMICOLON);
4550 _ncss++; Util.debug( "_ncss++" );
4551 }
4552
4553 final public void ReturnStatement() throws ParseException {
4554 jj_consume_token(RETURN);
4555 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4556 case ASSERT:
4557 case BOOLEAN:
4558 case BYTE:
4559 case CHAR:
4560 case DOUBLE:
4561 case ENUM:
4562 case FALSE:
4563 case FLOAT:
4564 case INT:
4565 case LONG:
4566 case NEW:
4567 case NULL:
4568 case SHORT:
4569 case SUPER:
4570 case THIS:
4571 case TRUE:
4572 case VOID:
4573 case INTEGER_LITERAL:
4574 case FLOATING_POINT_LITERAL:
4575 case CHARACTER_LITERAL:
4576 case STRING_LITERAL:
4577 case IDENTIFIER:
4578 case LPAREN:
4579 case BANG:
4580 case TILDE:
4581 case INCR:
4582 case DECR:
4583 case PLUS:
4584 case MINUS:
4585 Expression();
4586 break;
4587 default:
4588 jj_la1[157] = jj_gen;
4589 ;
4590 }
4591 jj_consume_token(SEMICOLON);
4592 _ncss++;
4593 Util.debug( "_ncss++" );
4594 _cyc++;
4595 _bReturn = true;
4596 }
4597
4598 final public void ThrowStatement() throws ParseException {
4599 jj_consume_token(THROW);
4600 Expression();
4601 jj_consume_token(SEMICOLON);
4602 _ncss++;
4603 Util.debug( "_ncss++" );
4604 _cyc++;
4605 }
4606
4607 final public void SynchronizedStatement() throws ParseException {
4608 jj_consume_token(SYNCHRONIZED);
4609 jj_consume_token(LPAREN);
4610 Expression();
4611 jj_consume_token(RPAREN);
4612 Block();
4613 _ncss++; Util.debug( "_ncss++" );
4614 }
4615
4616 final public void TryStatement() throws ParseException {
4617 jj_consume_token(TRY);
4618 Block();
4619 label_61:
4620 while (true) {
4621 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4622 case CATCH:
4623 ;
4624 break;
4625 default:
4626 jj_la1[158] = jj_gen;
4627 break label_61;
4628 }
4629 jj_consume_token(CATCH);
4630 jj_consume_token(LPAREN);
4631 FormalParameter();
4632 jj_consume_token(RPAREN);
4633 Block();
4634 _ncss++; Util.debug( "_ncss++" ); _cyc++;
4635 }
4636 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4637 case FINALLY:
4638 jj_consume_token(FINALLY);
4639 Block();
4640 _ncss++; Util.debug( "_ncss++" );
4641 break;
4642 default:
4643 jj_la1[159] = jj_gen;
4644 ;
4645 }
4646 }
4647
4648 final public void Identifier() throws ParseException {
4649 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4650 case IDENTIFIER:
4651 jj_consume_token(IDENTIFIER);
4652 break;
4653 case ASSERT:
4654 jj_consume_token(ASSERT);
4655 break;
4656 default:
4657 jj_la1[160] = jj_gen;
4658 jj_consume_token(-1);
4659 throw new ParseException();
4660 }
4661 }
4662
4663 /* Annotation syntax follows. */
4664 final public void Annotation() throws ParseException {
4665 if (jj_2_48(2147483647)) {
4666 NormalAnnotation();
4667 } else if (jj_2_49(2147483647)) {
4668 SingleMemberAnnotation();
4669 } else {
4670 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4671 case AT:
4672 MarkerAnnotation();
4673 break;
4674 default:
4675 jj_la1[161] = jj_gen;
4676 jj_consume_token(-1);
4677 throw new ParseException();
4678 }
4679 }
4680 }
4681
4682 final public void NormalAnnotation() throws ParseException {
4683 jj_consume_token(AT);
4684 Name();
4685 jj_consume_token(LPAREN);
4686 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4687 case IDENTIFIER:
4688 MemberValuePairs();
4689 break;
4690 default:
4691 jj_la1[162] = jj_gen;
4692 ;
4693 }
4694 jj_consume_token(RPAREN);
4695 }
4696
4697 final public void MarkerAnnotation() throws ParseException {
4698 jj_consume_token(AT);
4699 Name();
4700 }
4701
4702 final public void SingleMemberAnnotation() throws ParseException {
4703 jj_consume_token(AT);
4704 Name();
4705 jj_consume_token(LPAREN);
4706 MemberValue();
4707 jj_consume_token(RPAREN);
4708 }
4709
4710 final public void MemberValuePairs() throws ParseException {
4711 MemberValuePair();
4712 label_62:
4713 while (true) {
4714 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4715 case COMMA:
4716 ;
4717 break;
4718 default:
4719 jj_la1[163] = jj_gen;
4720 break label_62;
4721 }
4722 jj_consume_token(COMMA);
4723 MemberValuePair();
4724 }
4725 }
4726
4727 final public void MemberValuePair() throws ParseException {
4728 jj_consume_token(IDENTIFIER);
4729 jj_consume_token(ASSIGN);
4730 MemberValue();
4731 }
4732
4733 final public void MemberValue() throws ParseException {
4734 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4735 case AT:
4736 Annotation();
4737 break;
4738 case LBRACE:
4739 MemberValueArrayInitializer();
4740 break;
4741 case ASSERT:
4742 case BOOLEAN:
4743 case BYTE:
4744 case CHAR:
4745 case DOUBLE:
4746 case ENUM:
4747 case FALSE:
4748 case FLOAT:
4749 case INT:
4750 case LONG:
4751 case NEW:
4752 case NULL:
4753 case SHORT:
4754 case SUPER:
4755 case THIS:
4756 case TRUE:
4757 case VOID:
4758 case INTEGER_LITERAL:
4759 case FLOATING_POINT_LITERAL:
4760 case CHARACTER_LITERAL:
4761 case STRING_LITERAL:
4762 case IDENTIFIER:
4763 case LPAREN:
4764 case BANG:
4765 case TILDE:
4766 case INCR:
4767 case DECR:
4768 case PLUS:
4769 case MINUS:
4770 ConditionalExpression();
4771 break;
4772 default:
4773 jj_la1[164] = jj_gen;
4774 jj_consume_token(-1);
4775 throw new ParseException();
4776 }
4777 }
4778
4779 final public void MemberValueArrayInitializer() throws ParseException {
4780 jj_consume_token(LBRACE);
4781 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4782 case ASSERT:
4783 case BOOLEAN:
4784 case BYTE:
4785 case CHAR:
4786 case DOUBLE:
4787 case ENUM:
4788 case FALSE:
4789 case FLOAT:
4790 case INT:
4791 case LONG:
4792 case NEW:
4793 case NULL:
4794 case SHORT:
4795 case SUPER:
4796 case THIS:
4797 case TRUE:
4798 case VOID:
4799 case INTEGER_LITERAL:
4800 case FLOATING_POINT_LITERAL:
4801 case CHARACTER_LITERAL:
4802 case STRING_LITERAL:
4803 case IDENTIFIER:
4804 case LPAREN:
4805 case LBRACE:
4806 case AT:
4807 case BANG:
4808 case TILDE:
4809 case INCR:
4810 case DECR:
4811 case PLUS:
4812 case MINUS:
4813 MemberValue();
4814 break;
4815 default:
4816 jj_la1[165] = jj_gen;
4817 ;
4818 }
4819 label_63:
4820 while (true) {
4821 if (jj_2_50(2)) {
4822 ;
4823 } else {
4824 break label_63;
4825 }
4826 jj_consume_token(COMMA);
4827 MemberValue();
4828 }
4829 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4830 case COMMA:
4831 jj_consume_token(COMMA);
4832 break;
4833 default:
4834 jj_la1[166] = jj_gen;
4835 ;
4836 }
4837 jj_consume_token(RBRACE);
4838 }
4839
4840 /*
4841 =================================================
4842 Java 1.5 stuff starts here
4843 =================================================
4844 */
4845
4846 /* Annotation Types. */
4847
4848 //Added by REYNAUD Sebastien (LOGICA)
4849 final public void CreationAnnotation() throws ParseException {
4850 jj_consume_token(AT);
4851 jj_consume_token(INTERFACE);
4852 jj_consume_token(IDENTIFIER);
4853 jj_consume_token(LBRACE);
4854 label_64:
4855 while (true) {
4856 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4857 case ABSTRACT:
4858 case BOOLEAN:
4859 case BYTE:
4860 case CHAR:
4861 case CLASS:
4862 case DOUBLE:
4863 case ENUM:
4864 case FINAL:
4865 case FLOAT:
4866 case INT:
4867 case INTERFACE:
4868 case LONG:
4869 case NATIVE:
4870 case PRIVATE:
4871 case PROTECTED:
4872 case PUBLIC:
4873 case SHORT:
4874 case STATIC:
4875 case TESTAAAA:
4876 case SYNCHRONIZED:
4877 case TRANSIENT:
4878 case VOLATILE:
4879 case IDENTIFIER:
4880 case SEMICOLON:
4881 case AT:
4882 ;
4883 break;
4884 default:
4885 jj_la1[167] = jj_gen;
4886 break label_64;
4887 }
4888 AnnotationTypeMemberDeclaration();
4889 }
4890 jj_consume_token(RBRACE);
4891 }
4892
4893 //
4894 final public void AnnotationTypeDeclaration(int modifiers) throws ParseException {
4895 jj_consume_token(AT);
4896 jj_consume_token(INTERFACE);
4897 jj_consume_token(IDENTIFIER);
4898 AnnotationTypeBody();
4899 }
4900
4901 final public void AnnotationTypeBody() throws ParseException {
4902 jj_consume_token(LBRACE);
4903 _ncss++; Util.debug( "_ncss++" );
4904 label_65:
4905 while (true) {
4906 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4907 case ABSTRACT:
4908 case BOOLEAN:
4909 case BYTE:
4910 case CHAR:
4911 case CLASS:
4912 case DOUBLE:
4913 case ENUM:
4914 case FINAL:
4915 case FLOAT:
4916 case INT:
4917 case INTERFACE:
4918 case LONG:
4919 case NATIVE:
4920 case PRIVATE:
4921 case PROTECTED:
4922 case PUBLIC:
4923 case SHORT:
4924 case STATIC:
4925 case TESTAAAA:
4926 case SYNCHRONIZED:
4927 case TRANSIENT:
4928 case VOLATILE:
4929 case IDENTIFIER:
4930 case SEMICOLON:
4931 case AT:
4932 ;
4933 break;
4934 default:
4935 jj_la1[168] = jj_gen;
4936 break label_65;
4937 }
4938 AnnotationTypeMemberDeclaration();
4939 }
4940 jj_consume_token(RBRACE);
4941 }
4942
4943 final public void AnnotationTypeMemberDeclaration() throws ParseException {
4944 int modifiers;
4945 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4946 case ABSTRACT:
4947 case BOOLEAN:
4948 case BYTE:
4949 case CHAR:
4950 case CLASS:
4951 case DOUBLE:
4952 case ENUM:
4953 case FINAL:
4954 case FLOAT:
4955 case INT:
4956 case INTERFACE:
4957 case LONG:
4958 case NATIVE:
4959 case PRIVATE:
4960 case PROTECTED:
4961 case PUBLIC:
4962 case SHORT:
4963 case STATIC:
4964 case TESTAAAA:
4965 case SYNCHRONIZED:
4966 case TRANSIENT:
4967 case VOLATILE:
4968 case IDENTIFIER:
4969 case AT:
4970 modifiers = Modifiers();
4971 if (jj_2_51(2147483647)) {
4972 Type();
4973 jj_consume_token(IDENTIFIER);
4974 jj_consume_token(LPAREN);
4975 jj_consume_token(RPAREN);
4976 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4977 case _DEFAULT:
4978 DefaultValue();
4979 break;
4980 default:
4981 jj_la1[169] = jj_gen;
4982 ;
4983 }
4984 jj_consume_token(SEMICOLON);
4985 _ncss++;
4986 Util.debug( "_ncss++" );
4987 } else {
4988 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
4989 case CLASS:
4990 case INTERFACE:
4991 ClassOrInterfaceDeclaration(modifiers);
4992 break;
4993 case ENUM:
4994 EnumDeclaration(modifiers);
4995 break;
4996 case AT:
4997 AnnotationTypeDeclaration(modifiers);
4998 break;
4999 case BOOLEAN:
5000 case BYTE:
5001 case CHAR:
5002 case DOUBLE:
5003 case FLOAT:
5004 case INT:
5005 case LONG:
5006 case SHORT:
5007 case IDENTIFIER:
5008 FieldDeclaration15(modifiers);
5009 break;
5010 default:
5011 jj_la1[170] = jj_gen;
5012 jj_consume_token(-1);
5013 throw new ParseException();
5014 }
5015 }
5016 break;
5017 case SEMICOLON:
5018 jj_consume_token(SEMICOLON);
5019 _ncss++;
5020 Util.debug( "_ncss++" );
5021 break;
5022 default:
5023 jj_la1[171] = jj_gen;
5024 jj_consume_token(-1);
5025 throw new ParseException();
5026 }
5027 }
5028
5029 final public void DefaultValue() throws ParseException {
5030 jj_consume_token(_DEFAULT);
5031 MemberValue();
5032 }
5033
5034 /*
5035 * Modifiers. We match all modifiers in a single rule to reduce the chances of
5036 * syntax errors for simple modifier mistakes. It will also enable us to give
5037 * better error messages.
5038 */
5039 final public int Modifiers() throws ParseException {
5040 int modifiers = 0;
5041 _tmpToken = null;
5042 label_66:
5043 while (true) {
5044 if (jj_2_52(2)) {
5045 ;
5046 } else {
5047 break label_66;
5048 }
5049 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5050 case PUBLIC:
5051 jj_consume_token(PUBLIC);
5052 modifiers |= ModifierSet.PUBLIC;
5053 if ( _tmpToken == null ) {
5054 _tmpToken = getToken( 0 );
5055 }
5056 break;
5057 case STATIC:
5058 jj_consume_token(STATIC);
5059 modifiers |= ModifierSet.STATIC; if ( _tmpToken == null ) {
5060 _tmpToken = getToken( 0 );
5061 }
5062 break;
5063 case PROTECTED:
5064 jj_consume_token(PROTECTED);
5065 modifiers |= ModifierSet.PROTECTED; if ( _tmpToken == null ) {
5066 _tmpToken = getToken( 0 );
5067 }
5068 break;
5069 case PRIVATE:
5070 jj_consume_token(PRIVATE);
5071 modifiers |= ModifierSet.PRIVATE; if ( _tmpToken == null ) {
5072 _tmpToken = getToken( 0 );
5073 }
5074 break;
5075 case FINAL:
5076 jj_consume_token(FINAL);
5077 modifiers |= ModifierSet.FINAL; if ( _tmpToken == null ) {
5078 _tmpToken = getToken( 0 );
5079 }
5080 break;
5081 case ABSTRACT:
5082 jj_consume_token(ABSTRACT);
5083 modifiers |= ModifierSet.ABSTRACT; if ( _tmpToken == null ) {
5084 _tmpToken = getToken( 0 );
5085 }
5086 break;
5087 case SYNCHRONIZED:
5088 jj_consume_token(SYNCHRONIZED);
5089 modifiers |= ModifierSet.SYNCHRONIZED; if ( _tmpToken == null ) {
5090 _tmpToken = getToken( 0 );
5091 }
5092 break;
5093 case NATIVE:
5094 jj_consume_token(NATIVE);
5095 modifiers |= ModifierSet.NATIVE; if ( _tmpToken == null ) {
5096 _tmpToken = getToken( 0 );
5097 }
5098 break;
5099 case TRANSIENT:
5100 jj_consume_token(TRANSIENT);
5101 modifiers |= ModifierSet.TRANSIENT; if ( _tmpToken == null ) {
5102 _tmpToken = getToken( 0 );
5103 }
5104 break;
5105 case VOLATILE:
5106 jj_consume_token(VOLATILE);
5107 modifiers |= ModifierSet.VOLATILE; if ( _tmpToken == null ) {
5108 _tmpToken = getToken( 0 );
5109 }
5110 break;
5111 case TESTAAAA:
5112 jj_consume_token(TESTAAAA);
5113 modifiers |= ModifierSet.STRICTFP; if ( _tmpToken == null ) {
5114 _tmpToken = getToken( 0 );
5115 }
5116 break;
5117 case AT:
5118 Annotation();
5119 break;
5120 default:
5121 jj_la1[172] = jj_gen;
5122 jj_consume_token(-1);
5123 throw new ParseException();
5124 }
5125 }
5126 {if (true) return modifiers;}
5127 throw new Error("Missing return statement in function");
5128 }
5129
5130 final public void ClassOrInterfaceDeclaration(int modifiers) throws ParseException {
5131 boolean isInterface = false;
5132 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5133 case CLASS:
5134 jj_consume_token(CLASS);
5135 break;
5136 case INTERFACE:
5137 jj_consume_token(INTERFACE);
5138 isInterface = true;
5139 break;
5140 default:
5141 jj_la1[173] = jj_gen;
5142 jj_consume_token(-1);
5143 throw new ParseException();
5144 }
5145 jj_consume_token(IDENTIFIER);
5146 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5147 case LT:
5148 TypeParameters();
5149 break;
5150 default:
5151 jj_la1[174] = jj_gen;
5152 ;
5153 }
5154 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5155 case EXTENDS:
5156 ExtendsList(isInterface);
5157 break;
5158 default:
5159 jj_la1[175] = jj_gen;
5160 ;
5161 }
5162 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5163 case IMPLEMENTS:
5164 ImplementsList(isInterface);
5165 break;
5166 default:
5167 jj_la1[176] = jj_gen;
5168 ;
5169 }
5170 ClassOrInterfaceBody(isInterface);
5171 }
5172
5173 final public void EnumDeclaration(int modifiers) throws ParseException {
5174 String sOldClass = _sClass;
5175 int oldClasses = _classes;
5176 int oldNcss = _ncss;
5177 int oldFunctions = _functions;
5178
5179 // Chris Povirk
5180 int oldSingle;
5181 int oldMulti;
5182 Util.debug( "EnumDeclaration().START" );
5183 jj_consume_token(ENUM);
5184 jj_consume_token(IDENTIFIER);
5185 if (!_sClass.equals("")) {
5186 _sClass += ".";
5187 }
5188 _sClass += getToken(0).image;
5189 _classLevel ++;
5190 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5191 case IMPLEMENTS:
5192 ImplementsList(false);
5193 break;
5194 default:
5195 jj_la1[177] = jj_gen;
5196 ;
5197 }
5198 // Chris Povirk
5199 oldSingle = JavaParserTokenManager._iSingleComments;
5200 oldMulti = JavaParserTokenManager._iMultiComments;
5201 EnumBody();
5202 _classLevel--;
5203 if (_classLevel == 0) {
5204 //_topLevelClasses++;
5205 ObjectMetric metric = new ObjectMetric();
5206 metric.name = _sPackage + _sClass;
5207 metric.ncss = _ncss - oldNcss;
5208 metric.functions = _functions - oldFunctions;
5209 metric.classes = _classes - oldClasses;
5210 Token lastToken = getToken( 0 );
5211 //metric.add( new Integer( lastToken.endLine ) );
5212 //metric.add( new Integer( lastToken.endColumn ) );
5213 metric.javadocs = _javadocs;
5214
5215 // Chris Povirk
5216 metric.javadocsLn = _jvdcLines;
5217 metric.singleLn = JavaParserTokenManager._iSingleComments - oldSingle;
5218 metric.multiLn = JavaParserTokenManager._iMultiComments - oldMulti;
5219
5220 _vClasses.add(metric);
5221 _pPackageMetric.functions += _functions - oldFunctions;
5222 _pPackageMetric.classes++;
5223
5224 // added by SMS
5225 _pPackageMetric.javadocs += _javadocs;
5226 //_pPackageMetric.javadocsLn += JavaParserTokenManager._iFormalComments - oldFormal;
5227 //_pPackageMetric.singleLn += JavaParserTokenManager._iSingleComments - oldSingle;
5228 //_pPackageMetric.multiLn += Manager._iMultiComments - oldMulti;
5229 //
5230 }
5231 _functions = oldFunctions;
5232 _classes = oldClasses + 1;
5233 _sClass = sOldClass;
5234 }
5235
5236 final public void TypeParameters() throws ParseException {
5237 jj_consume_token(LT);
5238 TypeParameter();
5239 label_67:
5240 while (true) {
5241 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5242 case COMMA:
5243 ;
5244 break;
5245 default:
5246 jj_la1[178] = jj_gen;
5247 break label_67;
5248 }
5249 jj_consume_token(COMMA);
5250 TypeParameter();
5251 }
5252 jj_consume_token(GT);
5253 }
5254
5255 final public void ExtendsList(boolean isInterface) throws ParseException {
5256 boolean extendsMoreThanOne = false;
5257 jj_consume_token(EXTENDS);
5258 ClassOrInterfaceType();
5259 label_68:
5260 while (true) {
5261 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5262 case COMMA:
5263 ;
5264 break;
5265 default:
5266 jj_la1[179] = jj_gen;
5267 break label_68;
5268 }
5269 jj_consume_token(COMMA);
5270 ClassOrInterfaceType();
5271 extendsMoreThanOne = true;
5272 }
5273 if (extendsMoreThanOne && !isInterface)
5274 {if (true) throw new ParseException("A class cannot extend more than one other class");}
5275 }
5276
5277 final public void ImplementsList(boolean isInterface) throws ParseException {
5278 jj_consume_token(IMPLEMENTS);
5279 ClassOrInterfaceType();
5280 label_69:
5281 while (true) {
5282 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5283 case COMMA:
5284 ;
5285 break;
5286 default:
5287 jj_la1[180] = jj_gen;
5288 break label_69;
5289 }
5290 jj_consume_token(COMMA);
5291 ClassOrInterfaceType();
5292 }
5293 if (isInterface)
5294 {if (true) throw new ParseException("An interface cannot implement other interfaces");}
5295 }
5296
5297 final public void ClassOrInterfaceBody(boolean isInterface) throws ParseException {
5298 jj_consume_token(LBRACE);
5299 _ncss++; Util.debug( "ClassOrInterfaceBody()._ncss++" );
5300 label_70:
5301 while (true) {
5302 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5303 case ABSTRACT:
5304 case ASSERT:
5305 case BOOLEAN:
5306 case BYTE:
5307 case CHAR:
5308 case CLASS:
5309 case DOUBLE:
5310 case ENUM:
5311 case FINAL:
5312 case FLOAT:
5313 case INT:
5314 case INTERFACE:
5315 case LONG:
5316 case NATIVE:
5317 case PRIVATE:
5318 case PROTECTED:
5319 case PUBLIC:
5320 case SHORT:
5321 case STATIC:
5322 case TESTAAAA:
5323 case SYNCHRONIZED:
5324 case TRANSIENT:
5325 case VOID:
5326 case VOLATILE:
5327 case IDENTIFIER:
5328 case LBRACE:
5329 case SEMICOLON:
5330 case AT:
5331 case LT:
5332 ;
5333 break;
5334 default:
5335 jj_la1[181] = jj_gen;
5336 break label_70;
5337 }
5338 ClassOrInterfaceBodyDeclaration(isInterface);
5339 }
5340 jj_consume_token(RBRACE);
5341 }
5342
5343 final public void EnumBody() throws ParseException {
5344 jj_consume_token(LBRACE);
5345 _ncss++;
5346 Util.debug( "_ncss++" );
5347 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5348 case ABSTRACT:
5349 case FINAL:
5350 case NATIVE:
5351 case PRIVATE:
5352 case PROTECTED:
5353 case PUBLIC:
5354 case STATIC:
5355 case TESTAAAA:
5356 case SYNCHRONIZED:
5357 case TRANSIENT:
5358 case VOLATILE:
5359 case IDENTIFIER:
5360 case AT:
5361 EnumConstant();
5362 label_71:
5363 while (true) {
5364 if (jj_2_53(2)) {
5365 ;
5366 } else {
5367 break label_71;
5368 }
5369 jj_consume_token(COMMA);
5370 EnumConstant();
5371 }
5372 break;
5373 default:
5374 jj_la1[182] = jj_gen;
5375 ;
5376 }
5377 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5378 case COMMA:
5379 jj_consume_token(COMMA);
5380 break;
5381 default:
5382 jj_la1[183] = jj_gen;
5383 ;
5384 }
5385 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5386 case SEMICOLON:
5387 jj_consume_token(SEMICOLON);
5388 label_72:
5389 while (true) {
5390 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5391 case ABSTRACT:
5392 case ASSERT:
5393 case BOOLEAN:
5394 case BYTE:
5395 case CHAR:
5396 case CLASS:
5397 case DOUBLE:
5398 case ENUM:
5399 case FINAL:
5400 case FLOAT:
5401 case INT:
5402 case INTERFACE:
5403 case LONG:
5404 case NATIVE:
5405 case PRIVATE:
5406 case PROTECTED:
5407 case PUBLIC:
5408 case SHORT:
5409 case STATIC:
5410 case TESTAAAA:
5411 case SYNCHRONIZED:
5412 case TRANSIENT:
5413 case VOID:
5414 case VOLATILE:
5415 case IDENTIFIER:
5416 case LBRACE:
5417 case SEMICOLON:
5418 case AT:
5419 case LT:
5420 ;
5421 break;
5422 default:
5423 jj_la1[184] = jj_gen;
5424 break label_72;
5425 }
5426 ClassOrInterfaceBodyDeclaration(false);
5427 }
5428 break;
5429 default:
5430 jj_la1[185] = jj_gen;
5431 ;
5432 }
5433 jj_consume_token(RBRACE);
5434 }
5435
5436 final public void TypeParameter() throws ParseException {
5437 jj_consume_token(IDENTIFIER);
5438 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5439 case EXTENDS:
5440 TypeBound();
5441 break;
5442 default:
5443 jj_la1[186] = jj_gen;
5444 ;
5445 }
5446 }
5447
5448 final public void ClassOrInterfaceType() throws ParseException {
5449 jj_consume_token(IDENTIFIER);
5450 _sName = getToken(0).image;
5451 if ( _tmpResultToken == null )
5452 {
5453 _tmpResultToken = getToken( 0 );
5454 Util.debug( "ClassOrInterfaceType._tmpResultToken: " + _tmpResultToken );
5455 }
5456 if (jj_2_54(4)) {
5457 TypeArguments();
5458 } else {
5459 ;
5460 }
5461 label_73:
5462 while (true) {
5463 if (jj_2_55(2)) {
5464 ;
5465 } else {
5466 break label_73;
5467 }
5468 jj_consume_token(DOT);
5469 jj_consume_token(IDENTIFIER);
5470 _sName += "." + getToken(0).image;
5471 if (jj_2_56(2)) {
5472 TypeArguments();
5473 } else {
5474 ;
5475 }
5476 }
5477 }
5478
5479 final public void ClassOrInterfaceBodyDeclaration(boolean isInterface) throws ParseException {
5480 //boolean isNestedInterface = false;
5481 int modifiers;
5482 if (jj_2_59(2)) {
5483 Initializer();
5484 if (isInterface)
5485 {if (true) throw new ParseException("An interface cannot have initializers");}
5486 } else {
5487 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5488 case ABSTRACT:
5489 case ASSERT:
5490 case BOOLEAN:
5491 case BYTE:
5492 case CHAR:
5493 case CLASS:
5494 case DOUBLE:
5495 case ENUM:
5496 case FINAL:
5497 case FLOAT:
5498 case INT:
5499 case INTERFACE:
5500 case LONG:
5501 case NATIVE:
5502 case PRIVATE:
5503 case PROTECTED:
5504 case PUBLIC:
5505 case SHORT:
5506 case STATIC:
5507 case TESTAAAA:
5508 case SYNCHRONIZED:
5509 case TRANSIENT:
5510 case VOID:
5511 case VOLATILE:
5512 case IDENTIFIER:
5513 case AT:
5514 case LT:
5515 modifiers = Modifiers();
5516 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5517 case CLASS:
5518 case INTERFACE:
5519 ClassOrInterfaceDeclaration(modifiers);
5520 break;
5521 case ENUM:
5522 EnumDeclaration(modifiers);
5523 break;
5524 default:
5525 jj_la1[187] = jj_gen;
5526 if (jj_2_57(2147483647)) {
5527 ConstructorDeclaration();
5528 } else if (jj_2_58(2147483647)) {
5529 FieldDeclaration15(modifiers);
5530 } else {
5531 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5532 case ABSTRACT:
5533 case BOOLEAN:
5534 case BYTE:
5535 case CHAR:
5536 case DOUBLE:
5537 case FINAL:
5538 case FLOAT:
5539 case INT:
5540 case LONG:
5541 case NATIVE:
5542 case PRIVATE:
5543 case PROTECTED:
5544 case PUBLIC:
5545 case SHORT:
5546 case STATIC:
5547 case TESTAAAA:
5548 case SYNCHRONIZED:
5549 case VOID:
5550 case IDENTIFIER:
5551 case AT:
5552 case LT:
5553 MethodDeclaration15(modifiers);
5554 break;
5555 default:
5556 jj_la1[188] = jj_gen;
5557 jj_consume_token(-1);
5558 throw new ParseException();
5559 }
5560 }
5561 }
5562 break;
5563 case SEMICOLON:
5564 jj_consume_token(SEMICOLON);
5565 break;
5566 default:
5567 jj_la1[189] = jj_gen;
5568 jj_consume_token(-1);
5569 throw new ParseException();
5570 }
5571 }
5572 }
5573
5574 final public void EnumConstant() throws ParseException {
5575 Modifiers();
5576 jj_consume_token(IDENTIFIER);
5577 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5578 case LPAREN:
5579 Arguments();
5580 break;
5581 default:
5582 jj_la1[190] = jj_gen;
5583 ;
5584 }
5585 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5586 case LBRACE:
5587 ClassOrInterfaceBody(false);
5588 break;
5589 default:
5590 jj_la1[191] = jj_gen;
5591 ;
5592 }
5593 }
5594
5595 final public void TypeBound() throws ParseException {
5596 jj_consume_token(EXTENDS);
5597 ClassOrInterfaceType();
5598 label_74:
5599 while (true) {
5600 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5601 case BIT_AND:
5602 ;
5603 break;
5604 default:
5605 jj_la1[192] = jj_gen;
5606 break label_74;
5607 }
5608 jj_consume_token(BIT_AND);
5609 ClassOrInterfaceType();
5610 }
5611 }
5612
5613 final public void TypeArguments() throws ParseException {
5614 jj_consume_token(LT);
5615 TypeArgument();
5616 label_75:
5617 while (true) {
5618 if (jj_2_60(2)) {
5619 ;
5620 } else {
5621 break label_75;
5622 }
5623 jj_consume_token(COMMA);
5624 TypeArgument();
5625 }
5626 jj_consume_token(GT);
5627 }
5628
5629 final public void TypeArgument() throws ParseException {
5630 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5631 case BOOLEAN:
5632 case BYTE:
5633 case CHAR:
5634 case DOUBLE:
5635 case FLOAT:
5636 case INT:
5637 case LONG:
5638 case SHORT:
5639 case IDENTIFIER:
5640 ReferenceType();
5641 break;
5642 case HOOK:
5643 jj_consume_token(HOOK);
5644 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5645 case EXTENDS:
5646 case SUPER:
5647 WildcardBounds();
5648 break;
5649 default:
5650 jj_la1[193] = jj_gen;
5651 ;
5652 }
5653 break;
5654 default:
5655 jj_la1[194] = jj_gen;
5656 jj_consume_token(-1);
5657 throw new ParseException();
5658 }
5659 }
5660
5661 final public void ReferenceType() throws ParseException {
5662 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5663 case BOOLEAN:
5664 case BYTE:
5665 case CHAR:
5666 case DOUBLE:
5667 case FLOAT:
5668 case INT:
5669 case LONG:
5670 case SHORT:
5671 PrimitiveType();
5672 label_76:
5673 while (true) {
5674 jj_consume_token(LBRACKET);
5675 jj_consume_token(RBRACKET);
5676 _sName += "[]";
5677 if (jj_2_61(2)) {
5678 ;
5679 } else {
5680 break label_76;
5681 }
5682 }
5683 break;
5684 case IDENTIFIER:
5685 ClassOrInterfaceType();
5686 label_77:
5687 while (true) {
5688 if (jj_2_62(2)) {
5689 ;
5690 } else {
5691 break label_77;
5692 }
5693 jj_consume_token(LBRACKET);
5694 jj_consume_token(RBRACKET);
5695 _sName += "[]";
5696 }
5697 break;
5698 default:
5699 jj_la1[195] = jj_gen;
5700 jj_consume_token(-1);
5701 throw new ParseException();
5702 }
5703 }
5704
5705 final public void WildcardBounds() throws ParseException {
5706 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5707 case EXTENDS:
5708 jj_consume_token(EXTENDS);
5709 ReferenceType();
5710 break;
5711 case SUPER:
5712 jj_consume_token(SUPER);
5713 ReferenceType();
5714 break;
5715 default:
5716 jj_la1[196] = jj_gen;
5717 jj_consume_token(-1);
5718 throw new ParseException();
5719 }
5720 }
5721
5722 final public void FieldDeclaration15(int modifiers) throws ParseException {
5723 Type();
5724 VariableDeclarator();
5725 label_78:
5726 while (true) {
5727 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5728 case COMMA:
5729 ;
5730 break;
5731 default:
5732 jj_la1[197] = jj_gen;
5733 break label_78;
5734 }
5735 jj_consume_token(COMMA);
5736 VariableDeclarator();
5737 }
5738 jj_consume_token(SEMICOLON);
5739 }
5740
5741 final public void MethodDeclaration15(int modifiers) throws ParseException {
5742 MethodDeclaration();
5743 }
5744
5745 final public void MethodDeclarator15() throws ParseException {
5746 jj_consume_token(IDENTIFIER);
5747 FormalParameters();
5748 label_79:
5749 while (true) {
5750 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5751 case LBRACKET:
5752 ;
5753 break;
5754 default:
5755 jj_la1[198] = jj_gen;
5756 break label_79;
5757 }
5758 jj_consume_token(LBRACKET);
5759 jj_consume_token(RBRACKET);
5760 }
5761 }
5762
5763 final public void FormalParameters15() throws ParseException {
5764 jj_consume_token(LPAREN);
5765 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5766 case ABSTRACT:
5767 case BOOLEAN:
5768 case BYTE:
5769 case CHAR:
5770 case DOUBLE:
5771 case FINAL:
5772 case FLOAT:
5773 case INT:
5774 case LONG:
5775 case NATIVE:
5776 case PRIVATE:
5777 case PROTECTED:
5778 case PUBLIC:
5779 case SHORT:
5780 case STATIC:
5781 case TESTAAAA:
5782 case SYNCHRONIZED:
5783 case TRANSIENT:
5784 case VOLATILE:
5785 case IDENTIFIER:
5786 case AT:
5787 FormalParameter15();
5788 label_80:
5789 while (true) {
5790 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5791 case COMMA:
5792 ;
5793 break;
5794 default:
5795 jj_la1[199] = jj_gen;
5796 break label_80;
5797 }
5798 jj_consume_token(COMMA);
5799 FormalParameter15();
5800 }
5801 break;
5802 default:
5803 jj_la1[200] = jj_gen;
5804 ;
5805 }
5806 jj_consume_token(RPAREN);
5807 }
5808
5809 final public void FormalParameter15() throws ParseException {
5810 Modifiers();
5811 Type();
5812 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
5813 case ELLIPSIS:
5814 jj_consume_token(ELLIPSIS);
5815 break;
5816 default:
5817 jj_la1[201] = jj_gen;
5818 ;
5819 }
5820 VariableDeclaratorId();
5821 }
5822
5823 final public void MemberSelector() throws ParseException {
5824 jj_consume_token(DOT);
5825 TypeArguments();
5826 jj_consume_token(IDENTIFIER);
5827 }
5828
5829 private boolean jj_2_1(int xla) {
5830 jj_la = xla; jj_lastpos = jj_scanpos = token;
5831 try { return !jj_3_1(); }
5832 catch(LookaheadSuccess ls) { return true; }
5833 finally { jj_save(0, xla); }
5834 }
5835
5836 private boolean jj_2_2(int xla) {
5837 jj_la = xla; jj_lastpos = jj_scanpos = token;
5838 try { return !jj_3_2(); }
5839 catch(LookaheadSuccess ls) { return true; }
5840 finally { jj_save(1, xla); }
5841 }
5842
5843 private boolean jj_2_3(int xla) {
5844 jj_la = xla; jj_lastpos = jj_scanpos = token;
5845 try { return !jj_3_3(); }
5846 catch(LookaheadSuccess ls) { return true; }
5847 finally { jj_save(2, xla); }
5848 }
5849
5850 private boolean jj_2_4(int xla) {
5851 jj_la = xla; jj_lastpos = jj_scanpos = token;
5852 try { return !jj_3_4(); }
5853 catch(LookaheadSuccess ls) { return true; }
5854 finally { jj_save(3, xla); }
5855 }
5856
5857 private boolean jj_2_5(int xla) {
5858 jj_la = xla; jj_lastpos = jj_scanpos = token;
5859 try { return !jj_3_5(); }
5860 catch(LookaheadSuccess ls) { return true; }
5861 finally { jj_save(4, xla); }
5862 }
5863
5864 private boolean jj_2_6(int xla) {
5865 jj_la = xla; jj_lastpos = jj_scanpos = token;
5866 try { return !jj_3_6(); }
5867 catch(LookaheadSuccess ls) { return true; }
5868 finally { jj_save(5, xla); }
5869 }
5870
5871 private boolean jj_2_7(int xla) {
5872 jj_la = xla; jj_lastpos = jj_scanpos = token;
5873 try { return !jj_3_7(); }
5874 catch(LookaheadSuccess ls) { return true; }
5875 finally { jj_save(6, xla); }
5876 }
5877
5878 private boolean jj_2_8(int xla) {
5879 jj_la = xla; jj_lastpos = jj_scanpos = token;
5880 try { return !jj_3_8(); }
5881 catch(LookaheadSuccess ls) { return true; }
5882 finally { jj_save(7, xla); }
5883 }
5884
5885 private boolean jj_2_9(int xla) {
5886 jj_la = xla; jj_lastpos = jj_scanpos = token;
5887 try { return !jj_3_9(); }
5888 catch(LookaheadSuccess ls) { return true; }
5889 finally { jj_save(8, xla); }
5890 }
5891
5892 private boolean jj_2_10(int xla) {
5893 jj_la = xla; jj_lastpos = jj_scanpos = token;
5894 try { return !jj_3_10(); }
5895 catch(LookaheadSuccess ls) { return true; }
5896 finally { jj_save(9, xla); }
5897 }
5898
5899 private boolean jj_2_11(int xla) {
5900 jj_la = xla; jj_lastpos = jj_scanpos = token;
5901 try { return !jj_3_11(); }
5902 catch(LookaheadSuccess ls) { return true; }
5903 finally { jj_save(10, xla); }
5904 }
5905
5906 private boolean jj_2_12(int xla) {
5907 jj_la = xla; jj_lastpos = jj_scanpos = token;
5908 try { return !jj_3_12(); }
5909 catch(LookaheadSuccess ls) { return true; }
5910 finally { jj_save(11, xla); }
5911 }
5912
5913 private boolean jj_2_13(int xla) {
5914 jj_la = xla; jj_lastpos = jj_scanpos = token;
5915 try { return !jj_3_13(); }
5916 catch(LookaheadSuccess ls) { return true; }
5917 finally { jj_save(12, xla); }
5918 }
5919
5920 private boolean jj_2_14(int xla) {
5921 jj_la = xla; jj_lastpos = jj_scanpos = token;
5922 try { return !jj_3_14(); }
5923 catch(LookaheadSuccess ls) { return true; }
5924 finally { jj_save(13, xla); }
5925 }
5926
5927 private boolean jj_2_15(int xla) {
5928 jj_la = xla; jj_lastpos = jj_scanpos = token;
5929 try { return !jj_3_15(); }
5930 catch(LookaheadSuccess ls) { return true; }
5931 finally { jj_save(14, xla); }
5932 }
5933
5934 private boolean jj_2_16(int xla) {
5935 jj_la = xla; jj_lastpos = jj_scanpos = token;
5936 try { return !jj_3_16(); }
5937 catch(LookaheadSuccess ls) { return true; }
5938 finally { jj_save(15, xla); }
5939 }
5940
5941 private boolean jj_2_17(int xla) {
5942 jj_la = xla; jj_lastpos = jj_scanpos = token;
5943 try { return !jj_3_17(); }
5944 catch(LookaheadSuccess ls) { return true; }
5945 finally { jj_save(16, xla); }
5946 }
5947
5948 private boolean jj_2_18(int xla) {
5949 jj_la = xla; jj_lastpos = jj_scanpos = token;
5950 try { return !jj_3_18(); }
5951 catch(LookaheadSuccess ls) { return true; }
5952 finally { jj_save(17, xla); }
5953 }
5954
5955 private boolean jj_2_19(int xla) {
5956 jj_la = xla; jj_lastpos = jj_scanpos = token;
5957 try { return !jj_3_19(); }
5958 catch(LookaheadSuccess ls) { return true; }
5959 finally { jj_save(18, xla); }
5960 }
5961
5962 private boolean jj_2_20(int xla) {
5963 jj_la = xla; jj_lastpos = jj_scanpos = token;
5964 try { return !jj_3_20(); }
5965 catch(LookaheadSuccess ls) { return true; }
5966 finally { jj_save(19, xla); }
5967 }
5968
5969 private boolean jj_2_21(int xla) {
5970 jj_la = xla; jj_lastpos = jj_scanpos = token;
5971 try { return !jj_3_21(); }
5972 catch(LookaheadSuccess ls) { return true; }
5973 finally { jj_save(20, xla); }
5974 }
5975
5976 private boolean jj_2_22(int xla) {
5977 jj_la = xla; jj_lastpos = jj_scanpos = token;
5978 try { return !jj_3_22(); }
5979 catch(LookaheadSuccess ls) { return true; }
5980 finally { jj_save(21, xla); }
5981 }
5982
5983 private boolean jj_2_23(int xla) {
5984 jj_la = xla; jj_lastpos = jj_scanpos = token;
5985 try { return !jj_3_23(); }
5986 catch(LookaheadSuccess ls) { return true; }
5987 finally { jj_save(22, xla); }
5988 }
5989
5990 private boolean jj_2_24(int xla) {
5991 jj_la = xla; jj_lastpos = jj_scanpos = token;
5992 try { return !jj_3_24(); }
5993 catch(LookaheadSuccess ls) { return true; }
5994 finally { jj_save(23, xla); }
5995 }
5996
5997 private boolean jj_2_25(int xla) {
5998 jj_la = xla; jj_lastpos = jj_scanpos = token;
5999 try { return !jj_3_25(); }
6000 catch(LookaheadSuccess ls) { return true; }
6001 finally { jj_save(24, xla); }
6002 }
6003
6004 private boolean jj_2_26(int xla) {
6005 jj_la = xla; jj_lastpos = jj_scanpos = token;
6006 try { return !jj_3_26(); }
6007 catch(LookaheadSuccess ls) { return true; }
6008 finally { jj_save(25, xla); }
6009 }
6010
6011 private boolean jj_2_27(int xla) {
6012 jj_la = xla; jj_lastpos = jj_scanpos = token;
6013 try { return !jj_3_27(); }
6014 catch(LookaheadSuccess ls) { return true; }
6015 finally { jj_save(26, xla); }
6016 }
6017
6018 private boolean jj_2_28(int xla) {
6019 jj_la = xla; jj_lastpos = jj_scanpos = token;
6020 try { return !jj_3_28(); }
6021 catch(LookaheadSuccess ls) { return true; }
6022 finally { jj_save(27, xla); }
6023 }
6024
6025 private boolean jj_2_29(int xla) {
6026 jj_la = xla; jj_lastpos = jj_scanpos = token;
6027 try { return !jj_3_29(); }
6028 catch(LookaheadSuccess ls) { return true; }
6029 finally { jj_save(28, xla); }
6030 }
6031
6032 private boolean jj_2_30(int xla) {
6033 jj_la = xla; jj_lastpos = jj_scanpos = token;
6034 try { return !jj_3_30(); }
6035 catch(LookaheadSuccess ls) { return true; }
6036 finally { jj_save(29, xla); }
6037 }
6038
6039 private boolean jj_2_31(int xla) {
6040 jj_la = xla; jj_lastpos = jj_scanpos = token;
6041 try { return !jj_3_31(); }
6042 catch(LookaheadSuccess ls) { return true; }
6043 finally { jj_save(30, xla); }
6044 }
6045
6046 private boolean jj_2_32(int xla) {
6047 jj_la = xla; jj_lastpos = jj_scanpos = token;
6048 try { return !jj_3_32(); }
6049 catch(LookaheadSuccess ls) { return true; }
6050 finally { jj_save(31, xla); }
6051 }
6052
6053 private boolean jj_2_33(int xla) {
6054 jj_la = xla; jj_lastpos = jj_scanpos = token;
6055 try { return !jj_3_33(); }
6056 catch(LookaheadSuccess ls) { return true; }
6057 finally { jj_save(32, xla); }
6058 }
6059
6060 private boolean jj_2_34(int xla) {
6061 jj_la = xla; jj_lastpos = jj_scanpos = token;
6062 try { return !jj_3_34(); }
6063 catch(LookaheadSuccess ls) { return true; }
6064 finally { jj_save(33, xla); }
6065 }
6066
6067 private boolean jj_2_35(int xla) {
6068 jj_la = xla; jj_lastpos = jj_scanpos = token;
6069 try { return !jj_3_35(); }
6070 catch(LookaheadSuccess ls) { return true; }
6071 finally { jj_save(34, xla); }
6072 }
6073
6074 private boolean jj_2_36(int xla) {
6075 jj_la = xla; jj_lastpos = jj_scanpos = token;
6076 try { return !jj_3_36(); }
6077 catch(LookaheadSuccess ls) { return true; }
6078 finally { jj_save(35, xla); }
6079 }
6080
6081 private boolean jj_2_37(int xla) {
6082 jj_la = xla; jj_lastpos = jj_scanpos = token;
6083 try { return !jj_3_37(); }
6084 catch(LookaheadSuccess ls) { return true; }
6085 finally { jj_save(36, xla); }
6086 }
6087
6088 private boolean jj_2_38(int xla) {
6089 jj_la = xla; jj_lastpos = jj_scanpos = token;
6090 try { return !jj_3_38(); }
6091 catch(LookaheadSuccess ls) { return true; }
6092 finally { jj_save(37, xla); }
6093 }
6094
6095 private boolean jj_2_39(int xla) {
6096 jj_la = xla; jj_lastpos = jj_scanpos = token;
6097 try { return !jj_3_39(); }
6098 catch(LookaheadSuccess ls) { return true; }
6099 finally { jj_save(38, xla); }
6100 }
6101
6102 private boolean jj_2_40(int xla) {
6103 jj_la = xla; jj_lastpos = jj_scanpos = token;
6104 try { return !jj_3_40(); }
6105 catch(LookaheadSuccess ls) { return true; }
6106 finally { jj_save(39, xla); }
6107 }
6108
6109 private boolean jj_2_41(int xla) {
6110 jj_la = xla; jj_lastpos = jj_scanpos = token;
6111 try { return !jj_3_41(); }
6112 catch(LookaheadSuccess ls) { return true; }
6113 finally { jj_save(40, xla); }
6114 }
6115
6116 private boolean jj_2_42(int xla) {
6117 jj_la = xla; jj_lastpos = jj_scanpos = token;
6118 try { return !jj_3_42(); }
6119 catch(LookaheadSuccess ls) { return true; }
6120 finally { jj_save(41, xla); }
6121 }
6122
6123 private boolean jj_2_43(int xla) {
6124 jj_la = xla; jj_lastpos = jj_scanpos = token;
6125 try { return !jj_3_43(); }
6126 catch(LookaheadSuccess ls) { return true; }
6127 finally { jj_save(42, xla); }
6128 }
6129
6130 private boolean jj_2_44(int xla) {
6131 jj_la = xla; jj_lastpos = jj_scanpos = token;
6132 try { return !jj_3_44(); }
6133 catch(LookaheadSuccess ls) { return true; }
6134 finally { jj_save(43, xla); }
6135 }
6136
6137 private boolean jj_2_45(int xla) {
6138 jj_la = xla; jj_lastpos = jj_scanpos = token;
6139 try { return !jj_3_45(); }
6140 catch(LookaheadSuccess ls) { return true; }
6141 finally { jj_save(44, xla); }
6142 }
6143
6144 private boolean jj_2_46(int xla) {
6145 jj_la = xla; jj_lastpos = jj_scanpos = token;
6146 try { return !jj_3_46(); }
6147 catch(LookaheadSuccess ls) { return true; }
6148 finally { jj_save(45, xla); }
6149 }
6150
6151 private boolean jj_2_47(int xla) {
6152 jj_la = xla; jj_lastpos = jj_scanpos = token;
6153 try { return !jj_3_47(); }
6154 catch(LookaheadSuccess ls) { return true; }
6155 finally { jj_save(46, xla); }
6156 }
6157
6158 private boolean jj_2_48(int xla) {
6159 jj_la = xla; jj_lastpos = jj_scanpos = token;
6160 try { return !jj_3_48(); }
6161 catch(LookaheadSuccess ls) { return true; }
6162 finally { jj_save(47, xla); }
6163 }
6164
6165 private boolean jj_2_49(int xla) {
6166 jj_la = xla; jj_lastpos = jj_scanpos = token;
6167 try { return !jj_3_49(); }
6168 catch(LookaheadSuccess ls) { return true; }
6169 finally { jj_save(48, xla); }
6170 }
6171
6172 private boolean jj_2_50(int xla) {
6173 jj_la = xla; jj_lastpos = jj_scanpos = token;
6174 try { return !jj_3_50(); }
6175 catch(LookaheadSuccess ls) { return true; }
6176 finally { jj_save(49, xla); }
6177 }
6178
6179 private boolean jj_2_51(int xla) {
6180 jj_la = xla; jj_lastpos = jj_scanpos = token;
6181 try { return !jj_3_51(); }
6182 catch(LookaheadSuccess ls) { return true; }
6183 finally { jj_save(50, xla); }
6184 }
6185
6186 private boolean jj_2_52(int xla) {
6187 jj_la = xla; jj_lastpos = jj_scanpos = token;
6188 try { return !jj_3_52(); }
6189 catch(LookaheadSuccess ls) { return true; }
6190 finally { jj_save(51, xla); }
6191 }
6192
6193 private boolean jj_2_53(int xla) {
6194 jj_la = xla; jj_lastpos = jj_scanpos = token;
6195 try { return !jj_3_53(); }
6196 catch(LookaheadSuccess ls) { return true; }
6197 finally { jj_save(52, xla); }
6198 }
6199
6200 private boolean jj_2_54(int xla) {
6201 jj_la = xla; jj_lastpos = jj_scanpos = token;
6202 try { return !jj_3_54(); }
6203 catch(LookaheadSuccess ls) { return true; }
6204 finally { jj_save(53, xla); }
6205 }
6206
6207 private boolean jj_2_55(int xla) {
6208 jj_la = xla; jj_lastpos = jj_scanpos = token;
6209 try { return !jj_3_55(); }
6210 catch(LookaheadSuccess ls) { return true; }
6211 finally { jj_save(54, xla); }
6212 }
6213
6214 private boolean jj_2_56(int xla) {
6215 jj_la = xla; jj_lastpos = jj_scanpos = token;
6216 try { return !jj_3_56(); }
6217 catch(LookaheadSuccess ls) { return true; }
6218 finally { jj_save(55, xla); }
6219 }
6220
6221 private boolean jj_2_57(int xla) {
6222 jj_la = xla; jj_lastpos = jj_scanpos = token;
6223 try { return !jj_3_57(); }
6224 catch(LookaheadSuccess ls) { return true; }
6225 finally { jj_save(56, xla); }
6226 }
6227
6228 private boolean jj_2_58(int xla) {
6229 jj_la = xla; jj_lastpos = jj_scanpos = token;
6230 try { return !jj_3_58(); }
6231 catch(LookaheadSuccess ls) { return true; }
6232 finally { jj_save(57, xla); }
6233 }
6234
6235 private boolean jj_2_59(int xla) {
6236 jj_la = xla; jj_lastpos = jj_scanpos = token;
6237 try { return !jj_3_59(); }
6238 catch(LookaheadSuccess ls) { return true; }
6239 finally { jj_save(58, xla); }
6240 }
6241
6242 private boolean jj_2_60(int xla) {
6243 jj_la = xla; jj_lastpos = jj_scanpos = token;
6244 try { return !jj_3_60(); }
6245 catch(LookaheadSuccess ls) { return true; }
6246 finally { jj_save(59, xla); }
6247 }
6248
6249 private boolean jj_2_61(int xla) {
6250 jj_la = xla; jj_lastpos = jj_scanpos = token;
6251 try { return !jj_3_61(); }
6252 catch(LookaheadSuccess ls) { return true; }
6253 finally { jj_save(60, xla); }
6254 }
6255
6256 private boolean jj_2_62(int xla) {
6257 jj_la = xla; jj_lastpos = jj_scanpos = token;
6258 try { return !jj_3_62(); }
6259 catch(LookaheadSuccess ls) { return true; }
6260 finally { jj_save(61, xla); }
6261 }
6262
6263 private boolean jj_3R_117() {
6264 Token xsp;
6265 xsp = jj_scanpos;
6266 if (jj_3R_164()) {
6267 jj_scanpos = xsp;
6268 if (jj_3R_165()) return true;
6269 }
6270 return false;
6271 }
6272
6273 private boolean jj_3R_164() {
6274 if (jj_3R_190()) return true;
6275 return false;
6276 }
6277
6278 private boolean jj_3R_314() {
6279 if (jj_scan_token(LBRACE)) return true;
6280 Token xsp;
6281 while (true) {
6282 xsp = jj_scanpos;
6283 if (jj_3R_344()) { jj_scanpos = xsp; break; }
6284 }
6285 if (jj_scan_token(RBRACE)) return true;
6286 return false;
6287 }
6288
6289 private boolean jj_3R_388() {
6290 if (jj_3R_137()) return true;
6291 return false;
6292 }
6293
6294 private boolean jj_3R_303() {
6295 if (jj_scan_token(AT)) return true;
6296 if (jj_scan_token(INTERFACE)) return true;
6297 if (jj_scan_token(IDENTIFIER)) return true;
6298 if (jj_3R_314()) return true;
6299 return false;
6300 }
6301
6302 private boolean jj_3_50() {
6303 if (jj_scan_token(COMMA)) return true;
6304 if (jj_3R_123()) return true;
6305 return false;
6306 }
6307
6308 private boolean jj_3R_389() {
6309 if (jj_scan_token(COMMA)) return true;
6310 if (jj_3R_94()) return true;
6311 Token xsp;
6312 xsp = jj_scanpos;
6313 if (jj_3R_408()) jj_scanpos = xsp;
6314 return false;
6315 }
6316
6317 private boolean jj_3R_104() {
6318 if (jj_3R_105()) return true;
6319 return false;
6320 }
6321
6322 private boolean jj_3R_363() {
6323 if (jj_3R_94()) return true;
6324 Token xsp;
6325 xsp = jj_scanpos;
6326 if (jj_3R_388()) jj_scanpos = xsp;
6327 while (true) {
6328 xsp = jj_scanpos;
6329 if (jj_3R_389()) { jj_scanpos = xsp; break; }
6330 }
6331 return false;
6332 }
6333
6334 private boolean jj_3R_304() {
6335 if (jj_scan_token(AT)) return true;
6336 if (jj_scan_token(INTERFACE)) return true;
6337 if (jj_scan_token(IDENTIFIER)) return true;
6338 if (jj_scan_token(LBRACE)) return true;
6339 Token xsp;
6340 while (true) {
6341 xsp = jj_scanpos;
6342 if (jj_3R_315()) { jj_scanpos = xsp; break; }
6343 }
6344 if (jj_scan_token(RBRACE)) return true;
6345 return false;
6346 }
6347
6348 private boolean jj_3R_352() {
6349 if (jj_scan_token(PROTECTED)) return true;
6350 return false;
6351 }
6352
6353 private boolean jj_3R_351() {
6354 if (jj_scan_token(PUBLIC)) return true;
6355 return false;
6356 }
6357
6358 private boolean jj_3R_321() {
6359 Token xsp;
6360 xsp = jj_scanpos;
6361 if (jj_scan_token(52)) {
6362 jj_scanpos = xsp;
6363 if (jj_scan_token(13)) {
6364 jj_scanpos = xsp;
6365 if (jj_scan_token(31)) {
6366 jj_scanpos = xsp;
6367 if (jj_3R_351()) {
6368 jj_scanpos = xsp;
6369 if (jj_3R_352()) {
6370 jj_scanpos = xsp;
6371 if (jj_scan_token(47)) {
6372 jj_scanpos = xsp;
6373 if (jj_scan_token(53)) return true;
6374 }
6375 }
6376 }
6377 }
6378 }
6379 }
6380 return false;
6381 }
6382
6383 private boolean jj_3_24() {
6384 if (jj_scan_token(DOT)) return true;
6385 if (jj_3R_105()) return true;
6386 return false;
6387 }
6388
6389 private boolean jj_3R_320() {
6390 if (jj_3R_141()) return true;
6391 return false;
6392 }
6393
6394 private boolean jj_3R_261() {
6395 if (jj_3R_123()) return true;
6396 return false;
6397 }
6398
6399 private boolean jj_3R_319() {
6400 if (jj_3R_141()) return true;
6401 return false;
6402 }
6403
6404 private boolean jj_3R_306() {
6405 Token xsp;
6406 xsp = jj_scanpos;
6407 if (jj_3R_319()) jj_scanpos = xsp;
6408 while (true) {
6409 xsp = jj_scanpos;
6410 if (jj_3R_320()) { jj_scanpos = xsp; break; }
6411 }
6412 while (true) {
6413 xsp = jj_scanpos;
6414 if (jj_3R_321()) { jj_scanpos = xsp; break; }
6415 }
6416 if (jj_3R_225()) return true;
6417 return false;
6418 }
6419
6420 private boolean jj_3R_192() {
6421 if (jj_scan_token(LBRACE)) return true;
6422 Token xsp;
6423 xsp = jj_scanpos;
6424 if (jj_3R_261()) jj_scanpos = xsp;
6425 while (true) {
6426 xsp = jj_scanpos;
6427 if (jj_3_50()) { jj_scanpos = xsp; break; }
6428 }
6429 xsp = jj_scanpos;
6430 if (jj_scan_token(84)) jj_scanpos = xsp;
6431 if (jj_scan_token(RBRACE)) return true;
6432 return false;
6433 }
6434
6435 private boolean jj_3R_240() {
6436 if (jj_scan_token(COMMA)) return true;
6437 if (jj_3R_239()) return true;
6438 return false;
6439 }
6440
6441 private boolean jj_3R_144() {
6442 if (jj_3R_105()) return true;
6443 return false;
6444 }
6445
6446 private boolean jj_3_23() {
6447 if (jj_scan_token(DOT)) return true;
6448 Token xsp;
6449 xsp = jj_scanpos;
6450 if (jj_scan_token(28)) {
6451 jj_scanpos = xsp;
6452 if (jj_3R_104()) return true;
6453 }
6454 return false;
6455 }
6456
6457 private boolean jj_3R_168() {
6458 if (jj_3R_191()) return true;
6459 return false;
6460 }
6461
6462 private boolean jj_3R_167() {
6463 if (jj_3R_192()) return true;
6464 return false;
6465 }
6466
6467 private boolean jj_3R_123() {
6468 Token xsp;
6469 xsp = jj_scanpos;
6470 if (jj_3R_166()) {
6471 jj_scanpos = xsp;
6472 if (jj_3R_167()) {
6473 jj_scanpos = xsp;
6474 if (jj_3R_168()) return true;
6475 }
6476 }
6477 return false;
6478 }
6479
6480 private boolean jj_3R_166() {
6481 if (jj_3R_141()) return true;
6482 return false;
6483 }
6484
6485 private boolean jj_3R_94() {
6486 Token xsp;
6487 xsp = jj_scanpos;
6488 if (jj_scan_token(28)) {
6489 jj_scanpos = xsp;
6490 if (jj_3R_144()) return true;
6491 }
6492 while (true) {
6493 xsp = jj_scanpos;
6494 if (jj_3_23()) { jj_scanpos = xsp; break; }
6495 }
6496 return false;
6497 }
6498
6499 private boolean jj_3R_239() {
6500 if (jj_scan_token(IDENTIFIER)) return true;
6501 if (jj_scan_token(ASSIGN)) return true;
6502 if (jj_3R_123()) return true;
6503 return false;
6504 }
6505
6506 private boolean jj_3R_221() {
6507 if (jj_3R_239()) return true;
6508 Token xsp;
6509 while (true) {
6510 xsp = jj_scanpos;
6511 if (jj_3R_240()) { jj_scanpos = xsp; break; }
6512 }
6513 return false;
6514 }
6515
6516 private boolean jj_3R_207() {
6517 if (jj_3R_221()) return true;
6518 return false;
6519 }
6520
6521 private boolean jj_3R_122() {
6522 if (jj_scan_token(IDENTIFIER)) return true;
6523 if (jj_scan_token(ASSIGN)) return true;
6524 return false;
6525 }
6526
6527 private boolean jj_3R_162() {
6528 if (jj_3R_111()) return true;
6529 return false;
6530 }
6531
6532 private boolean jj_3R_114() {
6533 Token xsp;
6534 xsp = jj_scanpos;
6535 if (jj_scan_token(63)) {
6536 jj_scanpos = xsp;
6537 if (jj_3R_162()) return true;
6538 }
6539 return false;
6540 }
6541
6542 private boolean jj_3R_194() {
6543 if (jj_scan_token(AT)) return true;
6544 if (jj_3R_94()) return true;
6545 if (jj_scan_token(LPAREN)) return true;
6546 if (jj_3R_123()) return true;
6547 if (jj_scan_token(RPAREN)) return true;
6548 return false;
6549 }
6550
6551 private boolean jj_3R_195() {
6552 if (jj_scan_token(AT)) return true;
6553 if (jj_3R_94()) return true;
6554 return false;
6555 }
6556
6557 private boolean jj_3_49() {
6558 if (jj_scan_token(AT)) return true;
6559 if (jj_3R_94()) return true;
6560 if (jj_scan_token(LPAREN)) return true;
6561 return false;
6562 }
6563
6564 private boolean jj_3R_193() {
6565 if (jj_scan_token(AT)) return true;
6566 if (jj_3R_94()) return true;
6567 if (jj_scan_token(LPAREN)) return true;
6568 Token xsp;
6569 xsp = jj_scanpos;
6570 if (jj_3R_207()) jj_scanpos = xsp;
6571 if (jj_scan_token(RPAREN)) return true;
6572 return false;
6573 }
6574
6575 private boolean jj_3_48() {
6576 if (jj_scan_token(AT)) return true;
6577 if (jj_3R_94()) return true;
6578 if (jj_scan_token(LPAREN)) return true;
6579 Token xsp;
6580 xsp = jj_scanpos;
6581 if (jj_3R_122()) {
6582 jj_scanpos = xsp;
6583 if (jj_scan_token(78)) return true;
6584 }
6585 return false;
6586 }
6587
6588 private boolean jj_3R_173() {
6589 if (jj_3R_195()) return true;
6590 return false;
6591 }
6592
6593 private boolean jj_3R_110() {
6594 Token xsp;
6595 xsp = jj_scanpos;
6596 if (jj_scan_token(15)) {
6597 jj_scanpos = xsp;
6598 if (jj_scan_token(20)) {
6599 jj_scanpos = xsp;
6600 if (jj_scan_token(17)) {
6601 jj_scanpos = xsp;
6602 if (jj_scan_token(51)) {
6603 jj_scanpos = xsp;
6604 if (jj_scan_token(40)) {
6605 jj_scanpos = xsp;
6606 if (jj_scan_token(42)) {
6607 jj_scanpos = xsp;
6608 if (jj_scan_token(33)) {
6609 jj_scanpos = xsp;
6610 if (jj_scan_token(26)) return true;
6611 }
6612 }
6613 }
6614 }
6615 }
6616 }
6617 }
6618 return false;
6619 }
6620
6621 private boolean jj_3R_172() {
6622 if (jj_3R_194()) return true;
6623 return false;
6624 }
6625
6626 private boolean jj_3R_141() {
6627 Token xsp;
6628 xsp = jj_scanpos;
6629 if (jj_3R_171()) {
6630 jj_scanpos = xsp;
6631 if (jj_3R_172()) {
6632 jj_scanpos = xsp;
6633 if (jj_3R_173()) return true;
6634 }
6635 }
6636 return false;
6637 }
6638
6639 private boolean jj_3R_171() {
6640 if (jj_3R_193()) return true;
6641 return false;
6642 }
6643
6644 private boolean jj_3R_105() {
6645 Token xsp;
6646 xsp = jj_scanpos;
6647 if (jj_scan_token(74)) {
6648 jj_scanpos = xsp;
6649 if (jj_scan_token(14)) return true;
6650 }
6651 return false;
6652 }
6653
6654 private boolean jj_3R_439() {
6655 if (jj_scan_token(FINALLY)) return true;
6656 if (jj_3R_142()) return true;
6657 return false;
6658 }
6659
6660 private boolean jj_3R_438() {
6661 if (jj_scan_token(CATCH)) return true;
6662 if (jj_scan_token(LPAREN)) return true;
6663 if (jj_3R_386()) return true;
6664 if (jj_scan_token(RPAREN)) return true;
6665 if (jj_3R_142()) return true;
6666 return false;
6667 }
6668
6669 private boolean jj_3R_274() {
6670 if (jj_scan_token(TRY)) return true;
6671 if (jj_3R_142()) return true;
6672 Token xsp;
6673 while (true) {
6674 xsp = jj_scanpos;
6675 if (jj_3R_438()) { jj_scanpos = xsp; break; }
6676 }
6677 xsp = jj_scanpos;
6678 if (jj_3R_439()) jj_scanpos = xsp;
6679 return false;
6680 }
6681
6682 private boolean jj_3R_93() {
6683 if (jj_3R_143()) return true;
6684 return false;
6685 }
6686
6687 private boolean jj_3R_158() {
6688 if (jj_3R_110()) return true;
6689 return false;
6690 }
6691
6692 private boolean jj_3R_111() {
6693 Token xsp;
6694 xsp = jj_scanpos;
6695 if (jj_3_22()) {
6696 jj_scanpos = xsp;
6697 if (jj_3R_158()) return true;
6698 }
6699 return false;
6700 }
6701
6702 private boolean jj_3_22() {
6703 if (jj_3R_103()) return true;
6704 return false;
6705 }
6706
6707 private boolean jj_3R_273() {
6708 if (jj_scan_token(SYNCHRONIZED)) return true;
6709 if (jj_scan_token(LPAREN)) return true;
6710 if (jj_3R_117()) return true;
6711 if (jj_scan_token(RPAREN)) return true;
6712 if (jj_3R_142()) return true;
6713 return false;
6714 }
6715
6716 private boolean jj_3R_85() {
6717 Token xsp;
6718 xsp = jj_scanpos;
6719 if (jj_scan_token(52)) jj_scanpos = xsp;
6720 if (jj_3R_142()) return true;
6721 return false;
6722 }
6723
6724 private boolean jj_3R_272() {
6725 if (jj_scan_token(THROW)) return true;
6726 if (jj_3R_117()) return true;
6727 if (jj_scan_token(SEMICOLON)) return true;
6728 return false;
6729 }
6730
6731 private boolean jj_3R_437() {
6732 if (jj_3R_117()) return true;
6733 return false;
6734 }
6735
6736 private boolean jj_3_20() {
6737 if (jj_3R_102()) return true;
6738 if (jj_scan_token(DOT)) return true;
6739 return false;
6740 }
6741
6742 private boolean jj_3R_436() {
6743 if (jj_3R_105()) return true;
6744 return false;
6745 }
6746
6747 private boolean jj_3_21() {
6748 if (jj_scan_token(THIS)) return true;
6749 if (jj_scan_token(LPAREN)) return true;
6750 return false;
6751 }
6752
6753 private boolean jj_3R_121() {
6754 if (jj_3R_105()) return true;
6755 return false;
6756 }
6757
6758 private boolean jj_3R_409() {
6759 if (jj_3R_102()) return true;
6760 if (jj_scan_token(DOT)) return true;
6761 return false;
6762 }
6763
6764 private boolean jj_3R_271() {
6765 if (jj_scan_token(RETURN)) return true;
6766 Token xsp;
6767 xsp = jj_scanpos;
6768 if (jj_3R_437()) jj_scanpos = xsp;
6769 if (jj_scan_token(SEMICOLON)) return true;
6770 return false;
6771 }
6772
6773 private boolean jj_3R_391() {
6774 Token xsp;
6775 xsp = jj_scanpos;
6776 if (jj_3R_409()) jj_scanpos = xsp;
6777 if (jj_scan_token(SUPER)) return true;
6778 if (jj_3R_189()) return true;
6779 if (jj_scan_token(SEMICOLON)) return true;
6780 return false;
6781 }
6782
6783 private boolean jj_3R_455() {
6784 if (jj_scan_token(COMMA)) return true;
6785 if (jj_3R_263()) return true;
6786 return false;
6787 }
6788
6789 private boolean jj_3R_446() {
6790 if (jj_3R_451()) return true;
6791 return false;
6792 }
6793
6794 private boolean jj_3R_435() {
6795 if (jj_3R_105()) return true;
6796 return false;
6797 }
6798
6799 private boolean jj_3R_390() {
6800 if (jj_scan_token(THIS)) return true;
6801 if (jj_3R_189()) return true;
6802 if (jj_scan_token(SEMICOLON)) return true;
6803 return false;
6804 }
6805
6806 private boolean jj_3R_364() {
6807 Token xsp;
6808 xsp = jj_scanpos;
6809 if (jj_3R_390()) {
6810 jj_scanpos = xsp;
6811 if (jj_3R_391()) return true;
6812 }
6813 return false;
6814 }
6815
6816 private boolean jj_3R_270() {
6817 if (jj_scan_token(CONTINUE)) return true;
6818 Token xsp;
6819 xsp = jj_scanpos;
6820 if (jj_3R_436()) jj_scanpos = xsp;
6821 if (jj_scan_token(SEMICOLON)) return true;
6822 return false;
6823 }
6824
6825 private boolean jj_3R_92() {
6826 Token xsp;
6827 xsp = jj_scanpos;
6828 if (jj_scan_token(49)) {
6829 jj_scanpos = xsp;
6830 if (jj_scan_token(48)) {
6831 jj_scanpos = xsp;
6832 if (jj_scan_token(47)) return true;
6833 }
6834 }
6835 return false;
6836 }
6837
6838 private boolean jj_3R_269() {
6839 if (jj_scan_token(BREAK)) return true;
6840 Token xsp;
6841 xsp = jj_scanpos;
6842 if (jj_3R_435()) jj_scanpos = xsp;
6843 if (jj_scan_token(SEMICOLON)) return true;
6844 return false;
6845 }
6846
6847 private boolean jj_3R_451() {
6848 if (jj_3R_454()) return true;
6849 return false;
6850 }
6851
6852 private boolean jj_3R_147() {
6853 if (jj_3R_141()) return true;
6854 return false;
6855 }
6856
6857 private boolean jj_3R_148() {
6858 if (jj_3R_143()) return true;
6859 return false;
6860 }
6861
6862 private boolean jj_3R_146() {
6863 Token xsp;
6864 xsp = jj_scanpos;
6865 if (jj_scan_token(49)) {
6866 jj_scanpos = xsp;
6867 if (jj_scan_token(48)) {
6868 jj_scanpos = xsp;
6869 if (jj_scan_token(47)) {
6870 jj_scanpos = xsp;
6871 if (jj_scan_token(52)) {
6872 jj_scanpos = xsp;
6873 if (jj_scan_token(13)) {
6874 jj_scanpos = xsp;
6875 if (jj_scan_token(31)) {
6876 jj_scanpos = xsp;
6877 if (jj_scan_token(43)) {
6878 jj_scanpos = xsp;
6879 if (jj_scan_token(56)) {
6880 jj_scanpos = xsp;
6881 if (jj_scan_token(53)) return true;
6882 }
6883 }
6884 }
6885 }
6886 }
6887 }
6888 }
6889 }
6890 return false;
6891 }
6892
6893 private boolean jj_3R_145() {
6894 if (jj_3R_141()) return true;
6895 return false;
6896 }
6897
6898 private boolean jj_3_47() {
6899 Token xsp;
6900 xsp = jj_scanpos;
6901 if (jj_scan_token(31)) jj_scanpos = xsp;
6902 if (jj_3R_111()) return true;
6903 xsp = jj_scanpos;
6904 if (jj_scan_token(28)) {
6905 jj_scanpos = xsp;
6906 if (jj_3R_121()) return true;
6907 }
6908 return false;
6909 }
6910
6911 private boolean jj_3R_445() {
6912 if (jj_3R_117()) return true;
6913 return false;
6914 }
6915
6916 private boolean jj_3R_454() {
6917 if (jj_3R_263()) return true;
6918 Token xsp;
6919 while (true) {
6920 xsp = jj_scanpos;
6921 if (jj_3R_455()) { jj_scanpos = xsp; break; }
6922 }
6923 return false;
6924 }
6925
6926 private boolean jj_3R_95() {
6927 Token xsp;
6928 while (true) {
6929 xsp = jj_scanpos;
6930 if (jj_3R_145()) { jj_scanpos = xsp; break; }
6931 }
6932 while (true) {
6933 xsp = jj_scanpos;
6934 if (jj_3R_146()) { jj_scanpos = xsp; break; }
6935 }
6936 while (true) {
6937 xsp = jj_scanpos;
6938 if (jj_3R_147()) { jj_scanpos = xsp; break; }
6939 }
6940 xsp = jj_scanpos;
6941 if (jj_3R_148()) jj_scanpos = xsp;
6942 if (jj_3R_114()) return true;
6943 if (jj_3R_105()) return true;
6944 if (jj_scan_token(LPAREN)) return true;
6945 return false;
6946 }
6947
6948 private boolean jj_3R_91() {
6949 if (jj_3R_141()) return true;
6950 return false;
6951 }
6952
6953 private boolean jj_3_11() {
6954 Token xsp;
6955 while (true) {
6956 xsp = jj_scanpos;
6957 if (jj_3R_91()) { jj_scanpos = xsp; break; }
6958 }
6959 xsp = jj_scanpos;
6960 if (jj_3R_92()) jj_scanpos = xsp;
6961 xsp = jj_scanpos;
6962 if (jj_3R_93()) jj_scanpos = xsp;
6963 if (jj_3R_94()) return true;
6964 if (jj_scan_token(LPAREN)) return true;
6965 return false;
6966 }
6967
6968 private boolean jj_3_12() {
6969 if (jj_3R_95()) return true;
6970 return false;
6971 }
6972
6973 private boolean jj_3R_432() {
6974 if (jj_scan_token(ELSE)) return true;
6975 if (jj_3R_223()) return true;
6976 return false;
6977 }
6978
6979 private boolean jj_3R_453() {
6980 if (jj_3R_454()) return true;
6981 return false;
6982 }
6983
6984 private boolean jj_3R_90() {
6985 Token xsp;
6986 xsp = jj_scanpos;
6987 if (jj_scan_token(52)) {
6988 jj_scanpos = xsp;
6989 if (jj_scan_token(13)) {
6990 jj_scanpos = xsp;
6991 if (jj_scan_token(31)) {
6992 jj_scanpos = xsp;
6993 if (jj_scan_token(49)) {
6994 jj_scanpos = xsp;
6995 if (jj_scan_token(48)) {
6996 jj_scanpos = xsp;
6997 if (jj_scan_token(47)) {
6998 jj_scanpos = xsp;
6999 if (jj_scan_token(53)) return true;
7000 }
7001 }
7002 }
7003 }
7004 }
7005 }
7006 return false;
7007 }
7008
7009 private boolean jj_3_46() {
7010 if (jj_3R_84()) return true;
7011 if (jj_3R_111()) return true;
7012 if (jj_scan_token(IDENTIFIER)) return true;
7013 if (jj_scan_token(COLON)) return true;
7014 return false;
7015 }
7016
7017 private boolean jj_3R_310() {
7018 if (jj_3R_141()) return true;
7019 return false;
7020 }
7021
7022 private boolean jj_3R_452() {
7023 if (jj_3R_222()) return true;
7024 return false;
7025 }
7026
7027 private boolean jj_3R_450() {
7028 Token xsp;
7029 xsp = jj_scanpos;
7030 if (jj_3R_452()) {
7031 jj_scanpos = xsp;
7032 if (jj_3R_453()) return true;
7033 }
7034 return false;
7035 }
7036
7037 private boolean jj_3R_300() {
7038 Token xsp;
7039 while (true) {
7040 xsp = jj_scanpos;
7041 if (jj_3R_310()) { jj_scanpos = xsp; break; }
7042 }
7043 if (jj_3R_311()) return true;
7044 return false;
7045 }
7046
7047 private boolean jj_3R_299() {
7048 if (jj_3R_309()) return true;
7049 return false;
7050 }
7051
7052 private boolean jj_3R_298() {
7053 if (jj_3R_308()) return true;
7054 return false;
7055 }
7056
7057 private boolean jj_3_10() {
7058 if (jj_3R_84()) return true;
7059 if (jj_scan_token(ENUM)) return true;
7060 return false;
7061 }
7062
7063 private boolean jj_3R_444() {
7064 if (jj_3R_450()) return true;
7065 return false;
7066 }
7067
7068 private boolean jj_3R_433() {
7069 if (jj_3R_84()) return true;
7070 if (jj_3R_111()) return true;
7071 if (jj_scan_token(IDENTIFIER)) return true;
7072 if (jj_scan_token(COLON)) return true;
7073 if (jj_3R_117()) return true;
7074 return false;
7075 }
7076
7077 private boolean jj_3R_87() {
7078 Token xsp;
7079 xsp = jj_scanpos;
7080 if (jj_scan_token(52)) {
7081 jj_scanpos = xsp;
7082 if (jj_scan_token(13)) {
7083 jj_scanpos = xsp;
7084 if (jj_scan_token(31)) {
7085 jj_scanpos = xsp;
7086 if (jj_scan_token(49)) {
7087 jj_scanpos = xsp;
7088 if (jj_scan_token(48)) {
7089 jj_scanpos = xsp;
7090 if (jj_scan_token(47)) {
7091 jj_scanpos = xsp;
7092 if (jj_scan_token(53)) return true;
7093 }
7094 }
7095 }
7096 }
7097 }
7098 }
7099 return false;
7100 }
7101
7102 private boolean jj_3R_434() {
7103 Token xsp;
7104 xsp = jj_scanpos;
7105 if (jj_3R_444()) jj_scanpos = xsp;
7106 if (jj_scan_token(SEMICOLON)) return true;
7107 xsp = jj_scanpos;
7108 if (jj_3R_445()) jj_scanpos = xsp;
7109 if (jj_scan_token(SEMICOLON)) return true;
7110 xsp = jj_scanpos;
7111 if (jj_3R_446()) jj_scanpos = xsp;
7112 return false;
7113 }
7114
7115 private boolean jj_3_9() {
7116 if (jj_3R_84()) return true;
7117 if (jj_scan_token(INTERFACE)) return true;
7118 return false;
7119 }
7120
7121 private boolean jj_3R_268() {
7122 if (jj_scan_token(FOR)) return true;
7123 if (jj_scan_token(LPAREN)) return true;
7124 Token xsp;
7125 xsp = jj_scanpos;
7126 if (jj_3R_433()) {
7127 jj_scanpos = xsp;
7128 if (jj_3R_434()) return true;
7129 }
7130 if (jj_scan_token(RPAREN)) return true;
7131 if (jj_3R_223()) return true;
7132 return false;
7133 }
7134
7135 private boolean jj_3R_297() {
7136 if (jj_3R_84()) return true;
7137 if (jj_3R_307()) return true;
7138 return false;
7139 }
7140
7141 private boolean jj_3R_89() {
7142 if (jj_3R_141()) return true;
7143 return false;
7144 }
7145
7146 private boolean jj_3_8() {
7147 Token xsp;
7148 while (true) {
7149 xsp = jj_scanpos;
7150 if (jj_3R_89()) { jj_scanpos = xsp; break; }
7151 }
7152 while (true) {
7153 xsp = jj_scanpos;
7154 if (jj_3R_90()) { jj_scanpos = xsp; break; }
7155 }
7156 if (jj_scan_token(CLASS)) return true;
7157 return false;
7158 }
7159
7160 private boolean jj_3R_350() {
7161 if (jj_scan_token(IMPLEMENTS)) return true;
7162 if (jj_3R_363()) return true;
7163 return false;
7164 }
7165
7166 private boolean jj_3R_296() {
7167 if (jj_3R_84()) return true;
7168 if (jj_3R_306()) return true;
7169 return false;
7170 }
7171
7172 private boolean jj_3R_88() {
7173 if (jj_3R_141()) return true;
7174 return false;
7175 }
7176
7177 private boolean jj_3R_267() {
7178 if (jj_scan_token(DO)) return true;
7179 if (jj_3R_223()) return true;
7180 if (jj_scan_token(WHILE)) return true;
7181 if (jj_scan_token(LPAREN)) return true;
7182 if (jj_3R_117()) return true;
7183 if (jj_scan_token(RPAREN)) return true;
7184 if (jj_scan_token(SEMICOLON)) return true;
7185 return false;
7186 }
7187
7188 private boolean jj_3_7() {
7189 Token xsp;
7190 while (true) {
7191 xsp = jj_scanpos;
7192 if (jj_3R_88()) { jj_scanpos = xsp; break; }
7193 }
7194 if (jj_scan_token(AT)) return true;
7195 if (jj_scan_token(INTERFACE)) return true;
7196 return false;
7197 }
7198
7199 private boolean jj_3R_331() {
7200 if (jj_3R_196()) return true;
7201 return false;
7202 }
7203
7204 private boolean jj_3R_86() {
7205 if (jj_3R_141()) return true;
7206 return false;
7207 }
7208
7209 private boolean jj_3_6() {
7210 Token xsp;
7211 while (true) {
7212 xsp = jj_scanpos;
7213 if (jj_3R_86()) { jj_scanpos = xsp; break; }
7214 }
7215 while (true) {
7216 xsp = jj_scanpos;
7217 if (jj_3R_87()) { jj_scanpos = xsp; break; }
7218 }
7219 if (jj_scan_token(AT)) return true;
7220 if (jj_scan_token(INTERFACE)) return true;
7221 return false;
7222 }
7223
7224 private boolean jj_3R_295() {
7225 if (jj_3R_305()) return true;
7226 return false;
7227 }
7228
7229 private boolean jj_3R_266() {
7230 if (jj_scan_token(WHILE)) return true;
7231 if (jj_scan_token(LPAREN)) return true;
7232 if (jj_3R_117()) return true;
7233 if (jj_scan_token(RPAREN)) return true;
7234 if (jj_3R_223()) return true;
7235 return false;
7236 }
7237
7238 private boolean jj_3R_294() {
7239 if (jj_3R_304()) return true;
7240 return false;
7241 }
7242
7243 private boolean jj_3R_265() {
7244 if (jj_scan_token(IF)) return true;
7245 if (jj_scan_token(LPAREN)) return true;
7246 if (jj_3R_117()) return true;
7247 if (jj_scan_token(RPAREN)) return true;
7248 if (jj_3R_223()) return true;
7249 Token xsp;
7250 xsp = jj_scanpos;
7251 if (jj_3R_432()) jj_scanpos = xsp;
7252 return false;
7253 }
7254
7255 private boolean jj_3R_293() {
7256 if (jj_3R_84()) return true;
7257 if (jj_3R_303()) return true;
7258 return false;
7259 }
7260
7261 private boolean jj_3_5() {
7262 if (jj_3R_85()) return true;
7263 return false;
7264 }
7265
7266 private boolean jj_3R_290() {
7267 Token xsp;
7268 xsp = jj_scanpos;
7269 if (jj_scan_token(83)) {
7270 jj_scanpos = xsp;
7271 if (jj_3_5()) {
7272 jj_scanpos = xsp;
7273 if (jj_3R_293()) {
7274 jj_scanpos = xsp;
7275 if (jj_3R_294()) {
7276 jj_scanpos = xsp;
7277 if (jj_3R_295()) {
7278 jj_scanpos = xsp;
7279 if (jj_3R_296()) {
7280 jj_scanpos = xsp;
7281 if (jj_3R_297()) {
7282 jj_scanpos = xsp;
7283 if (jj_3R_298()) {
7284 jj_scanpos = xsp;
7285 if (jj_3R_299()) {
7286 jj_scanpos = xsp;
7287 if (jj_3R_300()) return true;
7288 }
7289 }
7290 }
7291 }
7292 }
7293 }
7294 }
7295 }
7296 }
7297 return false;
7298 }
7299
7300 private boolean jj_3R_443() {
7301 if (jj_3R_196()) return true;
7302 return false;
7303 }
7304
7305 private boolean jj_3R_399() {
7306 if (jj_3R_137()) return true;
7307 return false;
7308 }
7309
7310 private boolean jj_3R_101() {
7311 if (jj_3R_102()) return true;
7312 if (jj_scan_token(DOT)) return true;
7313 return false;
7314 }
7315
7316 private boolean jj_3R_449() {
7317 if (jj_scan_token(_DEFAULT)) return true;
7318 if (jj_scan_token(COLON)) return true;
7319 return false;
7320 }
7321
7322 private boolean jj_3_19() {
7323 Token xsp;
7324 xsp = jj_scanpos;
7325 if (jj_3R_101()) jj_scanpos = xsp;
7326 if (jj_scan_token(SUPER)) return true;
7327 if (jj_scan_token(LPAREN)) return true;
7328 return false;
7329 }
7330
7331 private boolean jj_3_18() {
7332 if (jj_scan_token(THIS)) return true;
7333 if (jj_scan_token(LPAREN)) return true;
7334 return false;
7335 }
7336
7337 private boolean jj_3R_448() {
7338 if (jj_scan_token(CASE)) return true;
7339 if (jj_3R_117()) return true;
7340 if (jj_scan_token(COLON)) return true;
7341 return false;
7342 }
7343
7344 private boolean jj_3R_442() {
7345 Token xsp;
7346 xsp = jj_scanpos;
7347 if (jj_3R_448()) {
7348 jj_scanpos = xsp;
7349 if (jj_3R_449()) return true;
7350 }
7351 return false;
7352 }
7353
7354 private boolean jj_3R_382() {
7355 if (jj_scan_token(DOT)) return true;
7356 if (jj_3R_94()) return true;
7357 Token xsp;
7358 xsp = jj_scanpos;
7359 if (jj_3R_399()) jj_scanpos = xsp;
7360 return false;
7361 }
7362
7363 private boolean jj_3R_330() {
7364 if (jj_3R_364()) return true;
7365 return false;
7366 }
7367
7368 private boolean jj_3R_329() {
7369 if (jj_3R_364()) return true;
7370 return false;
7371 }
7372
7373 private boolean jj_3R_431() {
7374 if (jj_3R_442()) return true;
7375 Token xsp;
7376 while (true) {
7377 xsp = jj_scanpos;
7378 if (jj_3R_443()) { jj_scanpos = xsp; break; }
7379 }
7380 return false;
7381 }
7382
7383 private boolean jj_3R_120() {
7384 if (jj_scan_token(LBRACKET)) return true;
7385 if (jj_scan_token(RBRACKET)) return true;
7386 return false;
7387 }
7388
7389 private boolean jj_3R_264() {
7390 if (jj_scan_token(SWITCH)) return true;
7391 if (jj_scan_token(LPAREN)) return true;
7392 if (jj_3R_117()) return true;
7393 if (jj_scan_token(RPAREN)) return true;
7394 if (jj_scan_token(LBRACE)) return true;
7395 Token xsp;
7396 while (true) {
7397 xsp = jj_scanpos;
7398 if (jj_3R_431()) { jj_scanpos = xsp; break; }
7399 }
7400 if (jj_scan_token(RBRACE)) return true;
7401 return false;
7402 }
7403
7404 private boolean jj_3R_415() {
7405 if (jj_scan_token(COMMA)) return true;
7406 if (jj_3R_341()) return true;
7407 return false;
7408 }
7409
7410 private boolean jj_3R_328() {
7411 if (jj_scan_token(THROWS)) return true;
7412 if (jj_3R_363()) return true;
7413 return false;
7414 }
7415
7416 private boolean jj_3R_447() {
7417 if (jj_3R_106()) return true;
7418 if (jj_3R_117()) return true;
7419 return false;
7420 }
7421
7422 private boolean jj_3R_441() {
7423 Token xsp;
7424 xsp = jj_scanpos;
7425 if (jj_scan_token(100)) {
7426 jj_scanpos = xsp;
7427 if (jj_scan_token(101)) {
7428 jj_scanpos = xsp;
7429 if (jj_3R_447()) return true;
7430 }
7431 }
7432 return false;
7433 }
7434
7435 private boolean jj_3R_326() {
7436 if (jj_3R_143()) return true;
7437 return false;
7438 }
7439
7440 private boolean jj_3R_285() {
7441 if (jj_3R_102()) return true;
7442 Token xsp;
7443 xsp = jj_scanpos;
7444 if (jj_3R_441()) jj_scanpos = xsp;
7445 return false;
7446 }
7447
7448 private boolean jj_3R_347() {
7449 if (jj_scan_token(PROTECTED)) return true;
7450 return false;
7451 }
7452
7453 private boolean jj_3R_284() {
7454 if (jj_3R_215()) return true;
7455 return false;
7456 }
7457
7458 private boolean jj_3R_346() {
7459 if (jj_scan_token(PUBLIC)) return true;
7460 return false;
7461 }
7462
7463 private boolean jj_3R_318() {
7464 Token xsp;
7465 xsp = jj_scanpos;
7466 if (jj_scan_token(52)) {
7467 jj_scanpos = xsp;
7468 if (jj_scan_token(13)) {
7469 jj_scanpos = xsp;
7470 if (jj_scan_token(31)) {
7471 jj_scanpos = xsp;
7472 if (jj_3R_346()) {
7473 jj_scanpos = xsp;
7474 if (jj_3R_347()) {
7475 jj_scanpos = xsp;
7476 if (jj_scan_token(47)) {
7477 jj_scanpos = xsp;
7478 if (jj_scan_token(53)) return true;
7479 }
7480 }
7481 }
7482 }
7483 }
7484 }
7485 return false;
7486 }
7487
7488 private boolean jj_3R_263() {
7489 Token xsp;
7490 xsp = jj_scanpos;
7491 if (jj_3R_283()) {
7492 jj_scanpos = xsp;
7493 if (jj_3R_284()) {
7494 jj_scanpos = xsp;
7495 if (jj_3R_285()) return true;
7496 }
7497 }
7498 return false;
7499 }
7500
7501 private boolean jj_3R_283() {
7502 if (jj_3R_214()) return true;
7503 return false;
7504 }
7505
7506 private boolean jj_3R_361() {
7507 if (jj_scan_token(PRIVATE)) return true;
7508 return false;
7509 }
7510
7511 private boolean jj_3R_317() {
7512 if (jj_3R_141()) return true;
7513 return false;
7514 }
7515
7516 private boolean jj_3R_360() {
7517 if (jj_scan_token(PROTECTED)) return true;
7518 return false;
7519 }
7520
7521 private boolean jj_3R_316() {
7522 if (jj_3R_141()) return true;
7523 return false;
7524 }
7525
7526 private boolean jj_3R_305() {
7527 Token xsp;
7528 xsp = jj_scanpos;
7529 if (jj_3R_316()) jj_scanpos = xsp;
7530 while (true) {
7531 xsp = jj_scanpos;
7532 if (jj_3R_317()) { jj_scanpos = xsp; break; }
7533 }
7534 while (true) {
7535 xsp = jj_scanpos;
7536 if (jj_3R_318()) { jj_scanpos = xsp; break; }
7537 }
7538 if (jj_3R_224()) return true;
7539 return false;
7540 }
7541
7542 private boolean jj_3R_359() {
7543 if (jj_scan_token(PUBLIC)) return true;
7544 return false;
7545 }
7546
7547 private boolean jj_3R_325() {
7548 Token xsp;
7549 xsp = jj_scanpos;
7550 if (jj_3R_359()) {
7551 jj_scanpos = xsp;
7552 if (jj_3R_360()) {
7553 jj_scanpos = xsp;
7554 if (jj_3R_361()) return true;
7555 }
7556 }
7557 return false;
7558 }
7559
7560 private boolean jj_3R_222() {
7561 if (jj_3R_84()) return true;
7562 if (jj_3R_111()) return true;
7563 if (jj_3R_341()) return true;
7564 Token xsp;
7565 while (true) {
7566 xsp = jj_scanpos;
7567 if (jj_3R_415()) { jj_scanpos = xsp; break; }
7568 }
7569 return false;
7570 }
7571
7572 private boolean jj_3R_324() {
7573 if (jj_3R_141()) return true;
7574 return false;
7575 }
7576
7577 private boolean jj_3R_308() {
7578 Token xsp;
7579 while (true) {
7580 xsp = jj_scanpos;
7581 if (jj_3R_324()) { jj_scanpos = xsp; break; }
7582 }
7583 xsp = jj_scanpos;
7584 if (jj_3R_325()) jj_scanpos = xsp;
7585 xsp = jj_scanpos;
7586 if (jj_3R_326()) jj_scanpos = xsp;
7587 if (jj_3R_105()) return true;
7588 if (jj_3R_327()) return true;
7589 xsp = jj_scanpos;
7590 if (jj_3R_328()) jj_scanpos = xsp;
7591 if (jj_scan_token(LBRACE)) return true;
7592 xsp = jj_scanpos;
7593 if (jj_3R_329()) jj_scanpos = xsp;
7594 xsp = jj_scanpos;
7595 if (jj_3R_330()) jj_scanpos = xsp;
7596 while (true) {
7597 xsp = jj_scanpos;
7598 if (jj_3R_331()) { jj_scanpos = xsp; break; }
7599 }
7600 if (jj_scan_token(RBRACE)) return true;
7601 return false;
7602 }
7603
7604 private boolean jj_3R_381() {
7605 if (jj_3R_137()) return true;
7606 return false;
7607 }
7608
7609 private boolean jj_3_45() {
7610 if (jj_3R_84()) return true;
7611 if (jj_3R_111()) return true;
7612 Token xsp;
7613 xsp = jj_scanpos;
7614 if (jj_scan_token(28)) {
7615 jj_scanpos = xsp;
7616 if (jj_scan_token(74)) return true;
7617 }
7618 xsp = jj_scanpos;
7619 if (jj_scan_token(83)) {
7620 jj_scanpos = xsp;
7621 if (jj_scan_token(87)) {
7622 jj_scanpos = xsp;
7623 if (jj_scan_token(84)) {
7624 jj_scanpos = xsp;
7625 if (jj_3R_120()) return true;
7626 }
7627 }
7628 }
7629 return false;
7630 }
7631
7632 private boolean jj_3R_287() {
7633 if (jj_3R_290()) return true;
7634 return false;
7635 }
7636
7637 private boolean jj_3R_211() {
7638 if (jj_3R_225()) return true;
7639 return false;
7640 }
7641
7642 private boolean jj_3R_210() {
7643 if (jj_3R_224()) return true;
7644 return false;
7645 }
7646
7647 private boolean jj_3R_209() {
7648 if (jj_3R_223()) return true;
7649 return false;
7650 }
7651
7652 private boolean jj_3R_276() {
7653 if (jj_scan_token(LBRACE)) return true;
7654 Token xsp;
7655 while (true) {
7656 xsp = jj_scanpos;
7657 if (jj_3R_287()) { jj_scanpos = xsp; break; }
7658 }
7659 if (jj_scan_token(RBRACE)) return true;
7660 return false;
7661 }
7662
7663 private boolean jj_3R_196() {
7664 Token xsp;
7665 xsp = jj_scanpos;
7666 if (jj_3R_208()) {
7667 jj_scanpos = xsp;
7668 if (jj_3R_209()) {
7669 jj_scanpos = xsp;
7670 if (jj_3R_210()) {
7671 jj_scanpos = xsp;
7672 if (jj_3R_211()) return true;
7673 }
7674 }
7675 }
7676 return false;
7677 }
7678
7679 private boolean jj_3R_208() {
7680 if (jj_3R_222()) return true;
7681 if (jj_scan_token(SEMICOLON)) return true;
7682 return false;
7683 }
7684
7685 private boolean jj_3R_174() {
7686 if (jj_3R_196()) return true;
7687 return false;
7688 }
7689
7690 private boolean jj_3R_349() {
7691 if (jj_scan_token(EXTENDS)) return true;
7692 if (jj_3R_94()) return true;
7693 Token xsp;
7694 xsp = jj_scanpos;
7695 if (jj_3R_381()) jj_scanpos = xsp;
7696 while (true) {
7697 xsp = jj_scanpos;
7698 if (jj_3R_382()) { jj_scanpos = xsp; break; }
7699 }
7700 return false;
7701 }
7702
7703 private boolean jj_3R_386() {
7704 if (jj_3R_84()) return true;
7705 if (jj_3R_111()) return true;
7706 Token xsp;
7707 xsp = jj_scanpos;
7708 if (jj_scan_token(122)) jj_scanpos = xsp;
7709 if (jj_3R_377()) return true;
7710 return false;
7711 }
7712
7713 private boolean jj_3R_142() {
7714 if (jj_scan_token(LBRACE)) return true;
7715 Token xsp;
7716 while (true) {
7717 xsp = jj_scanpos;
7718 if (jj_3R_174()) { jj_scanpos = xsp; break; }
7719 }
7720 if (jj_scan_token(RBRACE)) return true;
7721 return false;
7722 }
7723
7724 private boolean jj_3R_430() {
7725 if (jj_scan_token(COLON)) return true;
7726 if (jj_3R_117()) return true;
7727 return false;
7728 }
7729
7730 private boolean jj_3R_262() {
7731 if (jj_scan_token(ASSERT)) return true;
7732 if (jj_3R_117()) return true;
7733 Token xsp;
7734 xsp = jj_scanpos;
7735 if (jj_3R_430()) jj_scanpos = xsp;
7736 if (jj_scan_token(SEMICOLON)) return true;
7737 return false;
7738 }
7739
7740 private boolean jj_3R_362() {
7741 if (jj_3R_386()) return true;
7742 Token xsp;
7743 while (true) {
7744 xsp = jj_scanpos;
7745 if (jj_3R_387()) { jj_scanpos = xsp; break; }
7746 }
7747 return false;
7748 }
7749
7750 private boolean jj_3R_387() {
7751 if (jj_scan_token(COMMA)) return true;
7752 if (jj_3R_386()) return true;
7753 return false;
7754 }
7755
7756 private boolean jj_3R_348() {
7757 if (jj_3R_143()) return true;
7758 return false;
7759 }
7760
7761 private boolean jj_3R_327() {
7762 if (jj_scan_token(LPAREN)) return true;
7763 Token xsp;
7764 xsp = jj_scanpos;
7765 if (jj_3R_362()) jj_scanpos = xsp;
7766 if (jj_scan_token(RPAREN)) return true;
7767 return false;
7768 }
7769
7770 private boolean jj_3R_119() {
7771 if (jj_scan_token(ASSERT)) return true;
7772 if (jj_3R_117()) return true;
7773 return false;
7774 }
7775
7776 private boolean jj_3R_374() {
7777 if (jj_scan_token(LBRACKET)) return true;
7778 if (jj_scan_token(RBRACKET)) return true;
7779 return false;
7780 }
7781
7782 private boolean jj_3R_118() {
7783 if (jj_3R_105()) return true;
7784 if (jj_scan_token(COLON)) return true;
7785 if (jj_3R_223()) return true;
7786 return false;
7787 }
7788
7789 private boolean jj_3R_336() {
7790 if (jj_3R_105()) return true;
7791 if (jj_3R_327()) return true;
7792 Token xsp;
7793 while (true) {
7794 xsp = jj_scanpos;
7795 if (jj_3R_374()) { jj_scanpos = xsp; break; }
7796 }
7797 return false;
7798 }
7799
7800 private boolean jj_3R_254() {
7801 if (jj_3R_274()) return true;
7802 return false;
7803 }
7804
7805 private boolean jj_3R_253() {
7806 if (jj_3R_273()) return true;
7807 return false;
7808 }
7809
7810 private boolean jj_3R_252() {
7811 if (jj_3R_272()) return true;
7812 return false;
7813 }
7814
7815 private boolean jj_3R_251() {
7816 if (jj_3R_271()) return true;
7817 return false;
7818 }
7819
7820 private boolean jj_3R_224() {
7821 if (jj_3R_84()) return true;
7822 if (jj_scan_token(CLASS)) return true;
7823 if (jj_3R_105()) return true;
7824 Token xsp;
7825 xsp = jj_scanpos;
7826 if (jj_3R_348()) jj_scanpos = xsp;
7827 xsp = jj_scanpos;
7828 if (jj_3R_349()) jj_scanpos = xsp;
7829 xsp = jj_scanpos;
7830 if (jj_3R_350()) jj_scanpos = xsp;
7831 if (jj_3R_276()) return true;
7832 return false;
7833 }
7834
7835 private boolean jj_3R_250() {
7836 if (jj_3R_270()) return true;
7837 return false;
7838 }
7839
7840 private boolean jj_3R_249() {
7841 if (jj_3R_269()) return true;
7842 return false;
7843 }
7844
7845 private boolean jj_3R_248() {
7846 if (jj_3R_268()) return true;
7847 return false;
7848 }
7849
7850 private boolean jj_3_41() {
7851 if (jj_scan_token(LBRACKET)) return true;
7852 if (jj_scan_token(RBRACKET)) return true;
7853 return false;
7854 }
7855
7856 private boolean jj_3R_247() {
7857 if (jj_3R_267()) return true;
7858 return false;
7859 }
7860
7861 private boolean jj_3R_246() {
7862 if (jj_3R_266()) return true;
7863 return false;
7864 }
7865
7866 private boolean jj_3R_116() {
7867 if (jj_scan_token(DOT)) return true;
7868 if (jj_3R_137()) return true;
7869 if (jj_scan_token(IDENTIFIER)) return true;
7870 return false;
7871 }
7872
7873 private boolean jj_3R_245() {
7874 if (jj_3R_265()) return true;
7875 return false;
7876 }
7877
7878 private boolean jj_3R_244() {
7879 if (jj_3R_264()) return true;
7880 return false;
7881 }
7882
7883 private boolean jj_3_44() {
7884 if (jj_3R_119()) return true;
7885 return false;
7886 }
7887
7888 private boolean jj_3R_421() {
7889 if (jj_scan_token(COMMA)) return true;
7890 if (jj_3R_341()) return true;
7891 return false;
7892 }
7893
7894 private boolean jj_3R_243() {
7895 if (jj_3R_263()) return true;
7896 if (jj_scan_token(SEMICOLON)) return true;
7897 return false;
7898 }
7899
7900 private boolean jj_3R_242() {
7901 if (jj_3R_142()) return true;
7902 return false;
7903 }
7904
7905 private boolean jj_3R_241() {
7906 if (jj_3R_262()) return true;
7907 return false;
7908 }
7909
7910 private boolean jj_3_43() {
7911 if (jj_3R_118()) return true;
7912 return false;
7913 }
7914
7915 private boolean jj_3R_223() {
7916 Token xsp;
7917 xsp = jj_scanpos;
7918 if (jj_3_43()) {
7919 jj_scanpos = xsp;
7920 if (jj_3R_241()) {
7921 jj_scanpos = xsp;
7922 if (jj_3R_242()) {
7923 jj_scanpos = xsp;
7924 if (jj_scan_token(83)) {
7925 jj_scanpos = xsp;
7926 if (jj_3R_243()) {
7927 jj_scanpos = xsp;
7928 if (jj_3R_244()) {
7929 jj_scanpos = xsp;
7930 if (jj_3R_245()) {
7931 jj_scanpos = xsp;
7932 if (jj_3R_246()) {
7933 jj_scanpos = xsp;
7934 if (jj_3R_247()) {
7935 jj_scanpos = xsp;
7936 if (jj_3R_248()) {
7937 jj_scanpos = xsp;
7938 if (jj_3R_249()) {
7939 jj_scanpos = xsp;
7940 if (jj_3R_250()) {
7941 jj_scanpos = xsp;
7942 if (jj_3R_251()) {
7943 jj_scanpos = xsp;
7944 if (jj_3R_252()) {
7945 jj_scanpos = xsp;
7946 if (jj_3R_253()) {
7947 jj_scanpos = xsp;
7948 if (jj_3R_254()) return true;
7949 }
7950 }
7951 }
7952 }
7953 }
7954 }
7955 }
7956 }
7957 }
7958 }
7959 }
7960 }
7961 }
7962 }
7963 }
7964 return false;
7965 }
7966
7967 private boolean jj_3_62() {
7968 if (jj_scan_token(LBRACKET)) return true;
7969 if (jj_scan_token(RBRACKET)) return true;
7970 return false;
7971 }
7972
7973 private boolean jj_3R_429() {
7974 if (jj_3R_309()) return true;
7975 return false;
7976 }
7977
7978 private boolean jj_3R_275() {
7979 if (jj_scan_token(LBRACKET)) return true;
7980 if (jj_scan_token(RBRACKET)) return true;
7981 return false;
7982 }
7983
7984 private boolean jj_3_40() {
7985 if (jj_scan_token(LBRACKET)) return true;
7986 if (jj_3R_117()) return true;
7987 if (jj_scan_token(RBRACKET)) return true;
7988 return false;
7989 }
7990
7991 private boolean jj_3R_255() {
7992 Token xsp;
7993 if (jj_3R_275()) return true;
7994 while (true) {
7995 xsp = jj_scanpos;
7996 if (jj_3R_275()) { jj_scanpos = xsp; break; }
7997 }
7998 if (jj_3R_177()) return true;
7999 return false;
8000 }
8001
8002 private boolean jj_3_42() {
8003 Token xsp;
8004 if (jj_3_40()) return true;
8005 while (true) {
8006 xsp = jj_scanpos;
8007 if (jj_3_40()) { jj_scanpos = xsp; break; }
8008 }
8009 while (true) {
8010 xsp = jj_scanpos;
8011 if (jj_3_41()) { jj_scanpos = xsp; break; }
8012 }
8013 return false;
8014 }
8015
8016 private boolean jj_3R_228() {
8017 Token xsp;
8018 xsp = jj_scanpos;
8019 if (jj_3_42()) {
8020 jj_scanpos = xsp;
8021 if (jj_3R_255()) return true;
8022 }
8023 return false;
8024 }
8025
8026 private boolean jj_3_61() {
8027 if (jj_scan_token(LBRACKET)) return true;
8028 if (jj_scan_token(RBRACKET)) return true;
8029 return false;
8030 }
8031
8032 private boolean jj_3R_412() {
8033 if (jj_3R_111()) return true;
8034 if (jj_3R_341()) return true;
8035 Token xsp;
8036 while (true) {
8037 xsp = jj_scanpos;
8038 if (jj_3R_421()) { jj_scanpos = xsp; break; }
8039 }
8040 if (jj_scan_token(SEMICOLON)) return true;
8041 return false;
8042 }
8043
8044 private boolean jj_3R_238() {
8045 if (jj_scan_token(SUPER)) return true;
8046 if (jj_3R_103()) return true;
8047 return false;
8048 }
8049
8050 private boolean jj_3R_220() {
8051 Token xsp;
8052 xsp = jj_scanpos;
8053 if (jj_3R_237()) {
8054 jj_scanpos = xsp;
8055 if (jj_3R_238()) return true;
8056 }
8057 return false;
8058 }
8059
8060 private boolean jj_3R_237() {
8061 if (jj_scan_token(EXTENDS)) return true;
8062 if (jj_3R_103()) return true;
8063 return false;
8064 }
8065
8066 private boolean jj_3R_406() {
8067 if (jj_3R_413()) return true;
8068 return false;
8069 }
8070
8071 private boolean jj_3_60() {
8072 if (jj_scan_token(COMMA)) return true;
8073 if (jj_3R_140()) return true;
8074 return false;
8075 }
8076
8077 private boolean jj_3R_226() {
8078 if (jj_scan_token(BIT_AND)) return true;
8079 if (jj_3R_184()) return true;
8080 return false;
8081 }
8082
8083 private boolean jj_3R_153() {
8084 if (jj_3R_184()) return true;
8085 Token xsp;
8086 while (true) {
8087 xsp = jj_scanpos;
8088 if (jj_3_62()) { jj_scanpos = xsp; break; }
8089 }
8090 return false;
8091 }
8092
8093 private boolean jj_3R_152() {
8094 if (jj_3R_110()) return true;
8095 Token xsp;
8096 if (jj_3_61()) return true;
8097 while (true) {
8098 xsp = jj_scanpos;
8099 if (jj_3_61()) { jj_scanpos = xsp; break; }
8100 }
8101 return false;
8102 }
8103
8104 private boolean jj_3R_103() {
8105 Token xsp;
8106 xsp = jj_scanpos;
8107 if (jj_3R_152()) {
8108 jj_scanpos = xsp;
8109 if (jj_3R_153()) return true;
8110 }
8111 return false;
8112 }
8113
8114 private boolean jj_3R_206() {
8115 if (jj_3R_220()) return true;
8116 return false;
8117 }
8118
8119 private boolean jj_3R_170() {
8120 if (jj_scan_token(HOOK)) return true;
8121 Token xsp;
8122 xsp = jj_scanpos;
8123 if (jj_3R_206()) jj_scanpos = xsp;
8124 return false;
8125 }
8126
8127 private boolean jj_3R_256() {
8128 if (jj_3R_276()) return true;
8129 return false;
8130 }
8131
8132 private boolean jj_3R_140() {
8133 Token xsp;
8134 xsp = jj_scanpos;
8135 if (jj_3R_169()) {
8136 jj_scanpos = xsp;
8137 if (jj_3R_170()) return true;
8138 }
8139 return false;
8140 }
8141
8142 private boolean jj_3R_169() {
8143 if (jj_3R_103()) return true;
8144 return false;
8145 }
8146
8147 private boolean jj_3R_405() {
8148 if (jj_3R_189()) return true;
8149 return false;
8150 }
8151
8152 private boolean jj_3R_139() {
8153 if (jj_scan_token(LBRACKET)) return true;
8154 if (jj_scan_token(RBRACKET)) return true;
8155 return false;
8156 }
8157
8158 private boolean jj_3R_337() {
8159 if (jj_scan_token(THROWS)) return true;
8160 if (jj_3R_363()) return true;
8161 return false;
8162 }
8163
8164 private boolean jj_3R_137() {
8165 if (jj_scan_token(LT)) return true;
8166 if (jj_3R_140()) return true;
8167 Token xsp;
8168 while (true) {
8169 xsp = jj_scanpos;
8170 if (jj_3_60()) { jj_scanpos = xsp; break; }
8171 }
8172 if (jj_scan_token(GT)) return true;
8173 return false;
8174 }
8175
8176 private boolean jj_3R_231() {
8177 if (jj_3R_189()) return true;
8178 Token xsp;
8179 xsp = jj_scanpos;
8180 if (jj_3R_256()) jj_scanpos = xsp;
8181 return false;
8182 }
8183
8184 private boolean jj_3R_230() {
8185 if (jj_3R_228()) return true;
8186 return false;
8187 }
8188
8189 private boolean jj_3R_163() {
8190 if (jj_scan_token(NEW)) return true;
8191 if (jj_3R_94()) return true;
8192 Token xsp;
8193 xsp = jj_scanpos;
8194 if (jj_3R_229()) jj_scanpos = xsp;
8195 xsp = jj_scanpos;
8196 if (jj_3R_230()) {
8197 jj_scanpos = xsp;
8198 if (jj_3R_231()) return true;
8199 }
8200 return false;
8201 }
8202
8203 private boolean jj_3R_229() {
8204 if (jj_3R_137()) return true;
8205 return false;
8206 }
8207
8208 private boolean jj_3R_338() {
8209 if (jj_3R_142()) return true;
8210 return false;
8211 }
8212
8213 private boolean jj_3R_212() {
8214 if (jj_scan_token(EXTENDS)) return true;
8215 if (jj_3R_184()) return true;
8216 Token xsp;
8217 while (true) {
8218 xsp = jj_scanpos;
8219 if (jj_3R_226()) { jj_scanpos = xsp; break; }
8220 }
8221 return false;
8222 }
8223
8224 private boolean jj_3_58() {
8225 if (jj_3R_111()) return true;
8226 if (jj_scan_token(IDENTIFIER)) return true;
8227 Token xsp;
8228 while (true) {
8229 xsp = jj_scanpos;
8230 if (jj_3R_139()) { jj_scanpos = xsp; break; }
8231 }
8232 xsp = jj_scanpos;
8233 if (jj_scan_token(84)) {
8234 jj_scanpos = xsp;
8235 if (jj_scan_token(87)) {
8236 jj_scanpos = xsp;
8237 if (jj_scan_token(83)) return true;
8238 }
8239 }
8240 return false;
8241 }
8242
8243 private boolean jj_3R_138() {
8244 if (jj_3R_143()) return true;
8245 return false;
8246 }
8247
8248 private boolean jj_3R_115() {
8249 Token xsp;
8250 xsp = jj_scanpos;
8251 if (jj_3_39()) {
8252 jj_scanpos = xsp;
8253 if (jj_3R_163()) return true;
8254 }
8255 return false;
8256 }
8257
8258 private boolean jj_3_39() {
8259 if (jj_scan_token(NEW)) return true;
8260 if (jj_3R_110()) return true;
8261 if (jj_3R_228()) return true;
8262 return false;
8263 }
8264
8265 private boolean jj_3R_136() {
8266 if (jj_3R_84()) return true;
8267 if (jj_scan_token(IDENTIFIER)) return true;
8268 Token xsp;
8269 xsp = jj_scanpos;
8270 if (jj_3R_405()) jj_scanpos = xsp;
8271 xsp = jj_scanpos;
8272 if (jj_3R_406()) jj_scanpos = xsp;
8273 return false;
8274 }
8275
8276 private boolean jj_3_57() {
8277 Token xsp;
8278 xsp = jj_scanpos;
8279 if (jj_3R_138()) jj_scanpos = xsp;
8280 if (jj_scan_token(IDENTIFIER)) return true;
8281 if (jj_scan_token(LPAREN)) return true;
8282 return false;
8283 }
8284
8285 private boolean jj_3R_277() {
8286 if (jj_scan_token(COMMA)) return true;
8287 if (jj_3R_117()) return true;
8288 return false;
8289 }
8290
8291 private boolean jj_3R_427() {
8292 if (jj_3R_429()) return true;
8293 return false;
8294 }
8295
8296 private boolean jj_3R_426() {
8297 if (jj_3R_412()) return true;
8298 return false;
8299 }
8300
8301 private boolean jj_3R_425() {
8302 if (jj_3R_308()) return true;
8303 return false;
8304 }
8305
8306 private boolean jj_3R_424() {
8307 if (jj_3R_307()) return true;
8308 return false;
8309 }
8310
8311 private boolean jj_3R_423() {
8312 if (jj_3R_411()) return true;
8313 return false;
8314 }
8315
8316 private boolean jj_3R_335() {
8317 if (jj_3R_143()) return true;
8318 return false;
8319 }
8320
8321 private boolean jj_3R_217() {
8322 if (jj_3R_117()) return true;
8323 Token xsp;
8324 while (true) {
8325 xsp = jj_scanpos;
8326 if (jj_3R_277()) { jj_scanpos = xsp; break; }
8327 }
8328 return false;
8329 }
8330
8331 private boolean jj_3R_204() {
8332 if (jj_3R_217()) return true;
8333 return false;
8334 }
8335
8336 private boolean jj_3R_414() {
8337 if (jj_3R_84()) return true;
8338 Token xsp;
8339 xsp = jj_scanpos;
8340 if (jj_3R_423()) {
8341 jj_scanpos = xsp;
8342 if (jj_3R_424()) {
8343 jj_scanpos = xsp;
8344 if (jj_3R_425()) {
8345 jj_scanpos = xsp;
8346 if (jj_3R_426()) {
8347 jj_scanpos = xsp;
8348 if (jj_3R_427()) return true;
8349 }
8350 }
8351 }
8352 }
8353 return false;
8354 }
8355
8356 private boolean jj_3R_334() {
8357 if (jj_3R_141()) return true;
8358 return false;
8359 }
8360
8361 private boolean jj_3R_189() {
8362 if (jj_scan_token(LPAREN)) return true;
8363 Token xsp;
8364 xsp = jj_scanpos;
8365 if (jj_3R_204()) jj_scanpos = xsp;
8366 if (jj_scan_token(RPAREN)) return true;
8367 return false;
8368 }
8369
8370 private boolean jj_3R_407() {
8371 Token xsp;
8372 xsp = jj_scanpos;
8373 if (jj_3_59()) {
8374 jj_scanpos = xsp;
8375 if (jj_3R_414()) {
8376 jj_scanpos = xsp;
8377 if (jj_scan_token(83)) return true;
8378 }
8379 }
8380 return false;
8381 }
8382
8383 private boolean jj_3_59() {
8384 if (jj_3R_85()) return true;
8385 return false;
8386 }
8387
8388 private boolean jj_3_4() {
8389 if (jj_3R_84()) return true;
8390 if (jj_scan_token(INTERFACE)) return true;
8391 return false;
8392 }
8393
8394 private boolean jj_3R_373() {
8395 if (jj_scan_token(TESTAAAA)) return true;
8396 return false;
8397 }
8398
8399 private boolean jj_3R_83() {
8400 Token xsp;
8401 xsp = jj_scanpos;
8402 if (jj_scan_token(13)) {
8403 jj_scanpos = xsp;
8404 if (jj_scan_token(31)) {
8405 jj_scanpos = xsp;
8406 if (jj_scan_token(49)) {
8407 jj_scanpos = xsp;
8408 if (jj_scan_token(56)) {
8409 jj_scanpos = xsp;
8410 if (jj_scan_token(53)) return true;
8411 }
8412 }
8413 }
8414 }
8415 return false;
8416 }
8417
8418 private boolean jj_3_56() {
8419 if (jj_3R_137()) return true;
8420 return false;
8421 }
8422
8423 private boolean jj_3R_372() {
8424 if (jj_scan_token(SYNCHRONIZED)) return true;
8425 return false;
8426 }
8427
8428 private boolean jj_3R_227() {
8429 Token xsp;
8430 xsp = jj_scanpos;
8431 if (jj_scan_token(61)) {
8432 jj_scanpos = xsp;
8433 if (jj_scan_token(30)) return true;
8434 }
8435 return false;
8436 }
8437
8438 private boolean jj_3_55() {
8439 if (jj_scan_token(DOT)) return true;
8440 if (jj_scan_token(IDENTIFIER)) return true;
8441 Token xsp;
8442 xsp = jj_scanpos;
8443 if (jj_3_56()) jj_scanpos = xsp;
8444 return false;
8445 }
8446
8447 private boolean jj_3R_197() {
8448 if (jj_3R_212()) return true;
8449 return false;
8450 }
8451
8452 private boolean jj_3_54() {
8453 if (jj_3R_137()) return true;
8454 return false;
8455 }
8456
8457 private boolean jj_3R_371() {
8458 if (jj_scan_token(NATIVE)) return true;
8459 return false;
8460 }
8461
8462 private boolean jj_3_3() {
8463 if (jj_3R_84()) return true;
8464 if (jj_scan_token(ENUM)) return true;
8465 if (jj_scan_token(IDENTIFIER)) return true;
8466 return false;
8467 }
8468
8469 private boolean jj_3_53() {
8470 if (jj_scan_token(COMMA)) return true;
8471 if (jj_3R_136()) return true;
8472 return false;
8473 }
8474
8475 private boolean jj_3R_213() {
8476 if (jj_3R_227()) return true;
8477 return false;
8478 }
8479
8480 private boolean jj_3R_82() {
8481 if (jj_3R_141()) return true;
8482 return false;
8483 }
8484
8485 private boolean jj_3R_370() {
8486 if (jj_scan_token(FINAL)) return true;
8487 return false;
8488 }
8489
8490 private boolean jj_3_2() {
8491 Token xsp;
8492 while (true) {
8493 xsp = jj_scanpos;
8494 if (jj_3R_82()) { jj_scanpos = xsp; break; }
8495 }
8496 while (true) {
8497 xsp = jj_scanpos;
8498 if (jj_3R_83()) { jj_scanpos = xsp; break; }
8499 }
8500 if (jj_scan_token(CLASS)) return true;
8501 return false;
8502 }
8503
8504 private boolean jj_3R_184() {
8505 if (jj_scan_token(IDENTIFIER)) return true;
8506 Token xsp;
8507 xsp = jj_scanpos;
8508 if (jj_3_54()) jj_scanpos = xsp;
8509 while (true) {
8510 xsp = jj_scanpos;
8511 if (jj_3_55()) { jj_scanpos = xsp; break; }
8512 }
8513 return false;
8514 }
8515
8516 private boolean jj_3R_385() {
8517 if (jj_3R_407()) return true;
8518 return false;
8519 }
8520
8521 private boolean jj_3R_198() {
8522 Token xsp;
8523 xsp = jj_scanpos;
8524 if (jj_scan_token(66)) {
8525 jj_scanpos = xsp;
8526 if (jj_scan_token(70)) {
8527 jj_scanpos = xsp;
8528 if (jj_scan_token(72)) {
8529 jj_scanpos = xsp;
8530 if (jj_scan_token(73)) {
8531 jj_scanpos = xsp;
8532 if (jj_3R_213()) {
8533 jj_scanpos = xsp;
8534 if (jj_scan_token(45)) return true;
8535 }
8536 }
8537 }
8538 }
8539 }
8540 return false;
8541 }
8542
8543 private boolean jj_3R_175() {
8544 if (jj_scan_token(IDENTIFIER)) return true;
8545 Token xsp;
8546 xsp = jj_scanpos;
8547 if (jj_3R_197()) jj_scanpos = xsp;
8548 return false;
8549 }
8550
8551 private boolean jj_3R_369() {
8552 if (jj_scan_token(ABSTRACT)) return true;
8553 return false;
8554 }
8555
8556 private boolean jj_3R_358() {
8557 if (jj_scan_token(SEMICOLON)) return true;
8558 Token xsp;
8559 while (true) {
8560 xsp = jj_scanpos;
8561 if (jj_3R_385()) { jj_scanpos = xsp; break; }
8562 }
8563 return false;
8564 }
8565
8566 private boolean jj_3R_161() {
8567 if (jj_3R_189()) return true;
8568 return false;
8569 }
8570
8571 private boolean jj_3R_368() {
8572 if (jj_scan_token(STATIC)) return true;
8573 return false;
8574 }
8575
8576 private boolean jj_3R_357() {
8577 if (jj_3R_136()) return true;
8578 Token xsp;
8579 while (true) {
8580 xsp = jj_scanpos;
8581 if (jj_3_53()) { jj_scanpos = xsp; break; }
8582 }
8583 return false;
8584 }
8585
8586 private boolean jj_3R_160() {
8587 if (jj_scan_token(DOT)) return true;
8588 if (jj_3R_105()) return true;
8589 return false;
8590 }
8591
8592 private boolean jj_3R_367() {
8593 if (jj_scan_token(PRIVATE)) return true;
8594 return false;
8595 }
8596
8597 private boolean jj_3R_159() {
8598 if (jj_scan_token(LBRACKET)) return true;
8599 if (jj_3R_117()) return true;
8600 if (jj_scan_token(RBRACKET)) return true;
8601 return false;
8602 }
8603
8604 private boolean jj_3R_323() {
8605 if (jj_scan_token(LBRACE)) return true;
8606 Token xsp;
8607 xsp = jj_scanpos;
8608 if (jj_3R_357()) jj_scanpos = xsp;
8609 xsp = jj_scanpos;
8610 if (jj_scan_token(84)) jj_scanpos = xsp;
8611 xsp = jj_scanpos;
8612 if (jj_3R_358()) jj_scanpos = xsp;
8613 if (jj_scan_token(RBRACE)) return true;
8614 return false;
8615 }
8616
8617 private boolean jj_3_38() {
8618 if (jj_3R_116()) return true;
8619 return false;
8620 }
8621
8622 private boolean jj_3R_366() {
8623 if (jj_scan_token(PROTECTED)) return true;
8624 return false;
8625 }
8626
8627 private boolean jj_3_33() {
8628 if (jj_scan_token(DOT)) return true;
8629 if (jj_scan_token(SUPER)) return true;
8630 if (jj_scan_token(DOT)) return true;
8631 if (jj_3R_105()) return true;
8632 return false;
8633 }
8634
8635 private boolean jj_3_37() {
8636 if (jj_scan_token(DOT)) return true;
8637 if (jj_3R_115()) return true;
8638 return false;
8639 }
8640
8641 private boolean jj_3R_112() {
8642 Token xsp;
8643 xsp = jj_scanpos;
8644 if (jj_3_36()) {
8645 jj_scanpos = xsp;
8646 if (jj_3_37()) {
8647 jj_scanpos = xsp;
8648 if (jj_3_38()) {
8649 jj_scanpos = xsp;
8650 if (jj_3R_159()) {
8651 jj_scanpos = xsp;
8652 if (jj_3R_160()) {
8653 jj_scanpos = xsp;
8654 if (jj_3R_161()) return true;
8655 }
8656 }
8657 }
8658 }
8659 }
8660 return false;
8661 }
8662
8663 private boolean jj_3_36() {
8664 if (jj_scan_token(DOT)) return true;
8665 if (jj_scan_token(THIS)) return true;
8666 return false;
8667 }
8668
8669 private boolean jj_3R_422() {
8670 if (jj_3R_407()) return true;
8671 return false;
8672 }
8673
8674 private boolean jj_3R_365() {
8675 if (jj_scan_token(PUBLIC)) return true;
8676 return false;
8677 }
8678
8679 private boolean jj_3R_333() {
8680 Token xsp;
8681 xsp = jj_scanpos;
8682 if (jj_3R_365()) {
8683 jj_scanpos = xsp;
8684 if (jj_3R_366()) {
8685 jj_scanpos = xsp;
8686 if (jj_3R_367()) {
8687 jj_scanpos = xsp;
8688 if (jj_3R_368()) {
8689 jj_scanpos = xsp;
8690 if (jj_3R_369()) {
8691 jj_scanpos = xsp;
8692 if (jj_3R_370()) {
8693 jj_scanpos = xsp;
8694 if (jj_3R_371()) {
8695 jj_scanpos = xsp;
8696 if (jj_3R_372()) {
8697 jj_scanpos = xsp;
8698 if (jj_3R_373()) return true;
8699 }
8700 }
8701 }
8702 }
8703 }
8704 }
8705 }
8706 }
8707 return false;
8708 }
8709
8710 private boolean jj_3R_413() {
8711 if (jj_scan_token(LBRACE)) return true;
8712 Token xsp;
8713 while (true) {
8714 xsp = jj_scanpos;
8715 if (jj_3R_422()) { jj_scanpos = xsp; break; }
8716 }
8717 if (jj_scan_token(RBRACE)) return true;
8718 return false;
8719 }
8720
8721 private boolean jj_3_35() {
8722 if (jj_3R_114()) return true;
8723 if (jj_scan_token(DOT)) return true;
8724 if (jj_scan_token(CLASS)) return true;
8725 return false;
8726 }
8727
8728 private boolean jj_3R_183() {
8729 if (jj_3R_94()) return true;
8730 Token xsp;
8731 xsp = jj_scanpos;
8732 if (jj_3_33()) jj_scanpos = xsp;
8733 return false;
8734 }
8735
8736 private boolean jj_3R_188() {
8737 if (jj_3R_198()) return true;
8738 return false;
8739 }
8740
8741 private boolean jj_3R_384() {
8742 if (jj_scan_token(COMMA)) return true;
8743 if (jj_3R_184()) return true;
8744 return false;
8745 }
8746
8747 private boolean jj_3R_113() {
8748 if (jj_3R_105()) return true;
8749 return false;
8750 }
8751
8752 private boolean jj_3R_356() {
8753 if (jj_scan_token(IMPLEMENTS)) return true;
8754 if (jj_3R_184()) return true;
8755 Token xsp;
8756 while (true) {
8757 xsp = jj_scanpos;
8758 if (jj_3R_384()) { jj_scanpos = xsp; break; }
8759 }
8760 return false;
8761 }
8762
8763 private boolean jj_3R_332() {
8764 if (jj_3R_141()) return true;
8765 return false;
8766 }
8767
8768 private boolean jj_3R_182() {
8769 if (jj_3R_114()) return true;
8770 if (jj_scan_token(DOT)) return true;
8771 if (jj_scan_token(CLASS)) return true;
8772 return false;
8773 }
8774
8775 private boolean jj_3R_176() {
8776 if (jj_scan_token(COMMA)) return true;
8777 if (jj_3R_175()) return true;
8778 return false;
8779 }
8780
8781 private boolean jj_3R_181() {
8782 if (jj_3R_115()) return true;
8783 return false;
8784 }
8785
8786 private boolean jj_3R_180() {
8787 if (jj_scan_token(LPAREN)) return true;
8788 if (jj_3R_117()) return true;
8789 if (jj_scan_token(RPAREN)) return true;
8790 return false;
8791 }
8792
8793 private boolean jj_3R_440() {
8794 if (jj_scan_token(COMMA)) return true;
8795 if (jj_3R_184()) return true;
8796 return false;
8797 }
8798
8799 private boolean jj_3R_428() {
8800 if (jj_scan_token(EXTENDS)) return true;
8801 if (jj_3R_184()) return true;
8802 Token xsp;
8803 while (true) {
8804 xsp = jj_scanpos;
8805 if (jj_3R_440()) { jj_scanpos = xsp; break; }
8806 }
8807 return false;
8808 }
8809
8810 private boolean jj_3_17() {
8811 if (jj_scan_token(COMMA)) return true;
8812 if (jj_3R_100()) return true;
8813 return false;
8814 }
8815
8816 private boolean jj_3R_309() {
8817 Token xsp;
8818 while (true) {
8819 xsp = jj_scanpos;
8820 if (jj_3R_332()) { jj_scanpos = xsp; break; }
8821 }
8822 while (true) {
8823 xsp = jj_scanpos;
8824 if (jj_3R_333()) { jj_scanpos = xsp; break; }
8825 }
8826 while (true) {
8827 xsp = jj_scanpos;
8828 if (jj_3R_334()) { jj_scanpos = xsp; break; }
8829 }
8830 xsp = jj_scanpos;
8831 if (jj_3R_335()) jj_scanpos = xsp;
8832 if (jj_3R_114()) return true;
8833 if (jj_3R_336()) return true;
8834 xsp = jj_scanpos;
8835 if (jj_3R_337()) jj_scanpos = xsp;
8836 xsp = jj_scanpos;
8837 if (jj_3R_338()) {
8838 jj_scanpos = xsp;
8839 if (jj_scan_token(83)) return true;
8840 }
8841 return false;
8842 }
8843
8844 private boolean jj_3R_199() {
8845 if (jj_3R_105()) return true;
8846 return false;
8847 }
8848
8849 private boolean jj_3_34() {
8850 if (jj_scan_token(SUPER)) return true;
8851 Token xsp;
8852 xsp = jj_scanpos;
8853 if (jj_scan_token(85)) jj_scanpos = xsp;
8854 xsp = jj_scanpos;
8855 if (jj_3R_113()) jj_scanpos = xsp;
8856 return false;
8857 }
8858
8859 private boolean jj_3_32() {
8860 if (jj_3R_112()) return true;
8861 return false;
8862 }
8863
8864 private boolean jj_3R_342() {
8865 if (jj_scan_token(COMMA)) return true;
8866 if (jj_3R_341()) return true;
8867 return false;
8868 }
8869
8870 private boolean jj_3R_143() {
8871 if (jj_scan_token(LT)) return true;
8872 if (jj_3R_175()) return true;
8873 Token xsp;
8874 while (true) {
8875 xsp = jj_scanpos;
8876 if (jj_3R_176()) { jj_scanpos = xsp; break; }
8877 }
8878 if (jj_scan_token(GT)) return true;
8879 return false;
8880 }
8881
8882 private boolean jj_3R_393() {
8883 if (jj_scan_token(LBRACKET)) return true;
8884 if (jj_scan_token(RBRACKET)) return true;
8885 return false;
8886 }
8887
8888 private boolean jj_3R_179() {
8889 if (jj_scan_token(THIS)) return true;
8890 Token xsp;
8891 xsp = jj_scanpos;
8892 if (jj_scan_token(85)) jj_scanpos = xsp;
8893 xsp = jj_scanpos;
8894 if (jj_3R_199()) jj_scanpos = xsp;
8895 return false;
8896 }
8897
8898 private boolean jj_3R_151() {
8899 Token xsp;
8900 xsp = jj_scanpos;
8901 if (jj_3R_178()) {
8902 jj_scanpos = xsp;
8903 if (jj_3R_179()) {
8904 jj_scanpos = xsp;
8905 if (jj_3_34()) {
8906 jj_scanpos = xsp;
8907 if (jj_3R_180()) {
8908 jj_scanpos = xsp;
8909 if (jj_3R_181()) {
8910 jj_scanpos = xsp;
8911 if (jj_3R_182()) {
8912 jj_scanpos = xsp;
8913 if (jj_3R_183()) return true;
8914 }
8915 }
8916 }
8917 }
8918 }
8919 }
8920 return false;
8921 }
8922
8923 private boolean jj_3R_178() {
8924 if (jj_3R_198()) return true;
8925 return false;
8926 }
8927
8928 private boolean jj_3R_280() {
8929 Token xsp;
8930 xsp = jj_scanpos;
8931 if (jj_scan_token(100)) {
8932 jj_scanpos = xsp;
8933 if (jj_scan_token(101)) return true;
8934 }
8935 return false;
8936 }
8937
8938 private boolean jj_3R_286() {
8939 if (jj_3R_100()) return true;
8940 Token xsp;
8941 while (true) {
8942 xsp = jj_scanpos;
8943 if (jj_3_17()) { jj_scanpos = xsp; break; }
8944 }
8945 return false;
8946 }
8947
8948 private boolean jj_3R_378() {
8949 if (jj_scan_token(ASSIGN)) return true;
8950 if (jj_3R_100()) return true;
8951 return false;
8952 }
8953
8954 private boolean jj_3R_187() {
8955 if (jj_3R_105()) return true;
8956 return false;
8957 }
8958
8959 private boolean jj_3R_102() {
8960 if (jj_3R_151()) return true;
8961 Token xsp;
8962 while (true) {
8963 xsp = jj_scanpos;
8964 if (jj_3_32()) { jj_scanpos = xsp; break; }
8965 }
8966 return false;
8967 }
8968
8969 private boolean jj_3_31() {
8970 if (jj_scan_token(LPAREN)) return true;
8971 if (jj_3R_110()) return true;
8972 return false;
8973 }
8974
8975 private boolean jj_3R_392() {
8976 if (jj_3R_105()) return true;
8977 return false;
8978 }
8979
8980 private boolean jj_3R_177() {
8981 if (jj_scan_token(LBRACE)) return true;
8982 Token xsp;
8983 xsp = jj_scanpos;
8984 if (jj_3R_286()) jj_scanpos = xsp;
8985 xsp = jj_scanpos;
8986 if (jj_scan_token(84)) jj_scanpos = xsp;
8987 if (jj_scan_token(RBRACE)) return true;
8988 return false;
8989 }
8990
8991 private boolean jj_3R_150() {
8992 if (jj_3R_117()) return true;
8993 return false;
8994 }
8995
8996 private boolean jj_3R_279() {
8997 if (jj_scan_token(LPAREN)) return true;
8998 if (jj_3R_111()) return true;
8999 if (jj_scan_token(RPAREN)) return true;
9000 if (jj_3R_216()) return true;
9001 return false;
9002 }
9003
9004 private boolean jj_3R_99() {
9005 Token xsp;
9006 xsp = jj_scanpos;
9007 if (jj_scan_token(52)) {
9008 jj_scanpos = xsp;
9009 if (jj_scan_token(13)) {
9010 jj_scanpos = xsp;
9011 if (jj_scan_token(31)) {
9012 jj_scanpos = xsp;
9013 if (jj_scan_token(49)) {
9014 jj_scanpos = xsp;
9015 if (jj_scan_token(48)) {
9016 jj_scanpos = xsp;
9017 if (jj_scan_token(47)) {
9018 jj_scanpos = xsp;
9019 if (jj_scan_token(53)) return true;
9020 }
9021 }
9022 }
9023 }
9024 }
9025 }
9026 return false;
9027 }
9028
9029 private boolean jj_3R_377() {
9030 Token xsp;
9031 xsp = jj_scanpos;
9032 if (jj_scan_token(28)) {
9033 jj_scanpos = xsp;
9034 if (jj_3R_392()) return true;
9035 }
9036 while (true) {
9037 xsp = jj_scanpos;
9038 if (jj_3R_393()) { jj_scanpos = xsp; break; }
9039 }
9040 return false;
9041 }
9042
9043 private boolean jj_3R_149() {
9044 if (jj_3R_177()) return true;
9045 return false;
9046 }
9047
9048 private boolean jj_3R_100() {
9049 Token xsp;
9050 xsp = jj_scanpos;
9051 if (jj_3R_149()) {
9052 jj_scanpos = xsp;
9053 if (jj_3R_150()) return true;
9054 }
9055 return false;
9056 }
9057
9058 private boolean jj_3_30() {
9059 if (jj_scan_token(LBRACKET)) return true;
9060 if (jj_scan_token(RBRACKET)) return true;
9061 return false;
9062 }
9063
9064 private boolean jj_3R_257() {
9065 Token xsp;
9066 xsp = jj_scanpos;
9067 if (jj_3R_278()) {
9068 jj_scanpos = xsp;
9069 if (jj_3R_279()) return true;
9070 }
9071 return false;
9072 }
9073
9074 private boolean jj_3R_278() {
9075 if (jj_scan_token(LPAREN)) return true;
9076 if (jj_3R_111()) return true;
9077 if (jj_scan_token(RPAREN)) return true;
9078 if (jj_3R_185()) return true;
9079 return false;
9080 }
9081
9082 private boolean jj_3R_97() {
9083 Token xsp;
9084 xsp = jj_scanpos;
9085 if (jj_scan_token(52)) {
9086 jj_scanpos = xsp;
9087 if (jj_scan_token(13)) {
9088 jj_scanpos = xsp;
9089 if (jj_scan_token(31)) {
9090 jj_scanpos = xsp;
9091 if (jj_scan_token(49)) {
9092 jj_scanpos = xsp;
9093 if (jj_scan_token(48)) {
9094 jj_scanpos = xsp;
9095 if (jj_scan_token(47)) {
9096 jj_scanpos = xsp;
9097 if (jj_scan_token(53)) return true;
9098 }
9099 }
9100 }
9101 }
9102 }
9103 }
9104 return false;
9105 }
9106
9107 private boolean jj_3R_258() {
9108 if (jj_3R_102()) return true;
9109 Token xsp;
9110 xsp = jj_scanpos;
9111 if (jj_3R_280()) jj_scanpos = xsp;
9112 return false;
9113 }
9114
9115 private boolean jj_3R_341() {
9116 if (jj_3R_377()) return true;
9117 Token xsp;
9118 xsp = jj_scanpos;
9119 if (jj_3R_378()) jj_scanpos = xsp;
9120 return false;
9121 }
9122
9123 private boolean jj_3_29() {
9124 if (jj_scan_token(LPAREN)) return true;
9125 if (jj_3R_111()) return true;
9126 if (jj_scan_token(LBRACKET)) return true;
9127 return false;
9128 }
9129
9130 private boolean jj_3R_340() {
9131 if (jj_3R_141()) return true;
9132 return false;
9133 }
9134
9135 private boolean jj_3R_322() {
9136 if (jj_3R_356()) return true;
9137 return false;
9138 }
9139
9140 private boolean jj_3R_98() {
9141 if (jj_3R_141()) return true;
9142 return false;
9143 }
9144
9145 private boolean jj_3_14() {
9146 Token xsp;
9147 while (true) {
9148 xsp = jj_scanpos;
9149 if (jj_3R_98()) { jj_scanpos = xsp; break; }
9150 }
9151 while (true) {
9152 xsp = jj_scanpos;
9153 if (jj_3R_99()) { jj_scanpos = xsp; break; }
9154 }
9155 if (jj_scan_token(INTERFACE)) return true;
9156 return false;
9157 }
9158
9159 private boolean jj_3R_157() {
9160 if (jj_scan_token(LPAREN)) return true;
9161 if (jj_3R_111()) return true;
9162 if (jj_scan_token(RPAREN)) return true;
9163 Token xsp;
9164 xsp = jj_scanpos;
9165 if (jj_scan_token(91)) {
9166 jj_scanpos = xsp;
9167 if (jj_scan_token(90)) {
9168 jj_scanpos = xsp;
9169 if (jj_scan_token(77)) {
9170 jj_scanpos = xsp;
9171 if (jj_3R_187()) {
9172 jj_scanpos = xsp;
9173 if (jj_scan_token(57)) {
9174 jj_scanpos = xsp;
9175 if (jj_scan_token(54)) {
9176 jj_scanpos = xsp;
9177 if (jj_scan_token(44)) {
9178 jj_scanpos = xsp;
9179 if (jj_3R_188()) return true;
9180 }
9181 }
9182 }
9183 }
9184 }
9185 }
9186 }
9187 return false;
9188 }
9189
9190 private boolean jj_3R_96() {
9191 if (jj_3R_141()) return true;
9192 return false;
9193 }
9194
9195 private boolean jj_3_13() {
9196 Token xsp;
9197 while (true) {
9198 xsp = jj_scanpos;
9199 if (jj_3R_96()) { jj_scanpos = xsp; break; }
9200 }
9201 while (true) {
9202 xsp = jj_scanpos;
9203 if (jj_3R_97()) { jj_scanpos = xsp; break; }
9204 }
9205 if (jj_scan_token(CLASS)) return true;
9206 return false;
9207 }
9208
9209 private boolean jj_3R_156() {
9210 if (jj_scan_token(LPAREN)) return true;
9211 if (jj_3R_111()) return true;
9212 if (jj_scan_token(LBRACKET)) return true;
9213 if (jj_scan_token(RBRACKET)) return true;
9214 return false;
9215 }
9216
9217 private boolean jj_3R_307() {
9218 if (jj_scan_token(ENUM)) return true;
9219 if (jj_scan_token(IDENTIFIER)) return true;
9220 Token xsp;
9221 xsp = jj_scanpos;
9222 if (jj_3R_322()) jj_scanpos = xsp;
9223 if (jj_3R_323()) return true;
9224 return false;
9225 }
9226
9227 private boolean jj_3R_109() {
9228 Token xsp;
9229 xsp = jj_scanpos;
9230 if (jj_3_28()) {
9231 jj_scanpos = xsp;
9232 if (jj_3R_156()) {
9233 jj_scanpos = xsp;
9234 if (jj_3R_157()) return true;
9235 }
9236 }
9237 return false;
9238 }
9239
9240 private boolean jj_3_28() {
9241 if (jj_scan_token(LPAREN)) return true;
9242 if (jj_3R_110()) return true;
9243 return false;
9244 }
9245
9246 private boolean jj_3_27() {
9247 if (jj_3R_109()) return true;
9248 return false;
9249 }
9250
9251 private boolean jj_3R_417() {
9252 if (jj_scan_token(INTERFACE)) return true;
9253 return false;
9254 }
9255
9256 private boolean jj_3R_234() {
9257 if (jj_3R_258()) return true;
9258 return false;
9259 }
9260
9261 private boolean jj_3R_420() {
9262 if (jj_3R_356()) return true;
9263 return false;
9264 }
9265
9266 private boolean jj_3R_419() {
9267 if (jj_3R_428()) return true;
9268 return false;
9269 }
9270
9271 private boolean jj_3R_233() {
9272 if (jj_3R_257()) return true;
9273 return false;
9274 }
9275
9276 private boolean jj_3R_418() {
9277 if (jj_3R_143()) return true;
9278 return false;
9279 }
9280
9281 private boolean jj_3R_81() {
9282 if (jj_3R_141()) return true;
9283 return false;
9284 }
9285
9286 private boolean jj_3R_376() {
9287 if (jj_scan_token(PROTECTED)) return true;
9288 return false;
9289 }
9290
9291 private boolean jj_3R_375() {
9292 if (jj_scan_token(PUBLIC)) return true;
9293 return false;
9294 }
9295
9296 private boolean jj_3R_339() {
9297 Token xsp;
9298 xsp = jj_scanpos;
9299 if (jj_3R_375()) {
9300 jj_scanpos = xsp;
9301 if (jj_3R_376()) {
9302 jj_scanpos = xsp;
9303 if (jj_scan_token(47)) {
9304 jj_scanpos = xsp;
9305 if (jj_scan_token(52)) {
9306 jj_scanpos = xsp;
9307 if (jj_scan_token(31)) {
9308 jj_scanpos = xsp;
9309 if (jj_scan_token(60)) {
9310 jj_scanpos = xsp;
9311 if (jj_scan_token(64)) return true;
9312 }
9313 }
9314 }
9315 }
9316 }
9317 }
9318 return false;
9319 }
9320
9321 private boolean jj_3_1() {
9322 Token xsp;
9323 while (true) {
9324 xsp = jj_scanpos;
9325 if (jj_3R_81()) { jj_scanpos = xsp; break; }
9326 }
9327 if (jj_scan_token(PACKAGE)) return true;
9328 return false;
9329 }
9330
9331 private boolean jj_3R_107() {
9332 if (jj_scan_token(GT)) return true;
9333 if (jj_scan_token(GT)) return true;
9334 Token xsp;
9335 xsp = jj_scanpos;
9336 if (jj_scan_token(88)) jj_scanpos = xsp;
9337 return false;
9338 }
9339
9340 private boolean jj_3R_411() {
9341 Token xsp;
9342 xsp = jj_scanpos;
9343 if (jj_scan_token(21)) {
9344 jj_scanpos = xsp;
9345 if (jj_3R_417()) return true;
9346 }
9347 if (jj_scan_token(IDENTIFIER)) return true;
9348 xsp = jj_scanpos;
9349 if (jj_3R_418()) jj_scanpos = xsp;
9350 xsp = jj_scanpos;
9351 if (jj_3R_419()) jj_scanpos = xsp;
9352 xsp = jj_scanpos;
9353 if (jj_3R_420()) jj_scanpos = xsp;
9354 if (jj_3R_413()) return true;
9355 return false;
9356 }
9357
9358 private boolean jj_3R_311() {
9359 Token xsp;
9360 while (true) {
9361 xsp = jj_scanpos;
9362 if (jj_3R_339()) { jj_scanpos = xsp; break; }
9363 }
9364 while (true) {
9365 xsp = jj_scanpos;
9366 if (jj_3R_340()) { jj_scanpos = xsp; break; }
9367 }
9368 if (jj_3R_111()) return true;
9369 if (jj_3R_341()) return true;
9370 while (true) {
9371 xsp = jj_scanpos;
9372 if (jj_3R_342()) { jj_scanpos = xsp; break; }
9373 }
9374 if (jj_scan_token(SEMICOLON)) return true;
9375 return false;
9376 }
9377
9378 private boolean jj_3R_216() {
9379 Token xsp;
9380 xsp = jj_scanpos;
9381 if (jj_3R_232()) {
9382 jj_scanpos = xsp;
9383 if (jj_3R_233()) {
9384 jj_scanpos = xsp;
9385 if (jj_3R_234()) return true;
9386 }
9387 }
9388 return false;
9389 }
9390
9391 private boolean jj_3R_232() {
9392 Token xsp;
9393 xsp = jj_scanpos;
9394 if (jj_scan_token(91)) {
9395 jj_scanpos = xsp;
9396 if (jj_scan_token(90)) return true;
9397 }
9398 if (jj_3R_185()) return true;
9399 return false;
9400 }
9401
9402 private boolean jj_3_16() {
9403 if (jj_3R_95()) return true;
9404 return false;
9405 }
9406
9407 private boolean jj_3R_215() {
9408 if (jj_scan_token(DECR)) return true;
9409 if (jj_3R_102()) return true;
9410 return false;
9411 }
9412
9413 private boolean jj_3R_155() {
9414 Token xsp;
9415 xsp = jj_scanpos;
9416 if (jj_scan_token(102)) {
9417 jj_scanpos = xsp;
9418 if (jj_scan_token(103)) return true;
9419 }
9420 if (jj_3R_154()) return true;
9421 return false;
9422 }
9423
9424 private boolean jj_3_15() {
9425 if (jj_3R_84()) return true;
9426 if (jj_scan_token(ENUM)) return true;
9427 if (jj_scan_token(IDENTIFIER)) return true;
9428 return false;
9429 }
9430
9431 private boolean jj_3R_186() {
9432 Token xsp;
9433 xsp = jj_scanpos;
9434 if (jj_scan_token(104)) {
9435 jj_scanpos = xsp;
9436 if (jj_scan_token(105)) {
9437 jj_scanpos = xsp;
9438 if (jj_scan_token(109)) return true;
9439 }
9440 }
9441 if (jj_3R_185()) return true;
9442 return false;
9443 }
9444
9445 private boolean jj_3R_404() {
9446 if (jj_3R_84()) return true;
9447 if (jj_3R_311()) return true;
9448 return false;
9449 }
9450
9451 private boolean jj_3R_214() {
9452 if (jj_scan_token(INCR)) return true;
9453 if (jj_3R_102()) return true;
9454 return false;
9455 }
9456
9457 private boolean jj_3R_135() {
9458 if (jj_3R_141()) return true;
9459 return false;
9460 }
9461
9462 private boolean jj_3R_403() {
9463 if (jj_3R_309()) return true;
9464 return false;
9465 }
9466
9467 private boolean jj_3R_203() {
9468 if (jj_3R_216()) return true;
9469 return false;
9470 }
9471
9472 private boolean jj_3R_134() {
9473 if (jj_scan_token(TESTAAAA)) return true;
9474 return false;
9475 }
9476
9477 private boolean jj_3R_202() {
9478 if (jj_3R_215()) return true;
9479 return false;
9480 }
9481
9482 private boolean jj_3R_402() {
9483 if (jj_3R_84()) return true;
9484 if (jj_3R_307()) return true;
9485 return false;
9486 }
9487
9488 private boolean jj_3_26() {
9489 Token xsp;
9490 xsp = jj_scanpos;
9491 if (jj_scan_token(110)) {
9492 jj_scanpos = xsp;
9493 if (jj_3R_107()) return true;
9494 }
9495 if (jj_3R_108()) return true;
9496 return false;
9497 }
9498
9499 private boolean jj_3R_201() {
9500 if (jj_3R_214()) return true;
9501 return false;
9502 }
9503
9504 private boolean jj_3R_133() {
9505 if (jj_scan_token(VOLATILE)) return true;
9506 return false;
9507 }
9508
9509 private boolean jj_3R_401() {
9510 if (jj_3R_306()) return true;
9511 return false;
9512 }
9513
9514 private boolean jj_3R_185() {
9515 Token xsp;
9516 xsp = jj_scanpos;
9517 if (jj_3R_200()) {
9518 jj_scanpos = xsp;
9519 if (jj_3R_201()) {
9520 jj_scanpos = xsp;
9521 if (jj_3R_202()) {
9522 jj_scanpos = xsp;
9523 if (jj_3R_203()) return true;
9524 }
9525 }
9526 }
9527 return false;
9528 }
9529
9530 private boolean jj_3R_200() {
9531 Token xsp;
9532 xsp = jj_scanpos;
9533 if (jj_scan_token(102)) {
9534 jj_scanpos = xsp;
9535 if (jj_scan_token(103)) return true;
9536 }
9537 if (jj_3R_185()) return true;
9538 return false;
9539 }
9540
9541 private boolean jj_3R_400() {
9542 if (jj_3R_305()) return true;
9543 return false;
9544 }
9545
9546 private boolean jj_3R_132() {
9547 if (jj_scan_token(TRANSIENT)) return true;
9548 return false;
9549 }
9550
9551 private boolean jj_3R_383() {
9552 Token xsp;
9553 xsp = jj_scanpos;
9554 if (jj_scan_token(83)) {
9555 jj_scanpos = xsp;
9556 if (jj_3R_400()) {
9557 jj_scanpos = xsp;
9558 if (jj_3R_401()) {
9559 jj_scanpos = xsp;
9560 if (jj_3R_402()) {
9561 jj_scanpos = xsp;
9562 if (jj_3R_403()) {
9563 jj_scanpos = xsp;
9564 if (jj_3R_404()) return true;
9565 }
9566 }
9567 }
9568 }
9569 }
9570 return false;
9571 }
9572
9573 private boolean jj_3R_154() {
9574 if (jj_3R_185()) return true;
9575 Token xsp;
9576 while (true) {
9577 xsp = jj_scanpos;
9578 if (jj_3R_186()) { jj_scanpos = xsp; break; }
9579 }
9580 return false;
9581 }
9582
9583 private boolean jj_3R_131() {
9584 if (jj_scan_token(NATIVE)) return true;
9585 return false;
9586 }
9587
9588 private boolean jj_3R_343() {
9589 Token xsp;
9590 xsp = jj_scanpos;
9591 if (jj_scan_token(89)) {
9592 jj_scanpos = xsp;
9593 if (jj_scan_token(88)) {
9594 jj_scanpos = xsp;
9595 if (jj_scan_token(95)) {
9596 jj_scanpos = xsp;
9597 if (jj_scan_token(96)) return true;
9598 }
9599 }
9600 }
9601 if (jj_3R_312()) return true;
9602 return false;
9603 }
9604
9605 private boolean jj_3R_313() {
9606 if (jj_scan_token(INSTANCEOF)) return true;
9607 if (jj_3R_111()) return true;
9608 return false;
9609 }
9610
9611 private boolean jj_3R_108() {
9612 if (jj_3R_154()) return true;
9613 Token xsp;
9614 while (true) {
9615 xsp = jj_scanpos;
9616 if (jj_3R_155()) { jj_scanpos = xsp; break; }
9617 }
9618 return false;
9619 }
9620
9621 private boolean jj_3R_354() {
9622 if (jj_scan_token(EXTENDS)) return true;
9623 if (jj_3R_363()) return true;
9624 return false;
9625 }
9626
9627 private boolean jj_3R_130() {
9628 if (jj_scan_token(SYNCHRONIZED)) return true;
9629 return false;
9630 }
9631
9632 private boolean jj_3R_302() {
9633 Token xsp;
9634 xsp = jj_scanpos;
9635 if (jj_scan_token(94)) {
9636 jj_scanpos = xsp;
9637 if (jj_scan_token(97)) return true;
9638 }
9639 if (jj_3R_291()) return true;
9640 return false;
9641 }
9642
9643 private boolean jj_3R_129() {
9644 if (jj_scan_token(ABSTRACT)) return true;
9645 return false;
9646 }
9647
9648 private boolean jj_3R_312() {
9649 if (jj_3R_108()) return true;
9650 Token xsp;
9651 while (true) {
9652 xsp = jj_scanpos;
9653 if (jj_3_26()) { jj_scanpos = xsp; break; }
9654 }
9655 return false;
9656 }
9657
9658 private boolean jj_3R_128() {
9659 if (jj_scan_token(FINAL)) return true;
9660 return false;
9661 }
9662
9663 private boolean jj_3R_292() {
9664 if (jj_scan_token(BIT_AND)) return true;
9665 if (jj_3R_288()) return true;
9666 return false;
9667 }
9668
9669 private boolean jj_3R_127() {
9670 if (jj_scan_token(PRIVATE)) return true;
9671 return false;
9672 }
9673
9674 private boolean jj_3R_301() {
9675 if (jj_3R_312()) return true;
9676 Token xsp;
9677 while (true) {
9678 xsp = jj_scanpos;
9679 if (jj_3R_343()) { jj_scanpos = xsp; break; }
9680 }
9681 return false;
9682 }
9683
9684 private boolean jj_3R_353() {
9685 if (jj_3R_143()) return true;
9686 return false;
9687 }
9688
9689 private boolean jj_3R_282() {
9690 if (jj_scan_token(BIT_OR)) return true;
9691 if (jj_3R_259()) return true;
9692 return false;
9693 }
9694
9695 private boolean jj_3R_126() {
9696 if (jj_scan_token(PROTECTED)) return true;
9697 return false;
9698 }
9699
9700 private boolean jj_3R_289() {
9701 if (jj_scan_token(XOR)) return true;
9702 if (jj_3R_281()) return true;
9703 return false;
9704 }
9705
9706 private boolean jj_3R_291() {
9707 if (jj_3R_301()) return true;
9708 Token xsp;
9709 xsp = jj_scanpos;
9710 if (jj_3R_313()) jj_scanpos = xsp;
9711 return false;
9712 }
9713
9714 private boolean jj_3R_125() {
9715 if (jj_scan_token(STATIC)) return true;
9716 return false;
9717 }
9718
9719 private boolean jj_3R_260() {
9720 if (jj_scan_token(SC_AND)) return true;
9721 if (jj_3R_235()) return true;
9722 return false;
9723 }
9724
9725 private boolean jj_3R_288() {
9726 if (jj_3R_291()) return true;
9727 Token xsp;
9728 while (true) {
9729 xsp = jj_scanpos;
9730 if (jj_3R_302()) { jj_scanpos = xsp; break; }
9731 }
9732 return false;
9733 }
9734
9735 private boolean jj_3R_236() {
9736 if (jj_scan_token(SC_OR)) return true;
9737 if (jj_3R_218()) return true;
9738 return false;
9739 }
9740
9741 private boolean jj_3R_124() {
9742 if (jj_scan_token(PUBLIC)) return true;
9743 return false;
9744 }
9745
9746 private boolean jj_3R_281() {
9747 if (jj_3R_288()) return true;
9748 Token xsp;
9749 while (true) {
9750 xsp = jj_scanpos;
9751 if (jj_3R_292()) { jj_scanpos = xsp; break; }
9752 }
9753 return false;
9754 }
9755
9756 private boolean jj_3_52() {
9757 Token xsp;
9758 xsp = jj_scanpos;
9759 if (jj_3R_124()) {
9760 jj_scanpos = xsp;
9761 if (jj_3R_125()) {
9762 jj_scanpos = xsp;
9763 if (jj_3R_126()) {
9764 jj_scanpos = xsp;
9765 if (jj_3R_127()) {
9766 jj_scanpos = xsp;
9767 if (jj_3R_128()) {
9768 jj_scanpos = xsp;
9769 if (jj_3R_129()) {
9770 jj_scanpos = xsp;
9771 if (jj_3R_130()) {
9772 jj_scanpos = xsp;
9773 if (jj_3R_131()) {
9774 jj_scanpos = xsp;
9775 if (jj_3R_132()) {
9776 jj_scanpos = xsp;
9777 if (jj_3R_133()) {
9778 jj_scanpos = xsp;
9779 if (jj_3R_134()) {
9780 jj_scanpos = xsp;
9781 if (jj_3R_135()) return true;
9782 }
9783 }
9784 }
9785 }
9786 }
9787 }
9788 }
9789 }
9790 }
9791 }
9792 }
9793 return false;
9794 }
9795
9796 private boolean jj_3R_219() {
9797 if (jj_scan_token(HOOK)) return true;
9798 if (jj_3R_117()) return true;
9799 if (jj_scan_token(COLON)) return true;
9800 if (jj_3R_191()) return true;
9801 return false;
9802 }
9803
9804 private boolean jj_3R_84() {
9805 Token xsp;
9806 while (true) {
9807 xsp = jj_scanpos;
9808 if (jj_3_52()) { jj_scanpos = xsp; break; }
9809 }
9810 return false;
9811 }
9812
9813 private boolean jj_3R_355() {
9814 if (jj_3R_383()) return true;
9815 return false;
9816 }
9817
9818 private boolean jj_3R_344() {
9819 if (jj_3R_345()) return true;
9820 return false;
9821 }
9822
9823 private boolean jj_3R_259() {
9824 if (jj_3R_281()) return true;
9825 Token xsp;
9826 while (true) {
9827 xsp = jj_scanpos;
9828 if (jj_3R_289()) { jj_scanpos = xsp; break; }
9829 }
9830 return false;
9831 }
9832
9833 private boolean jj_3R_410() {
9834 if (jj_3R_416()) return true;
9835 return false;
9836 }
9837
9838 private boolean jj_3R_235() {
9839 if (jj_3R_259()) return true;
9840 Token xsp;
9841 while (true) {
9842 xsp = jj_scanpos;
9843 if (jj_3R_282()) { jj_scanpos = xsp; break; }
9844 }
9845 return false;
9846 }
9847
9848 private boolean jj_3R_225() {
9849 if (jj_scan_token(INTERFACE)) return true;
9850 if (jj_3R_105()) return true;
9851 Token xsp;
9852 xsp = jj_scanpos;
9853 if (jj_3R_353()) jj_scanpos = xsp;
9854 xsp = jj_scanpos;
9855 if (jj_3R_354()) jj_scanpos = xsp;
9856 if (jj_scan_token(LBRACE)) return true;
9857 while (true) {
9858 xsp = jj_scanpos;
9859 if (jj_3R_355()) { jj_scanpos = xsp; break; }
9860 }
9861 if (jj_scan_token(RBRACE)) return true;
9862 return false;
9863 }
9864
9865 private boolean jj_3R_416() {
9866 if (jj_scan_token(_DEFAULT)) return true;
9867 if (jj_3R_123()) return true;
9868 return false;
9869 }
9870
9871 private boolean jj_3R_218() {
9872 if (jj_3R_235()) return true;
9873 Token xsp;
9874 while (true) {
9875 xsp = jj_scanpos;
9876 if (jj_3R_260()) { jj_scanpos = xsp; break; }
9877 }
9878 return false;
9879 }
9880
9881 private boolean jj_3R_380() {
9882 if (jj_scan_token(SEMICOLON)) return true;
9883 return false;
9884 }
9885
9886 private boolean jj_3R_205() {
9887 if (jj_3R_218()) return true;
9888 Token xsp;
9889 while (true) {
9890 xsp = jj_scanpos;
9891 if (jj_3R_236()) { jj_scanpos = xsp; break; }
9892 }
9893 return false;
9894 }
9895
9896 private boolean jj_3R_398() {
9897 if (jj_3R_412()) return true;
9898 return false;
9899 }
9900
9901 private boolean jj_3R_191() {
9902 if (jj_3R_205()) return true;
9903 Token xsp;
9904 xsp = jj_scanpos;
9905 if (jj_3R_219()) jj_scanpos = xsp;
9906 return false;
9907 }
9908
9909 private boolean jj_3R_397() {
9910 if (jj_3R_303()) return true;
9911 return false;
9912 }
9913
9914 private boolean jj_3R_315() {
9915 if (jj_3R_345()) return true;
9916 return false;
9917 }
9918
9919 private boolean jj_3R_396() {
9920 if (jj_3R_307()) return true;
9921 return false;
9922 }
9923
9924 private boolean jj_3_51() {
9925 if (jj_3R_111()) return true;
9926 if (jj_scan_token(IDENTIFIER)) return true;
9927 if (jj_scan_token(LPAREN)) return true;
9928 return false;
9929 }
9930
9931 private boolean jj_3R_395() {
9932 if (jj_3R_411()) return true;
9933 return false;
9934 }
9935
9936 private boolean jj_3R_106() {
9937 Token xsp;
9938 xsp = jj_scanpos;
9939 if (jj_scan_token(87)) {
9940 jj_scanpos = xsp;
9941 if (jj_scan_token(113)) {
9942 jj_scanpos = xsp;
9943 if (jj_scan_token(114)) {
9944 jj_scanpos = xsp;
9945 if (jj_scan_token(118)) {
9946 jj_scanpos = xsp;
9947 if (jj_scan_token(111)) {
9948 jj_scanpos = xsp;
9949 if (jj_scan_token(112)) {
9950 jj_scanpos = xsp;
9951 if (jj_scan_token(119)) {
9952 jj_scanpos = xsp;
9953 if (jj_scan_token(120)) {
9954 jj_scanpos = xsp;
9955 if (jj_scan_token(121)) {
9956 jj_scanpos = xsp;
9957 if (jj_scan_token(115)) {
9958 jj_scanpos = xsp;
9959 if (jj_scan_token(117)) {
9960 jj_scanpos = xsp;
9961 if (jj_scan_token(116)) return true;
9962 }
9963 }
9964 }
9965 }
9966 }
9967 }
9968 }
9969 }
9970 }
9971 }
9972 }
9973 return false;
9974 }
9975
9976 private boolean jj_3_25() {
9977 if (jj_3R_102()) return true;
9978 if (jj_3R_106()) return true;
9979 return false;
9980 }
9981
9982 private boolean jj_3R_190() {
9983 if (jj_3R_102()) return true;
9984 if (jj_3R_106()) return true;
9985 if (jj_3R_117()) return true;
9986 return false;
9987 }
9988
9989 private boolean jj_3R_394() {
9990 if (jj_3R_111()) return true;
9991 if (jj_scan_token(IDENTIFIER)) return true;
9992 if (jj_scan_token(LPAREN)) return true;
9993 if (jj_scan_token(RPAREN)) return true;
9994 Token xsp;
9995 xsp = jj_scanpos;
9996 if (jj_3R_410()) jj_scanpos = xsp;
9997 if (jj_scan_token(SEMICOLON)) return true;
9998 return false;
9999 }
10000
10001 private boolean jj_3R_379() {
10002 if (jj_3R_84()) return true;
10003 Token xsp;
10004 xsp = jj_scanpos;
10005 if (jj_3R_394()) {
10006 jj_scanpos = xsp;
10007 if (jj_3R_395()) {
10008 jj_scanpos = xsp;
10009 if (jj_3R_396()) {
10010 jj_scanpos = xsp;
10011 if (jj_3R_397()) {
10012 jj_scanpos = xsp;
10013 if (jj_3R_398()) return true;
10014 }
10015 }
10016 }
10017 }
10018 return false;
10019 }
10020
10021 private boolean jj_3R_345() {
10022 Token xsp;
10023 xsp = jj_scanpos;
10024 if (jj_3R_379()) {
10025 jj_scanpos = xsp;
10026 if (jj_3R_380()) return true;
10027 }
10028 return false;
10029 }
10030
10031 private boolean jj_3R_165() {
10032 if (jj_3R_191()) return true;
10033 return false;
10034 }
10035
10036 private boolean jj_3R_408() {
10037 if (jj_3R_137()) return true;
10038 return false;
10039 }
10040
10041 /** Generated Token Manager. */
10042 public JavaParserTokenManager token_source;
10043 JavaCharStream jj_input_stream;
10044 /** Current token. */
10045 public Token token;
10046 /** Next token. */
10047 public Token jj_nt;
10048 private int jj_ntk;
10049 private Token jj_scanpos, jj_lastpos;
10050 private int jj_la;
10051 private int jj_gen;
10052 final private int[] jj_la1 = new int[202];
10053 static private int[] jj_la1_0;
10054 static private int[] jj_la1_1;
10055 static private int[] jj_la1_2;
10056 static private int[] jj_la1_3;
10057 static {
10058 jj_la1_init_0();
10059 jj_la1_init_1();
10060 jj_la1_init_2();
10061 jj_la1_init_3();
10062 }
10063 private static void jj_la1_init_0() {
10064 jj_la1_0 = new int[] {0x0,0x90202000,0x0,0x0,0x0,0x90202000,0x0,0x0,0x80002000,0x80002000,0x200000,0x0,0x0,0x0,0x80002000,0x0,0x0,0x80002000,0x80002000,0x0,0x0,0x0,0x0,0x20000000,0x0,0x9432e000,0x0,0x0,0x80002000,0x80002000,0x0,0x0,0x84128000,0x0,0x80002000,0x80002000,0x0,0x0,0x0,0x0,0x2000,0x2000,0x0,0x0,0x80002000,0x80002000,0x0,0x20000000,0x9432a000,0x0,0x8412a000,0x80000000,0x80000000,0x0,0x0,0x0,0x10004000,0x0,0x5412c000,0x5412c000,0x0,0x0,0x80002000,0x80002000,0x0,0x0,0x0,0x0,0x0,0x0,0x8412a000,0x0,0x0,0x0,0x0,0x0,0x0,0xd6b3e000,0x5412c000,0x0,0x4128000,0x4128000,0x0,0x4128000,0x4128000,0x10004000,0x10004000,0x0,0x0,0x0,0x5412c000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x5412c000,0x0,0x0,0x5412c000,0x40004000,0x0,0x0,0x0,0x0,0x0,0x4000,0x0,0x4000,0x40000000,0x0,0x10004000,0x0,0x40000000,0x40000000,0x5412c000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x5693c000,0x0,0xd6b3e000,0xd6b3e000,0x0,0x0,0x0,0x5412c000,0x1040000,0xd6b3e000,0x1040000,0x8000000,0xd412e000,0x5412c000,0x5412c000,0xd412e000,0x5412c000,0x0,0x4000,0x4000,0x5412c000,0x80000,0x0,0x4000,0x0,0x0,0x0,0x5412c000,0x5412c000,0x0,0x9432a000,0x9432a000,0x1000000,0x14328000,0x9432a000,0x80002000,0x200000,0x0,0x20000000,0x0,0x0,0x0,0x0,0x0,0x9432e000,0x80002000,0x0,0x9432e000,0x0,0x20000000,0x10200000,0x8412a000,0x9432e000,0x0,0x0,0x0,0x20000000,0x4128000,0x4128000,0x20000000,0x0,0x0,0x0,0x8412a000,0x0,};
10065 }
10066 private static void jj_la1_init_1() {
10067 jj_la1_1 = new int[] {0x40,0x11338a00,0x4040,0x4040,0x40,0x11338a00,0x4000,0x40,0x1220000,0x1220000,0x200,0x0,0x100000,0x0,0x11338800,0x0,0x0,0x1220000,0x1220000,0x0,0x0,0x0,0x0,0x0,0x20,0x913b8f02,0x0,0x0,0x338000,0x338000,0x0,0x0,0x101b8502,0x0,0x1338800,0x1338800,0x0,0x0,0x0,0x0,0x220000,0x220000,0x0,0x0,0x338000,0x338000,0x0,0x0,0x913b8f02,0x0,0x113b8d02,0x10138000,0x10138000,0x0,0x0,0x0,0x0,0x0,0xa2483502,0xa2483502,0x0,0x0,0x1338800,0x1338800,0x0,0x0,0x8000000,0x0,0x0,0x0,0x113b8d02,0x0,0x0,0x38000,0x38000,0x0,0x8000000,0xf7ffbf16,0xa2483502,0x100000,0x80502,0x80502,0x0,0x80502,0x80080502,0x0,0x0,0x0,0x0,0x0,0xa2483502,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xa2483502,0x0,0x0,0xa2483502,0x22403000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x22002000,0x1000,0x0,0x0,0x20002000,0x20000000,0xa2483502,0x0,0x0,0x0,0x0,0x1000,0x0,0x0,0xe7cc3516,0x0,0xf7ffbf16,0xf7ffbf16,0x0,0x0,0x0,0xa2483502,0x0,0xf7ffbf16,0x0,0x0,0xb37bbd02,0xa2483502,0xa2483502,0xb37bbd02,0xa2483502,0x0,0x0,0x0,0xa2483502,0x0,0x1,0x0,0x0,0x0,0x0,0xa2483502,0xa2483502,0x0,0x113b8f02,0x113b8f02,0x0,0x80702,0x113b8f02,0x11338800,0x200,0x0,0x0,0x20,0x20,0x0,0x0,0x0,0x913b8f02,0x11338800,0x0,0x913b8f02,0x0,0x0,0x200,0x813b8d02,0x913b8f02,0x0,0x0,0x0,0x400000,0x80502,0x80502,0x400000,0x0,0x0,0x0,0x113b8d02,0x0,};
10068 }
10069 private static void jj_la1_init_2() {
10070 jj_la1_2 = new int[] {0x0,0x480001,0x400000,0x400000,0x0,0x480001,0x400000,0x0,0x0,0x0,0x0,0x400000,0x0,0x200000,0x480001,0x400000,0x400000,0x0,0x0,0x2000000,0x2000000,0x200000,0x2000000,0x0,0x0,0x2488401,0x400000,0x400000,0x0,0x0,0x400000,0x80000,0x400401,0x400000,0x0,0x0,0x400000,0x2000000,0x400000,0x400000,0x0,0x0,0x400000,0x400000,0x0,0x0,0x2000000,0x0,0x2480401,0x80000,0x400401,0x1,0x1,0x400000,0x100000,0x800000,0x400,0x20000,0xc00a744,0xc00a744,0x100000,0x400000,0x0,0x0,0x400000,0x2000000,0x0,0x88000,0x20000,0x100000,0x400401,0x0,0x400000,0x0,0x0,0x2000000,0x0,0x48a747,0x2744,0x0,0x0,0x400,0x20000,0x0,0x400,0x400,0x400,0x2000000,0x100000,0x2000000,0xc002744,0x800000,0x10000000,0x0,0x0,0x0,0x0,0x0,0x40000000,0x40000000,0x0,0x83000000,0x83000000,0x1000000,0x1000000,0x0,0x0,0x0,0x0,0x0,0xc002744,0xc000000,0xc000000,0x2744,0xc002744,0x2000,0x0,0x0,0x2000,0x200000,0x400,0x200000,0x400,0x344,0x2000,0x400,0x222000,0x344,0x0,0xc002744,0x100000,0x2000000,0x8000,0x22000,0x0,0x20000,0x20000,0x8a746,0x20000000,0x48a747,0x48a747,0x100000,0x800000,0x800000,0x2744,0x0,0x48a747,0x0,0x0,0x402745,0xc002744,0x2744,0x482745,0x2744,0x100000,0x400,0x400,0xc002744,0x0,0x0,0x400,0x400000,0x400,0x100000,0xc40a744,0xc40a744,0x100000,0x480401,0x480401,0x0,0x400400,0x480401,0x400001,0x0,0x2000000,0x0,0x0,0x0,0x100000,0x100000,0x100000,0x2488401,0x400401,0x100000,0x2488401,0x80000,0x0,0x0,0x2400400,0x2480401,0x2000,0x8000,0x0,0x0,0x10000400,0x400,0x0,0x100000,0x20000,0x100000,0x400401,0x0,};
10071 }
10072 private static void jj_la1_init_3() {
10073 jj_la1_3 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf0,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000000,0x0,0x0,0x0,0x0,0x0,0x30,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf0,0x3ff8000,0x0,0x4,0x8,0x800,0x1000,0x400,0x2,0x2,0x0,0x1,0x1,0x0,0x4000,0xc0,0xc0,0x2300,0x2300,0xc0,0xf0,0x0,0x0,0x0,0x0,0x0,0x30,0x30,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x30,0x0,0x30,0x30,0x0,0x3ff8030,0x3ff8030,0x30,0x0,0x30,0x0,0x0,0x30,0xf0,0x30,0x30,0x30,0x0,0x0,0x0,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0xf0,0xf0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x400,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000000,};
10074 }
10075 final private JJCalls[] jj_2_rtns = new JJCalls[62];
10076 private boolean jj_rescan = false;
10077 private int jj_gc = 0;
10078
10079 /** Constructor with InputStream. */
10080 public JavaParser(java.io.InputStream stream) {
10081 this(stream, null);
10082 }
10083 /** Constructor with InputStream and supplied encoding */
10084 public JavaParser(java.io.InputStream stream, String encoding) {
10085 try { jj_input_stream = new JavaCharStream(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); }
10086 token_source = new JavaParserTokenManager(jj_input_stream);
10087 token = new Token();
10088 jj_ntk = -1;
10089 jj_gen = 0;
10090 for (int i = 0; i < 202; i++) jj_la1[i] = -1;
10091 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
10092 }
10093
10094 /** Reinitialise. */
10095 public void ReInit(java.io.InputStream stream) {
10096 ReInit(stream, null);
10097 }
10098 /** Reinitialise. */
10099 public void ReInit(java.io.InputStream stream, String encoding) {
10100 try { jj_input_stream.ReInit(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); }
10101 token_source.ReInit(jj_input_stream);
10102 token = new Token();
10103 jj_ntk = -1;
10104 jj_gen = 0;
10105 for (int i = 0; i < 202; i++) jj_la1[i] = -1;
10106 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
10107 }
10108
10109 /** Constructor. */
10110 public JavaParser(java.io.Reader stream) {
10111 jj_input_stream = new JavaCharStream(stream, 1, 1);
10112 token_source = new JavaParserTokenManager(jj_input_stream);
10113 token = new Token();
10114 jj_ntk = -1;
10115 jj_gen = 0;
10116 for (int i = 0; i < 202; i++) jj_la1[i] = -1;
10117 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
10118 }
10119
10120 /** Reinitialise. */
10121 public void ReInit(java.io.Reader stream) {
10122 jj_input_stream.ReInit(stream, 1, 1);
10123 token_source.ReInit(jj_input_stream);
10124 token = new Token();
10125 jj_ntk = -1;
10126 jj_gen = 0;
10127 for (int i = 0; i < 202; i++) jj_la1[i] = -1;
10128 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
10129 }
10130
10131 /** Constructor with generated Token Manager. */
10132 public JavaParser(JavaParserTokenManager tm) {
10133 token_source = tm;
10134 token = new Token();
10135 jj_ntk = -1;
10136 jj_gen = 0;
10137 for (int i = 0; i < 202; i++) jj_la1[i] = -1;
10138 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
10139 }
10140
10141 /** Reinitialise. */
10142 public void ReInit(JavaParserTokenManager tm) {
10143 token_source = tm;
10144 token = new Token();
10145 jj_ntk = -1;
10146 jj_gen = 0;
10147 for (int i = 0; i < 202; i++) jj_la1[i] = -1;
10148 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
10149 }
10150
10151 private Token jj_consume_token(int kind) throws ParseException {
10152 Token oldToken;
10153 if ((oldToken = token).next != null) token = token.next;
10154 else token = token.next = token_source.getNextToken();
10155 jj_ntk = -1;
10156 if (token.kind == kind) {
10157 jj_gen++;
10158 if (++jj_gc > 100) {
10159 jj_gc = 0;
10160 for (int i = 0; i < jj_2_rtns.length; i++) {
10161 JJCalls c = jj_2_rtns[i];
10162 while (c != null) {
10163 if (c.gen < jj_gen) c.first = null;
10164 c = c.next;
10165 }
10166 }
10167 }
10168 return token;
10169 }
10170 token = oldToken;
10171 jj_kind = kind;
10172 throw generateParseException();
10173 }
10174
10175 static private final class LookaheadSuccess extends java.lang.Error { }
10176 final private LookaheadSuccess jj_ls = new LookaheadSuccess();
10177 private boolean jj_scan_token(int kind) {
10178 if (jj_scanpos == jj_lastpos) {
10179 jj_la--;
10180 if (jj_scanpos.next == null) {
10181 jj_lastpos = jj_scanpos = jj_scanpos.next = token_source.getNextToken();
10182 } else {
10183 jj_lastpos = jj_scanpos = jj_scanpos.next;
10184 }
10185 } else {
10186 jj_scanpos = jj_scanpos.next;
10187 }
10188 if (jj_rescan) {
10189 int i = 0; Token tok = token;
10190 while (tok != null && tok != jj_scanpos) { i++; tok = tok.next; }
10191 if (tok != null) jj_add_error_token(kind, i);
10192 }
10193 if (jj_scanpos.kind != kind) return true;
10194 if (jj_la == 0 && jj_scanpos == jj_lastpos) throw jj_ls;
10195 return false;
10196 }
10197
10198
10199 /** Get the next Token. */
10200 final public Token getNextToken() {
10201 if (token.next != null) token = token.next;
10202 else token = token.next = token_source.getNextToken();
10203 jj_ntk = -1;
10204 jj_gen++;
10205 return token;
10206 }
10207
10208 /** Get the specific Token. */
10209 final public Token getToken(int index) {
10210 Token t = token;
10211 for (int i = 0; i < index; i++) {
10212 if (t.next != null) t = t.next;
10213 else t = t.next = token_source.getNextToken();
10214 }
10215 return t;
10216 }
10217
10218 private int jj_ntk() {
10219 if ((jj_nt=token.next) == null)
10220 return (jj_ntk = (token.next=token_source.getNextToken()).kind);
10221 else
10222 return (jj_ntk = jj_nt.kind);
10223 }
10224
10225 private java.util.List jj_expentries = new java.util.ArrayList();
10226 private int[] jj_expentry;
10227 private int jj_kind = -1;
10228 private int[] jj_lasttokens = new int[100];
10229 private int jj_endpos;
10230
10231 private void jj_add_error_token(int kind, int pos) {
10232 if (pos >= 100) return;
10233 if (pos == jj_endpos + 1) {
10234 jj_lasttokens[jj_endpos++] = kind;
10235 } else if (jj_endpos != 0) {
10236 jj_expentry = new int[jj_endpos];
10237 for (int i = 0; i < jj_endpos; i++) {
10238 jj_expentry[i] = jj_lasttokens[i];
10239 }
10240 jj_entries_loop: for (java.util.Iterator it = jj_expentries.iterator(); it.hasNext();) {
10241 int[] oldentry = (int[])(it.next());
10242 if (oldentry.length == jj_expentry.length) {
10243 for (int i = 0; i < jj_expentry.length; i++) {
10244 if (oldentry[i] != jj_expentry[i]) {
10245 continue jj_entries_loop;
10246 }
10247 }
10248 jj_expentries.add(jj_expentry);
10249 break jj_entries_loop;
10250 }
10251 }
10252 if (pos != 0) jj_lasttokens[(jj_endpos = pos) - 1] = kind;
10253 }
10254 }
10255
10256 /** Generate ParseException. */
10257 public ParseException generateParseException() {
10258 jj_expentries.clear();
10259 boolean[] la1tokens = new boolean[123];
10260 if (jj_kind >= 0) {
10261 la1tokens[jj_kind] = true;
10262 jj_kind = -1;
10263 }
10264 for (int i = 0; i < 202; i++) {
10265 if (jj_la1[i] == jj_gen) {
10266 for (int j = 0; j < 32; j++) {
10267 if ((jj_la1_0[i] & (1<<j)) != 0) {
10268 la1tokens[j] = true;
10269 }
10270 if ((jj_la1_1[i] & (1<<j)) != 0) {
10271 la1tokens[32+j] = true;
10272 }
10273 if ((jj_la1_2[i] & (1<<j)) != 0) {
10274 la1tokens[64+j] = true;
10275 }
10276 if ((jj_la1_3[i] & (1<<j)) != 0) {
10277 la1tokens[96+j] = true;
10278 }
10279 }
10280 }
10281 }
10282 for (int i = 0; i < 123; i++) {
10283 if (la1tokens[i]) {
10284 jj_expentry = new int[1];
10285 jj_expentry[0] = i;
10286 jj_expentries.add(jj_expentry);
10287 }
10288 }
10289 jj_endpos = 0;
10290 jj_rescan_token();
10291 jj_add_error_token(0, 0);
10292 int[][] exptokseq = new int[jj_expentries.size()][];
10293 for (int i = 0; i < jj_expentries.size(); i++) {
10294 exptokseq[i] = (int[])jj_expentries.get(i);
10295 }
10296 return new ParseException(token, exptokseq, tokenImage);
10297 }
10298
10299 /** Enable tracing. */
10300 final public void enable_tracing() {
10301 }
10302
10303 /** Disable tracing. */
10304 final public void disable_tracing() {
10305 }
10306
10307 private void jj_rescan_token() {
10308 jj_rescan = true;
10309 for (int i = 0; i < 62; i++) {
10310 try {
10311 JJCalls p = jj_2_rtns[i];
10312 do {
10313 if (p.gen > jj_gen) {
10314 jj_la = p.arg; jj_lastpos = jj_scanpos = p.first;
10315 switch (i) {
10316 case 0: jj_3_1(); break;
10317 case 1: jj_3_2(); break;
10318 case 2: jj_3_3(); break;
10319 case 3: jj_3_4(); break;
10320 case 4: jj_3_5(); break;
10321 case 5: jj_3_6(); break;
10322 case 6: jj_3_7(); break;
10323 case 7: jj_3_8(); break;
10324 case 8: jj_3_9(); break;
10325 case 9: jj_3_10(); break;
10326 case 10: jj_3_11(); break;
10327 case 11: jj_3_12(); break;
10328 case 12: jj_3_13(); break;
10329 case 13: jj_3_14(); break;
10330 case 14: jj_3_15(); break;
10331 case 15: jj_3_16(); break;
10332 case 16: jj_3_17(); break;
10333 case 17: jj_3_18(); break;
10334 case 18: jj_3_19(); break;
10335 case 19: jj_3_20(); break;
10336 case 20: jj_3_21(); break;
10337 case 21: jj_3_22(); break;
10338 case 22: jj_3_23(); break;
10339 case 23: jj_3_24(); break;
10340 case 24: jj_3_25(); break;
10341 case 25: jj_3_26(); break;
10342 case 26: jj_3_27(); break;
10343 case 27: jj_3_28(); break;
10344 case 28: jj_3_29(); break;
10345 case 29: jj_3_30(); break;
10346 case 30: jj_3_31(); break;
10347 case 31: jj_3_32(); break;
10348 case 32: jj_3_33(); break;
10349 case 33: jj_3_34(); break;
10350 case 34: jj_3_35(); break;
10351 case 35: jj_3_36(); break;
10352 case 36: jj_3_37(); break;
10353 case 37: jj_3_38(); break;
10354 case 38: jj_3_39(); break;
10355 case 39: jj_3_40(); break;
10356 case 40: jj_3_41(); break;
10357 case 41: jj_3_42(); break;
10358 case 42: jj_3_43(); break;
10359 case 43: jj_3_44(); break;
10360 case 44: jj_3_45(); break;
10361 case 45: jj_3_46(); break;
10362 case 46: jj_3_47(); break;
10363 case 47: jj_3_48(); break;
10364 case 48: jj_3_49(); break;
10365 case 49: jj_3_50(); break;
10366 case 50: jj_3_51(); break;
10367 case 51: jj_3_52(); break;
10368 case 52: jj_3_53(); break;
10369 case 53: jj_3_54(); break;
10370 case 54: jj_3_55(); break;
10371 case 55: jj_3_56(); break;
10372 case 56: jj_3_57(); break;
10373 case 57: jj_3_58(); break;
10374 case 58: jj_3_59(); break;
10375 case 59: jj_3_60(); break;
10376 case 60: jj_3_61(); break;
10377 case 61: jj_3_62(); break;
10378 }
10379 }
10380 p = p.next;
10381 } while (p != null);
10382 } catch(LookaheadSuccess ls) { }
10383 }
10384 jj_rescan = false;
10385 }
10386
10387 private void jj_save(int index, int xla) {
10388 JJCalls p = jj_2_rtns[index];
10389 while (p.gen > jj_gen) {
10390 if (p.next == null) { p = p.next = new JJCalls(); break; }
10391 p = p.next;
10392 }
10393 p.gen = jj_gen + xla - jj_la; p.first = token; p.arg = xla;
10394 }
10395
10396 static final class JJCalls {
10397 int gen;
10398 Token first;
10399 int arg;
10400 JJCalls next;
10401 }
10402
10403 }