diff --git a/org.eclipse.jdt.core.compiler.batch/grammar/java.g b/org.eclipse.jdt.core.compiler.batch/grammar/java.g index 40ed20beb08..c250c18a20d 100644 --- a/org.eclipse.jdt.core.compiler.batch/grammar/java.g +++ b/org.eclipse.jdt.core.compiler.batch/grammar/java.g @@ -1,7 +1,15 @@ --main options -%options ACTION, AN=JavaAction.java, GP=java, -%options FILE-PREFIX=java, ESCAPE=$, PREFIX=TokenName, OUTPUT-SIZE=125 , -%options NOGOTO-DEFAULT, SINGLE-PRODUCTIONS, LALR=1 , TABLE, +%options ACTION +%options AN=JavaAction.java +%options GP=java, +%options FILE-PREFIX=java +%options ESCAPE=$ +%options PREFIX=TokenName +%options OUTPUT-SIZE=125 +%options NOGOTO-DEFAULT +%options SINGLE-PRODUCTIONS +%options LALR=1 +%options TABLE --error recovering options..... %options ERROR_MAPS @@ -432,10 +440,6 @@ InternalCompilationUnit ::= PackageDeclaration TypeDeclarations /.$putCase consumeInternalCompilationUnitWithTypes(); $break ./ InternalCompilationUnit ::= ImportDeclarations ReduceImports /.$putCase consumeInternalCompilationUnit(); $break ./ -InternalCompilationUnit ::= TypeDeclarations -/.$putCase consumeInternalCompilationUnitWithTypes(); $break ./ -InternalCompilationUnit ::= ImportDeclarations ReduceImports TypeDeclarations -/.$putCase consumeInternalCompilationUnitWithTypes(); $break ./ InternalCompilationUnit ::= $empty /.$putCase consumeEmptyInternalCompilationUnit(); $break ./ /:$readableName CompilationUnit:/ @@ -451,6 +455,12 @@ ModuleDeclaration ::= ModuleHeader ModuleBody /:$compliance 9:/ /.$putCase consumeModuleDeclaration(); $break ./ +-- JEP 445: unnamed class, this may capture type declarations without unnamed class, this case is fixed/reduced upon completioon of parsing +InternalCompilationUnit ::= UnnamedClassBodyDeclarations +/.$putCase consumeInternalCompilationUnitWithPotentialUnnamedClass(); $break ./ +InternalCompilationUnit ::= ImportDeclarations ReduceImports UnnamedClassBodyDeclarations +/.$putCase consumeInternalCompilationUnitWithPotentialUnnamedClass(); $break ./ + -- to work around shift/reduce conflicts, we allow Modifiersopt in order to support annotations -- in a module declaration, and then report errors if any modifiers other than annotations are -- encountered @@ -744,6 +754,11 @@ ClassBodyDeclarations ::= ClassBodyDeclarations ClassBodyDeclaration ClassBodyDeclaration -> ClassMemberDeclaration ClassBodyDeclaration -> StaticInitializer ClassBodyDeclaration -> ConstructorDeclaration + +UnnamedClassBodyDeclarations -> ClassMemberDeclaration +UnnamedClassBodyDeclarations -> ClassMemberDeclaration UnnamedClassBodyDeclarations +/.$putCase consumeUnnamedClassBodyDeclarations(); $break ./ +/:$readableName UnnamedClassBodyDeclarations:/ --1.1 feature ClassBodyDeclaration ::= Diet NestedMethod CreateInitializer Block /.$putCase consumeClassBodyDeclaration(); $break ./ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/core/compiler/IProblem.java b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/core/compiler/IProblem.java index 003cdb30a64..5b79f91b88c 100644 --- a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/core/compiler/IProblem.java +++ b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/core/compiler/IProblem.java @@ -2553,6 +2553,17 @@ public interface IProblem { * @noreference preview feature */ int CannotInferRecordPatternTypes = PreviewRelated + 1940; + + /** + * @since 3.36 + * @noreference preview feature + */ + int unnamedIsMissingMainMethod = PreviewRelated + 1942; + /** + * @since 3.36 + * @noreference preview feature + */ + int unnamedRequiresJava21 = PreviewRelated + 1943; /** * @since 3.36 @@ -2564,4 +2575,5 @@ public interface IProblem { * @since 3.35 */ int SyntheticAccessorNotEnclosingMethod = MethodRelated + 1990; + } diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/ast/MethodDeclaration.java b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/ast/MethodDeclaration.java index 49ef2ab2c58..4eeb57b38a1 100644 --- a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/ast/MethodDeclaration.java +++ b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/ast/MethodDeclaration.java @@ -29,6 +29,7 @@ *******************************************************************************/ package org.eclipse.jdt.internal.compiler.ast; +import java.util.Arrays; import java.util.List; import java.util.function.BiPredicate; @@ -443,4 +444,13 @@ public void traverse( public TypeParameter[] typeParameters() { return this.typeParameters; } + + public boolean isMainMethodCandidate() { + return "main".equals(new String(this.selector)) && //$NON-NLS-1$ + (this.arguments == null || this.arguments.length == 0 || + (this.arguments.length == 1 && + this.arguments[0].type.getTypeBinding(this.scope) instanceof ReferenceBinding typeRef && + typeRef.dimensions() == 1 && + Arrays.equals("java.lang.String".toCharArray(), CharOperation.concatWith(typeRef.compoundName, '.')))); //$NON-NLS-1$ + } } diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/ast/UnnamedClass.java b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/ast/UnnamedClass.java new file mode 100644 index 00000000000..5068c5ed832 --- /dev/null +++ b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/ast/UnnamedClass.java @@ -0,0 +1,63 @@ +/******************************************************************************* + * Copyright (c) 2023 Red Hat, Inc. and others. + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + *******************************************************************************/ +package org.eclipse.jdt.internal.compiler.ast; + +import java.util.Arrays; + +import org.eclipse.jdt.internal.compiler.CompilationResult; +import org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants; +import org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope; + +/** + * Represents an unnamed class as defined in JEP 445 + */ +public class UnnamedClass extends TypeDeclaration { + + public UnnamedClass(CompilationResult result) { + super(result); + this.modifiers = ClassFileConstants.AccDefault | ClassFileConstants.AccFinal; + this.name = "".toCharArray(); //$NON-NLS-1$ + } + + @Override + public void analyseCode(CompilationUnitScope unitScope) { + super.analyseCode(unitScope); + if (this.ignoreFurtherInvestigation) + return; + if (Arrays.stream(this.methods) + .filter(MethodDeclaration.class::isInstance) + .map(MethodDeclaration.class::cast) + .noneMatch(MethodDeclaration::isMainMethodCandidate)) { + unitScope.problemReporter().unnamedClassMustHaveMainMethod(); + this.ignoreFurtherInvestigation = true; + } + } + +// @Override +// public void generateCode(CompilationUnitScope unitScope) { +// SourceTypeBinding unnamedBinding = this.binding; +// this.binding = toNamedBinding(unitScope); +// super.generateCode(unitScope); +// this.binding = unnamedBinding; +// } +// +// private SourceTypeBinding toNamedBinding(CompilationUnitScope scope) { +// SourceTypeBinding res = new SourceTypeBinding(this.binding) { +// @Override +// public boolean isPrototype() { +// return true; +// } +// }; +// res.compoundName = new char[][] { scope.referenceContext.getMainTypeName() }; +// return res; +// } + +} diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/lookup/Scope.java b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/lookup/Scope.java index c98415d10a7..2cacc84b8e8 100644 --- a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/lookup/Scope.java +++ b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/lookup/Scope.java @@ -2042,6 +2042,9 @@ public ReferenceBinding findType( if (declarationPackage != invocationPackage && !typeBinding.canBeSeenBy(invocationPackage)) return new ProblemReferenceBinding(new char[][]{typeName}, typeBinding, ProblemReasons.NotVisible); } + if (typeBinding instanceof SourceTypeBinding sourceType && sourceType.scope.referenceContext instanceof UnnamedClass) { + return null; // make unnamed not resolvable by name + } return typeBinding; } @@ -3529,9 +3532,10 @@ final Binding getTypeOrPackage(char[] name, int mask, boolean needResolve) { PackageBinding currentPackage = unitScope.fPackage; unitScope.recordReference(currentPackage.compoundName, name); Binding binding = currentPackage.getTypeOrPackage(name, module(), false); - if (binding instanceof ReferenceBinding) { - ReferenceBinding referenceType = (ReferenceBinding) binding; - if ((referenceType.tagBits & TagBits.HasMissingType) == 0) { + if (binding instanceof ReferenceBinding referenceType) { + if (referenceType instanceof SourceTypeBinding sourceType && sourceType.unnamedClass) { + return new ProblemReferenceBinding(new char[][] {name}, null, ProblemReasons.NotAccessible); + } else if ((referenceType.tagBits & TagBits.HasMissingType) == 0) { if (typeOrPackageCache != null) typeOrPackageCache.put(name, referenceType); return referenceType; // type is always visible to its own package diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/lookup/SourceTypeBinding.java b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/lookup/SourceTypeBinding.java index 8f169fc3247..17cadd04df8 100644 --- a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/lookup/SourceTypeBinding.java +++ b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/lookup/SourceTypeBinding.java @@ -85,6 +85,7 @@ import org.eclipse.jdt.internal.compiler.ast.TypeDeclaration; import org.eclipse.jdt.internal.compiler.ast.TypeParameter; import org.eclipse.jdt.internal.compiler.ast.TypeReference; +import org.eclipse.jdt.internal.compiler.ast.UnnamedClass; import org.eclipse.jdt.internal.compiler.ast.TypeReference.AnnotationPosition; import org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants; import org.eclipse.jdt.internal.compiler.classfmt.ExternalAnnotationProvider; @@ -138,9 +139,13 @@ public class SourceTypeBinding extends ReferenceBinding { public boolean isVarArgs = false; // for record declaration private FieldBinding[] implicitComponentFields; // cache private MethodBinding[] recordComponentAccessors = null; // hash maybe an overkill + public final boolean unnamedClass; public SourceTypeBinding(char[][] compoundName, PackageBinding fPackage, ClassScope scope) { - this.compoundName = compoundName; + this.unnamedClass = scope.referenceContext instanceof UnnamedClass; + this.compoundName = scope.referenceContext instanceof UnnamedClass unnamed + ? new char[][] { unnamed.getCompilationUnitDeclaration().getMainTypeName() } + : compoundName; this.fPackage = fPackage; this.fileName = scope.referenceCompilationUnit().getFileName(); this.modifiers = scope.referenceContext.modifiers; @@ -163,6 +168,7 @@ public SourceTypeBinding(SourceTypeBinding prototype) { this.prototype = prototype.prototype; this.prototype.tagBits |= TagBits.HasAnnotatedVariants; this.tagBits &= ~TagBits.HasAnnotatedVariants; + this.unnamedClass = prototype.unnamedClass; this.superclass = prototype.superclass; this.superInterfaces = prototype.superInterfaces; diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/Parser.java b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/Parser.java index ca9d80d17e6..91e068f806e 100644 --- a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/Parser.java +++ b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/Parser.java @@ -43,6 +43,7 @@ import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; +import java.util.LinkedList; import java.util.List; import java.util.Map; import java.util.Properties; @@ -986,6 +987,7 @@ protected int actFromTokenOrSynthetic(int previousAct) { protected boolean parsingJava15Plus; protected boolean parsingJava17Plus; protected boolean parsingJava18Plus; +protected boolean parsingJava21Plus; protected boolean previewEnabled; protected boolean parsingJava11Plus; protected int unstackedAct = ERROR_ACTION; @@ -1037,6 +1039,9 @@ public Parser(ProblemReporter problemReporter, boolean optimizeStringLiterals) { // javadoc support this.javadocParser = createJavadocParser(); } +private boolean unnamedClassEnabled() { + return this.options.sourceLevel >= ClassFileConstants.JDK21 && this.previewEnabled; +} protected void annotationRecoveryCheckPoint(int start, int end) { if(this.lastCheckPoint < end) { this.lastCheckPoint = end + 1; @@ -4874,6 +4879,59 @@ protected void consumeInternalCompilationUnit() { this.compilationUnit.createPackageInfoType(); } } +protected void consumeUnnamedClassBodyDeclarations() { + concatNodeLists(); +} + +protected void consumeInternalCompilationUnitWithPotentialUnnamedClass() { + int length; + if ((length = this.astLengthStack[this.astLengthPtr--]) != 0) { + LinkedList methods = new LinkedList<>(); + LinkedList fields = new LinkedList<>(); + LinkedList types = new LinkedList<>(); + TypeDeclaration topLevelType = null; + // here are length declarations + for (int i = length - 1; i >= 0; i--) { + ASTNode astNode = this.astStack[this.astPtr--]; + if (astNode instanceof MethodDeclaration method) { + //methods and constructors have been regrouped into one single list + if (method.isAbstract()) { + // parseError ? + } + methods.addFirst(method); + } else if (astNode instanceof TypeDeclaration type) { + if (!Arrays.equals(this.compilationUnit.getMainTypeName(), type.name)) { + types.addFirst(type); + } else { + topLevelType = type; + } + } else if (astNode instanceof FieldDeclaration field) { + fields.addFirst(field); + } + } + if (!methods.isEmpty() || !fields.isEmpty()) { + if (unnamedClassEnabled()) { + UnnamedClass unnamedClass = new UnnamedClass(this.compilationUnit.compilationResult); + unnamedClass.methods = methods.toArray(AbstractMethodDeclaration[]::new); + unnamedClass.createDefaultConstructor(false, true); + unnamedClass.fields = fields.toArray(FieldDeclaration[]::new); + unnamedClass.memberTypes = types.toArray(TypeDeclaration[]::new); + types.forEach(type -> type.enclosingType = unnamedClass); + this.compilationUnit.types = topLevelType == null + ? new TypeDeclaration[] { unnamedClass } + : new TypeDeclaration[] { unnamedClass, topLevelType }; + } else { + problemReporter().unnamedClassRequireJava21andPreview(); + } + } else if (!types.isEmpty() && fields.isEmpty()) { + // add types to compilation unit + this.compilationUnit.types = types.toArray(TypeDeclaration[]::new); + } else { + // empty compilation unit + } + } +} + protected void consumeInternalCompilationUnitWithTypes() { // InternalCompilationUnit ::= PackageDeclaration ImportDeclarations ReduceImports TypeDeclarations // InternalCompilationUnit ::= PackageDeclaration TypeDeclarations @@ -6729,2300 +6787,2304 @@ protected void consumeZeroTypeAnnotations() { // BEGIN_AUTOGENERATED_REGION_CONSUME_RULE // This method is part of an automatic generation : do NOT edit-modify protected void consumeRule(int act) { - switch ( act ) { - case 44 : if (DEBUG) { System.out.println("Type ::= PrimitiveType"); } //$NON-NLS-1$ - consumePrimitiveType(); - break; + switch ( act ) { + case 44 : if (DEBUG) { System.out.println("Type ::= PrimitiveType"); } //$NON-NLS-1$ + consumePrimitiveType(); + break; - case 58 : if (DEBUG) { System.out.println("ReferenceType ::= ClassOrInterfaceType"); } //$NON-NLS-1$ - consumeReferenceType(); - break; + case 58 : if (DEBUG) { System.out.println("ReferenceType ::= ClassOrInterfaceType"); } //$NON-NLS-1$ + consumeReferenceType(); + break; - case 62 : if (DEBUG) { System.out.println("ClassOrInterface ::= Name"); } //$NON-NLS-1$ - consumeClassOrInterfaceName(); - break; + case 62 : if (DEBUG) { System.out.println("ClassOrInterface ::= Name"); } //$NON-NLS-1$ + consumeClassOrInterfaceName(); + break; - case 63 : if (DEBUG) { System.out.println("ClassOrInterface ::= GenericType DOT Name"); } //$NON-NLS-1$ - consumeClassOrInterface(); - break; + case 63 : if (DEBUG) { System.out.println("ClassOrInterface ::= GenericType DOT Name"); } //$NON-NLS-1$ + consumeClassOrInterface(); + break; - case 64 : if (DEBUG) { System.out.println("GenericType ::= ClassOrInterface TypeArguments"); } //$NON-NLS-1$ - consumeGenericType(); - break; + case 64 : if (DEBUG) { System.out.println("GenericType ::= ClassOrInterface TypeArguments"); } //$NON-NLS-1$ + consumeGenericType(); + break; - case 65 : if (DEBUG) { System.out.println("GenericType ::= ClassOrInterface LESS GREATER"); } //$NON-NLS-1$ - consumeGenericTypeWithDiamond(); - break; + case 65 : if (DEBUG) { System.out.println("GenericType ::= ClassOrInterface LESS GREATER"); } //$NON-NLS-1$ + consumeGenericTypeWithDiamond(); + break; - case 66 : if (DEBUG) { System.out.println("ArrayTypeWithTypeArgumentsName ::= GenericType DOT Name"); } //$NON-NLS-1$ - consumeArrayTypeWithTypeArgumentsName(); - break; + case 66 : if (DEBUG) { System.out.println("ArrayTypeWithTypeArgumentsName ::= GenericType DOT Name"); } //$NON-NLS-1$ + consumeArrayTypeWithTypeArgumentsName(); + break; - case 67 : if (DEBUG) { System.out.println("ArrayType ::= PrimitiveType Dims"); } //$NON-NLS-1$ - consumePrimitiveArrayType(); - break; + case 67 : if (DEBUG) { System.out.println("ArrayType ::= PrimitiveType Dims"); } //$NON-NLS-1$ + consumePrimitiveArrayType(); + break; - case 68 : if (DEBUG) { System.out.println("ArrayType ::= Name Dims"); } //$NON-NLS-1$ - consumeNameArrayType(); - break; + case 68 : if (DEBUG) { System.out.println("ArrayType ::= Name Dims"); } //$NON-NLS-1$ + consumeNameArrayType(); + break; - case 69 : if (DEBUG) { System.out.println("ArrayType ::= ArrayTypeWithTypeArgumentsName Dims"); } //$NON-NLS-1$ - consumeGenericTypeNameArrayType(); - break; + case 69 : if (DEBUG) { System.out.println("ArrayType ::= ArrayTypeWithTypeArgumentsName Dims"); } //$NON-NLS-1$ + consumeGenericTypeNameArrayType(); + break; - case 70 : if (DEBUG) { System.out.println("ArrayType ::= GenericType Dims"); } //$NON-NLS-1$ - consumeGenericTypeArrayType(); - break; + case 70 : if (DEBUG) { System.out.println("ArrayType ::= GenericType Dims"); } //$NON-NLS-1$ + consumeGenericTypeArrayType(); + break; - case 72 : if (DEBUG) { System.out.println("Name ::= SimpleName"); } //$NON-NLS-1$ - consumeZeroTypeAnnotations(); - break; + case 72 : if (DEBUG) { System.out.println("Name ::= SimpleName"); } //$NON-NLS-1$ + consumeZeroTypeAnnotations(); + break; - case 77 : if (DEBUG) { System.out.println("UnannotatableName ::= UnannotatableName DOT SimpleName"); } //$NON-NLS-1$ - consumeUnannotatableQualifiedName(); - break; + case 77 : if (DEBUG) { System.out.println("UnannotatableName ::= UnannotatableName DOT SimpleName"); } //$NON-NLS-1$ + consumeUnannotatableQualifiedName(); + break; - case 78 : if (DEBUG) { System.out.println("QualifiedName ::= Name DOT SimpleName"); } //$NON-NLS-1$ - consumeQualifiedName(false); - break; + case 78 : if (DEBUG) { System.out.println("QualifiedName ::= Name DOT SimpleName"); } //$NON-NLS-1$ + consumeQualifiedName(false); + break; - case 79 : if (DEBUG) { System.out.println("QualifiedName ::= Name DOT TypeAnnotations SimpleName"); } //$NON-NLS-1$ - consumeQualifiedName(true); - break; + case 79 : if (DEBUG) { System.out.println("QualifiedName ::= Name DOT TypeAnnotations SimpleName"); } //$NON-NLS-1$ + consumeQualifiedName(true); + break; - case 80 : if (DEBUG) { System.out.println("TypeAnnotationsopt ::="); } //$NON-NLS-1$ - consumeZeroTypeAnnotations(); - break; + case 80 : if (DEBUG) { System.out.println("TypeAnnotationsopt ::="); } //$NON-NLS-1$ + consumeZeroTypeAnnotations(); + break; - case 84 : if (DEBUG) { System.out.println("TypeAnnotations0 ::= TypeAnnotations0 TypeAnnotation"); } //$NON-NLS-1$ - consumeOneMoreTypeAnnotation(); - break; + case 84 : if (DEBUG) { System.out.println("TypeAnnotations0 ::= TypeAnnotations0 TypeAnnotation"); } //$NON-NLS-1$ + consumeOneMoreTypeAnnotation(); + break; - case 85 : if (DEBUG) { System.out.println("TypeAnnotation ::= NormalTypeAnnotation"); } //$NON-NLS-1$ - consumeTypeAnnotation(); - break; + case 85 : if (DEBUG) { System.out.println("TypeAnnotation ::= NormalTypeAnnotation"); } //$NON-NLS-1$ + consumeTypeAnnotation(); + break; - case 86 : if (DEBUG) { System.out.println("TypeAnnotation ::= MarkerTypeAnnotation"); } //$NON-NLS-1$ - consumeTypeAnnotation(); - break; + case 86 : if (DEBUG) { System.out.println("TypeAnnotation ::= MarkerTypeAnnotation"); } //$NON-NLS-1$ + consumeTypeAnnotation(); + break; - case 87 : if (DEBUG) { System.out.println("TypeAnnotation ::= SingleMemberTypeAnnotation"); } //$NON-NLS-1$ - consumeTypeAnnotation(); - break; + case 87 : if (DEBUG) { System.out.println("TypeAnnotation ::= SingleMemberTypeAnnotation"); } //$NON-NLS-1$ + consumeTypeAnnotation(); + break; - case 88 : if (DEBUG) { System.out.println("TypeAnnotationName ::= AT308 UnannotatableName"); } //$NON-NLS-1$ - consumeAnnotationName() ; - break; + case 88 : if (DEBUG) { System.out.println("TypeAnnotationName ::= AT308 UnannotatableName"); } //$NON-NLS-1$ + consumeAnnotationName() ; + break; - case 89 : if (DEBUG) { System.out.println("NormalTypeAnnotation ::= TypeAnnotationName LPAREN..."); } //$NON-NLS-1$ - consumeNormalAnnotation(true) ; - break; + case 89 : if (DEBUG) { System.out.println("NormalTypeAnnotation ::= TypeAnnotationName LPAREN..."); } //$NON-NLS-1$ + consumeNormalAnnotation(true) ; + break; - case 90 : if (DEBUG) { System.out.println("MarkerTypeAnnotation ::= TypeAnnotationName"); } //$NON-NLS-1$ - consumeMarkerAnnotation(true) ; - break; + case 90 : if (DEBUG) { System.out.println("MarkerTypeAnnotation ::= TypeAnnotationName"); } //$NON-NLS-1$ + consumeMarkerAnnotation(true) ; + break; - case 91 : if (DEBUG) { System.out.println("SingleMemberTypeAnnotation ::= TypeAnnotationName LPAREN"); } //$NON-NLS-1$ - consumeSingleMemberAnnotation(true) ; - break; + case 91 : if (DEBUG) { System.out.println("SingleMemberTypeAnnotation ::= TypeAnnotationName LPAREN"); } //$NON-NLS-1$ + consumeSingleMemberAnnotation(true) ; + break; - case 92 : if (DEBUG) { System.out.println("RejectTypeAnnotations ::="); } //$NON-NLS-1$ - consumeNonTypeUseName(); - break; + case 92 : if (DEBUG) { System.out.println("RejectTypeAnnotations ::="); } //$NON-NLS-1$ + consumeNonTypeUseName(); + break; - case 93 : if (DEBUG) { System.out.println("PushZeroTypeAnnotations ::="); } //$NON-NLS-1$ - consumeZeroTypeAnnotations(); - break; + case 93 : if (DEBUG) { System.out.println("PushZeroTypeAnnotations ::="); } //$NON-NLS-1$ + consumeZeroTypeAnnotations(); + break; - case 94 : if (DEBUG) { System.out.println("VariableDeclaratorIdOrThis ::= this"); } //$NON-NLS-1$ - consumeExplicitThisParameter(false); - break; + case 94 : if (DEBUG) { System.out.println("VariableDeclaratorIdOrThis ::= this"); } //$NON-NLS-1$ + consumeExplicitThisParameter(false); + break; - case 95 : if (DEBUG) { System.out.println("VariableDeclaratorIdOrThis ::= UnannotatableName DOT this"); } //$NON-NLS-1$ - consumeExplicitThisParameter(true); - break; + case 95 : if (DEBUG) { System.out.println("VariableDeclaratorIdOrThis ::= UnannotatableName DOT this"); } //$NON-NLS-1$ + consumeExplicitThisParameter(true); + break; - case 96 : if (DEBUG) { System.out.println("VariableDeclaratorIdOrThis ::= VariableDeclaratorId"); } //$NON-NLS-1$ - consumeVariableDeclaratorIdParameter(); - break; + case 96 : if (DEBUG) { System.out.println("VariableDeclaratorIdOrThis ::= VariableDeclaratorId"); } //$NON-NLS-1$ + consumeVariableDeclaratorIdParameter(); + break; - case 97 : if (DEBUG) { System.out.println("CompilationUnit ::= EnterCompilationUnit..."); } //$NON-NLS-1$ - consumeCompilationUnit(); - break; + case 97 : if (DEBUG) { System.out.println("CompilationUnit ::= EnterCompilationUnit..."); } //$NON-NLS-1$ + consumeCompilationUnit(); + break; - case 98 : if (DEBUG) { System.out.println("InternalCompilationUnit ::= PackageDeclaration"); } //$NON-NLS-1$ - consumeInternalCompilationUnit(); - break; + case 98 : if (DEBUG) { System.out.println("InternalCompilationUnit ::= PackageDeclaration"); } //$NON-NLS-1$ + consumeInternalCompilationUnit(); + break; - case 99 : if (DEBUG) { System.out.println("InternalCompilationUnit ::= PackageDeclaration..."); } //$NON-NLS-1$ - consumeInternalCompilationUnit(); - break; + case 99 : if (DEBUG) { System.out.println("InternalCompilationUnit ::= PackageDeclaration..."); } //$NON-NLS-1$ + consumeInternalCompilationUnit(); + break; - case 100 : if (DEBUG) { System.out.println("InternalCompilationUnit ::= PackageDeclaration..."); } //$NON-NLS-1$ - consumeInternalCompilationUnitWithTypes(); - break; + case 100 : if (DEBUG) { System.out.println("InternalCompilationUnit ::= PackageDeclaration..."); } //$NON-NLS-1$ + consumeInternalCompilationUnitWithTypes(); + break; - case 101 : if (DEBUG) { System.out.println("InternalCompilationUnit ::= PackageDeclaration..."); } //$NON-NLS-1$ - consumeInternalCompilationUnitWithTypes(); - break; + case 101 : if (DEBUG) { System.out.println("InternalCompilationUnit ::= PackageDeclaration..."); } //$NON-NLS-1$ + consumeInternalCompilationUnitWithTypes(); + break; - case 102 : if (DEBUG) { System.out.println("InternalCompilationUnit ::= ImportDeclarations..."); } //$NON-NLS-1$ - consumeInternalCompilationUnit(); - break; + case 102 : if (DEBUG) { System.out.println("InternalCompilationUnit ::= ImportDeclarations..."); } //$NON-NLS-1$ + consumeInternalCompilationUnit(); + break; - case 103 : if (DEBUG) { System.out.println("InternalCompilationUnit ::= TypeDeclarations"); } //$NON-NLS-1$ - consumeInternalCompilationUnitWithTypes(); - break; + case 103 : if (DEBUG) { System.out.println("InternalCompilationUnit ::="); } //$NON-NLS-1$ + consumeEmptyInternalCompilationUnit(); + break; - case 104 : if (DEBUG) { System.out.println("InternalCompilationUnit ::= ImportDeclarations..."); } //$NON-NLS-1$ - consumeInternalCompilationUnitWithTypes(); - break; + case 104 : if (DEBUG) { System.out.println("InternalCompilationUnit ::= ImportDeclarations..."); } //$NON-NLS-1$ + consumeInternalCompilationUnitWithModuleDeclaration(); + break; - case 105 : if (DEBUG) { System.out.println("InternalCompilationUnit ::="); } //$NON-NLS-1$ - consumeEmptyInternalCompilationUnit(); - break; + case 105 : if (DEBUG) { System.out.println("InternalCompilationUnit ::= ModuleDeclaration"); } //$NON-NLS-1$ + consumeInternalCompilationUnitWithModuleDeclaration(); + break; - case 106 : if (DEBUG) { System.out.println("InternalCompilationUnit ::= ImportDeclarations..."); } //$NON-NLS-1$ - consumeInternalCompilationUnitWithModuleDeclaration(); - break; + case 106 : if (DEBUG) { System.out.println("ModuleDeclaration ::= ModuleHeader ModuleBody"); } //$NON-NLS-1$ + consumeModuleDeclaration(); + break; - case 107 : if (DEBUG) { System.out.println("InternalCompilationUnit ::= ModuleDeclaration"); } //$NON-NLS-1$ - consumeInternalCompilationUnitWithModuleDeclaration(); - break; + case 107 : if (DEBUG) { System.out.println("InternalCompilationUnit ::= UnnamedClassBodyDeclarations"); } //$NON-NLS-1$ + consumeInternalCompilationUnitWithPotentialUnnamedClass(); + break; - case 108 : if (DEBUG) { System.out.println("ModuleDeclaration ::= ModuleHeader ModuleBody"); } //$NON-NLS-1$ - consumeModuleDeclaration(); - break; + case 108 : if (DEBUG) { System.out.println("InternalCompilationUnit ::= ImportDeclarations..."); } //$NON-NLS-1$ + consumeInternalCompilationUnitWithPotentialUnnamedClass(); + break; - case 109 : if (DEBUG) { System.out.println("ModuleHeader ::= Modifiersopt ModuleModifieropt module"); } //$NON-NLS-1$ - consumeModuleHeader(); - break; + case 109 : if (DEBUG) { System.out.println("ModuleHeader ::= Modifiersopt ModuleModifieropt module"); } //$NON-NLS-1$ + consumeModuleHeader(); + break; - case 111 : if (DEBUG) { System.out.println("ModuleModifieropt ::= ModuleModifier"); } //$NON-NLS-1$ - consumeModuleModifiers(); - break; + case 111 : if (DEBUG) { System.out.println("ModuleModifieropt ::= ModuleModifier"); } //$NON-NLS-1$ + consumeModuleModifiers(); + break; - case 114 : if (DEBUG) { System.out.println("ModuleStatementsOpt ::="); } //$NON-NLS-1$ - consumeEmptyModuleStatementsOpt(); - break; + case 114 : if (DEBUG) { System.out.println("ModuleStatementsOpt ::="); } //$NON-NLS-1$ + consumeEmptyModuleStatementsOpt(); + break; - case 117 : if (DEBUG) { System.out.println("ModuleStatements ::= ModuleStatements ModuleStatement"); } //$NON-NLS-1$ - consumeModuleStatements(); - break; + case 117 : if (DEBUG) { System.out.println("ModuleStatements ::= ModuleStatements ModuleStatement"); } //$NON-NLS-1$ + consumeModuleStatements(); + break; - case 123 : if (DEBUG) { System.out.println("RequiresStatement ::= SingleRequiresModuleName SEMICOLON"); } //$NON-NLS-1$ - consumeRequiresStatement(); - break; + case 123 : if (DEBUG) { System.out.println("RequiresStatement ::= SingleRequiresModuleName SEMICOLON"); } //$NON-NLS-1$ + consumeRequiresStatement(); + break; - case 124 : if (DEBUG) { System.out.println("SingleRequiresModuleName ::= requires..."); } //$NON-NLS-1$ - consumeSingleRequiresModuleName(); - break; + case 124 : if (DEBUG) { System.out.println("SingleRequiresModuleName ::= requires..."); } //$NON-NLS-1$ + consumeSingleRequiresModuleName(); + break; - case 125 : if (DEBUG) { System.out.println("RequiresModifiersopt ::= RequiresModifiers"); } //$NON-NLS-1$ - consumeModifiers(); - break; + case 125 : if (DEBUG) { System.out.println("RequiresModifiersopt ::= RequiresModifiers"); } //$NON-NLS-1$ + consumeModifiers(); + break; - case 126 : if (DEBUG) { System.out.println("RequiresModifiersopt ::="); } //$NON-NLS-1$ - consumeDefaultModifiers(); - break; + case 126 : if (DEBUG) { System.out.println("RequiresModifiersopt ::="); } //$NON-NLS-1$ + consumeDefaultModifiers(); + break; - case 128 : if (DEBUG) { System.out.println("RequiresModifiers ::= RequiresModifiers RequiresModifier"); } //$NON-NLS-1$ - consumeModifiers2(); - break; + case 128 : if (DEBUG) { System.out.println("RequiresModifiers ::= RequiresModifiers RequiresModifier"); } //$NON-NLS-1$ + consumeModifiers2(); + break; - case 131 : if (DEBUG) { System.out.println("ExportsStatement ::= ExportsHeader TargetModuleListopt"); } //$NON-NLS-1$ - consumeExportsStatement(); - break; + case 131 : if (DEBUG) { System.out.println("ExportsStatement ::= ExportsHeader TargetModuleListopt"); } //$NON-NLS-1$ + consumeExportsStatement(); + break; - case 132 : if (DEBUG) { System.out.println("ExportsHeader ::= exports SinglePkgName"); } //$NON-NLS-1$ - consumeExportsHeader(); - break; + case 132 : if (DEBUG) { System.out.println("ExportsHeader ::= exports SinglePkgName"); } //$NON-NLS-1$ + consumeExportsHeader(); + break; - case 134 : if (DEBUG) { System.out.println("TargetModuleListopt ::= to TargetModuleNameList"); } //$NON-NLS-1$ - consumeTargetModuleList(); - break; + case 134 : if (DEBUG) { System.out.println("TargetModuleListopt ::= to TargetModuleNameList"); } //$NON-NLS-1$ + consumeTargetModuleList(); + break; - case 135 : if (DEBUG) { System.out.println("TargetModuleName ::= UnannotatableName"); } //$NON-NLS-1$ - consumeSingleTargetModuleName(); - break; + case 135 : if (DEBUG) { System.out.println("TargetModuleName ::= UnannotatableName"); } //$NON-NLS-1$ + consumeSingleTargetModuleName(); + break; - case 137 : if (DEBUG) { System.out.println("TargetModuleNameList ::= TargetModuleNameList COMMA..."); } //$NON-NLS-1$ - consumeTargetModuleNameList(); - break; + case 137 : if (DEBUG) { System.out.println("TargetModuleNameList ::= TargetModuleNameList COMMA..."); } //$NON-NLS-1$ + consumeTargetModuleNameList(); + break; - case 138 : if (DEBUG) { System.out.println("SinglePkgName ::= UnannotatableName"); } //$NON-NLS-1$ - consumeSinglePkgName(); - break; + case 138 : if (DEBUG) { System.out.println("SinglePkgName ::= UnannotatableName"); } //$NON-NLS-1$ + consumeSinglePkgName(); + break; - case 139 : if (DEBUG) { System.out.println("OpensStatement ::= OpensHeader TargetModuleListopt..."); } //$NON-NLS-1$ - consumeOpensStatement(); - break; + case 139 : if (DEBUG) { System.out.println("OpensStatement ::= OpensHeader TargetModuleListopt..."); } //$NON-NLS-1$ + consumeOpensStatement(); + break; - case 140 : if (DEBUG) { System.out.println("OpensHeader ::= opens SinglePkgName"); } //$NON-NLS-1$ - consumeOpensHeader(); - break; + case 140 : if (DEBUG) { System.out.println("OpensHeader ::= opens SinglePkgName"); } //$NON-NLS-1$ + consumeOpensHeader(); + break; - case 141 : if (DEBUG) { System.out.println("UsesStatement ::= UsesHeader SEMICOLON"); } //$NON-NLS-1$ - consumeUsesStatement(); - break; + case 141 : if (DEBUG) { System.out.println("UsesStatement ::= UsesHeader SEMICOLON"); } //$NON-NLS-1$ + consumeUsesStatement(); + break; - case 142 : if (DEBUG) { System.out.println("UsesHeader ::= uses Name"); } //$NON-NLS-1$ - consumeUsesHeader(); - break; + case 142 : if (DEBUG) { System.out.println("UsesHeader ::= uses Name"); } //$NON-NLS-1$ + consumeUsesHeader(); + break; - case 143 : if (DEBUG) { System.out.println("ProvidesStatement ::= ProvidesInterface WithClause..."); } //$NON-NLS-1$ - consumeProvidesStatement(); - break; + case 143 : if (DEBUG) { System.out.println("ProvidesStatement ::= ProvidesInterface WithClause..."); } //$NON-NLS-1$ + consumeProvidesStatement(); + break; - case 144 : if (DEBUG) { System.out.println("ProvidesInterface ::= provides Name"); } //$NON-NLS-1$ - consumeProvidesInterface(); - break; + case 144 : if (DEBUG) { System.out.println("ProvidesInterface ::= provides Name"); } //$NON-NLS-1$ + consumeProvidesInterface(); + break; - case 145 : if (DEBUG) { System.out.println("ServiceImplName ::= Name"); } //$NON-NLS-1$ - consumeSingleServiceImplName(); - break; + case 145 : if (DEBUG) { System.out.println("ServiceImplName ::= Name"); } //$NON-NLS-1$ + consumeSingleServiceImplName(); + break; - case 147 : if (DEBUG) { System.out.println("ServiceImplNameList ::= ServiceImplNameList COMMA..."); } //$NON-NLS-1$ - consumeServiceImplNameList(); - break; + case 147 : if (DEBUG) { System.out.println("ServiceImplNameList ::= ServiceImplNameList COMMA..."); } //$NON-NLS-1$ + consumeServiceImplNameList(); + break; - case 148 : if (DEBUG) { System.out.println("WithClause ::= with ServiceImplNameList"); } //$NON-NLS-1$ - consumeWithClause(); - break; + case 148 : if (DEBUG) { System.out.println("WithClause ::= with ServiceImplNameList"); } //$NON-NLS-1$ + consumeWithClause(); + break; - case 149 : if (DEBUG) { System.out.println("ReduceImports ::="); } //$NON-NLS-1$ - consumeReduceImports(); - break; + case 149 : if (DEBUG) { System.out.println("ReduceImports ::="); } //$NON-NLS-1$ + consumeReduceImports(); + break; - case 150 : if (DEBUG) { System.out.println("EnterCompilationUnit ::="); } //$NON-NLS-1$ - consumeEnterCompilationUnit(); - break; + case 150 : if (DEBUG) { System.out.println("EnterCompilationUnit ::="); } //$NON-NLS-1$ + consumeEnterCompilationUnit(); + break; - case 173 : if (DEBUG) { System.out.println("CatchHeader ::= catch LPAREN CatchFormalParameter RPAREN"); } //$NON-NLS-1$ - consumeCatchHeader(); - break; + case 173 : if (DEBUG) { System.out.println("CatchHeader ::= catch LPAREN CatchFormalParameter RPAREN"); } //$NON-NLS-1$ + consumeCatchHeader(); + break; - case 175 : if (DEBUG) { System.out.println("ImportDeclarations ::= ImportDeclarations..."); } //$NON-NLS-1$ - consumeImportDeclarations(); - break; + case 175 : if (DEBUG) { System.out.println("ImportDeclarations ::= ImportDeclarations..."); } //$NON-NLS-1$ + consumeImportDeclarations(); + break; - case 177 : if (DEBUG) { System.out.println("TypeDeclarations ::= TypeDeclarations TypeDeclaration"); } //$NON-NLS-1$ - consumeTypeDeclarations(); - break; + case 177 : if (DEBUG) { System.out.println("TypeDeclarations ::= TypeDeclarations TypeDeclaration"); } //$NON-NLS-1$ + consumeTypeDeclarations(); + break; - case 178 : if (DEBUG) { System.out.println("PackageDeclaration ::= PackageDeclarationName SEMICOLON"); } //$NON-NLS-1$ - consumePackageDeclaration(); - break; + case 178 : if (DEBUG) { System.out.println("PackageDeclaration ::= PackageDeclarationName SEMICOLON"); } //$NON-NLS-1$ + consumePackageDeclaration(); + break; - case 179 : if (DEBUG) { System.out.println("PackageDeclarationName ::= Modifiers package..."); } //$NON-NLS-1$ - consumePackageDeclarationNameWithModifiers(); - break; + case 179 : if (DEBUG) { System.out.println("PackageDeclarationName ::= Modifiers package..."); } //$NON-NLS-1$ + consumePackageDeclarationNameWithModifiers(); + break; - case 180 : if (DEBUG) { System.out.println("PackageDeclarationName ::= PackageComment package Name"); } //$NON-NLS-1$ - consumePackageDeclarationName(); - break; + case 180 : if (DEBUG) { System.out.println("PackageDeclarationName ::= PackageComment package Name"); } //$NON-NLS-1$ + consumePackageDeclarationName(); + break; - case 181 : if (DEBUG) { System.out.println("PackageComment ::="); } //$NON-NLS-1$ - consumePackageComment(); - break; + case 181 : if (DEBUG) { System.out.println("PackageComment ::="); } //$NON-NLS-1$ + consumePackageComment(); + break; - case 186 : if (DEBUG) { System.out.println("SingleTypeImportDeclaration ::=..."); } //$NON-NLS-1$ - consumeImportDeclaration(); - break; + case 186 : if (DEBUG) { System.out.println("SingleTypeImportDeclaration ::=..."); } //$NON-NLS-1$ + consumeImportDeclaration(); + break; - case 187 : if (DEBUG) { System.out.println("SingleTypeImportDeclarationName ::= import Name..."); } //$NON-NLS-1$ - consumeSingleTypeImportDeclarationName(); - break; + case 187 : if (DEBUG) { System.out.println("SingleTypeImportDeclarationName ::= import Name..."); } //$NON-NLS-1$ + consumeSingleTypeImportDeclarationName(); + break; - case 188 : if (DEBUG) { System.out.println("TypeImportOnDemandDeclaration ::=..."); } //$NON-NLS-1$ - consumeImportDeclaration(); - break; + case 188 : if (DEBUG) { System.out.println("TypeImportOnDemandDeclaration ::=..."); } //$NON-NLS-1$ + consumeImportDeclaration(); + break; - case 189 : if (DEBUG) { System.out.println("TypeImportOnDemandDeclarationName ::= import Name DOT..."); } //$NON-NLS-1$ - consumeTypeImportOnDemandDeclarationName(); - break; + case 189 : if (DEBUG) { System.out.println("TypeImportOnDemandDeclarationName ::= import Name DOT..."); } //$NON-NLS-1$ + consumeTypeImportOnDemandDeclarationName(); + break; - case 192 : if (DEBUG) { System.out.println("TypeDeclaration ::= SEMICOLON"); } //$NON-NLS-1$ - consumeEmptyTypeDeclaration(); - break; + case 192 : if (DEBUG) { System.out.println("TypeDeclaration ::= SEMICOLON"); } //$NON-NLS-1$ + consumeEmptyTypeDeclaration(); + break; - case 197 : if (DEBUG) { System.out.println("Modifiers ::= Modifiers Modifier"); } //$NON-NLS-1$ - consumeModifiers2(); - break; + case 197 : if (DEBUG) { System.out.println("Modifiers ::= Modifiers Modifier"); } //$NON-NLS-1$ + consumeModifiers2(); + break; - case 211 : if (DEBUG) { System.out.println("Modifier ::= Annotation"); } //$NON-NLS-1$ - consumeAnnotationAsModifier(); - break; + case 211 : if (DEBUG) { System.out.println("Modifier ::= Annotation"); } //$NON-NLS-1$ + consumeAnnotationAsModifier(); + break; - case 212 : if (DEBUG) { System.out.println("ClassDeclaration ::= ClassHeader ClassBody"); } //$NON-NLS-1$ - consumeClassDeclaration(); - break; + case 212 : if (DEBUG) { System.out.println("ClassDeclaration ::= ClassHeader ClassBody"); } //$NON-NLS-1$ + consumeClassDeclaration(); + break; - case 213 : if (DEBUG) { System.out.println("ClassHeader ::= ClassHeaderName ClassHeaderExtendsopt..."); } //$NON-NLS-1$ - consumeClassHeader(); - break; + case 213 : if (DEBUG) { System.out.println("ClassHeader ::= ClassHeaderName ClassHeaderExtendsopt..."); } //$NON-NLS-1$ + consumeClassHeader(); + break; - case 214 : if (DEBUG) { System.out.println("ClassHeaderName ::= ClassHeaderName1 TypeParameters"); } //$NON-NLS-1$ - consumeTypeHeaderNameWithTypeParameters(); - break; + case 214 : if (DEBUG) { System.out.println("ClassHeaderName ::= ClassHeaderName1 TypeParameters"); } //$NON-NLS-1$ + consumeTypeHeaderNameWithTypeParameters(); + break; - case 216 : if (DEBUG) { System.out.println("ClassHeaderName1 ::= Modifiersopt class Identifier"); } //$NON-NLS-1$ - consumeClassHeaderName1(); - break; + case 216 : if (DEBUG) { System.out.println("ClassHeaderName1 ::= Modifiersopt class Identifier"); } //$NON-NLS-1$ + consumeClassHeaderName1(); + break; - case 217 : if (DEBUG) { System.out.println("ClassHeaderExtends ::= extends ClassType"); } //$NON-NLS-1$ - consumeClassHeaderExtends(); - break; + case 217 : if (DEBUG) { System.out.println("ClassHeaderExtends ::= extends ClassType"); } //$NON-NLS-1$ + consumeClassHeaderExtends(); + break; - case 218 : if (DEBUG) { System.out.println("ClassHeaderImplements ::= implements InterfaceTypeList"); } //$NON-NLS-1$ - consumeClassHeaderImplements(); - break; + case 218 : if (DEBUG) { System.out.println("ClassHeaderImplements ::= implements InterfaceTypeList"); } //$NON-NLS-1$ + consumeClassHeaderImplements(); + break; - case 220 : if (DEBUG) { System.out.println("InterfaceTypeList ::= InterfaceTypeList COMMA..."); } //$NON-NLS-1$ - consumeInterfaceTypeList(); - break; + case 220 : if (DEBUG) { System.out.println("InterfaceTypeList ::= InterfaceTypeList COMMA..."); } //$NON-NLS-1$ + consumeInterfaceTypeList(); + break; - case 221 : if (DEBUG) { System.out.println("InterfaceType ::= ClassOrInterfaceType"); } //$NON-NLS-1$ - consumeInterfaceType(); - break; + case 221 : if (DEBUG) { System.out.println("InterfaceType ::= ClassOrInterfaceType"); } //$NON-NLS-1$ + consumeInterfaceType(); + break; - case 224 : if (DEBUG) { System.out.println("ClassBodyDeclarations ::= ClassBodyDeclarations..."); } //$NON-NLS-1$ - consumeClassBodyDeclarations(); - break; + case 224 : if (DEBUG) { System.out.println("ClassBodyDeclarations ::= ClassBodyDeclarations..."); } //$NON-NLS-1$ + consumeClassBodyDeclarations(); + break; - case 228 : if (DEBUG) { System.out.println("ClassBodyDeclaration ::= Diet NestedMethod..."); } //$NON-NLS-1$ - consumeClassBodyDeclaration(); - break; + case 229 : if (DEBUG) { System.out.println("UnnamedClassBodyDeclarations ::= ClassMemberDeclaration"); } //$NON-NLS-1$ + consumeUnnamedClassBodyDeclarations(); + break; - case 229 : if (DEBUG) { System.out.println("Diet ::="); } //$NON-NLS-1$ - consumeDiet(); - break; + case 230 : if (DEBUG) { System.out.println("ClassBodyDeclaration ::= Diet NestedMethod..."); } //$NON-NLS-1$ + consumeClassBodyDeclaration(); + break; - case 230 : if (DEBUG) { System.out.println("Initializer ::= Diet NestedMethod CreateInitializer..."); } //$NON-NLS-1$ - consumeClassBodyDeclaration(); - break; + case 231 : if (DEBUG) { System.out.println("Diet ::="); } //$NON-NLS-1$ + consumeDiet(); + break; - case 231 : if (DEBUG) { System.out.println("CreateInitializer ::="); } //$NON-NLS-1$ - consumeCreateInitializer(); - break; + case 232 : if (DEBUG) { System.out.println("Initializer ::= Diet NestedMethod CreateInitializer..."); } //$NON-NLS-1$ + consumeClassBodyDeclaration(); + break; - case 239 : if (DEBUG) { System.out.println("ClassMemberDeclaration ::= SEMICOLON"); } //$NON-NLS-1$ - consumeEmptyTypeDeclaration(); - break; + case 233 : if (DEBUG) { System.out.println("CreateInitializer ::="); } //$NON-NLS-1$ + consumeCreateInitializer(); + break; - case 242 : if (DEBUG) { System.out.println("FieldDeclaration ::= Modifiersopt Type..."); } //$NON-NLS-1$ - consumeFieldDeclaration(); - break; + case 241 : if (DEBUG) { System.out.println("ClassMemberDeclaration ::= SEMICOLON"); } //$NON-NLS-1$ + consumeEmptyTypeDeclaration(); + break; - case 244 : if (DEBUG) { System.out.println("VariableDeclarators ::= VariableDeclarators COMMA..."); } //$NON-NLS-1$ - consumeVariableDeclarators(); - break; + case 244 : if (DEBUG) { System.out.println("FieldDeclaration ::= Modifiersopt Type..."); } //$NON-NLS-1$ + consumeFieldDeclaration(); + break; - case 247 : if (DEBUG) { System.out.println("EnterVariable ::="); } //$NON-NLS-1$ - consumeEnterVariable(); - break; + case 246 : if (DEBUG) { System.out.println("VariableDeclarators ::= VariableDeclarators COMMA..."); } //$NON-NLS-1$ + consumeVariableDeclarators(); + break; - case 248 : if (DEBUG) { System.out.println("ExitVariableWithInitialization ::="); } //$NON-NLS-1$ - consumeExitVariableWithInitialization(); - break; + case 249 : if (DEBUG) { System.out.println("EnterVariable ::="); } //$NON-NLS-1$ + consumeEnterVariable(); + break; - case 249 : if (DEBUG) { System.out.println("ExitVariableWithoutInitialization ::="); } //$NON-NLS-1$ - consumeExitVariableWithoutInitialization(); - break; + case 250 : if (DEBUG) { System.out.println("ExitVariableWithInitialization ::="); } //$NON-NLS-1$ + consumeExitVariableWithInitialization(); + break; - case 250 : if (DEBUG) { System.out.println("ForceNoDiet ::="); } //$NON-NLS-1$ - consumeForceNoDiet(); - break; + case 251 : if (DEBUG) { System.out.println("ExitVariableWithoutInitialization ::="); } //$NON-NLS-1$ + consumeExitVariableWithoutInitialization(); + break; - case 251 : if (DEBUG) { System.out.println("RestoreDiet ::="); } //$NON-NLS-1$ - consumeRestoreDiet(); - break; + case 252 : if (DEBUG) { System.out.println("ForceNoDiet ::="); } //$NON-NLS-1$ + consumeForceNoDiet(); + break; - case 256 : if (DEBUG) { System.out.println("MethodDeclaration ::= MethodHeader MethodBody"); } //$NON-NLS-1$ - // set to true to consume a method with a body - consumeMethodDeclaration(true, false); - break; + case 253 : if (DEBUG) { System.out.println("RestoreDiet ::="); } //$NON-NLS-1$ + consumeRestoreDiet(); + break; - case 257 : if (DEBUG) { System.out.println("MethodDeclaration ::= DefaultMethodHeader MethodBody"); } //$NON-NLS-1$ - // set to true to consume a method with a body - consumeMethodDeclaration(true, true); - break; + case 258 : if (DEBUG) { System.out.println("MethodDeclaration ::= MethodHeader MethodBody"); } //$NON-NLS-1$ + // set to true to consume a method with a body + consumeMethodDeclaration(true, false); + break; - case 258 : if (DEBUG) { System.out.println("AbstractMethodDeclaration ::= MethodHeader SEMICOLON"); } //$NON-NLS-1$ - // set to false to consume a method without body - consumeMethodDeclaration(false, false); - break; + case 259 : if (DEBUG) { System.out.println("MethodDeclaration ::= DefaultMethodHeader MethodBody"); } //$NON-NLS-1$ + // set to true to consume a method with a body + consumeMethodDeclaration(true, true); + break; - case 259 : if (DEBUG) { System.out.println("MethodHeader ::= MethodHeaderName FormalParameterListopt"); } //$NON-NLS-1$ - consumeMethodHeader(); - break; + case 260 : if (DEBUG) { System.out.println("AbstractMethodDeclaration ::= MethodHeader SEMICOLON"); } //$NON-NLS-1$ + // set to false to consume a method without body + consumeMethodDeclaration(false, false); + break; - case 260 : if (DEBUG) { System.out.println("DefaultMethodHeader ::= DefaultMethodHeaderName..."); } //$NON-NLS-1$ - consumeMethodHeader(); - break; + case 261 : if (DEBUG) { System.out.println("MethodHeader ::= MethodHeaderName FormalParameterListopt"); } //$NON-NLS-1$ + consumeMethodHeader(); + break; - case 261 : if (DEBUG) { System.out.println("MethodHeaderName ::= Modifiersopt TypeParameters Type..."); } //$NON-NLS-1$ - consumeMethodHeaderNameWithTypeParameters(false); - break; + case 262 : if (DEBUG) { System.out.println("DefaultMethodHeader ::= DefaultMethodHeaderName..."); } //$NON-NLS-1$ + consumeMethodHeader(); + break; - case 262 : if (DEBUG) { System.out.println("MethodHeaderName ::= Modifiersopt Type Identifier LPAREN"); } //$NON-NLS-1$ - consumeMethodHeaderName(false); - break; + case 263 : if (DEBUG) { System.out.println("MethodHeaderName ::= Modifiersopt TypeParameters Type..."); } //$NON-NLS-1$ + consumeMethodHeaderNameWithTypeParameters(false); + break; - case 263 : if (DEBUG) { System.out.println("DefaultMethodHeaderName ::= ModifiersWithDefault..."); } //$NON-NLS-1$ - consumeMethodHeaderNameWithTypeParameters(false); - break; + case 264 : if (DEBUG) { System.out.println("MethodHeaderName ::= Modifiersopt Type Identifier LPAREN"); } //$NON-NLS-1$ + consumeMethodHeaderName(false); + break; - case 264 : if (DEBUG) { System.out.println("DefaultMethodHeaderName ::= ModifiersWithDefault Type..."); } //$NON-NLS-1$ - consumeMethodHeaderName(false); - break; + case 265 : if (DEBUG) { System.out.println("DefaultMethodHeaderName ::= ModifiersWithDefault..."); } //$NON-NLS-1$ + consumeMethodHeaderNameWithTypeParameters(false); + break; - case 265 : if (DEBUG) { System.out.println("ModifiersWithDefault ::= Modifiersopt default..."); } //$NON-NLS-1$ - consumePushCombineModifiers(); - break; + case 266 : if (DEBUG) { System.out.println("DefaultMethodHeaderName ::= ModifiersWithDefault Type..."); } //$NON-NLS-1$ + consumeMethodHeaderName(false); + break; - case 266 : if (DEBUG) { System.out.println("MethodHeaderRightParen ::= RPAREN"); } //$NON-NLS-1$ - consumeMethodHeaderRightParen(); - break; + case 267 : if (DEBUG) { System.out.println("ModifiersWithDefault ::= Modifiersopt default..."); } //$NON-NLS-1$ + consumePushCombineModifiers(); + break; - case 267 : if (DEBUG) { System.out.println("MethodHeaderExtendedDims ::= Dimsopt"); } //$NON-NLS-1$ - consumeMethodHeaderExtendedDims(); - break; + case 268 : if (DEBUG) { System.out.println("MethodHeaderRightParen ::= RPAREN"); } //$NON-NLS-1$ + consumeMethodHeaderRightParen(); + break; - case 268 : if (DEBUG) { System.out.println("MethodHeaderThrowsClause ::= throws ClassTypeList"); } //$NON-NLS-1$ - consumeMethodHeaderThrowsClause(); - break; + case 269 : if (DEBUG) { System.out.println("MethodHeaderExtendedDims ::= Dimsopt"); } //$NON-NLS-1$ + consumeMethodHeaderExtendedDims(); + break; - case 269 : if (DEBUG) { System.out.println("ConstructorHeader ::= ConstructorHeaderName..."); } //$NON-NLS-1$ - consumeConstructorHeader(); - break; + case 270 : if (DEBUG) { System.out.println("MethodHeaderThrowsClause ::= throws ClassTypeList"); } //$NON-NLS-1$ + consumeMethodHeaderThrowsClause(); + break; - case 270 : if (DEBUG) { System.out.println("ConstructorHeaderName ::= Modifiersopt TypeParameters..."); } //$NON-NLS-1$ - consumeConstructorHeaderNameWithTypeParameters(); - break; + case 271 : if (DEBUG) { System.out.println("ConstructorHeader ::= ConstructorHeaderName..."); } //$NON-NLS-1$ + consumeConstructorHeader(); + break; - case 271 : if (DEBUG) { System.out.println("ConstructorHeaderName ::= Modifiersopt Identifier LPAREN"); } //$NON-NLS-1$ - consumeConstructorHeaderName(); - break; + case 272 : if (DEBUG) { System.out.println("ConstructorHeaderName ::= Modifiersopt TypeParameters..."); } //$NON-NLS-1$ + consumeConstructorHeaderNameWithTypeParameters(); + break; - case 273 : if (DEBUG) { System.out.println("FormalParameterList ::= FormalParameterList COMMA..."); } //$NON-NLS-1$ - consumeFormalParameterList(); - break; + case 273 : if (DEBUG) { System.out.println("ConstructorHeaderName ::= Modifiersopt Identifier LPAREN"); } //$NON-NLS-1$ + consumeConstructorHeaderName(); + break; - case 274 : if (DEBUG) { System.out.println("FormalParameter ::= Modifiersopt Type..."); } //$NON-NLS-1$ - consumeFormalParameter(false); - break; + case 275 : if (DEBUG) { System.out.println("FormalParameterList ::= FormalParameterList COMMA..."); } //$NON-NLS-1$ + consumeFormalParameterList(); + break; - case 275 : if (DEBUG) { System.out.println("FormalParameter ::= Modifiersopt Type..."); } //$NON-NLS-1$ - consumeFormalParameter(true); - break; + case 276 : if (DEBUG) { System.out.println("FormalParameter ::= Modifiersopt Type..."); } //$NON-NLS-1$ + consumeFormalParameter(false); + break; - case 276 : if (DEBUG) { System.out.println("FormalParameter ::= Modifiersopt Type AT308DOTDOTDOT..."); } //$NON-NLS-1$ - consumeFormalParameter(true); - break; + case 277 : if (DEBUG) { System.out.println("FormalParameter ::= Modifiersopt Type..."); } //$NON-NLS-1$ + consumeFormalParameter(true); + break; - case 277 : if (DEBUG) { System.out.println("CatchFormalParameter ::= Modifiersopt CatchType..."); } //$NON-NLS-1$ - consumeCatchFormalParameter(); - break; + case 278 : if (DEBUG) { System.out.println("FormalParameter ::= Modifiersopt Type AT308DOTDOTDOT..."); } //$NON-NLS-1$ + consumeFormalParameter(true); + break; - case 278 : if (DEBUG) { System.out.println("CatchType ::= UnionType"); } //$NON-NLS-1$ - consumeCatchType(); - break; + case 279 : if (DEBUG) { System.out.println("CatchFormalParameter ::= Modifiersopt CatchType..."); } //$NON-NLS-1$ + consumeCatchFormalParameter(); + break; - case 279 : if (DEBUG) { System.out.println("UnionType ::= Type"); } //$NON-NLS-1$ - consumeUnionTypeAsClassType(); - break; + case 280 : if (DEBUG) { System.out.println("CatchType ::= UnionType"); } //$NON-NLS-1$ + consumeCatchType(); + break; - case 280 : if (DEBUG) { System.out.println("UnionType ::= UnionType OR Type"); } //$NON-NLS-1$ - consumeUnionType(); - break; + case 281 : if (DEBUG) { System.out.println("UnionType ::= Type"); } //$NON-NLS-1$ + consumeUnionTypeAsClassType(); + break; - case 282 : if (DEBUG) { System.out.println("ClassTypeList ::= ClassTypeList COMMA ClassTypeElt"); } //$NON-NLS-1$ - consumeClassTypeList(); - break; + case 282 : if (DEBUG) { System.out.println("UnionType ::= UnionType OR Type"); } //$NON-NLS-1$ + consumeUnionType(); + break; - case 283 : if (DEBUG) { System.out.println("ClassTypeElt ::= ClassType"); } //$NON-NLS-1$ - consumeClassTypeElt(); - break; + case 284 : if (DEBUG) { System.out.println("ClassTypeList ::= ClassTypeList COMMA ClassTypeElt"); } //$NON-NLS-1$ + consumeClassTypeList(); + break; - case 284 : if (DEBUG) { System.out.println("MethodBody ::= NestedMethod LBRACE BlockStatementsopt..."); } //$NON-NLS-1$ - consumeMethodBody(); - break; + case 285 : if (DEBUG) { System.out.println("ClassTypeElt ::= ClassType"); } //$NON-NLS-1$ + consumeClassTypeElt(); + break; - case 285 : if (DEBUG) { System.out.println("NestedMethod ::="); } //$NON-NLS-1$ - consumeNestedMethod(); - break; + case 286 : if (DEBUG) { System.out.println("MethodBody ::= NestedMethod LBRACE BlockStatementsopt..."); } //$NON-NLS-1$ + consumeMethodBody(); + break; - case 286 : if (DEBUG) { System.out.println("StaticInitializer ::= StaticOnly Block"); } //$NON-NLS-1$ - consumeStaticInitializer(); - break; + case 287 : if (DEBUG) { System.out.println("NestedMethod ::="); } //$NON-NLS-1$ + consumeNestedMethod(); + break; - case 287 : if (DEBUG) { System.out.println("StaticOnly ::= static"); } //$NON-NLS-1$ - consumeStaticOnly(); - break; + case 288 : if (DEBUG) { System.out.println("StaticInitializer ::= StaticOnly Block"); } //$NON-NLS-1$ + consumeStaticInitializer(); + break; - case 288 : if (DEBUG) { System.out.println("ConstructorDeclaration ::= ConstructorHeader MethodBody"); } //$NON-NLS-1$ - consumeConstructorDeclaration() ; - break; + case 289 : if (DEBUG) { System.out.println("StaticOnly ::= static"); } //$NON-NLS-1$ + consumeStaticOnly(); + break; - case 289 : if (DEBUG) { System.out.println("ConstructorDeclaration ::= ConstructorHeader SEMICOLON"); } //$NON-NLS-1$ - consumeInvalidConstructorDeclaration() ; - break; + case 290 : if (DEBUG) { System.out.println("ConstructorDeclaration ::= ConstructorHeader MethodBody"); } //$NON-NLS-1$ + consumeConstructorDeclaration() ; + break; - case 290 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= this LPAREN..."); } //$NON-NLS-1$ - consumeExplicitConstructorInvocation(0, THIS_CALL); - break; + case 291 : if (DEBUG) { System.out.println("ConstructorDeclaration ::= ConstructorHeader SEMICOLON"); } //$NON-NLS-1$ + consumeInvalidConstructorDeclaration() ; + break; - case 291 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= OnlyTypeArguments this"); } //$NON-NLS-1$ - consumeExplicitConstructorInvocationWithTypeArguments(0,THIS_CALL); - break; + case 292 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= this LPAREN..."); } //$NON-NLS-1$ + consumeExplicitConstructorInvocation(0, THIS_CALL); + break; - case 292 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= super LPAREN..."); } //$NON-NLS-1$ - consumeExplicitConstructorInvocation(0,SUPER_CALL); - break; + case 293 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= OnlyTypeArguments this"); } //$NON-NLS-1$ + consumeExplicitConstructorInvocationWithTypeArguments(0,THIS_CALL); + break; - case 293 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= OnlyTypeArguments..."); } //$NON-NLS-1$ - consumeExplicitConstructorInvocationWithTypeArguments(0,SUPER_CALL); - break; + case 294 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= super LPAREN..."); } //$NON-NLS-1$ + consumeExplicitConstructorInvocation(0,SUPER_CALL); + break; - case 294 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= Primary DOT super..."); } //$NON-NLS-1$ - consumeExplicitConstructorInvocation(1, SUPER_CALL); - break; + case 295 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= OnlyTypeArguments..."); } //$NON-NLS-1$ + consumeExplicitConstructorInvocationWithTypeArguments(0,SUPER_CALL); + break; - case 295 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= Primary DOT..."); } //$NON-NLS-1$ - consumeExplicitConstructorInvocationWithTypeArguments(1, SUPER_CALL); - break; + case 296 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= Primary DOT super..."); } //$NON-NLS-1$ + consumeExplicitConstructorInvocation(1, SUPER_CALL); + break; - case 296 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= Name DOT super LPAREN"); } //$NON-NLS-1$ - consumeExplicitConstructorInvocation(2, SUPER_CALL); - break; + case 297 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= Primary DOT..."); } //$NON-NLS-1$ + consumeExplicitConstructorInvocationWithTypeArguments(1, SUPER_CALL); + break; - case 297 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= Name DOT..."); } //$NON-NLS-1$ - consumeExplicitConstructorInvocationWithTypeArguments(2, SUPER_CALL); - break; + case 298 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= Name DOT super LPAREN"); } //$NON-NLS-1$ + consumeExplicitConstructorInvocation(2, SUPER_CALL); + break; - case 298 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= Primary DOT this..."); } //$NON-NLS-1$ - consumeExplicitConstructorInvocation(1, THIS_CALL); - break; + case 299 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= Name DOT..."); } //$NON-NLS-1$ + consumeExplicitConstructorInvocationWithTypeArguments(2, SUPER_CALL); + break; - case 299 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= Primary DOT..."); } //$NON-NLS-1$ - consumeExplicitConstructorInvocationWithTypeArguments(1, THIS_CALL); - break; + case 300 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= Primary DOT this..."); } //$NON-NLS-1$ + consumeExplicitConstructorInvocation(1, THIS_CALL); + break; - case 300 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= Name DOT this LPAREN"); } //$NON-NLS-1$ - consumeExplicitConstructorInvocation(2, THIS_CALL); - break; + case 301 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= Primary DOT..."); } //$NON-NLS-1$ + consumeExplicitConstructorInvocationWithTypeArguments(1, THIS_CALL); + break; - case 301 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= Name DOT..."); } //$NON-NLS-1$ - consumeExplicitConstructorInvocationWithTypeArguments(2, THIS_CALL); - break; + case 302 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= Name DOT this LPAREN"); } //$NON-NLS-1$ + consumeExplicitConstructorInvocation(2, THIS_CALL); + break; - case 302 : if (DEBUG) { System.out.println("InterfaceDeclaration ::= InterfaceHeader InterfaceBody"); } //$NON-NLS-1$ - consumeInterfaceDeclaration(); - break; + case 303 : if (DEBUG) { System.out.println("ExplicitConstructorInvocation ::= Name DOT..."); } //$NON-NLS-1$ + consumeExplicitConstructorInvocationWithTypeArguments(2, THIS_CALL); + break; - case 303 : if (DEBUG) { System.out.println("InterfaceHeader ::= InterfaceHeaderName..."); } //$NON-NLS-1$ - consumeInterfaceHeader(); - break; + case 304 : if (DEBUG) { System.out.println("InterfaceDeclaration ::= InterfaceHeader InterfaceBody"); } //$NON-NLS-1$ + consumeInterfaceDeclaration(); + break; - case 304 : if (DEBUG) { System.out.println("InterfaceHeaderName ::= InterfaceHeaderName1..."); } //$NON-NLS-1$ - consumeTypeHeaderNameWithTypeParameters(); - break; + case 305 : if (DEBUG) { System.out.println("InterfaceHeader ::= InterfaceHeaderName..."); } //$NON-NLS-1$ + consumeInterfaceHeader(); + break; - case 306 : if (DEBUG) { System.out.println("InterfaceHeaderName1 ::= Modifiersopt interface..."); } //$NON-NLS-1$ - consumeInterfaceHeaderName1(); - break; + case 306 : if (DEBUG) { System.out.println("InterfaceHeaderName ::= InterfaceHeaderName1..."); } //$NON-NLS-1$ + consumeTypeHeaderNameWithTypeParameters(); + break; - case 307 : if (DEBUG) { System.out.println("InterfaceHeaderExtends ::= extends InterfaceTypeList"); } //$NON-NLS-1$ - consumeInterfaceHeaderExtends(); - break; + case 308 : if (DEBUG) { System.out.println("InterfaceHeaderName1 ::= Modifiersopt interface..."); } //$NON-NLS-1$ + consumeInterfaceHeaderName1(); + break; - case 310 : if (DEBUG) { System.out.println("InterfaceMemberDeclarations ::=..."); } //$NON-NLS-1$ - consumeInterfaceMemberDeclarations(); - break; + case 309 : if (DEBUG) { System.out.println("InterfaceHeaderExtends ::= extends InterfaceTypeList"); } //$NON-NLS-1$ + consumeInterfaceHeaderExtends(); + break; - case 311 : if (DEBUG) { System.out.println("InterfaceMemberDeclaration ::= SEMICOLON"); } //$NON-NLS-1$ - consumeEmptyTypeDeclaration(); - break; + case 312 : if (DEBUG) { System.out.println("InterfaceMemberDeclarations ::=..."); } //$NON-NLS-1$ + consumeInterfaceMemberDeclarations(); + break; - case 313 : if (DEBUG) { System.out.println("InterfaceMemberDeclaration ::= DefaultMethodHeader..."); } //$NON-NLS-1$ - consumeInterfaceMethodDeclaration(false); - break; + case 313 : if (DEBUG) { System.out.println("InterfaceMemberDeclaration ::= SEMICOLON"); } //$NON-NLS-1$ + consumeEmptyTypeDeclaration(); + break; - case 314 : if (DEBUG) { System.out.println("InterfaceMemberDeclaration ::= MethodHeader MethodBody"); } //$NON-NLS-1$ - consumeInterfaceMethodDeclaration(false); - break; + case 315 : if (DEBUG) { System.out.println("InterfaceMemberDeclaration ::= DefaultMethodHeader..."); } //$NON-NLS-1$ + consumeInterfaceMethodDeclaration(false); + break; - case 315 : if (DEBUG) { System.out.println("InterfaceMemberDeclaration ::= DefaultMethodHeader..."); } //$NON-NLS-1$ - consumeInterfaceMethodDeclaration(true); - break; + case 316 : if (DEBUG) { System.out.println("InterfaceMemberDeclaration ::= MethodHeader MethodBody"); } //$NON-NLS-1$ + consumeInterfaceMethodDeclaration(false); + break; - case 316 : if (DEBUG) { System.out.println("InvalidConstructorDeclaration ::= ConstructorHeader..."); } //$NON-NLS-1$ - consumeInvalidConstructorDeclaration(true); - break; + case 317 : if (DEBUG) { System.out.println("InterfaceMemberDeclaration ::= DefaultMethodHeader..."); } //$NON-NLS-1$ + consumeInterfaceMethodDeclaration(true); + break; - case 317 : if (DEBUG) { System.out.println("InvalidConstructorDeclaration ::= ConstructorHeader..."); } //$NON-NLS-1$ - consumeInvalidConstructorDeclaration(false); - break; + case 318 : if (DEBUG) { System.out.println("InvalidConstructorDeclaration ::= ConstructorHeader..."); } //$NON-NLS-1$ + consumeInvalidConstructorDeclaration(true); + break; - case 328 : if (DEBUG) { System.out.println("RecordDeclaration ::= RecordHeaderPart RecordBody"); } //$NON-NLS-1$ - consumeRecordDeclaration(); - break; + case 319 : if (DEBUG) { System.out.println("InvalidConstructorDeclaration ::= ConstructorHeader..."); } //$NON-NLS-1$ + consumeInvalidConstructorDeclaration(false); + break; - case 329 : if (DEBUG) { System.out.println("RecordHeaderPart ::= RecordHeaderName RecordHeader..."); } //$NON-NLS-1$ - consumeRecordHeaderPart(); - break; + case 330 : if (DEBUG) { System.out.println("RecordDeclaration ::= RecordHeaderPart RecordBody"); } //$NON-NLS-1$ + consumeRecordDeclaration(); + break; - case 330 : if (DEBUG) { System.out.println("RecordHeaderName ::= RecordHeaderName1 TypeParameters"); } //$NON-NLS-1$ - consumeRecordHeaderNameWithTypeParameters(); - break; + case 331 : if (DEBUG) { System.out.println("RecordHeaderPart ::= RecordHeaderName RecordHeader..."); } //$NON-NLS-1$ + consumeRecordHeaderPart(); + break; - case 332 : if (DEBUG) { System.out.println("RecordHeaderName1 ::= Modifiersopt..."); } //$NON-NLS-1$ - consumeRecordHeaderName1(); - break; + case 332 : if (DEBUG) { System.out.println("RecordHeaderName ::= RecordHeaderName1 TypeParameters"); } //$NON-NLS-1$ + consumeRecordHeaderNameWithTypeParameters(); + break; - case 333 : if (DEBUG) { System.out.println("RecordComponentHeaderRightParen ::= RPAREN"); } //$NON-NLS-1$ - consumeRecordComponentHeaderRightParen(); - break; + case 334 : if (DEBUG) { System.out.println("RecordHeaderName1 ::= Modifiersopt..."); } //$NON-NLS-1$ + consumeRecordHeaderName1(); + break; - case 334 : if (DEBUG) { System.out.println("RecordHeader ::= LPAREN RecordComponentsopt..."); } //$NON-NLS-1$ - consumeRecordHeader(); - break; + case 335 : if (DEBUG) { System.out.println("RecordComponentHeaderRightParen ::= RPAREN"); } //$NON-NLS-1$ + consumeRecordComponentHeaderRightParen(); + break; - case 335 : if (DEBUG) { System.out.println("RecordComponentsopt ::="); } //$NON-NLS-1$ - consumeRecordComponentsopt(); - break; + case 336 : if (DEBUG) { System.out.println("RecordHeader ::= LPAREN RecordComponentsopt..."); } //$NON-NLS-1$ + consumeRecordHeader(); + break; - case 338 : if (DEBUG) { System.out.println("RecordComponents ::= RecordComponents COMMA..."); } //$NON-NLS-1$ - consumeRecordComponents(); - break; + case 337 : if (DEBUG) { System.out.println("RecordComponentsopt ::="); } //$NON-NLS-1$ + consumeRecordComponentsopt(); + break; - case 340 : if (DEBUG) { System.out.println("RecordComponent ::= Modifiersopt Type..."); } //$NON-NLS-1$ - consumeRecordComponent(false); - break; + case 340 : if (DEBUG) { System.out.println("RecordComponents ::= RecordComponents COMMA..."); } //$NON-NLS-1$ + consumeRecordComponents(); + break; - case 341 : if (DEBUG) { System.out.println("VariableArityRecordComponent ::= Modifiersopt Type..."); } //$NON-NLS-1$ - consumeRecordComponent(true); - break; + case 342 : if (DEBUG) { System.out.println("RecordComponent ::= Modifiersopt Type..."); } //$NON-NLS-1$ + consumeRecordComponent(false); + break; - case 342 : if (DEBUG) { System.out.println("VariableArityRecordComponent ::= Modifiersopt Type..."); } //$NON-NLS-1$ - consumeRecordComponent(true); - break; + case 343 : if (DEBUG) { System.out.println("VariableArityRecordComponent ::= Modifiersopt Type..."); } //$NON-NLS-1$ + consumeRecordComponent(true); + break; - case 343 : if (DEBUG) { System.out.println("RecordBody ::= LBRACE RecordBodyDeclarationopt RBRACE"); } //$NON-NLS-1$ - consumeRecordBody(); - break; + case 344 : if (DEBUG) { System.out.println("VariableArityRecordComponent ::= Modifiersopt Type..."); } //$NON-NLS-1$ + consumeRecordComponent(true); + break; - case 344 : if (DEBUG) { System.out.println("RecordBodyDeclarationopt ::="); } //$NON-NLS-1$ - consumeEmptyRecordBodyDeclaration(); - break; + case 345 : if (DEBUG) { System.out.println("RecordBody ::= LBRACE RecordBodyDeclarationopt RBRACE"); } //$NON-NLS-1$ + consumeRecordBody(); + break; - case 347 : if (DEBUG) { System.out.println("RecordBodyDeclarations ::= RecordBodyDeclarations..."); } //$NON-NLS-1$ - consumeRecordBodyDeclarations(); - break; + case 346 : if (DEBUG) { System.out.println("RecordBodyDeclarationopt ::="); } //$NON-NLS-1$ + consumeEmptyRecordBodyDeclaration(); + break; - case 348 : if (DEBUG) { System.out.println("RecordBodyDeclaration ::= ClassBodyDeclaration"); } //$NON-NLS-1$ - consumeRecordBodyDeclaration(); - break; + case 349 : if (DEBUG) { System.out.println("RecordBodyDeclarations ::= RecordBodyDeclarations..."); } //$NON-NLS-1$ + consumeRecordBodyDeclarations(); + break; - case 349 : if (DEBUG) { System.out.println("RecordBodyDeclaration ::= CompactConstructorDeclaration"); } //$NON-NLS-1$ - consumeRecordBodyDeclaration(); - break; + case 350 : if (DEBUG) { System.out.println("RecordBodyDeclaration ::= ClassBodyDeclaration"); } //$NON-NLS-1$ + consumeRecordBodyDeclaration(); + break; - case 350 : if (DEBUG) { System.out.println("CompactConstructorDeclaration ::=..."); } //$NON-NLS-1$ - consumeCompactConstructorDeclaration(); - break; + case 351 : if (DEBUG) { System.out.println("RecordBodyDeclaration ::= CompactConstructorDeclaration"); } //$NON-NLS-1$ + consumeRecordBodyDeclaration(); + break; - case 351 : if (DEBUG) { System.out.println("CompactConstructorHeader ::=..."); } //$NON-NLS-1$ - consumeCompactConstructorHeader(); - break; + case 352 : if (DEBUG) { System.out.println("CompactConstructorDeclaration ::=..."); } //$NON-NLS-1$ + consumeCompactConstructorDeclaration(); + break; - case 352 : if (DEBUG) { System.out.println("CompactConstructorHeaderName ::= Modifiersopt Identifier"); } //$NON-NLS-1$ - consumeCompactConstructorHeaderName(); - break; + case 353 : if (DEBUG) { System.out.println("CompactConstructorHeader ::=..."); } //$NON-NLS-1$ + consumeCompactConstructorHeader(); + break; - case 353 : if (DEBUG) { System.out.println("CompactConstructorHeaderName ::= Modifiersopt..."); } //$NON-NLS-1$ - consumeCompactConstructorHeaderNameWithTypeParameters(); - break; + case 354 : if (DEBUG) { System.out.println("CompactConstructorHeaderName ::= Modifiersopt Identifier"); } //$NON-NLS-1$ + consumeCompactConstructorHeaderName(); + break; - case 355 : if (DEBUG) { System.out.println("InstanceofExpression ::= InstanceofExpression..."); } //$NON-NLS-1$ - consumeInstanceOfExpression(); - break; + case 355 : if (DEBUG) { System.out.println("CompactConstructorHeaderName ::= Modifiersopt..."); } //$NON-NLS-1$ + consumeCompactConstructorHeaderNameWithTypeParameters(); + break; - case 357 : if (DEBUG) { System.out.println("InstanceofRHS -> InstanceofPattern"); } //$NON-NLS-1$ - consumeInstanceOfRHS(); - break; + case 357 : if (DEBUG) { System.out.println("InstanceofExpression ::= InstanceofExpression..."); } //$NON-NLS-1$ + consumeInstanceOfExpression(); + break; - case 358 : if (DEBUG) { System.out.println("InstanceofClassic ::= instanceof Modifiersopt Type"); } //$NON-NLS-1$ - consumeInstanceOfClassic(); - break; + case 359 : if (DEBUG) { System.out.println("InstanceofRHS -> InstanceofPattern"); } //$NON-NLS-1$ + consumeInstanceOfRHS(); + break; - case 359 : if (DEBUG) { System.out.println("InstanceofPattern ::= instanceof Pattern"); } //$NON-NLS-1$ - consumeInstanceofPattern(); - break; + case 360 : if (DEBUG) { System.out.println("InstanceofClassic ::= instanceof Modifiersopt Type"); } //$NON-NLS-1$ + consumeInstanceOfClassic(); + break; - case 361 : if (DEBUG) { System.out.println("Pattern -> RecordPattern"); } //$NON-NLS-1$ - consumePattern(); - break; + case 361 : if (DEBUG) { System.out.println("InstanceofPattern ::= instanceof Pattern"); } //$NON-NLS-1$ + consumeInstanceofPattern(); + break; - case 362 : if (DEBUG) { System.out.println("TypePattern ::= Modifiersopt Type Identifier"); } //$NON-NLS-1$ - consumeTypePattern(); - break; + case 363 : if (DEBUG) { System.out.println("Pattern -> RecordPattern"); } //$NON-NLS-1$ + consumePattern(); + break; - case 363 : if (DEBUG) { System.out.println("RecordPattern ::= Modifiersopt ReferenceType PushLPAREN"); } //$NON-NLS-1$ - consumeRecordPattern(); - break; + case 364 : if (DEBUG) { System.out.println("TypePattern ::= Modifiersopt Type Identifier"); } //$NON-NLS-1$ + consumeTypePattern(); + break; - case 364 : if (DEBUG) { System.out.println("PatternListopt ::="); } //$NON-NLS-1$ - consumePatternListopt(); - break; + case 365 : if (DEBUG) { System.out.println("RecordPattern ::= Modifiersopt ReferenceType PushLPAREN"); } //$NON-NLS-1$ + consumeRecordPattern(); + break; - case 367 : if (DEBUG) { System.out.println("PatternList ::= PatternList COMMA Pattern"); } //$NON-NLS-1$ - consumePatternList(); - break; + case 366 : if (DEBUG) { System.out.println("PatternListopt ::="); } //$NON-NLS-1$ + consumePatternListopt(); + break; - case 369 : if (DEBUG) { System.out.println("PushLeftBrace ::="); } //$NON-NLS-1$ - consumePushLeftBrace(); - break; + case 369 : if (DEBUG) { System.out.println("PatternList ::= PatternList COMMA Pattern"); } //$NON-NLS-1$ + consumePatternList(); + break; - case 370 : if (DEBUG) { System.out.println("ArrayInitializer ::= LBRACE PushLeftBrace ,opt RBRACE"); } //$NON-NLS-1$ - consumeEmptyArrayInitializer(); - break; + case 371 : if (DEBUG) { System.out.println("PushLeftBrace ::="); } //$NON-NLS-1$ + consumePushLeftBrace(); + break; - case 371 : if (DEBUG) { System.out.println("ArrayInitializer ::= LBRACE PushLeftBrace..."); } //$NON-NLS-1$ - consumeArrayInitializer(); - break; + case 372 : if (DEBUG) { System.out.println("ArrayInitializer ::= LBRACE PushLeftBrace ,opt RBRACE"); } //$NON-NLS-1$ + consumeEmptyArrayInitializer(); + break; - case 372 : if (DEBUG) { System.out.println("ArrayInitializer ::= LBRACE PushLeftBrace..."); } //$NON-NLS-1$ - consumeArrayInitializer(); - break; + case 373 : if (DEBUG) { System.out.println("ArrayInitializer ::= LBRACE PushLeftBrace..."); } //$NON-NLS-1$ + consumeArrayInitializer(); + break; - case 374 : if (DEBUG) { System.out.println("VariableInitializers ::= VariableInitializers COMMA..."); } //$NON-NLS-1$ - consumeVariableInitializers(); - break; + case 374 : if (DEBUG) { System.out.println("ArrayInitializer ::= LBRACE PushLeftBrace..."); } //$NON-NLS-1$ + consumeArrayInitializer(); + break; - case 375 : if (DEBUG) { System.out.println("Block ::= OpenBlock LBRACE BlockStatementsopt RBRACE"); } //$NON-NLS-1$ - consumeBlock(); - break; + case 376 : if (DEBUG) { System.out.println("VariableInitializers ::= VariableInitializers COMMA..."); } //$NON-NLS-1$ + consumeVariableInitializers(); + break; - case 376 : if (DEBUG) { System.out.println("OpenBlock ::="); } //$NON-NLS-1$ - consumeOpenBlock() ; - break; + case 377 : if (DEBUG) { System.out.println("Block ::= OpenBlock LBRACE BlockStatementsopt RBRACE"); } //$NON-NLS-1$ + consumeBlock(); + break; - case 377 : if (DEBUG) { System.out.println("BlockStatements ::= BlockStatement"); } //$NON-NLS-1$ - consumeBlockStatement() ; - break; + case 378 : if (DEBUG) { System.out.println("OpenBlock ::="); } //$NON-NLS-1$ + consumeOpenBlock() ; + break; - case 378 : if (DEBUG) { System.out.println("BlockStatements ::= BlockStatements BlockStatement"); } //$NON-NLS-1$ - consumeBlockStatements() ; - break; + case 379 : if (DEBUG) { System.out.println("BlockStatements ::= BlockStatement"); } //$NON-NLS-1$ + consumeBlockStatement() ; + break; - case 386 : if (DEBUG) { System.out.println("BlockStatement ::= InterfaceDeclaration"); } //$NON-NLS-1$ - consumeInvalidInterfaceDeclaration(); - break; + case 380 : if (DEBUG) { System.out.println("BlockStatements ::= BlockStatements BlockStatement"); } //$NON-NLS-1$ + consumeBlockStatements() ; + break; - case 387 : if (DEBUG) { System.out.println("BlockStatement ::= AnnotationTypeDeclaration"); } //$NON-NLS-1$ - consumeInvalidAnnotationTypeDeclaration(); - break; + case 388 : if (DEBUG) { System.out.println("BlockStatement ::= InterfaceDeclaration"); } //$NON-NLS-1$ + consumeInvalidInterfaceDeclaration(); + break; - case 388 : if (DEBUG) { System.out.println("BlockStatement ::= EnumDeclaration"); } //$NON-NLS-1$ - consumeInvalidEnumDeclaration(); - break; + case 389 : if (DEBUG) { System.out.println("BlockStatement ::= AnnotationTypeDeclaration"); } //$NON-NLS-1$ + consumeInvalidAnnotationTypeDeclaration(); + break; - case 389 : if (DEBUG) { System.out.println("LocalVariableDeclarationStatement ::=..."); } //$NON-NLS-1$ - consumeLocalVariableDeclarationStatement(); - break; + case 390 : if (DEBUG) { System.out.println("BlockStatement ::= EnumDeclaration"); } //$NON-NLS-1$ + consumeInvalidEnumDeclaration(); + break; - case 390 : if (DEBUG) { System.out.println("LocalVariableDeclaration ::= Type PushModifiers..."); } //$NON-NLS-1$ - consumeLocalVariableDeclaration(); - break; + case 391 : if (DEBUG) { System.out.println("LocalVariableDeclarationStatement ::=..."); } //$NON-NLS-1$ + consumeLocalVariableDeclarationStatement(); + break; - case 391 : if (DEBUG) { System.out.println("LocalVariableDeclaration ::= Modifiers Type..."); } //$NON-NLS-1$ - consumeLocalVariableDeclaration(); - break; + case 392 : if (DEBUG) { System.out.println("LocalVariableDeclaration ::= Type PushModifiers..."); } //$NON-NLS-1$ + consumeLocalVariableDeclaration(); + break; - case 392 : if (DEBUG) { System.out.println("PushModifiers ::="); } //$NON-NLS-1$ - consumePushModifiers(); - break; + case 393 : if (DEBUG) { System.out.println("LocalVariableDeclaration ::= Modifiers Type..."); } //$NON-NLS-1$ + consumeLocalVariableDeclaration(); + break; - case 393 : if (DEBUG) { System.out.println("PushModifiersForHeader ::="); } //$NON-NLS-1$ - consumePushModifiersForHeader(); - break; + case 394 : if (DEBUG) { System.out.println("PushModifiers ::="); } //$NON-NLS-1$ + consumePushModifiers(); + break; - case 394 : if (DEBUG) { System.out.println("PushRealModifiers ::="); } //$NON-NLS-1$ - consumePushRealModifiers(); - break; + case 395 : if (DEBUG) { System.out.println("PushModifiersForHeader ::="); } //$NON-NLS-1$ + consumePushModifiersForHeader(); + break; - case 422 : if (DEBUG) { System.out.println("EmptyStatement ::= SEMICOLON"); } //$NON-NLS-1$ - consumeEmptyStatement(); - break; + case 396 : if (DEBUG) { System.out.println("PushRealModifiers ::="); } //$NON-NLS-1$ + consumePushRealModifiers(); + break; - case 423 : if (DEBUG) { System.out.println("LabeledStatement ::= Label COLON Statement"); } //$NON-NLS-1$ - consumeStatementLabel() ; - break; + case 424 : if (DEBUG) { System.out.println("EmptyStatement ::= SEMICOLON"); } //$NON-NLS-1$ + consumeEmptyStatement(); + break; - case 424 : if (DEBUG) { System.out.println("LabeledStatementNoShortIf ::= Label COLON..."); } //$NON-NLS-1$ - consumeStatementLabel() ; - break; + case 425 : if (DEBUG) { System.out.println("LabeledStatement ::= Label COLON Statement"); } //$NON-NLS-1$ + consumeStatementLabel() ; + break; - case 425 : if (DEBUG) { System.out.println("Label ::= Identifier"); } //$NON-NLS-1$ - consumeLabel() ; - break; + case 426 : if (DEBUG) { System.out.println("LabeledStatementNoShortIf ::= Label COLON..."); } //$NON-NLS-1$ + consumeStatementLabel() ; + break; - case 426 : if (DEBUG) { System.out.println("ExpressionStatement ::= StatementExpression SEMICOLON"); } //$NON-NLS-1$ - consumeExpressionStatement(); - break; + case 427 : if (DEBUG) { System.out.println("Label ::= Identifier"); } //$NON-NLS-1$ + consumeLabel() ; + break; - case 435 : if (DEBUG) { System.out.println("PostExpressionInSwitchStatement ::="); } //$NON-NLS-1$ - consumePostExpressionInSwitch(true); - break; + case 428 : if (DEBUG) { System.out.println("ExpressionStatement ::= StatementExpression SEMICOLON"); } //$NON-NLS-1$ + consumeExpressionStatement(); + break; - case 436 : if (DEBUG) { System.out.println("PostExpressionInSwitchExpression ::="); } //$NON-NLS-1$ - consumePostExpressionInSwitch(false); - break; + case 437 : if (DEBUG) { System.out.println("PostExpressionInSwitchStatement ::="); } //$NON-NLS-1$ + consumePostExpressionInSwitch(true); + break; - case 437 : if (DEBUG) { System.out.println("PostExpressionInIf ::="); } //$NON-NLS-1$ - consumePostExpressionInIf(); - break; + case 438 : if (DEBUG) { System.out.println("PostExpressionInSwitchExpression ::="); } //$NON-NLS-1$ + consumePostExpressionInSwitch(false); + break; - case 438 : if (DEBUG) { System.out.println("PostExpressionInWhile ::="); } //$NON-NLS-1$ - consumePostExpressionInWhile(); - break; + case 439 : if (DEBUG) { System.out.println("PostExpressionInIf ::="); } //$NON-NLS-1$ + consumePostExpressionInIf(); + break; - case 439 : if (DEBUG) { System.out.println("IfThenStatement ::= if LPAREN Expression RPAREN..."); } //$NON-NLS-1$ - consumeStatementIfNoElse(); - break; + case 440 : if (DEBUG) { System.out.println("PostExpressionInWhile ::="); } //$NON-NLS-1$ + consumePostExpressionInWhile(); + break; - case 440 : if (DEBUG) { System.out.println("IfThenElseStatement ::= if LPAREN Expression RPAREN..."); } //$NON-NLS-1$ - consumeStatementIfWithElse(); - break; + case 441 : if (DEBUG) { System.out.println("IfThenStatement ::= if LPAREN Expression RPAREN..."); } //$NON-NLS-1$ + consumeStatementIfNoElse(); + break; - case 441 : if (DEBUG) { System.out.println("IfThenElseStatementNoShortIf ::= if LPAREN Expression..."); } //$NON-NLS-1$ - consumeStatementIfWithElse(); - break; + case 442 : if (DEBUG) { System.out.println("IfThenElseStatement ::= if LPAREN Expression RPAREN..."); } //$NON-NLS-1$ + consumeStatementIfWithElse(); + break; - case 442 : if (DEBUG) { System.out.println("SwitchStatement ::= switch LPAREN Expression RPAREN..."); } //$NON-NLS-1$ - consumeStatementSwitch() ; - break; + case 443 : if (DEBUG) { System.out.println("IfThenElseStatementNoShortIf ::= if LPAREN Expression..."); } //$NON-NLS-1$ + consumeStatementIfWithElse(); + break; - case 443 : if (DEBUG) { System.out.println("SwitchBlock ::= LBRACE RBRACE"); } //$NON-NLS-1$ - consumeEmptySwitchBlock() ; - break; + case 444 : if (DEBUG) { System.out.println("SwitchStatement ::= switch LPAREN Expression RPAREN..."); } //$NON-NLS-1$ + consumeStatementSwitch() ; + break; - case 446 : if (DEBUG) { System.out.println("SwitchBlock ::= LBRACE SwitchBlockStatements..."); } //$NON-NLS-1$ - consumeSwitchBlock() ; - break; + case 445 : if (DEBUG) { System.out.println("SwitchBlock ::= LBRACE RBRACE"); } //$NON-NLS-1$ + consumeEmptySwitchBlock() ; + break; - case 448 : if (DEBUG) { System.out.println("SwitchBlockStatements ::= SwitchBlockStatements..."); } //$NON-NLS-1$ - consumeSwitchBlockStatements() ; - break; + case 448 : if (DEBUG) { System.out.println("SwitchBlock ::= LBRACE SwitchBlockStatements..."); } //$NON-NLS-1$ + consumeSwitchBlock() ; + break; - case 450 : if (DEBUG) { System.out.println("SwitchBlockStatement ::= SwitchLabels BlockStatements"); } //$NON-NLS-1$ - consumeSwitchBlockStatement() ; - break; + case 450 : if (DEBUG) { System.out.println("SwitchBlockStatements ::= SwitchBlockStatements..."); } //$NON-NLS-1$ + consumeSwitchBlockStatements() ; + break; - case 452 : if (DEBUG) { System.out.println("SwitchLabels ::= SwitchLabels SwitchLabel"); } //$NON-NLS-1$ - consumeSwitchLabels() ; - break; + case 452 : if (DEBUG) { System.out.println("SwitchBlockStatement ::= SwitchLabels BlockStatements"); } //$NON-NLS-1$ + consumeSwitchBlockStatement() ; + break; - case 453 : if (DEBUG) { System.out.println("SwitchLabel ::= SwitchLabelCaseLhs COLON"); } //$NON-NLS-1$ - consumeCaseLabel(); - break; + case 454 : if (DEBUG) { System.out.println("SwitchLabels ::= SwitchLabels SwitchLabel"); } //$NON-NLS-1$ + consumeSwitchLabels() ; + break; - case 454 : if (DEBUG) { System.out.println("SwitchLabel ::= default COLON"); } //$NON-NLS-1$ - consumeDefaultLabel(); - break; + case 455 : if (DEBUG) { System.out.println("SwitchLabel ::= SwitchLabelCaseLhs COLON"); } //$NON-NLS-1$ + consumeCaseLabel(); + break; - case 457 : if (DEBUG) { System.out.println("SwitchExpression ::= switch LPAREN Expression RPAREN..."); } //$NON-NLS-1$ - consumeSwitchExpression() ; - break; + case 456 : if (DEBUG) { System.out.println("SwitchLabel ::= default COLON"); } //$NON-NLS-1$ + consumeDefaultLabel(); + break; - case 460 : if (DEBUG) { System.out.println("SwitchLabeledRule ::= SwitchLabeledThrowStatement"); } //$NON-NLS-1$ - consumeSwitchLabeledRule(); - break; + case 459 : if (DEBUG) { System.out.println("SwitchExpression ::= switch LPAREN Expression RPAREN..."); } //$NON-NLS-1$ + consumeSwitchExpression() ; + break; - case 461 : if (DEBUG) { System.out.println("SwitchLabeledExpression ::= SwitchLabelExpr Expression"); } //$NON-NLS-1$ - consumeSwitchLabeledExpression(); - break; + case 462 : if (DEBUG) { System.out.println("SwitchLabeledRule ::= SwitchLabeledThrowStatement"); } //$NON-NLS-1$ + consumeSwitchLabeledRule(); + break; - case 462 : if (DEBUG) { System.out.println("SwitchLabeledBlock ::= SwitchLabelExpr Block"); } //$NON-NLS-1$ - consumeSwitchLabeledBlock(); - break; + case 463 : if (DEBUG) { System.out.println("SwitchLabeledExpression ::= SwitchLabelExpr Expression"); } //$NON-NLS-1$ + consumeSwitchLabeledExpression(); + break; - case 463 : if (DEBUG) { System.out.println("SwitchLabeledThrowStatement ::= SwitchLabelExpr..."); } //$NON-NLS-1$ - consumeSwitchLabeledThrowStatement(); - break; + case 464 : if (DEBUG) { System.out.println("SwitchLabeledBlock ::= SwitchLabelExpr Block"); } //$NON-NLS-1$ + consumeSwitchLabeledBlock(); + break; - case 464 : if (DEBUG) { System.out.println("SwitchLabelExpr ::= default ARROW"); } //$NON-NLS-1$ - consumeDefaultLabelExpr(); - break; + case 465 : if (DEBUG) { System.out.println("SwitchLabeledThrowStatement ::= SwitchLabelExpr..."); } //$NON-NLS-1$ + consumeSwitchLabeledThrowStatement(); + break; - case 465 : if (DEBUG) { System.out.println("SwitchLabelExpr ::= SwitchLabelCaseLhs BeginCaseExpr..."); } //$NON-NLS-1$ - consumeCaseLabelExpr(); - break; + case 466 : if (DEBUG) { System.out.println("SwitchLabelExpr ::= default ARROW"); } //$NON-NLS-1$ + consumeDefaultLabelExpr(); + break; - case 466 : if (DEBUG) { System.out.println("SwitchLabelCaseLhs ::= case CaseLabelElements"); } //$NON-NLS-1$ - consumeSwitchLabelCaseLhs(); - break; + case 467 : if (DEBUG) { System.out.println("SwitchLabelExpr ::= SwitchLabelCaseLhs BeginCaseExpr..."); } //$NON-NLS-1$ + consumeCaseLabelExpr(); + break; - case 468 : if (DEBUG) { System.out.println("CaseLabelElements ::= CaseLabelElements COMMA..."); } //$NON-NLS-1$ - consumeCaseLabelElements(); - break; + case 468 : if (DEBUG) { System.out.println("SwitchLabelCaseLhs ::= case CaseLabelElements"); } //$NON-NLS-1$ + consumeSwitchLabelCaseLhs(); + break; - case 469 : if (DEBUG) { System.out.println("CaseLabelElement ::= ConstantExpression"); } //$NON-NLS-1$ - consumeCaseLabelElement(CaseLabelKind.CASE_EXPRESSION); - break; + case 470 : if (DEBUG) { System.out.println("CaseLabelElements ::= CaseLabelElements COMMA..."); } //$NON-NLS-1$ + consumeCaseLabelElements(); + break; - case 470 : if (DEBUG) { System.out.println("CaseLabelElement ::= default"); } //$NON-NLS-1$ - consumeCaseLabelElement(CaseLabelKind.CASE_DEFAULT); - break; + case 471 : if (DEBUG) { System.out.println("CaseLabelElement ::= ConstantExpression"); } //$NON-NLS-1$ + consumeCaseLabelElement(CaseLabelKind.CASE_EXPRESSION); + break; - case 471 : if (DEBUG) { System.out.println("CaseLabelElement ::= CaseLabelElementPattern"); } //$NON-NLS-1$ - consumeCaseLabelElement(CaseLabelKind.CASE_PATTERN); - break; + case 472 : if (DEBUG) { System.out.println("CaseLabelElement ::= default"); } //$NON-NLS-1$ + consumeCaseLabelElement(CaseLabelKind.CASE_DEFAULT); + break; - case 472 : if (DEBUG) { System.out.println("CaseLabelElement ::= CaseLabelElementPattern Guard"); } //$NON-NLS-1$ - consumeCaseLabelElement(CaseLabelKind.CASE_PATTERN); - break; + case 473 : if (DEBUG) { System.out.println("CaseLabelElement ::= CaseLabelElementPattern"); } //$NON-NLS-1$ + consumeCaseLabelElement(CaseLabelKind.CASE_PATTERN); + break; - case 473 : if (DEBUG) { System.out.println("CaseLabelElementPattern ::= BeginCaseElement Pattern"); } //$NON-NLS-1$ - consumeCaseLabelElementPattern(); - break; + case 474 : if (DEBUG) { System.out.println("CaseLabelElement ::= CaseLabelElementPattern Guard"); } //$NON-NLS-1$ + consumeCaseLabelElement(CaseLabelKind.CASE_PATTERN); + break; - case 474 : if (DEBUG) { System.out.println("Guard ::= RestrictedIdentifierWhen Expression"); } //$NON-NLS-1$ - consumeGuard(); - break; + case 475 : if (DEBUG) { System.out.println("CaseLabelElementPattern ::= BeginCaseElement Pattern"); } //$NON-NLS-1$ + consumeCaseLabelElementPattern(); + break; - case 475 : if (DEBUG) { System.out.println("YieldStatement ::= RestrictedIdentifierYield Expression"); } //$NON-NLS-1$ - consumeStatementYield() ; - break; + case 476 : if (DEBUG) { System.out.println("Guard ::= RestrictedIdentifierWhen Expression"); } //$NON-NLS-1$ + consumeGuard(); + break; - case 476 : if (DEBUG) { System.out.println("WhileStatement ::= while LPAREN Expression RPAREN..."); } //$NON-NLS-1$ - consumeStatementWhile() ; - break; + case 477 : if (DEBUG) { System.out.println("YieldStatement ::= RestrictedIdentifierYield Expression"); } //$NON-NLS-1$ + consumeStatementYield() ; + break; - case 477 : if (DEBUG) { System.out.println("WhileStatementNoShortIf ::= while LPAREN Expression..."); } //$NON-NLS-1$ - consumeStatementWhile() ; - break; + case 478 : if (DEBUG) { System.out.println("WhileStatement ::= while LPAREN Expression RPAREN..."); } //$NON-NLS-1$ + consumeStatementWhile() ; + break; - case 478 : if (DEBUG) { System.out.println("DoStatement ::= do Statement while LPAREN Expression..."); } //$NON-NLS-1$ - consumeStatementDo() ; - break; + case 479 : if (DEBUG) { System.out.println("WhileStatementNoShortIf ::= while LPAREN Expression..."); } //$NON-NLS-1$ + consumeStatementWhile() ; + break; - case 479 : if (DEBUG) { System.out.println("ForStatement ::= for LPAREN ForInitopt SEMICOLON..."); } //$NON-NLS-1$ - consumeStatementFor() ; - break; + case 480 : if (DEBUG) { System.out.println("DoStatement ::= do Statement while LPAREN Expression..."); } //$NON-NLS-1$ + consumeStatementDo() ; + break; - case 480 : if (DEBUG) { System.out.println("ForStatementNoShortIf ::= for LPAREN ForInitopt..."); } //$NON-NLS-1$ - consumeStatementFor() ; - break; + case 481 : if (DEBUG) { System.out.println("ForStatement ::= for LPAREN ForInitopt SEMICOLON..."); } //$NON-NLS-1$ + consumeStatementFor() ; + break; - case 481 : if (DEBUG) { System.out.println("ForInit ::= StatementExpressionList"); } //$NON-NLS-1$ - consumeForInit() ; - break; + case 482 : if (DEBUG) { System.out.println("ForStatementNoShortIf ::= for LPAREN ForInitopt..."); } //$NON-NLS-1$ + consumeStatementFor() ; + break; - case 485 : if (DEBUG) { System.out.println("StatementExpressionList ::= StatementExpressionList..."); } //$NON-NLS-1$ - consumeStatementExpressionList() ; - break; + case 483 : if (DEBUG) { System.out.println("ForInit ::= StatementExpressionList"); } //$NON-NLS-1$ + consumeForInit() ; + break; - case 486 : if (DEBUG) { System.out.println("AssertStatement ::= assert Expression SEMICOLON"); } //$NON-NLS-1$ - consumeSimpleAssertStatement() ; - break; + case 487 : if (DEBUG) { System.out.println("StatementExpressionList ::= StatementExpressionList..."); } //$NON-NLS-1$ + consumeStatementExpressionList() ; + break; - case 487 : if (DEBUG) { System.out.println("AssertStatement ::= assert Expression COLON Expression"); } //$NON-NLS-1$ - consumeAssertStatement() ; - break; + case 488 : if (DEBUG) { System.out.println("AssertStatement ::= assert Expression SEMICOLON"); } //$NON-NLS-1$ + consumeSimpleAssertStatement() ; + break; - case 488 : if (DEBUG) { System.out.println("BreakStatement ::= break SEMICOLON"); } //$NON-NLS-1$ - consumeStatementBreak() ; - break; + case 489 : if (DEBUG) { System.out.println("AssertStatement ::= assert Expression COLON Expression"); } //$NON-NLS-1$ + consumeAssertStatement() ; + break; - case 489 : if (DEBUG) { System.out.println("BreakStatement ::= break Identifier SEMICOLON"); } //$NON-NLS-1$ - consumeStatementBreakWithLabel() ; - break; + case 490 : if (DEBUG) { System.out.println("BreakStatement ::= break SEMICOLON"); } //$NON-NLS-1$ + consumeStatementBreak() ; + break; - case 490 : if (DEBUG) { System.out.println("ContinueStatement ::= continue SEMICOLON"); } //$NON-NLS-1$ - consumeStatementContinue() ; - break; + case 491 : if (DEBUG) { System.out.println("BreakStatement ::= break Identifier SEMICOLON"); } //$NON-NLS-1$ + consumeStatementBreakWithLabel() ; + break; - case 491 : if (DEBUG) { System.out.println("ContinueStatement ::= continue Identifier SEMICOLON"); } //$NON-NLS-1$ - consumeStatementContinueWithLabel() ; - break; + case 492 : if (DEBUG) { System.out.println("ContinueStatement ::= continue SEMICOLON"); } //$NON-NLS-1$ + consumeStatementContinue() ; + break; - case 492 : if (DEBUG) { System.out.println("ReturnStatement ::= return Expressionopt SEMICOLON"); } //$NON-NLS-1$ - consumeStatementReturn() ; - break; + case 493 : if (DEBUG) { System.out.println("ContinueStatement ::= continue Identifier SEMICOLON"); } //$NON-NLS-1$ + consumeStatementContinueWithLabel() ; + break; - case 493 : if (DEBUG) { System.out.println("ThrowStatement ::= throw Expression SEMICOLON"); } //$NON-NLS-1$ - consumeStatementThrow(); - break; + case 494 : if (DEBUG) { System.out.println("ReturnStatement ::= return Expressionopt SEMICOLON"); } //$NON-NLS-1$ + consumeStatementReturn() ; + break; - case 494 : if (DEBUG) { System.out.println("ThrowExpression ::= throw Expression"); } //$NON-NLS-1$ - consumeThrowExpression() ; - break; + case 495 : if (DEBUG) { System.out.println("ThrowStatement ::= throw Expression SEMICOLON"); } //$NON-NLS-1$ + consumeStatementThrow(); + break; - case 495 : if (DEBUG) { System.out.println("SynchronizedStatement ::= OnlySynchronized LPAREN..."); } //$NON-NLS-1$ - consumeStatementSynchronized(); - break; + case 496 : if (DEBUG) { System.out.println("ThrowExpression ::= throw Expression"); } //$NON-NLS-1$ + consumeThrowExpression() ; + break; - case 496 : if (DEBUG) { System.out.println("OnlySynchronized ::= synchronized"); } //$NON-NLS-1$ - consumeOnlySynchronized(); - break; + case 497 : if (DEBUG) { System.out.println("SynchronizedStatement ::= OnlySynchronized LPAREN..."); } //$NON-NLS-1$ + consumeStatementSynchronized(); + break; - case 497 : if (DEBUG) { System.out.println("TryStatement ::= try TryBlock Catches"); } //$NON-NLS-1$ - consumeStatementTry(false, false); - break; + case 498 : if (DEBUG) { System.out.println("OnlySynchronized ::= synchronized"); } //$NON-NLS-1$ + consumeOnlySynchronized(); + break; - case 498 : if (DEBUG) { System.out.println("TryStatement ::= try TryBlock Catchesopt Finally"); } //$NON-NLS-1$ - consumeStatementTry(true, false); - break; + case 499 : if (DEBUG) { System.out.println("TryStatement ::= try TryBlock Catches"); } //$NON-NLS-1$ + consumeStatementTry(false, false); + break; - case 499 : if (DEBUG) { System.out.println("TryStatementWithResources ::= try ResourceSpecification"); } //$NON-NLS-1$ - consumeStatementTry(false, true); - break; + case 500 : if (DEBUG) { System.out.println("TryStatement ::= try TryBlock Catchesopt Finally"); } //$NON-NLS-1$ + consumeStatementTry(true, false); + break; - case 500 : if (DEBUG) { System.out.println("TryStatementWithResources ::= try ResourceSpecification"); } //$NON-NLS-1$ - consumeStatementTry(true, true); - break; + case 501 : if (DEBUG) { System.out.println("TryStatementWithResources ::= try ResourceSpecification"); } //$NON-NLS-1$ + consumeStatementTry(false, true); + break; - case 501 : if (DEBUG) { System.out.println("ResourceSpecification ::= LPAREN Resources ;opt RPAREN"); } //$NON-NLS-1$ - consumeResourceSpecification(); - break; + case 502 : if (DEBUG) { System.out.println("TryStatementWithResources ::= try ResourceSpecification"); } //$NON-NLS-1$ + consumeStatementTry(true, true); + break; - case 502 : if (DEBUG) { System.out.println(";opt ::="); } //$NON-NLS-1$ - consumeResourceOptionalTrailingSemiColon(false); - break; + case 503 : if (DEBUG) { System.out.println("ResourceSpecification ::= LPAREN Resources ;opt RPAREN"); } //$NON-NLS-1$ + consumeResourceSpecification(); + break; - case 503 : if (DEBUG) { System.out.println(";opt ::= SEMICOLON"); } //$NON-NLS-1$ - consumeResourceOptionalTrailingSemiColon(true); - break; + case 504 : if (DEBUG) { System.out.println(";opt ::="); } //$NON-NLS-1$ + consumeResourceOptionalTrailingSemiColon(false); + break; - case 504 : if (DEBUG) { System.out.println("Resources ::= Resource"); } //$NON-NLS-1$ - consumeSingleResource(); - break; + case 505 : if (DEBUG) { System.out.println(";opt ::= SEMICOLON"); } //$NON-NLS-1$ + consumeResourceOptionalTrailingSemiColon(true); + break; - case 505 : if (DEBUG) { System.out.println("Resources ::= Resources TrailingSemiColon Resource"); } //$NON-NLS-1$ - consumeMultipleResources(); - break; + case 506 : if (DEBUG) { System.out.println("Resources ::= Resource"); } //$NON-NLS-1$ + consumeSingleResource(); + break; - case 506 : if (DEBUG) { System.out.println("TrailingSemiColon ::= SEMICOLON"); } //$NON-NLS-1$ - consumeResourceOptionalTrailingSemiColon(true); - break; + case 507 : if (DEBUG) { System.out.println("Resources ::= Resources TrailingSemiColon Resource"); } //$NON-NLS-1$ + consumeMultipleResources(); + break; - case 507 : if (DEBUG) { System.out.println("Resource ::= Type PushModifiers VariableDeclaratorId..."); } //$NON-NLS-1$ - consumeResourceAsLocalVariableDeclaration(); - break; + case 508 : if (DEBUG) { System.out.println("TrailingSemiColon ::= SEMICOLON"); } //$NON-NLS-1$ + consumeResourceOptionalTrailingSemiColon(true); + break; - case 508 : if (DEBUG) { System.out.println("Resource ::= Modifiers Type PushRealModifiers..."); } //$NON-NLS-1$ - consumeResourceAsLocalVariableDeclaration(); - break; + case 509 : if (DEBUG) { System.out.println("Resource ::= Type PushModifiers VariableDeclaratorId..."); } //$NON-NLS-1$ + consumeResourceAsLocalVariableDeclaration(); + break; - case 509 : if (DEBUG) { System.out.println("Resource ::= Name"); } //$NON-NLS-1$ - consumeResourceAsLocalVariable(); - break; + case 510 : if (DEBUG) { System.out.println("Resource ::= Modifiers Type PushRealModifiers..."); } //$NON-NLS-1$ + consumeResourceAsLocalVariableDeclaration(); + break; - case 510 : if (DEBUG) { System.out.println("Resource ::= this"); } //$NON-NLS-1$ - consumeResourceAsThis(); - break; + case 511 : if (DEBUG) { System.out.println("Resource ::= Name"); } //$NON-NLS-1$ + consumeResourceAsLocalVariable(); + break; - case 511 : if (DEBUG) { System.out.println("Resource ::= FieldAccess"); } //$NON-NLS-1$ - consumeResourceAsFieldAccess(); - break; + case 512 : if (DEBUG) { System.out.println("Resource ::= this"); } //$NON-NLS-1$ + consumeResourceAsThis(); + break; - case 513 : if (DEBUG) { System.out.println("ExitTryBlock ::="); } //$NON-NLS-1$ - consumeExitTryBlock(); - break; + case 513 : if (DEBUG) { System.out.println("Resource ::= FieldAccess"); } //$NON-NLS-1$ + consumeResourceAsFieldAccess(); + break; - case 515 : if (DEBUG) { System.out.println("Catches ::= Catches CatchClause"); } //$NON-NLS-1$ - consumeCatches(); - break; + case 515 : if (DEBUG) { System.out.println("ExitTryBlock ::="); } //$NON-NLS-1$ + consumeExitTryBlock(); + break; - case 516 : if (DEBUG) { System.out.println("CatchClause ::= catch LPAREN CatchFormalParameter RPAREN"); } //$NON-NLS-1$ - consumeStatementCatch() ; - break; + case 517 : if (DEBUG) { System.out.println("Catches ::= Catches CatchClause"); } //$NON-NLS-1$ + consumeCatches(); + break; - case 518 : if (DEBUG) { System.out.println("PushLPAREN ::= LPAREN"); } //$NON-NLS-1$ - consumeLeftParen(); - break; + case 518 : if (DEBUG) { System.out.println("CatchClause ::= catch LPAREN CatchFormalParameter RPAREN"); } //$NON-NLS-1$ + consumeStatementCatch() ; + break; - case 519 : if (DEBUG) { System.out.println("PushRPAREN ::= RPAREN"); } //$NON-NLS-1$ - consumeRightParen(); - break; + case 520 : if (DEBUG) { System.out.println("PushLPAREN ::= LPAREN"); } //$NON-NLS-1$ + consumeLeftParen(); + break; - case 524 : if (DEBUG) { System.out.println("PrimaryNoNewArray ::= this"); } //$NON-NLS-1$ - consumePrimaryNoNewArrayThis(); - break; + case 521 : if (DEBUG) { System.out.println("PushRPAREN ::= RPAREN"); } //$NON-NLS-1$ + consumeRightParen(); + break; - case 525 : if (DEBUG) { System.out.println("PrimaryNoNewArray ::= PushLPAREN Expression_NotName..."); } //$NON-NLS-1$ - consumePrimaryNoNewArray(); - break; + case 526 : if (DEBUG) { System.out.println("PrimaryNoNewArray ::= this"); } //$NON-NLS-1$ + consumePrimaryNoNewArrayThis(); + break; - case 526 : if (DEBUG) { System.out.println("PrimaryNoNewArray ::= PushLPAREN Name PushRPAREN"); } //$NON-NLS-1$ - consumePrimaryNoNewArrayWithName(); - break; + case 527 : if (DEBUG) { System.out.println("PrimaryNoNewArray ::= PushLPAREN Expression_NotName..."); } //$NON-NLS-1$ + consumePrimaryNoNewArray(); + break; - case 529 : if (DEBUG) { System.out.println("PrimaryNoNewArray ::= Name DOT this"); } //$NON-NLS-1$ - consumePrimaryNoNewArrayNameThis(); - break; + case 528 : if (DEBUG) { System.out.println("PrimaryNoNewArray ::= PushLPAREN Name PushRPAREN"); } //$NON-NLS-1$ + consumePrimaryNoNewArrayWithName(); + break; - case 530 : if (DEBUG) { System.out.println("QualifiedSuperReceiver ::= Name DOT super"); } //$NON-NLS-1$ - consumeQualifiedSuperReceiver(); - break; + case 531 : if (DEBUG) { System.out.println("PrimaryNoNewArray ::= Name DOT this"); } //$NON-NLS-1$ + consumePrimaryNoNewArrayNameThis(); + break; - case 531 : if (DEBUG) { System.out.println("PrimaryNoNewArray ::= Name DOT class"); } //$NON-NLS-1$ - consumePrimaryNoNewArrayName(); - break; + case 532 : if (DEBUG) { System.out.println("QualifiedSuperReceiver ::= Name DOT super"); } //$NON-NLS-1$ + consumeQualifiedSuperReceiver(); + break; - case 532 : if (DEBUG) { System.out.println("PrimaryNoNewArray ::= Name Dims DOT class"); } //$NON-NLS-1$ - consumePrimaryNoNewArrayArrayType(); - break; + case 533 : if (DEBUG) { System.out.println("PrimaryNoNewArray ::= Name DOT class"); } //$NON-NLS-1$ + consumePrimaryNoNewArrayName(); + break; - case 533 : if (DEBUG) { System.out.println("PrimaryNoNewArray ::= PrimitiveType Dims DOT class"); } //$NON-NLS-1$ - consumePrimaryNoNewArrayPrimitiveArrayType(); - break; + case 534 : if (DEBUG) { System.out.println("PrimaryNoNewArray ::= Name Dims DOT class"); } //$NON-NLS-1$ + consumePrimaryNoNewArrayArrayType(); + break; - case 534 : if (DEBUG) { System.out.println("PrimaryNoNewArray ::= PrimitiveType DOT class"); } //$NON-NLS-1$ - consumePrimaryNoNewArrayPrimitiveType(); - break; + case 535 : if (DEBUG) { System.out.println("PrimaryNoNewArray ::= PrimitiveType Dims DOT class"); } //$NON-NLS-1$ + consumePrimaryNoNewArrayPrimitiveArrayType(); + break; - case 540 : if (DEBUG) { System.out.println("ReferenceExpressionTypeArgumentsAndTrunk0 ::=..."); } //$NON-NLS-1$ - consumeReferenceExpressionTypeArgumentsAndTrunk(false); - break; + case 536 : if (DEBUG) { System.out.println("PrimaryNoNewArray ::= PrimitiveType DOT class"); } //$NON-NLS-1$ + consumePrimaryNoNewArrayPrimitiveType(); + break; - case 541 : if (DEBUG) { System.out.println("ReferenceExpressionTypeArgumentsAndTrunk0 ::=..."); } //$NON-NLS-1$ - consumeReferenceExpressionTypeArgumentsAndTrunk(true); - break; + case 542 : if (DEBUG) { System.out.println("ReferenceExpressionTypeArgumentsAndTrunk0 ::=..."); } //$NON-NLS-1$ + consumeReferenceExpressionTypeArgumentsAndTrunk(false); + break; - case 542 : if (DEBUG) { System.out.println("ReferenceExpression ::= PrimitiveType Dims COLON_COLON"); } //$NON-NLS-1$ - consumeReferenceExpressionTypeForm(true); - break; + case 543 : if (DEBUG) { System.out.println("ReferenceExpressionTypeArgumentsAndTrunk0 ::=..."); } //$NON-NLS-1$ + consumeReferenceExpressionTypeArgumentsAndTrunk(true); + break; - case 543 : if (DEBUG) { System.out.println("ReferenceExpression ::= Name Dimsopt COLON_COLON..."); } //$NON-NLS-1$ - consumeReferenceExpressionTypeForm(false); - break; + case 544 : if (DEBUG) { System.out.println("ReferenceExpression ::= PrimitiveType Dims COLON_COLON"); } //$NON-NLS-1$ + consumeReferenceExpressionTypeForm(true); + break; - case 544 : if (DEBUG) { System.out.println("ReferenceExpression ::= Name BeginTypeArguments..."); } //$NON-NLS-1$ - consumeReferenceExpressionGenericTypeForm(); - break; + case 545 : if (DEBUG) { System.out.println("ReferenceExpression ::= Name Dimsopt COLON_COLON..."); } //$NON-NLS-1$ + consumeReferenceExpressionTypeForm(false); + break; - case 545 : if (DEBUG) { System.out.println("ReferenceExpression ::= Primary COLON_COLON..."); } //$NON-NLS-1$ - consumeReferenceExpressionPrimaryForm(); - break; + case 546 : if (DEBUG) { System.out.println("ReferenceExpression ::= Name BeginTypeArguments..."); } //$NON-NLS-1$ + consumeReferenceExpressionGenericTypeForm(); + break; - case 546 : if (DEBUG) { System.out.println("ReferenceExpression ::= QualifiedSuperReceiver..."); } //$NON-NLS-1$ - consumeReferenceExpressionPrimaryForm(); - break; + case 547 : if (DEBUG) { System.out.println("ReferenceExpression ::= Primary COLON_COLON..."); } //$NON-NLS-1$ + consumeReferenceExpressionPrimaryForm(); + break; - case 547 : if (DEBUG) { System.out.println("ReferenceExpression ::= super COLON_COLON..."); } //$NON-NLS-1$ - consumeReferenceExpressionSuperForm(); - break; + case 548 : if (DEBUG) { System.out.println("ReferenceExpression ::= QualifiedSuperReceiver..."); } //$NON-NLS-1$ + consumeReferenceExpressionPrimaryForm(); + break; - case 548 : if (DEBUG) { System.out.println("NonWildTypeArgumentsopt ::="); } //$NON-NLS-1$ - consumeEmptyTypeArguments(); - break; + case 549 : if (DEBUG) { System.out.println("ReferenceExpression ::= super COLON_COLON..."); } //$NON-NLS-1$ + consumeReferenceExpressionSuperForm(); + break; - case 550 : if (DEBUG) { System.out.println("IdentifierOrNew ::= Identifier"); } //$NON-NLS-1$ - consumeIdentifierOrNew(false); - break; + case 550 : if (DEBUG) { System.out.println("NonWildTypeArgumentsopt ::="); } //$NON-NLS-1$ + consumeEmptyTypeArguments(); + break; - case 551 : if (DEBUG) { System.out.println("IdentifierOrNew ::= new"); } //$NON-NLS-1$ - consumeIdentifierOrNew(true); - break; + case 552 : if (DEBUG) { System.out.println("IdentifierOrNew ::= Identifier"); } //$NON-NLS-1$ + consumeIdentifierOrNew(false); + break; - case 552 : if (DEBUG) { System.out.println("LambdaExpression ::= LambdaParameters ARROW LambdaBody"); } //$NON-NLS-1$ - consumeLambdaExpression(); - break; + case 553 : if (DEBUG) { System.out.println("IdentifierOrNew ::= new"); } //$NON-NLS-1$ + consumeIdentifierOrNew(true); + break; - case 553 : if (DEBUG) { System.out.println("NestedLambda ::="); } //$NON-NLS-1$ - consumeNestedLambda(); - break; + case 554 : if (DEBUG) { System.out.println("LambdaExpression ::= LambdaParameters ARROW LambdaBody"); } //$NON-NLS-1$ + consumeLambdaExpression(); + break; - case 554 : if (DEBUG) { System.out.println("LambdaParameters ::= Identifier NestedLambda"); } //$NON-NLS-1$ - consumeTypeElidedLambdaParameter(false); - break; + case 555 : if (DEBUG) { System.out.println("NestedLambda ::="); } //$NON-NLS-1$ + consumeNestedLambda(); + break; - case 560 : if (DEBUG) { System.out.println("TypeElidedFormalParameterList ::=..."); } //$NON-NLS-1$ - consumeFormalParameterList(); - break; + case 556 : if (DEBUG) { System.out.println("LambdaParameters ::= Identifier NestedLambda"); } //$NON-NLS-1$ + consumeTypeElidedLambdaParameter(false); + break; - case 561 : if (DEBUG) { System.out.println("TypeElidedFormalParameter ::= Modifiersopt Identifier"); } //$NON-NLS-1$ - consumeTypeElidedLambdaParameter(true); - break; + case 562 : if (DEBUG) { System.out.println("TypeElidedFormalParameterList ::=..."); } //$NON-NLS-1$ + consumeFormalParameterList(); + break; - case 564 : if (DEBUG) { System.out.println("ElidedLeftBraceAndReturn ::="); } //$NON-NLS-1$ - consumeElidedLeftBraceAndReturn(); - break; + case 563 : if (DEBUG) { System.out.println("TypeElidedFormalParameter ::= Modifiersopt Identifier"); } //$NON-NLS-1$ + consumeTypeElidedLambdaParameter(true); + break; - case 565 : if (DEBUG) { System.out.println("AllocationHeader ::= new ClassType LPAREN..."); } //$NON-NLS-1$ - consumeAllocationHeader(); - break; + case 566 : if (DEBUG) { System.out.println("ElidedLeftBraceAndReturn ::="); } //$NON-NLS-1$ + consumeElidedLeftBraceAndReturn(); + break; - case 566 : if (DEBUG) { System.out.println("ClassInstanceCreationExpression ::= new..."); } //$NON-NLS-1$ - consumeClassInstanceCreationExpressionWithTypeArguments(); - break; + case 567 : if (DEBUG) { System.out.println("AllocationHeader ::= new ClassType LPAREN..."); } //$NON-NLS-1$ + consumeAllocationHeader(); + break; - case 567 : if (DEBUG) { System.out.println("ClassInstanceCreationExpression ::= new ClassType..."); } //$NON-NLS-1$ - consumeClassInstanceCreationExpression(); - break; + case 568 : if (DEBUG) { System.out.println("ClassInstanceCreationExpression ::= new..."); } //$NON-NLS-1$ + consumeClassInstanceCreationExpressionWithTypeArguments(); + break; - case 568 : if (DEBUG) { System.out.println("ClassInstanceCreationExpression ::= Primary DOT new..."); } //$NON-NLS-1$ - consumeClassInstanceCreationExpressionQualifiedWithTypeArguments() ; - break; + case 569 : if (DEBUG) { System.out.println("ClassInstanceCreationExpression ::= new ClassType..."); } //$NON-NLS-1$ + consumeClassInstanceCreationExpression(); + break; - case 569 : if (DEBUG) { System.out.println("ClassInstanceCreationExpression ::= Primary DOT new..."); } //$NON-NLS-1$ - consumeClassInstanceCreationExpressionQualified() ; - break; + case 570 : if (DEBUG) { System.out.println("ClassInstanceCreationExpression ::= Primary DOT new..."); } //$NON-NLS-1$ + consumeClassInstanceCreationExpressionQualifiedWithTypeArguments() ; + break; - case 570 : if (DEBUG) { System.out.println("ClassInstanceCreationExpression ::=..."); } //$NON-NLS-1$ - consumeClassInstanceCreationExpressionQualified() ; - break; + case 571 : if (DEBUG) { System.out.println("ClassInstanceCreationExpression ::= Primary DOT new..."); } //$NON-NLS-1$ + consumeClassInstanceCreationExpressionQualified() ; + break; - case 571 : if (DEBUG) { System.out.println("ClassInstanceCreationExpression ::=..."); } //$NON-NLS-1$ - consumeClassInstanceCreationExpressionQualifiedWithTypeArguments() ; - break; + case 572 : if (DEBUG) { System.out.println("ClassInstanceCreationExpression ::=..."); } //$NON-NLS-1$ + consumeClassInstanceCreationExpressionQualified() ; + break; - case 572 : if (DEBUG) { System.out.println("EnterInstanceCreationArgumentList ::="); } //$NON-NLS-1$ - consumeEnterInstanceCreationArgumentList(); - break; + case 573 : if (DEBUG) { System.out.println("ClassInstanceCreationExpression ::=..."); } //$NON-NLS-1$ + consumeClassInstanceCreationExpressionQualifiedWithTypeArguments() ; + break; - case 573 : if (DEBUG) { System.out.println("ClassInstanceCreationExpressionName ::= Name DOT new"); } //$NON-NLS-1$ - consumeClassInstanceCreationExpressionName() ; - break; + case 574 : if (DEBUG) { System.out.println("EnterInstanceCreationArgumentList ::="); } //$NON-NLS-1$ + consumeEnterInstanceCreationArgumentList(); + break; - case 574 : if (DEBUG) { System.out.println("UnqualifiedClassBodyopt ::="); } //$NON-NLS-1$ - consumeClassBodyopt(); - break; + case 575 : if (DEBUG) { System.out.println("ClassInstanceCreationExpressionName ::= Name DOT new"); } //$NON-NLS-1$ + consumeClassInstanceCreationExpressionName() ; + break; - case 576 : if (DEBUG) { System.out.println("UnqualifiedEnterAnonymousClassBody ::="); } //$NON-NLS-1$ - consumeEnterAnonymousClassBody(false); - break; + case 576 : if (DEBUG) { System.out.println("UnqualifiedClassBodyopt ::="); } //$NON-NLS-1$ + consumeClassBodyopt(); + break; - case 577 : if (DEBUG) { System.out.println("QualifiedClassBodyopt ::="); } //$NON-NLS-1$ - consumeClassBodyopt(); - break; + case 578 : if (DEBUG) { System.out.println("UnqualifiedEnterAnonymousClassBody ::="); } //$NON-NLS-1$ + consumeEnterAnonymousClassBody(false); + break; + + case 579 : if (DEBUG) { System.out.println("QualifiedClassBodyopt ::="); } //$NON-NLS-1$ + consumeClassBodyopt(); + break; - case 579 : if (DEBUG) { System.out.println("QualifiedEnterAnonymousClassBody ::="); } //$NON-NLS-1$ - consumeEnterAnonymousClassBody(true); - break; + case 581 : if (DEBUG) { System.out.println("QualifiedEnterAnonymousClassBody ::="); } //$NON-NLS-1$ + consumeEnterAnonymousClassBody(true); + break; - case 581 : if (DEBUG) { System.out.println("ArgumentList ::= ArgumentList COMMA Expression"); } //$NON-NLS-1$ - consumeArgumentList(); - break; + case 583 : if (DEBUG) { System.out.println("ArgumentList ::= ArgumentList COMMA Expression"); } //$NON-NLS-1$ + consumeArgumentList(); + break; - case 582 : if (DEBUG) { System.out.println("ArrayCreationHeader ::= new PrimitiveType..."); } //$NON-NLS-1$ - consumeArrayCreationHeader(); - break; + case 584 : if (DEBUG) { System.out.println("ArrayCreationHeader ::= new PrimitiveType..."); } //$NON-NLS-1$ + consumeArrayCreationHeader(); + break; - case 583 : if (DEBUG) { System.out.println("ArrayCreationHeader ::= new ClassOrInterfaceType..."); } //$NON-NLS-1$ - consumeArrayCreationHeader(); - break; + case 585 : if (DEBUG) { System.out.println("ArrayCreationHeader ::= new ClassOrInterfaceType..."); } //$NON-NLS-1$ + consumeArrayCreationHeader(); + break; - case 584 : if (DEBUG) { System.out.println("ArrayCreationWithoutArrayInitializer ::= new..."); } //$NON-NLS-1$ - consumeArrayCreationExpressionWithoutInitializer(); - break; + case 586 : if (DEBUG) { System.out.println("ArrayCreationWithoutArrayInitializer ::= new..."); } //$NON-NLS-1$ + consumeArrayCreationExpressionWithoutInitializer(); + break; - case 585 : if (DEBUG) { System.out.println("ArrayCreationWithArrayInitializer ::= new PrimitiveType"); } //$NON-NLS-1$ - consumeArrayCreationExpressionWithInitializer(); - break; + case 587 : if (DEBUG) { System.out.println("ArrayCreationWithArrayInitializer ::= new PrimitiveType"); } //$NON-NLS-1$ + consumeArrayCreationExpressionWithInitializer(); + break; - case 586 : if (DEBUG) { System.out.println("ArrayCreationWithoutArrayInitializer ::= new..."); } //$NON-NLS-1$ - consumeArrayCreationExpressionWithoutInitializer(); - break; + case 588 : if (DEBUG) { System.out.println("ArrayCreationWithoutArrayInitializer ::= new..."); } //$NON-NLS-1$ + consumeArrayCreationExpressionWithoutInitializer(); + break; - case 587 : if (DEBUG) { System.out.println("ArrayCreationWithArrayInitializer ::= new..."); } //$NON-NLS-1$ - consumeArrayCreationExpressionWithInitializer(); - break; + case 589 : if (DEBUG) { System.out.println("ArrayCreationWithArrayInitializer ::= new..."); } //$NON-NLS-1$ + consumeArrayCreationExpressionWithInitializer(); + break; - case 589 : if (DEBUG) { System.out.println("DimWithOrWithOutExprs ::= DimWithOrWithOutExprs..."); } //$NON-NLS-1$ - consumeDimWithOrWithOutExprs(); - break; + case 591 : if (DEBUG) { System.out.println("DimWithOrWithOutExprs ::= DimWithOrWithOutExprs..."); } //$NON-NLS-1$ + consumeDimWithOrWithOutExprs(); + break; - case 591 : if (DEBUG) { System.out.println("DimWithOrWithOutExpr ::= TypeAnnotationsopt LBRACKET..."); } //$NON-NLS-1$ - consumeDimWithOrWithOutExpr(); - break; + case 593 : if (DEBUG) { System.out.println("DimWithOrWithOutExpr ::= TypeAnnotationsopt LBRACKET..."); } //$NON-NLS-1$ + consumeDimWithOrWithOutExpr(); + break; - case 592 : if (DEBUG) { System.out.println("Dims ::= DimsLoop"); } //$NON-NLS-1$ - consumeDims(); - break; + case 594 : if (DEBUG) { System.out.println("Dims ::= DimsLoop"); } //$NON-NLS-1$ + consumeDims(); + break; - case 595 : if (DEBUG) { System.out.println("OneDimLoop ::= LBRACKET RBRACKET"); } //$NON-NLS-1$ - consumeOneDimLoop(false); - break; + case 597 : if (DEBUG) { System.out.println("OneDimLoop ::= LBRACKET RBRACKET"); } //$NON-NLS-1$ + consumeOneDimLoop(false); + break; - case 596 : if (DEBUG) { System.out.println("OneDimLoop ::= TypeAnnotations LBRACKET RBRACKET"); } //$NON-NLS-1$ - consumeOneDimLoop(true); - break; + case 598 : if (DEBUG) { System.out.println("OneDimLoop ::= TypeAnnotations LBRACKET RBRACKET"); } //$NON-NLS-1$ + consumeOneDimLoop(true); + break; - case 597 : if (DEBUG) { System.out.println("FieldAccess ::= Primary DOT Identifier"); } //$NON-NLS-1$ - consumeFieldAccess(false); - break; + case 599 : if (DEBUG) { System.out.println("FieldAccess ::= Primary DOT Identifier"); } //$NON-NLS-1$ + consumeFieldAccess(false); + break; - case 598 : if (DEBUG) { System.out.println("FieldAccess ::= super DOT Identifier"); } //$NON-NLS-1$ - consumeFieldAccess(true); - break; + case 600 : if (DEBUG) { System.out.println("FieldAccess ::= super DOT Identifier"); } //$NON-NLS-1$ + consumeFieldAccess(true); + break; - case 599 : if (DEBUG) { System.out.println("FieldAccess ::= QualifiedSuperReceiver DOT Identifier"); } //$NON-NLS-1$ - consumeFieldAccess(false); - break; + case 601 : if (DEBUG) { System.out.println("FieldAccess ::= QualifiedSuperReceiver DOT Identifier"); } //$NON-NLS-1$ + consumeFieldAccess(false); + break; - case 600 : if (DEBUG) { System.out.println("MethodInvocation ::= Name LPAREN ArgumentListopt RPAREN"); } //$NON-NLS-1$ - consumeMethodInvocationName(); - break; + case 602 : if (DEBUG) { System.out.println("MethodInvocation ::= Name LPAREN ArgumentListopt RPAREN"); } //$NON-NLS-1$ + consumeMethodInvocationName(); + break; - case 601 : if (DEBUG) { System.out.println("MethodInvocation ::= Name DOT OnlyTypeArguments..."); } //$NON-NLS-1$ - consumeMethodInvocationNameWithTypeArguments(); - break; + case 603 : if (DEBUG) { System.out.println("MethodInvocation ::= Name DOT OnlyTypeArguments..."); } //$NON-NLS-1$ + consumeMethodInvocationNameWithTypeArguments(); + break; - case 602 : if (DEBUG) { System.out.println("MethodInvocation ::= Primary DOT OnlyTypeArguments..."); } //$NON-NLS-1$ - consumeMethodInvocationPrimaryWithTypeArguments(); - break; + case 604 : if (DEBUG) { System.out.println("MethodInvocation ::= Primary DOT OnlyTypeArguments..."); } //$NON-NLS-1$ + consumeMethodInvocationPrimaryWithTypeArguments(); + break; - case 603 : if (DEBUG) { System.out.println("MethodInvocation ::= Primary DOT Identifier LPAREN..."); } //$NON-NLS-1$ - consumeMethodInvocationPrimary(); - break; + case 605 : if (DEBUG) { System.out.println("MethodInvocation ::= Primary DOT Identifier LPAREN..."); } //$NON-NLS-1$ + consumeMethodInvocationPrimary(); + break; - case 604 : if (DEBUG) { System.out.println("MethodInvocation ::= QualifiedSuperReceiver DOT..."); } //$NON-NLS-1$ - consumeMethodInvocationPrimary(); - break; + case 606 : if (DEBUG) { System.out.println("MethodInvocation ::= QualifiedSuperReceiver DOT..."); } //$NON-NLS-1$ + consumeMethodInvocationPrimary(); + break; - case 605 : if (DEBUG) { System.out.println("MethodInvocation ::= QualifiedSuperReceiver DOT..."); } //$NON-NLS-1$ - consumeMethodInvocationPrimaryWithTypeArguments(); - break; + case 607 : if (DEBUG) { System.out.println("MethodInvocation ::= QualifiedSuperReceiver DOT..."); } //$NON-NLS-1$ + consumeMethodInvocationPrimaryWithTypeArguments(); + break; - case 606 : if (DEBUG) { System.out.println("MethodInvocation ::= super DOT OnlyTypeArguments..."); } //$NON-NLS-1$ - consumeMethodInvocationSuperWithTypeArguments(); - break; + case 608 : if (DEBUG) { System.out.println("MethodInvocation ::= super DOT OnlyTypeArguments..."); } //$NON-NLS-1$ + consumeMethodInvocationSuperWithTypeArguments(); + break; - case 607 : if (DEBUG) { System.out.println("MethodInvocation ::= super DOT Identifier LPAREN..."); } //$NON-NLS-1$ - consumeMethodInvocationSuper(); - break; + case 609 : if (DEBUG) { System.out.println("MethodInvocation ::= super DOT Identifier LPAREN..."); } //$NON-NLS-1$ + consumeMethodInvocationSuper(); + break; - case 608 : if (DEBUG) { System.out.println("ArrayAccess ::= Name LBRACKET Expression RBRACKET"); } //$NON-NLS-1$ - consumeArrayAccess(true); - break; + case 610 : if (DEBUG) { System.out.println("ArrayAccess ::= Name LBRACKET Expression RBRACKET"); } //$NON-NLS-1$ + consumeArrayAccess(true); + break; - case 609 : if (DEBUG) { System.out.println("ArrayAccess ::= PrimaryNoNewArray LBRACKET Expression..."); } //$NON-NLS-1$ - consumeArrayAccess(false); - break; + case 611 : if (DEBUG) { System.out.println("ArrayAccess ::= PrimaryNoNewArray LBRACKET Expression..."); } //$NON-NLS-1$ + consumeArrayAccess(false); + break; - case 610 : if (DEBUG) { System.out.println("ArrayAccess ::= ArrayCreationWithArrayInitializer..."); } //$NON-NLS-1$ - consumeArrayAccess(false); - break; + case 612 : if (DEBUG) { System.out.println("ArrayAccess ::= ArrayCreationWithArrayInitializer..."); } //$NON-NLS-1$ + consumeArrayAccess(false); + break; - case 612 : if (DEBUG) { System.out.println("PostfixExpression ::= Name"); } //$NON-NLS-1$ - consumePostfixExpression(); - break; + case 614 : if (DEBUG) { System.out.println("PostfixExpression ::= Name"); } //$NON-NLS-1$ + consumePostfixExpression(); + break; - case 615 : if (DEBUG) { System.out.println("PostIncrementExpression ::= PostfixExpression PLUS_PLUS"); } //$NON-NLS-1$ - consumeUnaryExpression(OperatorIds.PLUS,true); - break; + case 617 : if (DEBUG) { System.out.println("PostIncrementExpression ::= PostfixExpression PLUS_PLUS"); } //$NON-NLS-1$ + consumeUnaryExpression(OperatorIds.PLUS,true); + break; - case 616 : if (DEBUG) { System.out.println("PostDecrementExpression ::= PostfixExpression..."); } //$NON-NLS-1$ - consumeUnaryExpression(OperatorIds.MINUS,true); - break; + case 618 : if (DEBUG) { System.out.println("PostDecrementExpression ::= PostfixExpression..."); } //$NON-NLS-1$ + consumeUnaryExpression(OperatorIds.MINUS,true); + break; - case 617 : if (DEBUG) { System.out.println("PushPosition ::="); } //$NON-NLS-1$ - consumePushPosition(); - break; + case 619 : if (DEBUG) { System.out.println("PushPosition ::="); } //$NON-NLS-1$ + consumePushPosition(); + break; - case 620 : if (DEBUG) { System.out.println("UnaryExpression ::= PLUS PushPosition UnaryExpression"); } //$NON-NLS-1$ - consumeUnaryExpression(OperatorIds.PLUS); - break; + case 622 : if (DEBUG) { System.out.println("UnaryExpression ::= PLUS PushPosition UnaryExpression"); } //$NON-NLS-1$ + consumeUnaryExpression(OperatorIds.PLUS); + break; - case 621 : if (DEBUG) { System.out.println("UnaryExpression ::= MINUS PushPosition UnaryExpression"); } //$NON-NLS-1$ - consumeUnaryExpression(OperatorIds.MINUS); - break; + case 623 : if (DEBUG) { System.out.println("UnaryExpression ::= MINUS PushPosition UnaryExpression"); } //$NON-NLS-1$ + consumeUnaryExpression(OperatorIds.MINUS); + break; - case 623 : if (DEBUG) { System.out.println("PreIncrementExpression ::= PLUS_PLUS PushPosition..."); } //$NON-NLS-1$ - consumeUnaryExpression(OperatorIds.PLUS,false); - break; + case 625 : if (DEBUG) { System.out.println("PreIncrementExpression ::= PLUS_PLUS PushPosition..."); } //$NON-NLS-1$ + consumeUnaryExpression(OperatorIds.PLUS,false); + break; - case 624 : if (DEBUG) { System.out.println("PreDecrementExpression ::= MINUS_MINUS PushPosition..."); } //$NON-NLS-1$ - consumeUnaryExpression(OperatorIds.MINUS,false); - break; + case 626 : if (DEBUG) { System.out.println("PreDecrementExpression ::= MINUS_MINUS PushPosition..."); } //$NON-NLS-1$ + consumeUnaryExpression(OperatorIds.MINUS,false); + break; - case 626 : if (DEBUG) { System.out.println("UnaryExpressionNotPlusMinus ::= TWIDDLE PushPosition..."); } //$NON-NLS-1$ - consumeUnaryExpression(OperatorIds.TWIDDLE); - break; + case 628 : if (DEBUG) { System.out.println("UnaryExpressionNotPlusMinus ::= TWIDDLE PushPosition..."); } //$NON-NLS-1$ + consumeUnaryExpression(OperatorIds.TWIDDLE); + break; - case 627 : if (DEBUG) { System.out.println("UnaryExpressionNotPlusMinus ::= NOT PushPosition..."); } //$NON-NLS-1$ - consumeUnaryExpression(OperatorIds.NOT); - break; + case 629 : if (DEBUG) { System.out.println("UnaryExpressionNotPlusMinus ::= NOT PushPosition..."); } //$NON-NLS-1$ + consumeUnaryExpression(OperatorIds.NOT); + break; - case 629 : if (DEBUG) { System.out.println("CastExpression ::= PushLPAREN PrimitiveType Dimsopt..."); } //$NON-NLS-1$ - consumeCastExpressionWithPrimitiveType(); - break; + case 631 : if (DEBUG) { System.out.println("CastExpression ::= PushLPAREN PrimitiveType Dimsopt..."); } //$NON-NLS-1$ + consumeCastExpressionWithPrimitiveType(); + break; - case 630 : if (DEBUG) { System.out.println("CastExpression ::= PushLPAREN Name..."); } //$NON-NLS-1$ - consumeCastExpressionWithGenericsArray(); - break; + case 632 : if (DEBUG) { System.out.println("CastExpression ::= PushLPAREN Name..."); } //$NON-NLS-1$ + consumeCastExpressionWithGenericsArray(); + break; - case 631 : if (DEBUG) { System.out.println("CastExpression ::= PushLPAREN Name..."); } //$NON-NLS-1$ - consumeCastExpressionWithQualifiedGenericsArray(); - break; + case 633 : if (DEBUG) { System.out.println("CastExpression ::= PushLPAREN Name..."); } //$NON-NLS-1$ + consumeCastExpressionWithQualifiedGenericsArray(); + break; - case 632 : if (DEBUG) { System.out.println("CastExpression ::= PushLPAREN Name PushRPAREN..."); } //$NON-NLS-1$ - consumeCastExpressionLL1(); - break; + case 634 : if (DEBUG) { System.out.println("CastExpression ::= PushLPAREN Name PushRPAREN..."); } //$NON-NLS-1$ + consumeCastExpressionLL1(); + break; - case 633 : if (DEBUG) { System.out.println("CastExpression ::= BeginIntersectionCast PushLPAREN..."); } //$NON-NLS-1$ - consumeCastExpressionLL1WithBounds(); - break; + case 635 : if (DEBUG) { System.out.println("CastExpression ::= BeginIntersectionCast PushLPAREN..."); } //$NON-NLS-1$ + consumeCastExpressionLL1WithBounds(); + break; - case 634 : if (DEBUG) { System.out.println("CastExpression ::= PushLPAREN Name Dims..."); } //$NON-NLS-1$ - consumeCastExpressionWithNameArray(); - break; + case 636 : if (DEBUG) { System.out.println("CastExpression ::= PushLPAREN Name Dims..."); } //$NON-NLS-1$ + consumeCastExpressionWithNameArray(); + break; - case 635 : if (DEBUG) { System.out.println("AdditionalBoundsListOpt ::="); } //$NON-NLS-1$ - consumeZeroAdditionalBounds(); - break; + case 637 : if (DEBUG) { System.out.println("AdditionalBoundsListOpt ::="); } //$NON-NLS-1$ + consumeZeroAdditionalBounds(); + break; - case 639 : if (DEBUG) { System.out.println("OnlyTypeArgumentsForCastExpression ::= OnlyTypeArguments"); } //$NON-NLS-1$ - consumeOnlyTypeArgumentsForCastExpression(); - break; + case 641 : if (DEBUG) { System.out.println("OnlyTypeArgumentsForCastExpression ::= OnlyTypeArguments"); } //$NON-NLS-1$ + consumeOnlyTypeArgumentsForCastExpression(); + break; - case 640 : if (DEBUG) { System.out.println("InsideCastExpression ::="); } //$NON-NLS-1$ - consumeInsideCastExpression(); - break; + case 642 : if (DEBUG) { System.out.println("InsideCastExpression ::="); } //$NON-NLS-1$ + consumeInsideCastExpression(); + break; - case 641 : if (DEBUG) { System.out.println("InsideCastExpressionLL1 ::="); } //$NON-NLS-1$ - consumeInsideCastExpressionLL1(); - break; + case 643 : if (DEBUG) { System.out.println("InsideCastExpressionLL1 ::="); } //$NON-NLS-1$ + consumeInsideCastExpressionLL1(); + break; - case 642 : if (DEBUG) { System.out.println("InsideCastExpressionLL1WithBounds ::="); } //$NON-NLS-1$ - consumeInsideCastExpressionLL1WithBounds (); - break; + case 644 : if (DEBUG) { System.out.println("InsideCastExpressionLL1WithBounds ::="); } //$NON-NLS-1$ + consumeInsideCastExpressionLL1WithBounds (); + break; - case 643 : if (DEBUG) { System.out.println("InsideCastExpressionWithQualifiedGenerics ::="); } //$NON-NLS-1$ - consumeInsideCastExpressionWithQualifiedGenerics(); - break; + case 645 : if (DEBUG) { System.out.println("InsideCastExpressionWithQualifiedGenerics ::="); } //$NON-NLS-1$ + consumeInsideCastExpressionWithQualifiedGenerics(); + break; - case 645 : if (DEBUG) { System.out.println("MultiplicativeExpression ::= MultiplicativeExpression..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.MULTIPLY); - break; + case 647 : if (DEBUG) { System.out.println("MultiplicativeExpression ::= MultiplicativeExpression..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.MULTIPLY); + break; - case 646 : if (DEBUG) { System.out.println("MultiplicativeExpression ::= MultiplicativeExpression..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.DIVIDE); - break; + case 648 : if (DEBUG) { System.out.println("MultiplicativeExpression ::= MultiplicativeExpression..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.DIVIDE); + break; - case 647 : if (DEBUG) { System.out.println("MultiplicativeExpression ::= MultiplicativeExpression..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.REMAINDER); - break; + case 649 : if (DEBUG) { System.out.println("MultiplicativeExpression ::= MultiplicativeExpression..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.REMAINDER); + break; - case 649 : if (DEBUG) { System.out.println("AdditiveExpression ::= AdditiveExpression PLUS..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.PLUS); - break; + case 651 : if (DEBUG) { System.out.println("AdditiveExpression ::= AdditiveExpression PLUS..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.PLUS); + break; - case 650 : if (DEBUG) { System.out.println("AdditiveExpression ::= AdditiveExpression MINUS..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.MINUS); - break; + case 652 : if (DEBUG) { System.out.println("AdditiveExpression ::= AdditiveExpression MINUS..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.MINUS); + break; - case 652 : if (DEBUG) { System.out.println("ShiftExpression ::= ShiftExpression LEFT_SHIFT..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.LEFT_SHIFT); - break; + case 654 : if (DEBUG) { System.out.println("ShiftExpression ::= ShiftExpression LEFT_SHIFT..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.LEFT_SHIFT); + break; - case 653 : if (DEBUG) { System.out.println("ShiftExpression ::= ShiftExpression RIGHT_SHIFT..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.RIGHT_SHIFT); - break; + case 655 : if (DEBUG) { System.out.println("ShiftExpression ::= ShiftExpression RIGHT_SHIFT..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.RIGHT_SHIFT); + break; - case 654 : if (DEBUG) { System.out.println("ShiftExpression ::= ShiftExpression UNSIGNED_RIGHT_SHIFT"); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.UNSIGNED_RIGHT_SHIFT); - break; + case 656 : if (DEBUG) { System.out.println("ShiftExpression ::= ShiftExpression UNSIGNED_RIGHT_SHIFT"); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.UNSIGNED_RIGHT_SHIFT); + break; - case 656 : if (DEBUG) { System.out.println("RelationalExpression ::= RelationalExpression LESS..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.LESS); - break; + case 658 : if (DEBUG) { System.out.println("RelationalExpression ::= RelationalExpression LESS..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.LESS); + break; - case 657 : if (DEBUG) { System.out.println("RelationalExpression ::= RelationalExpression GREATER..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.GREATER); - break; + case 659 : if (DEBUG) { System.out.println("RelationalExpression ::= RelationalExpression GREATER..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.GREATER); + break; - case 658 : if (DEBUG) { System.out.println("RelationalExpression ::= RelationalExpression LESS_EQUAL"); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.LESS_EQUAL); - break; + case 660 : if (DEBUG) { System.out.println("RelationalExpression ::= RelationalExpression LESS_EQUAL"); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.LESS_EQUAL); + break; - case 659 : if (DEBUG) { System.out.println("RelationalExpression ::= RelationalExpression..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.GREATER_EQUAL); - break; + case 661 : if (DEBUG) { System.out.println("RelationalExpression ::= RelationalExpression..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.GREATER_EQUAL); + break; - case 661 : if (DEBUG) { System.out.println("EqualityExpression ::= EqualityExpression EQUAL_EQUAL..."); } //$NON-NLS-1$ - consumeEqualityExpression(OperatorIds.EQUAL_EQUAL); - break; + case 663 : if (DEBUG) { System.out.println("EqualityExpression ::= EqualityExpression EQUAL_EQUAL..."); } //$NON-NLS-1$ + consumeEqualityExpression(OperatorIds.EQUAL_EQUAL); + break; - case 662 : if (DEBUG) { System.out.println("EqualityExpression ::= EqualityExpression NOT_EQUAL..."); } //$NON-NLS-1$ - consumeEqualityExpression(OperatorIds.NOT_EQUAL); - break; + case 664 : if (DEBUG) { System.out.println("EqualityExpression ::= EqualityExpression NOT_EQUAL..."); } //$NON-NLS-1$ + consumeEqualityExpression(OperatorIds.NOT_EQUAL); + break; - case 664 : if (DEBUG) { System.out.println("AndExpression ::= AndExpression AND EqualityExpression"); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.AND); - break; + case 666 : if (DEBUG) { System.out.println("AndExpression ::= AndExpression AND EqualityExpression"); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.AND); + break; - case 666 : if (DEBUG) { System.out.println("ExclusiveOrExpression ::= ExclusiveOrExpression XOR..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.XOR); - break; + case 668 : if (DEBUG) { System.out.println("ExclusiveOrExpression ::= ExclusiveOrExpression XOR..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.XOR); + break; - case 668 : if (DEBUG) { System.out.println("InclusiveOrExpression ::= InclusiveOrExpression OR..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.OR); - break; + case 670 : if (DEBUG) { System.out.println("InclusiveOrExpression ::= InclusiveOrExpression OR..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.OR); + break; - case 670 : if (DEBUG) { System.out.println("ConditionalAndExpression ::= ConditionalAndExpression..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.AND_AND); - break; + case 672 : if (DEBUG) { System.out.println("ConditionalAndExpression ::= ConditionalAndExpression..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.AND_AND); + break; - case 672 : if (DEBUG) { System.out.println("ConditionalOrExpression ::= ConditionalOrExpression..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.OR_OR); - break; + case 674 : if (DEBUG) { System.out.println("ConditionalOrExpression ::= ConditionalOrExpression..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.OR_OR); + break; - case 674 : if (DEBUG) { System.out.println("ConditionalExpression ::= ConditionalOrExpression..."); } //$NON-NLS-1$ - consumeConditionalExpression(OperatorIds.QUESTIONCOLON) ; - break; + case 676 : if (DEBUG) { System.out.println("ConditionalExpression ::= ConditionalOrExpression..."); } //$NON-NLS-1$ + consumeConditionalExpression(OperatorIds.QUESTIONCOLON) ; + break; - case 677 : if (DEBUG) { System.out.println("Assignment ::= PostfixExpression AssignmentOperator..."); } //$NON-NLS-1$ - consumeAssignment(); - break; + case 679 : if (DEBUG) { System.out.println("Assignment ::= PostfixExpression AssignmentOperator..."); } //$NON-NLS-1$ + consumeAssignment(); + break; - case 679 : if (DEBUG) { System.out.println("Assignment ::= InvalidArrayInitializerAssignement"); } //$NON-NLS-1$ - ignoreExpressionAssignment(); - break; + case 681 : if (DEBUG) { System.out.println("Assignment ::= InvalidArrayInitializerAssignement"); } //$NON-NLS-1$ + ignoreExpressionAssignment(); + break; - case 680 : if (DEBUG) { System.out.println("AssignmentOperator ::= EQUAL"); } //$NON-NLS-1$ - consumeAssignmentOperator(EQUAL); - break; + case 682 : if (DEBUG) { System.out.println("AssignmentOperator ::= EQUAL"); } //$NON-NLS-1$ + consumeAssignmentOperator(EQUAL); + break; - case 681 : if (DEBUG) { System.out.println("AssignmentOperator ::= MULTIPLY_EQUAL"); } //$NON-NLS-1$ - consumeAssignmentOperator(MULTIPLY); - break; + case 683 : if (DEBUG) { System.out.println("AssignmentOperator ::= MULTIPLY_EQUAL"); } //$NON-NLS-1$ + consumeAssignmentOperator(MULTIPLY); + break; - case 682 : if (DEBUG) { System.out.println("AssignmentOperator ::= DIVIDE_EQUAL"); } //$NON-NLS-1$ - consumeAssignmentOperator(DIVIDE); - break; + case 684 : if (DEBUG) { System.out.println("AssignmentOperator ::= DIVIDE_EQUAL"); } //$NON-NLS-1$ + consumeAssignmentOperator(DIVIDE); + break; - case 683 : if (DEBUG) { System.out.println("AssignmentOperator ::= REMAINDER_EQUAL"); } //$NON-NLS-1$ - consumeAssignmentOperator(REMAINDER); - break; + case 685 : if (DEBUG) { System.out.println("AssignmentOperator ::= REMAINDER_EQUAL"); } //$NON-NLS-1$ + consumeAssignmentOperator(REMAINDER); + break; - case 684 : if (DEBUG) { System.out.println("AssignmentOperator ::= PLUS_EQUAL"); } //$NON-NLS-1$ - consumeAssignmentOperator(PLUS); - break; + case 686 : if (DEBUG) { System.out.println("AssignmentOperator ::= PLUS_EQUAL"); } //$NON-NLS-1$ + consumeAssignmentOperator(PLUS); + break; - case 685 : if (DEBUG) { System.out.println("AssignmentOperator ::= MINUS_EQUAL"); } //$NON-NLS-1$ - consumeAssignmentOperator(MINUS); - break; + case 687 : if (DEBUG) { System.out.println("AssignmentOperator ::= MINUS_EQUAL"); } //$NON-NLS-1$ + consumeAssignmentOperator(MINUS); + break; - case 686 : if (DEBUG) { System.out.println("AssignmentOperator ::= LEFT_SHIFT_EQUAL"); } //$NON-NLS-1$ - consumeAssignmentOperator(LEFT_SHIFT); - break; + case 688 : if (DEBUG) { System.out.println("AssignmentOperator ::= LEFT_SHIFT_EQUAL"); } //$NON-NLS-1$ + consumeAssignmentOperator(LEFT_SHIFT); + break; - case 687 : if (DEBUG) { System.out.println("AssignmentOperator ::= RIGHT_SHIFT_EQUAL"); } //$NON-NLS-1$ - consumeAssignmentOperator(RIGHT_SHIFT); - break; + case 689 : if (DEBUG) { System.out.println("AssignmentOperator ::= RIGHT_SHIFT_EQUAL"); } //$NON-NLS-1$ + consumeAssignmentOperator(RIGHT_SHIFT); + break; - case 688 : if (DEBUG) { System.out.println("AssignmentOperator ::= UNSIGNED_RIGHT_SHIFT_EQUAL"); } //$NON-NLS-1$ - consumeAssignmentOperator(UNSIGNED_RIGHT_SHIFT); - break; + case 690 : if (DEBUG) { System.out.println("AssignmentOperator ::= UNSIGNED_RIGHT_SHIFT_EQUAL"); } //$NON-NLS-1$ + consumeAssignmentOperator(UNSIGNED_RIGHT_SHIFT); + break; - case 689 : if (DEBUG) { System.out.println("AssignmentOperator ::= AND_EQUAL"); } //$NON-NLS-1$ - consumeAssignmentOperator(AND); - break; + case 691 : if (DEBUG) { System.out.println("AssignmentOperator ::= AND_EQUAL"); } //$NON-NLS-1$ + consumeAssignmentOperator(AND); + break; - case 690 : if (DEBUG) { System.out.println("AssignmentOperator ::= XOR_EQUAL"); } //$NON-NLS-1$ - consumeAssignmentOperator(XOR); - break; + case 692 : if (DEBUG) { System.out.println("AssignmentOperator ::= XOR_EQUAL"); } //$NON-NLS-1$ + consumeAssignmentOperator(XOR); + break; - case 691 : if (DEBUG) { System.out.println("AssignmentOperator ::= OR_EQUAL"); } //$NON-NLS-1$ - consumeAssignmentOperator(OR); - break; + case 693 : if (DEBUG) { System.out.println("AssignmentOperator ::= OR_EQUAL"); } //$NON-NLS-1$ + consumeAssignmentOperator(OR); + break; - case 692 : if (DEBUG) { System.out.println("Expression ::= AssignmentExpression"); } //$NON-NLS-1$ - consumeExpression(); - break; + case 694 : if (DEBUG) { System.out.println("Expression ::= AssignmentExpression"); } //$NON-NLS-1$ + consumeExpression(); + break; - case 695 : if (DEBUG) { System.out.println("Expressionopt ::="); } //$NON-NLS-1$ - consumeEmptyExpression(); - break; + case 697 : if (DEBUG) { System.out.println("Expressionopt ::="); } //$NON-NLS-1$ + consumeEmptyExpression(); + break; - case 700 : if (DEBUG) { System.out.println("ClassBodyDeclarationsopt ::="); } //$NON-NLS-1$ - consumeEmptyClassBodyDeclarationsopt(); - break; + case 702 : if (DEBUG) { System.out.println("ClassBodyDeclarationsopt ::="); } //$NON-NLS-1$ + consumeEmptyClassBodyDeclarationsopt(); + break; - case 701 : if (DEBUG) { System.out.println("ClassBodyDeclarationsopt ::= NestedType..."); } //$NON-NLS-1$ - consumeClassBodyDeclarationsopt(); - break; + case 703 : if (DEBUG) { System.out.println("ClassBodyDeclarationsopt ::= NestedType..."); } //$NON-NLS-1$ + consumeClassBodyDeclarationsopt(); + break; - case 702 : if (DEBUG) { System.out.println("Modifiersopt ::="); } //$NON-NLS-1$ - consumeDefaultModifiers(); - break; + case 704 : if (DEBUG) { System.out.println("Modifiersopt ::="); } //$NON-NLS-1$ + consumeDefaultModifiers(); + break; - case 703 : if (DEBUG) { System.out.println("Modifiersopt ::= Modifiers"); } //$NON-NLS-1$ - consumeModifiers(); - break; + case 705 : if (DEBUG) { System.out.println("Modifiersopt ::= Modifiers"); } //$NON-NLS-1$ + consumeModifiers(); + break; - case 704 : if (DEBUG) { System.out.println("BlockStatementsopt ::="); } //$NON-NLS-1$ - consumeEmptyBlockStatementsopt(); - break; + case 706 : if (DEBUG) { System.out.println("BlockStatementsopt ::="); } //$NON-NLS-1$ + consumeEmptyBlockStatementsopt(); + break; - case 706 : if (DEBUG) { System.out.println("Dimsopt ::="); } //$NON-NLS-1$ - consumeEmptyDimsopt(); - break; + case 708 : if (DEBUG) { System.out.println("Dimsopt ::="); } //$NON-NLS-1$ + consumeEmptyDimsopt(); + break; - case 708 : if (DEBUG) { System.out.println("ArgumentListopt ::="); } //$NON-NLS-1$ - consumeEmptyArgumentListopt(); - break; + case 710 : if (DEBUG) { System.out.println("ArgumentListopt ::="); } //$NON-NLS-1$ + consumeEmptyArgumentListopt(); + break; - case 712 : if (DEBUG) { System.out.println("FormalParameterListopt ::="); } //$NON-NLS-1$ - consumeFormalParameterListopt(); - break; + case 714 : if (DEBUG) { System.out.println("FormalParameterListopt ::="); } //$NON-NLS-1$ + consumeFormalParameterListopt(); + break; - case 719 : if (DEBUG) { System.out.println("ClassHeaderPermittedSubclasses ::=..."); } //$NON-NLS-1$ - consumeClassHeaderPermittedSubclasses(); - break; + case 721 : if (DEBUG) { System.out.println("ClassHeaderPermittedSubclasses ::=..."); } //$NON-NLS-1$ + consumeClassHeaderPermittedSubclasses(); + break; - case 722 : if (DEBUG) { System.out.println("InterfaceHeaderPermittedSubClassesAndSubInterfaces ::="); } //$NON-NLS-1$ - consumeInterfaceHeaderPermittedSubClassesAndSubInterfaces(); - break; + case 724 : if (DEBUG) { System.out.println("InterfaceHeaderPermittedSubClassesAndSubInterfaces ::="); } //$NON-NLS-1$ + consumeInterfaceHeaderPermittedSubClassesAndSubInterfaces(); + break; - case 723 : if (DEBUG) { System.out.println("InterfaceMemberDeclarationsopt ::="); } //$NON-NLS-1$ - consumeEmptyInterfaceMemberDeclarationsopt(); - break; + case 725 : if (DEBUG) { System.out.println("InterfaceMemberDeclarationsopt ::="); } //$NON-NLS-1$ + consumeEmptyInterfaceMemberDeclarationsopt(); + break; - case 724 : if (DEBUG) { System.out.println("InterfaceMemberDeclarationsopt ::= NestedType..."); } //$NON-NLS-1$ - consumeInterfaceMemberDeclarationsopt(); - break; + case 726 : if (DEBUG) { System.out.println("InterfaceMemberDeclarationsopt ::= NestedType..."); } //$NON-NLS-1$ + consumeInterfaceMemberDeclarationsopt(); + break; - case 725 : if (DEBUG) { System.out.println("NestedType ::="); } //$NON-NLS-1$ - consumeNestedType(); - break; + case 727 : if (DEBUG) { System.out.println("NestedType ::="); } //$NON-NLS-1$ + consumeNestedType(); + break; - case 726 : if (DEBUG) { System.out.println("ForInitopt ::="); } //$NON-NLS-1$ - consumeEmptyForInitopt(); - break; + case 728 : if (DEBUG) { System.out.println("ForInitopt ::="); } //$NON-NLS-1$ + consumeEmptyForInitopt(); + break; - case 728 : if (DEBUG) { System.out.println("ForUpdateopt ::="); } //$NON-NLS-1$ - consumeEmptyForUpdateopt(); - break; + case 730 : if (DEBUG) { System.out.println("ForUpdateopt ::="); } //$NON-NLS-1$ + consumeEmptyForUpdateopt(); + break; - case 732 : if (DEBUG) { System.out.println("Catchesopt ::="); } //$NON-NLS-1$ - consumeEmptyCatchesopt(); - break; + case 734 : if (DEBUG) { System.out.println("Catchesopt ::="); } //$NON-NLS-1$ + consumeEmptyCatchesopt(); + break; - case 734 : if (DEBUG) { System.out.println("EnumDeclaration ::= EnumHeader EnumBody"); } //$NON-NLS-1$ - consumeEnumDeclaration(); - break; + case 736 : if (DEBUG) { System.out.println("EnumDeclaration ::= EnumHeader EnumBody"); } //$NON-NLS-1$ + consumeEnumDeclaration(); + break; - case 735 : if (DEBUG) { System.out.println("EnumHeader ::= EnumHeaderName ClassHeaderImplementsopt"); } //$NON-NLS-1$ - consumeEnumHeader(); - break; + case 737 : if (DEBUG) { System.out.println("EnumHeader ::= EnumHeaderName ClassHeaderImplementsopt"); } //$NON-NLS-1$ + consumeEnumHeader(); + break; - case 736 : if (DEBUG) { System.out.println("EnumHeaderName ::= Modifiersopt enum Identifier"); } //$NON-NLS-1$ - consumeEnumHeaderName(); - break; + case 738 : if (DEBUG) { System.out.println("EnumHeaderName ::= Modifiersopt enum Identifier"); } //$NON-NLS-1$ + consumeEnumHeaderName(); + break; - case 737 : if (DEBUG) { System.out.println("EnumHeaderName ::= Modifiersopt enum Identifier..."); } //$NON-NLS-1$ - consumeEnumHeaderNameWithTypeParameters(); - break; + case 739 : if (DEBUG) { System.out.println("EnumHeaderName ::= Modifiersopt enum Identifier..."); } //$NON-NLS-1$ + consumeEnumHeaderNameWithTypeParameters(); + break; - case 738 : if (DEBUG) { System.out.println("EnumBody ::= LBRACE EnumBodyDeclarationsopt RBRACE"); } //$NON-NLS-1$ - consumeEnumBodyNoConstants(); - break; + case 740 : if (DEBUG) { System.out.println("EnumBody ::= LBRACE EnumBodyDeclarationsopt RBRACE"); } //$NON-NLS-1$ + consumeEnumBodyNoConstants(); + break; - case 739 : if (DEBUG) { System.out.println("EnumBody ::= LBRACE COMMA EnumBodyDeclarationsopt..."); } //$NON-NLS-1$ - consumeEnumBodyNoConstants(); - break; + case 741 : if (DEBUG) { System.out.println("EnumBody ::= LBRACE COMMA EnumBodyDeclarationsopt..."); } //$NON-NLS-1$ + consumeEnumBodyNoConstants(); + break; - case 740 : if (DEBUG) { System.out.println("EnumBody ::= LBRACE EnumConstants COMMA..."); } //$NON-NLS-1$ - consumeEnumBodyWithConstants(); - break; + case 742 : if (DEBUG) { System.out.println("EnumBody ::= LBRACE EnumConstants COMMA..."); } //$NON-NLS-1$ + consumeEnumBodyWithConstants(); + break; - case 741 : if (DEBUG) { System.out.println("EnumBody ::= LBRACE EnumConstants..."); } //$NON-NLS-1$ - consumeEnumBodyWithConstants(); - break; + case 743 : if (DEBUG) { System.out.println("EnumBody ::= LBRACE EnumConstants..."); } //$NON-NLS-1$ + consumeEnumBodyWithConstants(); + break; - case 743 : if (DEBUG) { System.out.println("EnumConstants ::= EnumConstants COMMA EnumConstant"); } //$NON-NLS-1$ - consumeEnumConstants(); - break; + case 745 : if (DEBUG) { System.out.println("EnumConstants ::= EnumConstants COMMA EnumConstant"); } //$NON-NLS-1$ + consumeEnumConstants(); + break; - case 744 : if (DEBUG) { System.out.println("EnumConstantHeaderName ::= Modifiersopt Identifier"); } //$NON-NLS-1$ - consumeEnumConstantHeaderName(); - break; + case 746 : if (DEBUG) { System.out.println("EnumConstantHeaderName ::= Modifiersopt Identifier"); } //$NON-NLS-1$ + consumeEnumConstantHeaderName(); + break; - case 745 : if (DEBUG) { System.out.println("EnumConstantHeader ::= EnumConstantHeaderName..."); } //$NON-NLS-1$ - consumeEnumConstantHeader(); - break; + case 747 : if (DEBUG) { System.out.println("EnumConstantHeader ::= EnumConstantHeaderName..."); } //$NON-NLS-1$ + consumeEnumConstantHeader(); + break; - case 746 : if (DEBUG) { System.out.println("EnumConstant ::= EnumConstantHeader ForceNoDiet..."); } //$NON-NLS-1$ - consumeEnumConstantWithClassBody(); - break; + case 748 : if (DEBUG) { System.out.println("EnumConstant ::= EnumConstantHeader ForceNoDiet..."); } //$NON-NLS-1$ + consumeEnumConstantWithClassBody(); + break; - case 747 : if (DEBUG) { System.out.println("EnumConstant ::= EnumConstantHeader"); } //$NON-NLS-1$ - consumeEnumConstantNoClassBody(); - break; + case 749 : if (DEBUG) { System.out.println("EnumConstant ::= EnumConstantHeader"); } //$NON-NLS-1$ + consumeEnumConstantNoClassBody(); + break; - case 748 : if (DEBUG) { System.out.println("Arguments ::= LPAREN ArgumentListopt RPAREN"); } //$NON-NLS-1$ - consumeArguments(); - break; + case 750 : if (DEBUG) { System.out.println("Arguments ::= LPAREN ArgumentListopt RPAREN"); } //$NON-NLS-1$ + consumeArguments(); + break; - case 749 : if (DEBUG) { System.out.println("Argumentsopt ::="); } //$NON-NLS-1$ - consumeEmptyArguments(); - break; + case 751 : if (DEBUG) { System.out.println("Argumentsopt ::="); } //$NON-NLS-1$ + consumeEmptyArguments(); + break; - case 751 : if (DEBUG) { System.out.println("EnumDeclarations ::= SEMICOLON ClassBodyDeclarationsopt"); } //$NON-NLS-1$ - consumeEnumDeclarations(); - break; + case 753 : if (DEBUG) { System.out.println("EnumDeclarations ::= SEMICOLON ClassBodyDeclarationsopt"); } //$NON-NLS-1$ + consumeEnumDeclarations(); + break; - case 752 : if (DEBUG) { System.out.println("EnumBodyDeclarationsopt ::="); } //$NON-NLS-1$ - consumeEmptyEnumDeclarations(); - break; + case 754 : if (DEBUG) { System.out.println("EnumBodyDeclarationsopt ::="); } //$NON-NLS-1$ + consumeEmptyEnumDeclarations(); + break; - case 754 : if (DEBUG) { System.out.println("EnhancedForStatement ::= EnhancedForStatementHeader..."); } //$NON-NLS-1$ - consumeEnhancedForStatement(); - break; + case 756 : if (DEBUG) { System.out.println("EnhancedForStatement ::= EnhancedForStatementHeader..."); } //$NON-NLS-1$ + consumeEnhancedForStatement(); + break; - case 755 : if (DEBUG) { System.out.println("EnhancedForStatementNoShortIf ::=..."); } //$NON-NLS-1$ - consumeEnhancedForStatement(); - break; + case 757 : if (DEBUG) { System.out.println("EnhancedForStatementNoShortIf ::=..."); } //$NON-NLS-1$ + consumeEnhancedForStatement(); + break; - case 756 : if (DEBUG) { System.out.println("EnhancedForStatementHeaderInit ::= for LPAREN Type..."); } //$NON-NLS-1$ - consumeEnhancedForStatementHeaderInit(false); - break; + case 758 : if (DEBUG) { System.out.println("EnhancedForStatementHeaderInit ::= for LPAREN Type..."); } //$NON-NLS-1$ + consumeEnhancedForStatementHeaderInit(false); + break; - case 757 : if (DEBUG) { System.out.println("EnhancedForStatementHeaderInit ::= for LPAREN Modifiers"); } //$NON-NLS-1$ - consumeEnhancedForStatementHeaderInit(true); - break; + case 759 : if (DEBUG) { System.out.println("EnhancedForStatementHeaderInit ::= for LPAREN Modifiers"); } //$NON-NLS-1$ + consumeEnhancedForStatementHeaderInit(true); + break; - case 758 : if (DEBUG) { System.out.println("EnhancedForStatementHeader ::=..."); } //$NON-NLS-1$ - consumeEnhancedForStatementHeader(); - break; + case 760 : if (DEBUG) { System.out.println("EnhancedForStatementHeader ::=..."); } //$NON-NLS-1$ + consumeEnhancedForStatementHeader(); + break; - case 759 : if (DEBUG) { System.out.println("EnhancedForStatementHeaderInitRecord ::= for LPAREN..."); } //$NON-NLS-1$ - consumeEnhancedForStatementHeaderInitRecord(false); - break; + case 761 : if (DEBUG) { System.out.println("EnhancedForStatementHeaderInitRecord ::= for LPAREN..."); } //$NON-NLS-1$ + consumeEnhancedForStatementHeaderInitRecord(false); + break; - case 760 : if (DEBUG) { System.out.println("EnhancedForStatementHeaderInitRecord ::= for LPAREN..."); } //$NON-NLS-1$ - consumeEnhancedForStatementHeaderInitRecord(true); - break; + case 762 : if (DEBUG) { System.out.println("EnhancedForStatementHeaderInitRecord ::= for LPAREN..."); } //$NON-NLS-1$ + consumeEnhancedForStatementHeaderInitRecord(true); + break; - case 761 : if (DEBUG) { System.out.println("EnhancedForStatementHeader ::=..."); } //$NON-NLS-1$ - consumeEnhancedForStatementHeader(); - break; + case 763 : if (DEBUG) { System.out.println("EnhancedForStatementHeader ::=..."); } //$NON-NLS-1$ + consumeEnhancedForStatementHeader(); + break; - case 762 : if (DEBUG) { System.out.println("SingleStaticImportDeclaration ::=..."); } //$NON-NLS-1$ - consumeImportDeclaration(); - break; + case 764 : if (DEBUG) { System.out.println("SingleStaticImportDeclaration ::=..."); } //$NON-NLS-1$ + consumeImportDeclaration(); + break; - case 763 : if (DEBUG) { System.out.println("SingleStaticImportDeclarationName ::= import static Name"); } //$NON-NLS-1$ - consumeSingleStaticImportDeclarationName(); - break; + case 765 : if (DEBUG) { System.out.println("SingleStaticImportDeclarationName ::= import static Name"); } //$NON-NLS-1$ + consumeSingleStaticImportDeclarationName(); + break; - case 764 : if (DEBUG) { System.out.println("StaticImportOnDemandDeclaration ::=..."); } //$NON-NLS-1$ - consumeImportDeclaration(); - break; + case 766 : if (DEBUG) { System.out.println("StaticImportOnDemandDeclaration ::=..."); } //$NON-NLS-1$ + consumeImportDeclaration(); + break; - case 765 : if (DEBUG) { System.out.println("StaticImportOnDemandDeclarationName ::= import static..."); } //$NON-NLS-1$ - consumeStaticImportOnDemandDeclarationName(); - break; + case 767 : if (DEBUG) { System.out.println("StaticImportOnDemandDeclarationName ::= import static..."); } //$NON-NLS-1$ + consumeStaticImportOnDemandDeclarationName(); + break; - case 766 : if (DEBUG) { System.out.println("TypeArguments ::= LESS TypeArgumentList1"); } //$NON-NLS-1$ - consumeTypeArguments(); - break; + case 768 : if (DEBUG) { System.out.println("TypeArguments ::= LESS TypeArgumentList1"); } //$NON-NLS-1$ + consumeTypeArguments(); + break; - case 767 : if (DEBUG) { System.out.println("OnlyTypeArguments ::= LESS TypeArgumentList1"); } //$NON-NLS-1$ - consumeOnlyTypeArguments(); - break; + case 769 : if (DEBUG) { System.out.println("OnlyTypeArguments ::= LESS TypeArgumentList1"); } //$NON-NLS-1$ + consumeOnlyTypeArguments(); + break; - case 769 : if (DEBUG) { System.out.println("TypeArgumentList1 ::= TypeArgumentList COMMA..."); } //$NON-NLS-1$ - consumeTypeArgumentList1(); - break; + case 771 : if (DEBUG) { System.out.println("TypeArgumentList1 ::= TypeArgumentList COMMA..."); } //$NON-NLS-1$ + consumeTypeArgumentList1(); + break; - case 771 : if (DEBUG) { System.out.println("TypeArgumentList ::= TypeArgumentList COMMA TypeArgument"); } //$NON-NLS-1$ - consumeTypeArgumentList(); - break; + case 773 : if (DEBUG) { System.out.println("TypeArgumentList ::= TypeArgumentList COMMA TypeArgument"); } //$NON-NLS-1$ + consumeTypeArgumentList(); + break; - case 772 : if (DEBUG) { System.out.println("TypeArgument ::= ReferenceType"); } //$NON-NLS-1$ - consumeTypeArgument(); - break; + case 774 : if (DEBUG) { System.out.println("TypeArgument ::= ReferenceType"); } //$NON-NLS-1$ + consumeTypeArgument(); + break; - case 776 : if (DEBUG) { System.out.println("ReferenceType1 ::= ReferenceType GREATER"); } //$NON-NLS-1$ - consumeReferenceType1(); - break; + case 778 : if (DEBUG) { System.out.println("ReferenceType1 ::= ReferenceType GREATER"); } //$NON-NLS-1$ + consumeReferenceType1(); + break; - case 777 : if (DEBUG) { System.out.println("ReferenceType1 ::= ClassOrInterface LESS..."); } //$NON-NLS-1$ - consumeTypeArgumentReferenceType1(); - break; + case 779 : if (DEBUG) { System.out.println("ReferenceType1 ::= ClassOrInterface LESS..."); } //$NON-NLS-1$ + consumeTypeArgumentReferenceType1(); + break; - case 779 : if (DEBUG) { System.out.println("TypeArgumentList2 ::= TypeArgumentList COMMA..."); } //$NON-NLS-1$ - consumeTypeArgumentList2(); - break; + case 781 : if (DEBUG) { System.out.println("TypeArgumentList2 ::= TypeArgumentList COMMA..."); } //$NON-NLS-1$ + consumeTypeArgumentList2(); + break; - case 782 : if (DEBUG) { System.out.println("ReferenceType2 ::= ReferenceType RIGHT_SHIFT"); } //$NON-NLS-1$ - consumeReferenceType2(); - break; + case 784 : if (DEBUG) { System.out.println("ReferenceType2 ::= ReferenceType RIGHT_SHIFT"); } //$NON-NLS-1$ + consumeReferenceType2(); + break; - case 783 : if (DEBUG) { System.out.println("ReferenceType2 ::= ClassOrInterface LESS..."); } //$NON-NLS-1$ - consumeTypeArgumentReferenceType2(); - break; + case 785 : if (DEBUG) { System.out.println("ReferenceType2 ::= ClassOrInterface LESS..."); } //$NON-NLS-1$ + consumeTypeArgumentReferenceType2(); + break; - case 785 : if (DEBUG) { System.out.println("TypeArgumentList3 ::= TypeArgumentList COMMA..."); } //$NON-NLS-1$ - consumeTypeArgumentList3(); - break; + case 787 : if (DEBUG) { System.out.println("TypeArgumentList3 ::= TypeArgumentList COMMA..."); } //$NON-NLS-1$ + consumeTypeArgumentList3(); + break; - case 788 : if (DEBUG) { System.out.println("ReferenceType3 ::= ReferenceType UNSIGNED_RIGHT_SHIFT"); } //$NON-NLS-1$ - consumeReferenceType3(); - break; + case 790 : if (DEBUG) { System.out.println("ReferenceType3 ::= ReferenceType UNSIGNED_RIGHT_SHIFT"); } //$NON-NLS-1$ + consumeReferenceType3(); + break; - case 789 : if (DEBUG) { System.out.println("Wildcard ::= TypeAnnotationsopt QUESTION"); } //$NON-NLS-1$ - consumeWildcard(); - break; + case 791 : if (DEBUG) { System.out.println("Wildcard ::= TypeAnnotationsopt QUESTION"); } //$NON-NLS-1$ + consumeWildcard(); + break; - case 790 : if (DEBUG) { System.out.println("Wildcard ::= TypeAnnotationsopt QUESTION WildcardBounds"); } //$NON-NLS-1$ - consumeWildcardWithBounds(); - break; + case 792 : if (DEBUG) { System.out.println("Wildcard ::= TypeAnnotationsopt QUESTION WildcardBounds"); } //$NON-NLS-1$ + consumeWildcardWithBounds(); + break; - case 791 : if (DEBUG) { System.out.println("WildcardBounds ::= extends ReferenceType"); } //$NON-NLS-1$ - consumeWildcardBoundsExtends(); - break; + case 793 : if (DEBUG) { System.out.println("WildcardBounds ::= extends ReferenceType"); } //$NON-NLS-1$ + consumeWildcardBoundsExtends(); + break; - case 792 : if (DEBUG) { System.out.println("WildcardBounds ::= super ReferenceType"); } //$NON-NLS-1$ - consumeWildcardBoundsSuper(); - break; + case 794 : if (DEBUG) { System.out.println("WildcardBounds ::= super ReferenceType"); } //$NON-NLS-1$ + consumeWildcardBoundsSuper(); + break; - case 793 : if (DEBUG) { System.out.println("Wildcard1 ::= TypeAnnotationsopt QUESTION GREATER"); } //$NON-NLS-1$ - consumeWildcard1(); - break; + case 795 : if (DEBUG) { System.out.println("Wildcard1 ::= TypeAnnotationsopt QUESTION GREATER"); } //$NON-NLS-1$ + consumeWildcard1(); + break; - case 794 : if (DEBUG) { System.out.println("Wildcard1 ::= TypeAnnotationsopt QUESTION..."); } //$NON-NLS-1$ - consumeWildcard1WithBounds(); - break; + case 796 : if (DEBUG) { System.out.println("Wildcard1 ::= TypeAnnotationsopt QUESTION..."); } //$NON-NLS-1$ + consumeWildcard1WithBounds(); + break; - case 795 : if (DEBUG) { System.out.println("WildcardBounds1 ::= extends ReferenceType1"); } //$NON-NLS-1$ - consumeWildcardBounds1Extends(); - break; + case 797 : if (DEBUG) { System.out.println("WildcardBounds1 ::= extends ReferenceType1"); } //$NON-NLS-1$ + consumeWildcardBounds1Extends(); + break; - case 796 : if (DEBUG) { System.out.println("WildcardBounds1 ::= super ReferenceType1"); } //$NON-NLS-1$ - consumeWildcardBounds1Super(); - break; + case 798 : if (DEBUG) { System.out.println("WildcardBounds1 ::= super ReferenceType1"); } //$NON-NLS-1$ + consumeWildcardBounds1Super(); + break; - case 797 : if (DEBUG) { System.out.println("Wildcard2 ::= TypeAnnotationsopt QUESTION RIGHT_SHIFT"); } //$NON-NLS-1$ - consumeWildcard2(); - break; + case 799 : if (DEBUG) { System.out.println("Wildcard2 ::= TypeAnnotationsopt QUESTION RIGHT_SHIFT"); } //$NON-NLS-1$ + consumeWildcard2(); + break; - case 798 : if (DEBUG) { System.out.println("Wildcard2 ::= TypeAnnotationsopt QUESTION..."); } //$NON-NLS-1$ - consumeWildcard2WithBounds(); - break; + case 800 : if (DEBUG) { System.out.println("Wildcard2 ::= TypeAnnotationsopt QUESTION..."); } //$NON-NLS-1$ + consumeWildcard2WithBounds(); + break; - case 799 : if (DEBUG) { System.out.println("WildcardBounds2 ::= extends ReferenceType2"); } //$NON-NLS-1$ - consumeWildcardBounds2Extends(); - break; + case 801 : if (DEBUG) { System.out.println("WildcardBounds2 ::= extends ReferenceType2"); } //$NON-NLS-1$ + consumeWildcardBounds2Extends(); + break; - case 800 : if (DEBUG) { System.out.println("WildcardBounds2 ::= super ReferenceType2"); } //$NON-NLS-1$ - consumeWildcardBounds2Super(); - break; + case 802 : if (DEBUG) { System.out.println("WildcardBounds2 ::= super ReferenceType2"); } //$NON-NLS-1$ + consumeWildcardBounds2Super(); + break; - case 801 : if (DEBUG) { System.out.println("Wildcard3 ::= TypeAnnotationsopt QUESTION..."); } //$NON-NLS-1$ - consumeWildcard3(); - break; + case 803 : if (DEBUG) { System.out.println("Wildcard3 ::= TypeAnnotationsopt QUESTION..."); } //$NON-NLS-1$ + consumeWildcard3(); + break; - case 802 : if (DEBUG) { System.out.println("Wildcard3 ::= TypeAnnotationsopt QUESTION..."); } //$NON-NLS-1$ - consumeWildcard3WithBounds(); - break; + case 804 : if (DEBUG) { System.out.println("Wildcard3 ::= TypeAnnotationsopt QUESTION..."); } //$NON-NLS-1$ + consumeWildcard3WithBounds(); + break; - case 803 : if (DEBUG) { System.out.println("WildcardBounds3 ::= extends ReferenceType3"); } //$NON-NLS-1$ - consumeWildcardBounds3Extends(); - break; + case 805 : if (DEBUG) { System.out.println("WildcardBounds3 ::= extends ReferenceType3"); } //$NON-NLS-1$ + consumeWildcardBounds3Extends(); + break; - case 804 : if (DEBUG) { System.out.println("WildcardBounds3 ::= super ReferenceType3"); } //$NON-NLS-1$ - consumeWildcardBounds3Super(); - break; + case 806 : if (DEBUG) { System.out.println("WildcardBounds3 ::= super ReferenceType3"); } //$NON-NLS-1$ + consumeWildcardBounds3Super(); + break; - case 805 : if (DEBUG) { System.out.println("TypeParameterHeader ::= TypeAnnotationsopt Identifier"); } //$NON-NLS-1$ - consumeTypeParameterHeader(); - break; + case 807 : if (DEBUG) { System.out.println("TypeParameterHeader ::= TypeAnnotationsopt Identifier"); } //$NON-NLS-1$ + consumeTypeParameterHeader(); + break; - case 806 : if (DEBUG) { System.out.println("TypeParameters ::= LESS TypeParameterList1"); } //$NON-NLS-1$ - consumeTypeParameters(); - break; + case 808 : if (DEBUG) { System.out.println("TypeParameters ::= LESS TypeParameterList1"); } //$NON-NLS-1$ + consumeTypeParameters(); + break; - case 808 : if (DEBUG) { System.out.println("TypeParameterList ::= TypeParameterList COMMA..."); } //$NON-NLS-1$ - consumeTypeParameterList(); - break; + case 810 : if (DEBUG) { System.out.println("TypeParameterList ::= TypeParameterList COMMA..."); } //$NON-NLS-1$ + consumeTypeParameterList(); + break; - case 810 : if (DEBUG) { System.out.println("TypeParameter ::= TypeParameterHeader extends..."); } //$NON-NLS-1$ - consumeTypeParameterWithExtends(); - break; + case 812 : if (DEBUG) { System.out.println("TypeParameter ::= TypeParameterHeader extends..."); } //$NON-NLS-1$ + consumeTypeParameterWithExtends(); + break; - case 811 : if (DEBUG) { System.out.println("TypeParameter ::= TypeParameterHeader extends..."); } //$NON-NLS-1$ - consumeTypeParameterWithExtendsAndBounds(); - break; + case 813 : if (DEBUG) { System.out.println("TypeParameter ::= TypeParameterHeader extends..."); } //$NON-NLS-1$ + consumeTypeParameterWithExtendsAndBounds(); + break; - case 813 : if (DEBUG) { System.out.println("AdditionalBoundList ::= AdditionalBoundList..."); } //$NON-NLS-1$ - consumeAdditionalBoundList(); - break; + case 815 : if (DEBUG) { System.out.println("AdditionalBoundList ::= AdditionalBoundList..."); } //$NON-NLS-1$ + consumeAdditionalBoundList(); + break; - case 814 : if (DEBUG) { System.out.println("AdditionalBound ::= AND ReferenceType"); } //$NON-NLS-1$ - consumeAdditionalBound(); - break; + case 816 : if (DEBUG) { System.out.println("AdditionalBound ::= AND ReferenceType"); } //$NON-NLS-1$ + consumeAdditionalBound(); + break; - case 816 : if (DEBUG) { System.out.println("TypeParameterList1 ::= TypeParameterList COMMA..."); } //$NON-NLS-1$ - consumeTypeParameterList1(); - break; + case 818 : if (DEBUG) { System.out.println("TypeParameterList1 ::= TypeParameterList COMMA..."); } //$NON-NLS-1$ + consumeTypeParameterList1(); + break; - case 817 : if (DEBUG) { System.out.println("TypeParameter1 ::= TypeParameterHeader GREATER"); } //$NON-NLS-1$ - consumeTypeParameter1(); - break; + case 819 : if (DEBUG) { System.out.println("TypeParameter1 ::= TypeParameterHeader GREATER"); } //$NON-NLS-1$ + consumeTypeParameter1(); + break; - case 818 : if (DEBUG) { System.out.println("TypeParameter1 ::= TypeParameterHeader extends..."); } //$NON-NLS-1$ - consumeTypeParameter1WithExtends(); - break; + case 820 : if (DEBUG) { System.out.println("TypeParameter1 ::= TypeParameterHeader extends..."); } //$NON-NLS-1$ + consumeTypeParameter1WithExtends(); + break; - case 819 : if (DEBUG) { System.out.println("TypeParameter1 ::= TypeParameterHeader extends..."); } //$NON-NLS-1$ - consumeTypeParameter1WithExtendsAndBounds(); - break; + case 821 : if (DEBUG) { System.out.println("TypeParameter1 ::= TypeParameterHeader extends..."); } //$NON-NLS-1$ + consumeTypeParameter1WithExtendsAndBounds(); + break; - case 821 : if (DEBUG) { System.out.println("AdditionalBoundList1 ::= AdditionalBoundList..."); } //$NON-NLS-1$ - consumeAdditionalBoundList1(); - break; + case 823 : if (DEBUG) { System.out.println("AdditionalBoundList1 ::= AdditionalBoundList..."); } //$NON-NLS-1$ + consumeAdditionalBoundList1(); + break; - case 822 : if (DEBUG) { System.out.println("AdditionalBound1 ::= AND ReferenceType1"); } //$NON-NLS-1$ - consumeAdditionalBound1(); - break; + case 824 : if (DEBUG) { System.out.println("AdditionalBound1 ::= AND ReferenceType1"); } //$NON-NLS-1$ + consumeAdditionalBound1(); + break; - case 828 : if (DEBUG) { System.out.println("UnaryExpression_NotName ::= PLUS PushPosition..."); } //$NON-NLS-1$ - consumeUnaryExpression(OperatorIds.PLUS); - break; + case 830 : if (DEBUG) { System.out.println("UnaryExpression_NotName ::= PLUS PushPosition..."); } //$NON-NLS-1$ + consumeUnaryExpression(OperatorIds.PLUS); + break; - case 829 : if (DEBUG) { System.out.println("UnaryExpression_NotName ::= MINUS PushPosition..."); } //$NON-NLS-1$ - consumeUnaryExpression(OperatorIds.MINUS); - break; + case 831 : if (DEBUG) { System.out.println("UnaryExpression_NotName ::= MINUS PushPosition..."); } //$NON-NLS-1$ + consumeUnaryExpression(OperatorIds.MINUS); + break; - case 832 : if (DEBUG) { System.out.println("UnaryExpressionNotPlusMinus_NotName ::= TWIDDLE..."); } //$NON-NLS-1$ - consumeUnaryExpression(OperatorIds.TWIDDLE); - break; + case 834 : if (DEBUG) { System.out.println("UnaryExpressionNotPlusMinus_NotName ::= TWIDDLE..."); } //$NON-NLS-1$ + consumeUnaryExpression(OperatorIds.TWIDDLE); + break; - case 833 : if (DEBUG) { System.out.println("UnaryExpressionNotPlusMinus_NotName ::= NOT PushPosition"); } //$NON-NLS-1$ - consumeUnaryExpression(OperatorIds.NOT); - break; + case 835 : if (DEBUG) { System.out.println("UnaryExpressionNotPlusMinus_NotName ::= NOT PushPosition"); } //$NON-NLS-1$ + consumeUnaryExpression(OperatorIds.NOT); + break; - case 836 : if (DEBUG) { System.out.println("MultiplicativeExpression_NotName ::=..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.MULTIPLY); - break; + case 838 : if (DEBUG) { System.out.println("MultiplicativeExpression_NotName ::=..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.MULTIPLY); + break; - case 837 : if (DEBUG) { System.out.println("MultiplicativeExpression_NotName ::= Name MULTIPLY..."); } //$NON-NLS-1$ - consumeBinaryExpressionWithName(OperatorIds.MULTIPLY); - break; + case 839 : if (DEBUG) { System.out.println("MultiplicativeExpression_NotName ::= Name MULTIPLY..."); } //$NON-NLS-1$ + consumeBinaryExpressionWithName(OperatorIds.MULTIPLY); + break; - case 838 : if (DEBUG) { System.out.println("MultiplicativeExpression_NotName ::=..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.DIVIDE); - break; + case 840 : if (DEBUG) { System.out.println("MultiplicativeExpression_NotName ::=..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.DIVIDE); + break; - case 839 : if (DEBUG) { System.out.println("MultiplicativeExpression_NotName ::= Name DIVIDE..."); } //$NON-NLS-1$ - consumeBinaryExpressionWithName(OperatorIds.DIVIDE); - break; + case 841 : if (DEBUG) { System.out.println("MultiplicativeExpression_NotName ::= Name DIVIDE..."); } //$NON-NLS-1$ + consumeBinaryExpressionWithName(OperatorIds.DIVIDE); + break; - case 840 : if (DEBUG) { System.out.println("MultiplicativeExpression_NotName ::=..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.REMAINDER); - break; + case 842 : if (DEBUG) { System.out.println("MultiplicativeExpression_NotName ::=..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.REMAINDER); + break; - case 841 : if (DEBUG) { System.out.println("MultiplicativeExpression_NotName ::= Name REMAINDER..."); } //$NON-NLS-1$ - consumeBinaryExpressionWithName(OperatorIds.REMAINDER); - break; + case 843 : if (DEBUG) { System.out.println("MultiplicativeExpression_NotName ::= Name REMAINDER..."); } //$NON-NLS-1$ + consumeBinaryExpressionWithName(OperatorIds.REMAINDER); + break; - case 843 : if (DEBUG) { System.out.println("AdditiveExpression_NotName ::=..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.PLUS); - break; + case 845 : if (DEBUG) { System.out.println("AdditiveExpression_NotName ::=..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.PLUS); + break; - case 844 : if (DEBUG) { System.out.println("AdditiveExpression_NotName ::= Name PLUS..."); } //$NON-NLS-1$ - consumeBinaryExpressionWithName(OperatorIds.PLUS); - break; + case 846 : if (DEBUG) { System.out.println("AdditiveExpression_NotName ::= Name PLUS..."); } //$NON-NLS-1$ + consumeBinaryExpressionWithName(OperatorIds.PLUS); + break; - case 845 : if (DEBUG) { System.out.println("AdditiveExpression_NotName ::=..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.MINUS); - break; + case 847 : if (DEBUG) { System.out.println("AdditiveExpression_NotName ::=..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.MINUS); + break; - case 846 : if (DEBUG) { System.out.println("AdditiveExpression_NotName ::= Name MINUS..."); } //$NON-NLS-1$ - consumeBinaryExpressionWithName(OperatorIds.MINUS); - break; + case 848 : if (DEBUG) { System.out.println("AdditiveExpression_NotName ::= Name MINUS..."); } //$NON-NLS-1$ + consumeBinaryExpressionWithName(OperatorIds.MINUS); + break; - case 848 : if (DEBUG) { System.out.println("ShiftExpression_NotName ::= ShiftExpression_NotName..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.LEFT_SHIFT); - break; + case 850 : if (DEBUG) { System.out.println("ShiftExpression_NotName ::= ShiftExpression_NotName..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.LEFT_SHIFT); + break; - case 849 : if (DEBUG) { System.out.println("ShiftExpression_NotName ::= Name LEFT_SHIFT..."); } //$NON-NLS-1$ - consumeBinaryExpressionWithName(OperatorIds.LEFT_SHIFT); - break; + case 851 : if (DEBUG) { System.out.println("ShiftExpression_NotName ::= Name LEFT_SHIFT..."); } //$NON-NLS-1$ + consumeBinaryExpressionWithName(OperatorIds.LEFT_SHIFT); + break; - case 850 : if (DEBUG) { System.out.println("ShiftExpression_NotName ::= ShiftExpression_NotName..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.RIGHT_SHIFT); - break; + case 852 : if (DEBUG) { System.out.println("ShiftExpression_NotName ::= ShiftExpression_NotName..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.RIGHT_SHIFT); + break; - case 851 : if (DEBUG) { System.out.println("ShiftExpression_NotName ::= Name RIGHT_SHIFT..."); } //$NON-NLS-1$ - consumeBinaryExpressionWithName(OperatorIds.RIGHT_SHIFT); - break; + case 853 : if (DEBUG) { System.out.println("ShiftExpression_NotName ::= Name RIGHT_SHIFT..."); } //$NON-NLS-1$ + consumeBinaryExpressionWithName(OperatorIds.RIGHT_SHIFT); + break; - case 852 : if (DEBUG) { System.out.println("ShiftExpression_NotName ::= ShiftExpression_NotName..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.UNSIGNED_RIGHT_SHIFT); - break; + case 854 : if (DEBUG) { System.out.println("ShiftExpression_NotName ::= ShiftExpression_NotName..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.UNSIGNED_RIGHT_SHIFT); + break; - case 853 : if (DEBUG) { System.out.println("ShiftExpression_NotName ::= Name UNSIGNED_RIGHT_SHIFT..."); } //$NON-NLS-1$ - consumeBinaryExpressionWithName(OperatorIds.UNSIGNED_RIGHT_SHIFT); - break; + case 855 : if (DEBUG) { System.out.println("ShiftExpression_NotName ::= Name UNSIGNED_RIGHT_SHIFT..."); } //$NON-NLS-1$ + consumeBinaryExpressionWithName(OperatorIds.UNSIGNED_RIGHT_SHIFT); + break; - case 855 : if (DEBUG) { System.out.println("RelationalExpression_NotName ::= ShiftExpression_NotName"); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.LESS); - break; + case 857 : if (DEBUG) { System.out.println("RelationalExpression_NotName ::= ShiftExpression_NotName"); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.LESS); + break; - case 856 : if (DEBUG) { System.out.println("RelationalExpression_NotName ::= Name LESS..."); } //$NON-NLS-1$ - consumeBinaryExpressionWithName(OperatorIds.LESS); - break; + case 858 : if (DEBUG) { System.out.println("RelationalExpression_NotName ::= Name LESS..."); } //$NON-NLS-1$ + consumeBinaryExpressionWithName(OperatorIds.LESS); + break; - case 857 : if (DEBUG) { System.out.println("RelationalExpression_NotName ::= ShiftExpression_NotName"); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.GREATER); - break; + case 859 : if (DEBUG) { System.out.println("RelationalExpression_NotName ::= ShiftExpression_NotName"); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.GREATER); + break; - case 858 : if (DEBUG) { System.out.println("RelationalExpression_NotName ::= Name GREATER..."); } //$NON-NLS-1$ - consumeBinaryExpressionWithName(OperatorIds.GREATER); - break; + case 860 : if (DEBUG) { System.out.println("RelationalExpression_NotName ::= Name GREATER..."); } //$NON-NLS-1$ + consumeBinaryExpressionWithName(OperatorIds.GREATER); + break; - case 859 : if (DEBUG) { System.out.println("RelationalExpression_NotName ::=..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.LESS_EQUAL); - break; + case 861 : if (DEBUG) { System.out.println("RelationalExpression_NotName ::=..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.LESS_EQUAL); + break; - case 860 : if (DEBUG) { System.out.println("RelationalExpression_NotName ::= Name LESS_EQUAL..."); } //$NON-NLS-1$ - consumeBinaryExpressionWithName(OperatorIds.LESS_EQUAL); - break; + case 862 : if (DEBUG) { System.out.println("RelationalExpression_NotName ::= Name LESS_EQUAL..."); } //$NON-NLS-1$ + consumeBinaryExpressionWithName(OperatorIds.LESS_EQUAL); + break; - case 861 : if (DEBUG) { System.out.println("RelationalExpression_NotName ::=..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.GREATER_EQUAL); - break; + case 863 : if (DEBUG) { System.out.println("RelationalExpression_NotName ::=..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.GREATER_EQUAL); + break; - case 862 : if (DEBUG) { System.out.println("RelationalExpression_NotName ::= Name GREATER_EQUAL..."); } //$NON-NLS-1$ - consumeBinaryExpressionWithName(OperatorIds.GREATER_EQUAL); - break; + case 864 : if (DEBUG) { System.out.println("RelationalExpression_NotName ::= Name GREATER_EQUAL..."); } //$NON-NLS-1$ + consumeBinaryExpressionWithName(OperatorIds.GREATER_EQUAL); + break; - case 864 : if (DEBUG) { System.out.println("InstanceofExpression_NotName ::= Name InstanceofRHS"); } //$NON-NLS-1$ - consumeInstanceOfExpressionWithName(); - break; + case 866 : if (DEBUG) { System.out.println("InstanceofExpression_NotName ::= Name InstanceofRHS"); } //$NON-NLS-1$ + consumeInstanceOfExpressionWithName(); + break; - case 865 : if (DEBUG) { System.out.println("InstanceofExpression_NotName ::=..."); } //$NON-NLS-1$ - consumeInstanceOfExpression(); - break; + case 867 : if (DEBUG) { System.out.println("InstanceofExpression_NotName ::=..."); } //$NON-NLS-1$ + consumeInstanceOfExpression(); + break; - case 867 : if (DEBUG) { System.out.println("EqualityExpression_NotName ::=..."); } //$NON-NLS-1$ - consumeEqualityExpression(OperatorIds.EQUAL_EQUAL); - break; + case 869 : if (DEBUG) { System.out.println("EqualityExpression_NotName ::=..."); } //$NON-NLS-1$ + consumeEqualityExpression(OperatorIds.EQUAL_EQUAL); + break; - case 868 : if (DEBUG) { System.out.println("EqualityExpression_NotName ::= Name EQUAL_EQUAL..."); } //$NON-NLS-1$ - consumeEqualityExpressionWithName(OperatorIds.EQUAL_EQUAL); - break; + case 870 : if (DEBUG) { System.out.println("EqualityExpression_NotName ::= Name EQUAL_EQUAL..."); } //$NON-NLS-1$ + consumeEqualityExpressionWithName(OperatorIds.EQUAL_EQUAL); + break; - case 869 : if (DEBUG) { System.out.println("EqualityExpression_NotName ::=..."); } //$NON-NLS-1$ - consumeEqualityExpression(OperatorIds.NOT_EQUAL); - break; + case 871 : if (DEBUG) { System.out.println("EqualityExpression_NotName ::=..."); } //$NON-NLS-1$ + consumeEqualityExpression(OperatorIds.NOT_EQUAL); + break; - case 870 : if (DEBUG) { System.out.println("EqualityExpression_NotName ::= Name NOT_EQUAL..."); } //$NON-NLS-1$ - consumeEqualityExpressionWithName(OperatorIds.NOT_EQUAL); - break; + case 872 : if (DEBUG) { System.out.println("EqualityExpression_NotName ::= Name NOT_EQUAL..."); } //$NON-NLS-1$ + consumeEqualityExpressionWithName(OperatorIds.NOT_EQUAL); + break; - case 872 : if (DEBUG) { System.out.println("AndExpression_NotName ::= AndExpression_NotName AND..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.AND); - break; + case 874 : if (DEBUG) { System.out.println("AndExpression_NotName ::= AndExpression_NotName AND..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.AND); + break; - case 873 : if (DEBUG) { System.out.println("AndExpression_NotName ::= Name AND EqualityExpression"); } //$NON-NLS-1$ - consumeBinaryExpressionWithName(OperatorIds.AND); - break; + case 875 : if (DEBUG) { System.out.println("AndExpression_NotName ::= Name AND EqualityExpression"); } //$NON-NLS-1$ + consumeBinaryExpressionWithName(OperatorIds.AND); + break; - case 875 : if (DEBUG) { System.out.println("ExclusiveOrExpression_NotName ::=..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.XOR); - break; + case 877 : if (DEBUG) { System.out.println("ExclusiveOrExpression_NotName ::=..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.XOR); + break; - case 876 : if (DEBUG) { System.out.println("ExclusiveOrExpression_NotName ::= Name XOR AndExpression"); } //$NON-NLS-1$ - consumeBinaryExpressionWithName(OperatorIds.XOR); - break; + case 878 : if (DEBUG) { System.out.println("ExclusiveOrExpression_NotName ::= Name XOR AndExpression"); } //$NON-NLS-1$ + consumeBinaryExpressionWithName(OperatorIds.XOR); + break; - case 878 : if (DEBUG) { System.out.println("InclusiveOrExpression_NotName ::=..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.OR); - break; + case 880 : if (DEBUG) { System.out.println("InclusiveOrExpression_NotName ::=..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.OR); + break; - case 879 : if (DEBUG) { System.out.println("InclusiveOrExpression_NotName ::= Name OR..."); } //$NON-NLS-1$ - consumeBinaryExpressionWithName(OperatorIds.OR); - break; + case 881 : if (DEBUG) { System.out.println("InclusiveOrExpression_NotName ::= Name OR..."); } //$NON-NLS-1$ + consumeBinaryExpressionWithName(OperatorIds.OR); + break; - case 881 : if (DEBUG) { System.out.println("ConditionalAndExpression_NotName ::=..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.AND_AND); - break; + case 883 : if (DEBUG) { System.out.println("ConditionalAndExpression_NotName ::=..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.AND_AND); + break; - case 882 : if (DEBUG) { System.out.println("ConditionalAndExpression_NotName ::= Name AND_AND..."); } //$NON-NLS-1$ - consumeBinaryExpressionWithName(OperatorIds.AND_AND); - break; + case 884 : if (DEBUG) { System.out.println("ConditionalAndExpression_NotName ::= Name AND_AND..."); } //$NON-NLS-1$ + consumeBinaryExpressionWithName(OperatorIds.AND_AND); + break; - case 884 : if (DEBUG) { System.out.println("ConditionalOrExpression_NotName ::=..."); } //$NON-NLS-1$ - consumeBinaryExpression(OperatorIds.OR_OR); - break; + case 886 : if (DEBUG) { System.out.println("ConditionalOrExpression_NotName ::=..."); } //$NON-NLS-1$ + consumeBinaryExpression(OperatorIds.OR_OR); + break; - case 885 : if (DEBUG) { System.out.println("ConditionalOrExpression_NotName ::= Name OR_OR..."); } //$NON-NLS-1$ - consumeBinaryExpressionWithName(OperatorIds.OR_OR); - break; + case 887 : if (DEBUG) { System.out.println("ConditionalOrExpression_NotName ::= Name OR_OR..."); } //$NON-NLS-1$ + consumeBinaryExpressionWithName(OperatorIds.OR_OR); + break; - case 887 : if (DEBUG) { System.out.println("ConditionalExpression_NotName ::=..."); } //$NON-NLS-1$ - consumeConditionalExpression(OperatorIds.QUESTIONCOLON) ; - break; + case 889 : if (DEBUG) { System.out.println("ConditionalExpression_NotName ::=..."); } //$NON-NLS-1$ + consumeConditionalExpression(OperatorIds.QUESTIONCOLON) ; + break; - case 888 : if (DEBUG) { System.out.println("ConditionalExpression_NotName ::= Name QUESTION..."); } //$NON-NLS-1$ - consumeConditionalExpressionWithName(OperatorIds.QUESTIONCOLON) ; - break; + case 890 : if (DEBUG) { System.out.println("ConditionalExpression_NotName ::= Name QUESTION..."); } //$NON-NLS-1$ + consumeConditionalExpressionWithName(OperatorIds.QUESTIONCOLON) ; + break; - case 892 : if (DEBUG) { System.out.println("AnnotationTypeDeclarationHeaderName ::= Modifiers AT..."); } //$NON-NLS-1$ - consumeAnnotationTypeDeclarationHeaderName() ; - break; + case 894 : if (DEBUG) { System.out.println("AnnotationTypeDeclarationHeaderName ::= Modifiers AT..."); } //$NON-NLS-1$ + consumeAnnotationTypeDeclarationHeaderName() ; + break; - case 893 : if (DEBUG) { System.out.println("AnnotationTypeDeclarationHeaderName ::= Modifiers AT..."); } //$NON-NLS-1$ - consumeAnnotationTypeDeclarationHeaderNameWithTypeParameters() ; - break; + case 895 : if (DEBUG) { System.out.println("AnnotationTypeDeclarationHeaderName ::= Modifiers AT..."); } //$NON-NLS-1$ + consumeAnnotationTypeDeclarationHeaderNameWithTypeParameters() ; + break; - case 894 : if (DEBUG) { System.out.println("AnnotationTypeDeclarationHeaderName ::= AT..."); } //$NON-NLS-1$ - consumeAnnotationTypeDeclarationHeaderNameWithTypeParameters() ; - break; + case 896 : if (DEBUG) { System.out.println("AnnotationTypeDeclarationHeaderName ::= AT..."); } //$NON-NLS-1$ + consumeAnnotationTypeDeclarationHeaderNameWithTypeParameters() ; + break; - case 895 : if (DEBUG) { System.out.println("AnnotationTypeDeclarationHeaderName ::= AT..."); } //$NON-NLS-1$ - consumeAnnotationTypeDeclarationHeaderName() ; - break; + case 897 : if (DEBUG) { System.out.println("AnnotationTypeDeclarationHeaderName ::= AT..."); } //$NON-NLS-1$ + consumeAnnotationTypeDeclarationHeaderName() ; + break; - case 896 : if (DEBUG) { System.out.println("AnnotationTypeDeclarationHeader ::=..."); } //$NON-NLS-1$ - consumeAnnotationTypeDeclarationHeader() ; - break; + case 898 : if (DEBUG) { System.out.println("AnnotationTypeDeclarationHeader ::=..."); } //$NON-NLS-1$ + consumeAnnotationTypeDeclarationHeader() ; + break; - case 897 : if (DEBUG) { System.out.println("AnnotationTypeDeclaration ::=..."); } //$NON-NLS-1$ - consumeAnnotationTypeDeclaration() ; - break; + case 899 : if (DEBUG) { System.out.println("AnnotationTypeDeclaration ::=..."); } //$NON-NLS-1$ + consumeAnnotationTypeDeclaration() ; + break; - case 899 : if (DEBUG) { System.out.println("AnnotationTypeMemberDeclarationsopt ::="); } //$NON-NLS-1$ - consumeEmptyAnnotationTypeMemberDeclarationsopt() ; - break; + case 901 : if (DEBUG) { System.out.println("AnnotationTypeMemberDeclarationsopt ::="); } //$NON-NLS-1$ + consumeEmptyAnnotationTypeMemberDeclarationsopt() ; + break; - case 900 : if (DEBUG) { System.out.println("AnnotationTypeMemberDeclarationsopt ::= NestedType..."); } //$NON-NLS-1$ - consumeAnnotationTypeMemberDeclarationsopt() ; - break; + case 902 : if (DEBUG) { System.out.println("AnnotationTypeMemberDeclarationsopt ::= NestedType..."); } //$NON-NLS-1$ + consumeAnnotationTypeMemberDeclarationsopt() ; + break; - case 902 : if (DEBUG) { System.out.println("AnnotationTypeMemberDeclarations ::=..."); } //$NON-NLS-1$ - consumeAnnotationTypeMemberDeclarations() ; - break; + case 904 : if (DEBUG) { System.out.println("AnnotationTypeMemberDeclarations ::=..."); } //$NON-NLS-1$ + consumeAnnotationTypeMemberDeclarations() ; + break; - case 903 : if (DEBUG) { System.out.println("AnnotationMethodHeaderName ::= Modifiersopt..."); } //$NON-NLS-1$ - consumeMethodHeaderNameWithTypeParameters(true); - break; + case 905 : if (DEBUG) { System.out.println("AnnotationMethodHeaderName ::= Modifiersopt..."); } //$NON-NLS-1$ + consumeMethodHeaderNameWithTypeParameters(true); + break; - case 904 : if (DEBUG) { System.out.println("AnnotationMethodHeaderName ::= Modifiersopt Type..."); } //$NON-NLS-1$ - consumeMethodHeaderName(true); - break; + case 906 : if (DEBUG) { System.out.println("AnnotationMethodHeaderName ::= Modifiersopt Type..."); } //$NON-NLS-1$ + consumeMethodHeaderName(true); + break; - case 905 : if (DEBUG) { System.out.println("AnnotationMethodHeaderDefaultValueopt ::="); } //$NON-NLS-1$ - consumeEmptyMethodHeaderDefaultValue() ; - break; + case 907 : if (DEBUG) { System.out.println("AnnotationMethodHeaderDefaultValueopt ::="); } //$NON-NLS-1$ + consumeEmptyMethodHeaderDefaultValue() ; + break; - case 906 : if (DEBUG) { System.out.println("AnnotationMethodHeaderDefaultValueopt ::= DefaultValue"); } //$NON-NLS-1$ - consumeMethodHeaderDefaultValue(); - break; + case 908 : if (DEBUG) { System.out.println("AnnotationMethodHeaderDefaultValueopt ::= DefaultValue"); } //$NON-NLS-1$ + consumeMethodHeaderDefaultValue(); + break; - case 907 : if (DEBUG) { System.out.println("AnnotationMethodHeader ::= AnnotationMethodHeaderName..."); } //$NON-NLS-1$ - consumeMethodHeader(); - break; + case 909 : if (DEBUG) { System.out.println("AnnotationMethodHeader ::= AnnotationMethodHeaderName..."); } //$NON-NLS-1$ + consumeMethodHeader(); + break; - case 908 : if (DEBUG) { System.out.println("AnnotationTypeMemberDeclaration ::=..."); } //$NON-NLS-1$ - consumeAnnotationTypeMemberDeclaration() ; - break; + case 910 : if (DEBUG) { System.out.println("AnnotationTypeMemberDeclaration ::=..."); } //$NON-NLS-1$ + consumeAnnotationTypeMemberDeclaration() ; + break; - case 916 : if (DEBUG) { System.out.println("AnnotationName ::= AT UnannotatableName"); } //$NON-NLS-1$ - consumeAnnotationName() ; - break; + case 918 : if (DEBUG) { System.out.println("AnnotationName ::= AT UnannotatableName"); } //$NON-NLS-1$ + consumeAnnotationName() ; + break; - case 917 : if (DEBUG) { System.out.println("NormalAnnotation ::= AnnotationName LPAREN..."); } //$NON-NLS-1$ - consumeNormalAnnotation(false) ; - break; + case 919 : if (DEBUG) { System.out.println("NormalAnnotation ::= AnnotationName LPAREN..."); } //$NON-NLS-1$ + consumeNormalAnnotation(false) ; + break; - case 918 : if (DEBUG) { System.out.println("MemberValuePairsopt ::="); } //$NON-NLS-1$ - consumeEmptyMemberValuePairsopt() ; - break; + case 920 : if (DEBUG) { System.out.println("MemberValuePairsopt ::="); } //$NON-NLS-1$ + consumeEmptyMemberValuePairsopt() ; + break; - case 921 : if (DEBUG) { System.out.println("MemberValuePairs ::= MemberValuePairs COMMA..."); } //$NON-NLS-1$ - consumeMemberValuePairs() ; - break; + case 923 : if (DEBUG) { System.out.println("MemberValuePairs ::= MemberValuePairs COMMA..."); } //$NON-NLS-1$ + consumeMemberValuePairs() ; + break; - case 922 : if (DEBUG) { System.out.println("MemberValuePair ::= SimpleName EQUAL EnterMemberValue..."); } //$NON-NLS-1$ - consumeMemberValuePair() ; - break; + case 924 : if (DEBUG) { System.out.println("MemberValuePair ::= SimpleName EQUAL EnterMemberValue..."); } //$NON-NLS-1$ + consumeMemberValuePair() ; + break; - case 923 : if (DEBUG) { System.out.println("EnterMemberValue ::="); } //$NON-NLS-1$ - consumeEnterMemberValue() ; - break; + case 925 : if (DEBUG) { System.out.println("EnterMemberValue ::="); } //$NON-NLS-1$ + consumeEnterMemberValue() ; + break; - case 924 : if (DEBUG) { System.out.println("ExitMemberValue ::="); } //$NON-NLS-1$ - consumeExitMemberValue() ; - break; + case 926 : if (DEBUG) { System.out.println("ExitMemberValue ::="); } //$NON-NLS-1$ + consumeExitMemberValue() ; + break; - case 926 : if (DEBUG) { System.out.println("MemberValue ::= Name"); } //$NON-NLS-1$ - consumeMemberValueAsName() ; - break; + case 928 : if (DEBUG) { System.out.println("MemberValue ::= Name"); } //$NON-NLS-1$ + consumeMemberValueAsName() ; + break; - case 929 : if (DEBUG) { System.out.println("MemberValueArrayInitializer ::=..."); } //$NON-NLS-1$ - consumeMemberValueArrayInitializer() ; - break; + case 931 : if (DEBUG) { System.out.println("MemberValueArrayInitializer ::=..."); } //$NON-NLS-1$ + consumeMemberValueArrayInitializer() ; + break; - case 930 : if (DEBUG) { System.out.println("MemberValueArrayInitializer ::=..."); } //$NON-NLS-1$ - consumeMemberValueArrayInitializer() ; - break; + case 932 : if (DEBUG) { System.out.println("MemberValueArrayInitializer ::=..."); } //$NON-NLS-1$ + consumeMemberValueArrayInitializer() ; + break; - case 931 : if (DEBUG) { System.out.println("MemberValueArrayInitializer ::=..."); } //$NON-NLS-1$ - consumeEmptyMemberValueArrayInitializer() ; - break; + case 933 : if (DEBUG) { System.out.println("MemberValueArrayInitializer ::=..."); } //$NON-NLS-1$ + consumeEmptyMemberValueArrayInitializer() ; + break; - case 932 : if (DEBUG) { System.out.println("MemberValueArrayInitializer ::=..."); } //$NON-NLS-1$ - consumeEmptyMemberValueArrayInitializer() ; - break; + case 934 : if (DEBUG) { System.out.println("MemberValueArrayInitializer ::=..."); } //$NON-NLS-1$ + consumeEmptyMemberValueArrayInitializer() ; + break; - case 933 : if (DEBUG) { System.out.println("EnterMemberValueArrayInitializer ::="); } //$NON-NLS-1$ - consumeEnterMemberValueArrayInitializer() ; - break; + case 935 : if (DEBUG) { System.out.println("EnterMemberValueArrayInitializer ::="); } //$NON-NLS-1$ + consumeEnterMemberValueArrayInitializer() ; + break; - case 935 : if (DEBUG) { System.out.println("MemberValues ::= MemberValues COMMA MemberValue"); } //$NON-NLS-1$ - consumeMemberValues() ; - break; + case 937 : if (DEBUG) { System.out.println("MemberValues ::= MemberValues COMMA MemberValue"); } //$NON-NLS-1$ + consumeMemberValues() ; + break; - case 936 : if (DEBUG) { System.out.println("MarkerAnnotation ::= AnnotationName"); } //$NON-NLS-1$ - consumeMarkerAnnotation(false) ; - break; + case 938 : if (DEBUG) { System.out.println("MarkerAnnotation ::= AnnotationName"); } //$NON-NLS-1$ + consumeMarkerAnnotation(false) ; + break; - case 937 : if (DEBUG) { System.out.println("SingleMemberAnnotationMemberValue ::= MemberValue"); } //$NON-NLS-1$ - consumeSingleMemberAnnotationMemberValue() ; - break; + case 939 : if (DEBUG) { System.out.println("SingleMemberAnnotationMemberValue ::= MemberValue"); } //$NON-NLS-1$ + consumeSingleMemberAnnotationMemberValue() ; + break; - case 938 : if (DEBUG) { System.out.println("SingleMemberAnnotation ::= AnnotationName LPAREN..."); } //$NON-NLS-1$ - consumeSingleMemberAnnotation(false) ; - break; + case 940 : if (DEBUG) { System.out.println("SingleMemberAnnotation ::= AnnotationName LPAREN..."); } //$NON-NLS-1$ + consumeSingleMemberAnnotation(false) ; + break; - case 939 : if (DEBUG) { System.out.println("RecoveryMethodHeaderName ::= Modifiersopt TypeParameters"); } //$NON-NLS-1$ - consumeRecoveryMethodHeaderNameWithTypeParameters(); - break; + case 941 : if (DEBUG) { System.out.println("RecoveryMethodHeaderName ::= Modifiersopt TypeParameters"); } //$NON-NLS-1$ + consumeRecoveryMethodHeaderNameWithTypeParameters(); + break; - case 940 : if (DEBUG) { System.out.println("RecoveryMethodHeaderName ::= Modifiersopt Type..."); } //$NON-NLS-1$ - consumeRecoveryMethodHeaderName(); - break; + case 942 : if (DEBUG) { System.out.println("RecoveryMethodHeaderName ::= Modifiersopt Type..."); } //$NON-NLS-1$ + consumeRecoveryMethodHeaderName(); + break; - case 941 : if (DEBUG) { System.out.println("RecoveryMethodHeaderName ::= ModifiersWithDefault..."); } //$NON-NLS-1$ - consumeRecoveryMethodHeaderNameWithTypeParameters(); - break; + case 943 : if (DEBUG) { System.out.println("RecoveryMethodHeaderName ::= ModifiersWithDefault..."); } //$NON-NLS-1$ + consumeRecoveryMethodHeaderNameWithTypeParameters(); + break; - case 942 : if (DEBUG) { System.out.println("RecoveryMethodHeaderName ::= ModifiersWithDefault Type"); } //$NON-NLS-1$ - consumeRecoveryMethodHeaderName(); - break; + case 944 : if (DEBUG) { System.out.println("RecoveryMethodHeaderName ::= ModifiersWithDefault Type"); } //$NON-NLS-1$ + consumeRecoveryMethodHeaderName(); + break; - case 943 : if (DEBUG) { System.out.println("RecoveryMethodHeader ::= RecoveryMethodHeaderName..."); } //$NON-NLS-1$ - consumeMethodHeader(); - break; + case 945 : if (DEBUG) { System.out.println("RecoveryMethodHeader ::= RecoveryMethodHeaderName..."); } //$NON-NLS-1$ + consumeMethodHeader(); + break; - case 944 : if (DEBUG) { System.out.println("RecoveryMethodHeader ::= RecoveryMethodHeaderName..."); } //$NON-NLS-1$ - consumeMethodHeader(); - break; + case 946 : if (DEBUG) { System.out.println("RecoveryMethodHeader ::= RecoveryMethodHeaderName..."); } //$NON-NLS-1$ + consumeMethodHeader(); + break; - } } +} // END_AUTOGENERATED_REGION_CONSUME_RULE diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/ParserBasicInformation.java b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/ParserBasicInformation.java index 6e8269c979b..8e0eeb878ca 100644 --- a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/ParserBasicInformation.java +++ b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/ParserBasicInformation.java @@ -22,20 +22,20 @@ public interface ParserBasicInformation { ERROR_SYMBOL = 138, MAX_NAME_LENGTH = 53, - NUM_STATES = 1237, + NUM_STATES = 1251, NT_OFFSET = 138, SCOPE_UBOUND = 321, SCOPE_SIZE = 322, - LA_STATE_OFFSET = 18335, + LA_STATE_OFFSET = 18452, MAX_LA = 1, - NUM_RULES = 944, + NUM_RULES = 946, NUM_TERMINALS = 138, - NUM_NON_TERMINALS = 436, - NUM_SYMBOLS = 574, - START_STATE = 1266, - EOFT_SYMBOL = 64, - EOLT_SYMBOL = 64, - ACCEPT_ACTION = 18334, - ERROR_ACTION = 18335; + NUM_NON_TERMINALS = 437, + NUM_SYMBOLS = 575, + START_STATE = 1004, + EOFT_SYMBOL = 37, + EOLT_SYMBOL = 37, + ACCEPT_ACTION = 18451, + ERROR_ACTION = 18452; } diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/TerminalTokens.java b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/TerminalTokens.java index c716f1d6e7c..fec7231b577 100644 --- a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/TerminalTokens.java +++ b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/TerminalTokens.java @@ -72,7 +72,7 @@ static int getRestrictedKeyword(String text) { // BEGIN_AUTOGENERATED_REGION int TokenNameIdentifier = 19, - TokenNameabstract = 42, + TokenNameabstract = 43, TokenNameassert = 81, TokenNameboolean = 105, TokenNamebreak = 82, @@ -86,11 +86,11 @@ static int getRestrictedKeyword(String text) { TokenNamedefault = 76, TokenNamedo = 84, TokenNamedouble = 109, - TokenNameelse = 121, + TokenNameelse = 120, TokenNameenum = 74, TokenNameextends = 92, - TokenNamefalse = 52, - TokenNamefinal = 43, + TokenNamefalse = 53, + TokenNamefinal = 44, TokenNamefinally = 116, TokenNamefloat = 110, TokenNamefor = 85, @@ -100,34 +100,34 @@ static int getRestrictedKeyword(String text) { TokenNameimport = 111, TokenNameinstanceof = 17, TokenNameint = 112, - TokenNameinterface = 73, + TokenNameinterface = 71, TokenNamelong = 113, - TokenNamenative = 44, + TokenNamenative = 45, TokenNamenew = 38, - TokenNamenon_sealed = 45, - TokenNamenull = 53, + TokenNamenon_sealed = 46, + TokenNamenull = 54, TokenNamepackage = 90, - TokenNameprivate = 46, - TokenNameprotected = 47, - TokenNamepublic = 48, + TokenNameprivate = 47, + TokenNameprotected = 48, + TokenNamepublic = 49, TokenNamereturn = 87, TokenNameshort = 114, - TokenNamestatic = 37, - TokenNamestrictfp = 49, + TokenNamestatic = 39, + TokenNamestrictfp = 50, TokenNamesuper = 34, - TokenNameswitch = 63, - TokenNamesynchronized = 39, + TokenNameswitch = 64, + TokenNamesynchronized = 41, TokenNamethis = 35, TokenNamethrow = 78, TokenNamethrows = 117, - TokenNametransient = 50, - TokenNametrue = 54, + TokenNametransient = 51, + TokenNametrue = 55, TokenNametry = 88, TokenNamevoid = 115, - TokenNamevolatile = 51, + TokenNamevolatile = 52, TokenNamewhile = 79, TokenNamemodule = 118, - TokenNameopen = 119, + TokenNameopen = 121, TokenNamerequires = 122, TokenNametransitive = 128, TokenNameexports = 123, @@ -136,13 +136,13 @@ static int getRestrictedKeyword(String text) { TokenNameuses = 125, TokenNameprovides = 126, TokenNamewith = 135, - TokenNameIntegerLiteral = 55, - TokenNameLongLiteral = 56, - TokenNameFloatingPointLiteral = 57, - TokenNameDoubleLiteral = 58, - TokenNameCharacterLiteral = 59, - TokenNameStringLiteral = 60, - TokenNameTextBlock = 61, + TokenNameIntegerLiteral = 56, + TokenNameLongLiteral = 57, + TokenNameFloatingPointLiteral = 58, + TokenNameDoubleLiteral = 59, + TokenNameCharacterLiteral = 60, + TokenNameStringLiteral = 61, + TokenNameTextBlock = 62, TokenNamePLUS_PLUS = 2, TokenNameMINUS_MINUS = 3, TokenNameEQUAL_EQUAL = 20, @@ -169,7 +169,7 @@ static int getRestrictedKeyword(String text) { TokenNameMINUS = 5, TokenNameNOT = 66, TokenNameREMAINDER = 9, - TokenNameXOR = 25, + TokenNameXOR = 24, TokenNameAND = 22, TokenNameMULTIPLY = 8, TokenNameOR = 28, @@ -178,35 +178,35 @@ static int getRestrictedKeyword(String text) { TokenNameGREATER = 15, TokenNameLESS = 11, TokenNameLPAREN = 23, - TokenNameRPAREN = 26, + TokenNameRPAREN = 25, TokenNameLBRACE = 40, TokenNameRBRACE = 33, TokenNameLBRACKET = 6, TokenNameRBRACKET = 69, - TokenNameSEMICOLON = 24, + TokenNameSEMICOLON = 26, TokenNameQUESTION = 29, TokenNameCOLON = 65, TokenNameCOMMA = 32, TokenNameDOT = 1, TokenNameEQUAL = 77, TokenNameAT = 36, - TokenNameELLIPSIS = 120, + TokenNameELLIPSIS = 119, TokenNameARROW = 104, TokenNameCOLON_COLON = 7, - TokenNameBeginLambda = 62, + TokenNameBeginLambda = 63, TokenNameBeginIntersectionCast = 68, TokenNameBeginTypeArguments = 89, - TokenNameElidedSemicolonAndRightBrace = 71, + TokenNameElidedSemicolonAndRightBrace = 72, TokenNameAT308 = 27, TokenNameAT308DOTDOTDOT = 129, - TokenNameBeginCaseExpr = 72, + TokenNameBeginCaseExpr = 73, TokenNameRestrictedIdentifierYield = 80, TokenNameRestrictedIdentifierrecord = 75, - TokenNameRestrictedIdentifiersealed = 41, + TokenNameRestrictedIdentifiersealed = 42, TokenNameRestrictedIdentifierpermits = 127, TokenNameBeginCaseElement = 130, TokenNameRestrictedIdentifierWhen = 131, TokenNameBeginRecordPattern = 132, - TokenNameEOF = 64, + TokenNameEOF = 37, TokenNameERROR = 138; } diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser1.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser1.rsc index 4de015e0f03..d68a34097ee 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser1.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser1.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser12.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser12.rsc index a1a252e7119..3ea97410b67 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser12.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser12.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser13.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser13.rsc index bd876e4e89a..16623f02d3b 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser13.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser13.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser14.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser14.rsc index 86e8702431b..0d332cfc533 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser14.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser14.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser15.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser15.rsc index 2fde095a2ce..ac7f93f554f 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser15.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser15.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser16.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser16.rsc index 1e242823f0a..4f0b9085338 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser16.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser16.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser17.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser17.rsc index f25f52cb30e..1da4c01702e 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser17.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser17.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser18.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser18.rsc index d3a92025ff6..9b5bffcd27f 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser18.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser18.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser19.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser19.rsc index 3c1553e304a..1120d18dd3d 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser19.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser19.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser2.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser2.rsc index 6ed5eaf97bc..3aa66dc84e7 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser2.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser2.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser20.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser20.rsc index 833f51491a5..00aa7eb0222 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser20.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser20.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser21.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser21.rsc index fa3e0be3a11..b0b2584bed9 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser21.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser21.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser22.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser22.rsc index 1122a50cd49..0eb53d2a899 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser22.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser22.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser23.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser23.rsc index ad1f0861252..b83c9513ebf 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser23.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser23.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser24.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser24.rsc index 5692b53ac77..cef565feaf0 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser24.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser24.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser3.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser3.rsc index a6dbaf3c66e..59219bfebf1 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser3.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser3.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser4.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser4.rsc index 41fb462e77d..52f57318dbe 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser4.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser4.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser5.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser5.rsc index 73de395ca12..0a252c70992 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser5.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser5.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser6.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser6.rsc index 310a527417e..3a1329251a9 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser6.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser6.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser7.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser7.rsc index 6b889a688c5..156f985275b 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser7.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser7.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser8.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser8.rsc index 27c2af77bb3..d52e6fdfbd6 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser8.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser8.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser9.rsc b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser9.rsc index fdc760e22eb..4d0f18e8c7e 100644 Binary files a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser9.rsc and b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/parser9.rsc differ diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/readableNames.props b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/readableNames.props index 1d6248b1c57..f857890ffab 100644 --- a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/readableNames.props +++ b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/parser/readableNames.props @@ -380,6 +380,7 @@ UnaryExpressionNotPlusMinus=Expression UnaryExpressionNotPlusMinus_NotName=Expression UnaryExpression_NotName=Expression UnionType=UnionType +UnnamedClassBodyDeclarations=UnnamedClassBodyDeclarations UnqualifiedClassBodyopt=ClassBody UnqualifiedEnterAnonymousClassBody=EnterAnonymousClassBody VariableArityRecordComponent=VariableArityRecordComponent diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.java b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.java index e7f89c084c6..b2e92f08b96 100644 --- a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.java +++ b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.java @@ -12502,4 +12502,22 @@ public boolean scheduleProblemForContext(Runnable problemComputation) { public void close() { this.referenceContext = null; } + +public void unnamedClassMustHaveMainMethod() { + this.handle( + IProblem.unnamedIsMissingMainMethod, + NoArgument, + NoArgument, + 0, + 0); +} + +public void unnamedClassRequireJava21andPreview() { + this.handle( + IProblem.unnamedRequiresJava21, + NoArgument, + NoArgument, + 0, + 0); +} } \ No newline at end of file diff --git a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/problem/messages.properties b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/problem/messages.properties index fbb7c33afa3..ca9ec504f33 100644 --- a/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/problem/messages.properties +++ b/org.eclipse.jdt.core.compiler.batch/src/org/eclipse/jdt/internal/compiler/problem/messages.properties @@ -1154,6 +1154,8 @@ 1916 = A case label guard cannot have a constant expression with value as 'false' 1940 = Cannot infer record pattern types for {0} 1941 = Syntax error, record patterns are not allowed here +1942 = unnamed class does not have main method in the form of void main() or void main(String[] args) +1943 = Unnamed class requires Java 21 and preview features 1990 = Access to {1}({2}) from the type {0} is emulated by a synthetic accessor method diff --git a/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/parser/JEP445UnnamedClassTest.java b/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/parser/JEP445UnnamedClassTest.java new file mode 100644 index 00000000000..7ab9a380a3d --- /dev/null +++ b/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/parser/JEP445UnnamedClassTest.java @@ -0,0 +1,90 @@ +/******************************************************************************* + * Copyright (c) 2023 Red Hat, Inc. and others. + * + * This program and the accompanying materials + * are made available under the terms of the Eclipse Public License 2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + *******************************************************************************/ +package org.eclipse.jdt.core.tests.compiler.parser; + +import java.util.Locale; +import java.util.stream.Stream; + +import org.eclipse.jdt.core.tests.util.AbstractCompilerTest; +import org.eclipse.jdt.internal.compiler.CompilationResult; +import org.eclipse.jdt.internal.compiler.DefaultErrorHandlingPolicies; +import org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration; +import org.eclipse.jdt.internal.compiler.ast.MethodDeclaration; +import org.eclipse.jdt.internal.compiler.ast.UnnamedClass; +import org.eclipse.jdt.internal.compiler.batch.CompilationUnit; +import org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants; +import org.eclipse.jdt.internal.compiler.env.ICompilationUnit; +import org.eclipse.jdt.internal.compiler.impl.CompilerOptions; +import org.eclipse.jdt.internal.compiler.parser.Parser; +import org.eclipse.jdt.internal.compiler.problem.DefaultProblemFactory; +import org.eclipse.jdt.internal.compiler.problem.ProblemReporter; +import org.junit.Test; + +public class JEP445UnnamedClassTest extends AbstractCompilerTest { + public static boolean optimizeStringLiterals = false; + public static long sourceLevel = ClassFileConstants.JDK21; //$NON-NLS-1$ + + public JEP445UnnamedClassTest(String testName){ + super(testName); + } + + private CompilationUnitDeclaration parse(String source, String testName) { + this.complianceLevel = ClassFileConstants.JDK21; + /* using regular parser in DIET mode */ + CompilerOptions options = new CompilerOptions(getCompilerOptions()); + options.enablePreviewFeatures = true; + Parser parser = + new Parser( + new ProblemReporter( + DefaultErrorHandlingPolicies.proceedWithAllProblems(), + options, + new DefaultProblemFactory(Locale.getDefault())), + optimizeStringLiterals); + ICompilationUnit sourceUnit = new CompilationUnit(source.toCharArray(), testName, null); + CompilationResult compilationResult = new CompilationResult(sourceUnit, 0, 0, 0); + return parser.parse(sourceUnit, compilationResult); + } + + private UnnamedClass unnamedClass(CompilationUnitDeclaration cu) { + return cu == null || cu.types == null ? null : + Stream.of(cu.types).filter(UnnamedClass.class::isInstance).map(UnnamedClass.class::cast).findAny().orElse(null); + } + + @Test + public void testParseExplicitClass() { + CompilationUnitDeclaration res = parse("public class A {}", "A.java"); + assertFalse(res.compilationResult.hasErrors()); + assertNull(unnamedClass(res)); + } + + @Test + public void testParseOnlyMain() { + CompilationUnitDeclaration res = parse("void main() {}", "A.java"); + assertFalse(res.hasErrors()); + UnnamedClass unnamedClass = unnamedClass(res); + assertNotNull(unnamedClass); + assertTrue(Stream.of(unnamedClass.methods).anyMatch(m -> m instanceof MethodDeclaration method && "main".equals(new String(method.selector)))); + // should generated A.class (unnamed) + } + + @Test + public void testParseMixedMethodAndTypes() { + CompilationUnitDeclaration res = parse(""" + void hello() {} + public class B {} + void main() {} + """, "A.java"); + assertFalse(res.compilationResult.hasErrors()); + assertEquals(3 /*include constructor*/, unnamedClass(res).methods.length); + // should generated A.class (unnamed) and A$B.class + // + } +} diff --git a/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/parser/TestAll.java b/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/parser/TestAll.java index f65865550b9..0b583e18dc8 100644 --- a/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/parser/TestAll.java +++ b/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/parser/TestAll.java @@ -254,6 +254,18 @@ public static TestSuite getTestSuite(boolean addComplianceDiagnoseTest) { TestCase.RUN_ONLY_ID = null; all.addTest(AbstractCompilerTest.buildComplianceTestSuite(ClassFileConstants.getComplianceLevelForJavaVersion(ClassFileConstants.MAJOR_VERSION_19), tests_19)); } + if ((possibleComplianceLevels & AbstractCompilerTest.F_21) != 0) { + ArrayList tests_21 = (ArrayList)testClasses.clone(); + tests_21.add(JEP445UnnamedClassTest.class); + addJava16Tests(tests_21); + // Reset forgotten subsets tests + TestCase.TESTS_PREFIX = null; + TestCase.TESTS_NAMES = null; + TestCase.TESTS_NUMBERS= null; + TestCase.TESTS_RANGE = null; + TestCase.RUN_ONLY_ID = null; + all.addTest(AbstractCompilerTest.buildComplianceTestSuite(ClassFileConstants.getComplianceLevelForJavaVersion(ClassFileConstants.MAJOR_VERSION_21), tests_21)); + } return all; } diff --git a/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/BatchCompilerTest_21.java b/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/BatchCompilerTest_21.java new file mode 100644 index 00000000000..1c203ba41b2 --- /dev/null +++ b/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/BatchCompilerTest_21.java @@ -0,0 +1,157 @@ +/******************************************************************************* + * Copyright (c) 2023 Red Hat, Inc. and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * SPDX-License-Identifier: EPL-2.0 + *******************************************************************************/ +package org.eclipse.jdt.core.tests.compiler.regression; + +import java.io.File; + +import junit.framework.Test; + +public class BatchCompilerTest_21 extends AbstractBatchCompilerTest { + + /** + * This test suite only needs to be run on one compliance. + * + * @see TestAll + */ + public static Test suite() { + return buildMinimalComplianceTestSuite(testClass(), F_21); + } + + public static Class testClass() { + return BatchCompilerTest_21.class; + } + + public BatchCompilerTest_21(String name) { + super(name); + } + + public void testJEP445() throws Exception { + this.runConformTest( + new String[] { + "src/X.java", + """ + void main() {hello();} + void hello() {new Y().hello();} + class Y { + public void hello() { + System.out.print("hello"); + } + } + """ + }, + '"' + OUTPUT_DIR + File.separator + "src/X.java" + '"' + + " -sourcepath " + '"' + OUTPUT_DIR + File.separator + "src" + '"' + + " --enable-preview -source 21 -warn:none" + + " -d " + '"' + OUTPUT_DIR + File.separator + "bin" + '"', + "", + "", + true); + File targetDir = new File(OUTPUT_DIR + File.separator + "bin"); + assertTrue(new File(targetDir, "X.class").isFile()); + assertTrue(new File(targetDir, "X$Y.class").isFile()); + this.verifier.execute("X", new String[] {targetDir.getAbsolutePath()}, new String[0], new String[] {"--enable-preview"}); + assertEquals("Incorrect output", "hello", this.verifier.getExecutionOutput()); + } + + public void testCannotResolveName() throws Exception { + this.runNegativeTest( + new String[] { + "src/X.java", + """ + void main() {new X().hello();} + void hello() {System.out.print("hello");} + """ + }, + '"' + OUTPUT_DIR + File.separator + "src/X.java" + '"' + + " -sourcepath " + '"' + OUTPUT_DIR + File.separator + "src" + '"' + + " --enable-preview -source 21 -warn:none" + + " -d " + '"' + OUTPUT_DIR + File.separator + "bin" + '"', + "", + """ + ---------- + 1. ERROR in ---OUTPUT_DIR_PLACEHOLDER---/src/X.java (at line 1) + void main() {new X().hello();} + ^ + The type X is not accessible + ---------- + 1 problem (1 error) + """ + /* javac says: + X.java:1: error: cannot find symbol + void main(){new X().toString();} + ^ + symbol: class X + location: class X*/, + true); + } + + public void testWithoutMain() throws Exception { + this.runNegativeTest( + new String[] { + "src/X.java", + """ + void hello() {System.out.print("hello");} + """ + }, + '"' + OUTPUT_DIR + File.separator + "src/X.java" + '"' + + " -sourcepath " + '"' + OUTPUT_DIR + File.separator + "src" + '"' + + " --enable-preview -source 21 -warn:none" + + " -d " + '"' + OUTPUT_DIR + File.separator + "bin" + '"', + "", + """ + ---------- + 1. ERROR in ---OUTPUT_DIR_PLACEHOLDER---/src/X.java (at line 1) + void hello() {System.out.print("hello");} + ^ + unnamed class does not have main method in the form of void main() or void main(String[] args) + ---------- + 1 problem (1 error) + """ + /* javac says: + X.java:1: error: unnamed class does not have main method in the form of void main() or void main(String[] args) + void hello(){} + ^ + */, + true); + } + + + public void testRedefineUnnamed() { + this.runNegativeTest( + new String[] { "src/X.java", + """ + public class X {} + void main() {} + """ }, + '"' + OUTPUT_DIR + File.separator + "src/X.java" + '"' + + " -sourcepath " + '"' + OUTPUT_DIR + File.separator + "src" + '"' + + " --enable-preview -source 21 -warn:none" + + " -d " + '"' + OUTPUT_DIR + File.separator + "bin" + '"', + "", + """ + ---------- + 1. ERROR in ---OUTPUT_DIR_PLACEHOLDER---/src/X.java (at line 1) + public class X {} + ^ + The type X is already defined + ---------- + 1 problem (1 error) + """ + /* javac says: + X.java:1: error: class X is already defined in package unnamed package + public class X { + ^ + 1 error + error: compilation failed + */, + true); + } + +}