if ((_tokenSet_2.member(LA(1))) && (_tokenSet_3.member(LA(2)))) { modifiers=jModifiers();
if ((_tokenSet_2.member(LA(1))) && (_tokenSet_3.member(LA(2)))) { modifiers=jModifiers(); { switch ( LA(1)) { case LITERAL_class: { decl=jClassDefinition(modifiers); if ( inputState.guessing==0 ) { context.addInnerDeclaration(decl); } break; } case LITERAL_interface: { decl=jInterfaceDefinition(modifiers); if ( inputState.guessing==0 ) { context.addInnerDeclaration(decl); } break; } default: if ((LA(1)==IDENT) && (LA(2)==LPAREN)) { method=jConstructorDefinition(modifiers); if ( inputState.guessing==0 ) { context.addMethodDeclaration(method); } } else if ((_tokenSet_4.member(LA(1))) && (_tokenSet_5.member(LA(2)))) { type=jTypeSpec();
	private final void jMember(		CParseClassContext context	) throws RecognitionException, TokenStreamException {						int				modifiers = 0;		CType				type;		JMethodDeclaration		method;		JTypeDeclaration		decl;		JVariableDefinition[]		vars;		JStatement[]			body = null;		TokenReference		sourceRef = buildTokenReference();						if ((_tokenSet_2.member(LA(1))) && (_tokenSet_3.member(LA(2)))) {			modifiers=jModifiers();			{			switch ( LA(1)) {			case LITERAL_class:			{				decl=jClassDefinition(modifiers);				if ( inputState.guessing==0 ) {					context.addInnerDeclaration(decl);				}				break;			}			case LITERAL_interface:			{				decl=jInterfaceDefinition(modifiers);				if ( inputState.guessing==0 ) {					context.addInnerDeclaration(decl);				}				break;			}			default:				if ((LA(1)==IDENT) && (LA(2)==LPAREN)) {					method=jConstructorDefinition(modifiers);					if ( inputState.guessing==0 ) {						context.addMethodDeclaration(method);					}				}				else if ((_tokenSet_4.member(LA(1))) && (_tokenSet_5.member(LA(2)))) {					type=jTypeSpec();					{					if ((LA(1)==IDENT) && (LA(2)==LPAREN)) {						method=jMethodDefinition(modifiers, type);						if ( inputState.guessing==0 ) {							context.addMethodDeclaration(method);						}					}					else if ((LA(1)==IDENT) && (_tokenSet_6.member(LA(2)))) {						vars=jVariableDefinitions(modifiers, type);						match(SEMI);						if ( inputState.guessing==0 ) {															  for (int i = 0; i < vars.length; i++) {								    context.addFieldDeclaration(new JFieldDeclaration(sourceRef,														      vars[i],														      getJavadocComment(),														      getStatementComment()));								  }														}					}					else {						throw new NoViableAltException(LT(1), getFilename());					}										}				}			else {				throw new NoViableAltException(LT(1), getFilename());			}			}			}		}		else if ((LA(1)==LITERAL_static) && (LA(2)==LCURLY)) {			match(LITERAL_static);			body=jCompoundStatement();			if ( inputState.guessing==0 ) {				context.addBlockInitializer(new JClassBlock(sourceRef, true, body));			}		}		else if ((LA(1)==LCURLY)) {			body=jCompoundStatement();			if ( inputState.guessing==0 ) {				context.addBlockInitializer(new JClassBlock(sourceRef, false, body));			}		}		else {			throw new NoViableAltException(LT(1), getFilename());		}			}