| /* Generated By:JavaCC: Do not edit this line. EmfaticParser.java */ |
| package org.eclipse.emf.emfatic.core.lang.gen.parser; |
| |
| import org.eclipse.emf.emfatic.core.lang.gen.ast.*; |
| import org.eclipse.gymnast.runtime.core.ast.*; |
| |
| public class EmfaticParser implements EmfaticParserConstants { |
| |
| public TokenInfo createTokenInfo(Token tok) { |
| if (!(tok instanceof ExtToken)) return null; |
| |
| ExtToken extToken = (ExtToken) tok; |
| return new TokenInfo(tok.image, extToken.tokenOffset, tok.kind); |
| } |
| |
| final public CompUnit compUnit() throws ParseException { |
| CompUnit retVal = null; |
| PackageDecl packageDecl = null; |
| ImportStmts importStmts = null; |
| TopLevelDecls topLevelDecls = null; |
| packageDecl = packageDecl(); |
| importStmts = importStmts(); |
| topLevelDecls = topLevelDecls(); |
| jj_consume_token(0); |
| retVal = new CompUnit(packageDecl, importStmts, topLevelDecls); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public PackageDecl packageDecl() throws ParseException { |
| PackageDecl retVal = null; |
| Annotations annotations = null; |
| Token package_KW = null; |
| QualifiedID name = null; |
| Token semi = null; |
| annotations = annotations(); |
| package_KW = jj_consume_token(PACKAGEKW); |
| name = qualifiedID(); |
| semi = jj_consume_token(SEMI); |
| retVal = new PackageDecl(annotations, createTokenInfo(package_KW), name, createTokenInfo(semi)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public QualifiedID qualifiedID() throws ParseException { |
| QualifiedID retVal = new QualifiedID(); |
| Token id1 = null; |
| QidSeparator qidSeparator = null; |
| Token idn = null; |
| id1 = jj_consume_token(ID); |
| retVal.addChild(createTokenInfo(id1)); |
| label_1: |
| while (true) { |
| if (jj_2_1(4)) { |
| ; |
| } else { |
| break label_1; |
| } |
| qidSeparator = qidSeparator(); |
| idn = jj_consume_token(ID); |
| retVal.addChild(qidSeparator); retVal.addChild(createTokenInfo(idn)); |
| } |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public QidSeparator qidSeparator() throws ParseException { |
| Token tok; |
| if (jj_2_2(4)) { |
| tok = jj_consume_token(DOT); |
| {if (true) return new QidSeparator (createTokenInfo(tok));} |
| } else if (jj_2_3(4)) { |
| tok = jj_consume_token(DOLLAR); |
| {if (true) return new QidSeparator (createTokenInfo(tok));} |
| } else { |
| jj_consume_token(-1); |
| throw new ParseException(); |
| } |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public StringLiteralOrQualifiedID stringLiteralOrQualifiedID() throws ParseException { |
| StringLiteralOrQualifiedID retVal = null; |
| if (jj_2_4(4)) { |
| retVal = stringLiteralContainer(); |
| {if (true) return retVal;} |
| } else if (jj_2_5(4)) { |
| retVal = qualifiedIDContainer(); |
| {if (true) return retVal;} |
| } else { |
| jj_consume_token(-1); |
| throw new ParseException(); |
| } |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public StringLiteralContainer stringLiteralContainer() throws ParseException { |
| StringLiteralContainer retVal = null; |
| Token string_literal = null; |
| string_literal = jj_consume_token(STRING_LITERAL); |
| retVal = new StringLiteralContainer(createTokenInfo(string_literal)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public QualifiedIDContainer qualifiedIDContainer() throws ParseException { |
| QualifiedIDContainer retVal = null; |
| QualifiedID qualifiedID = null; |
| qualifiedID = qualifiedID(); |
| retVal = new QualifiedIDContainer(qualifiedID); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public Annotations annotations() throws ParseException { |
| Annotations retVal = new Annotations(); |
| Annotation annotation = null; |
| label_2: |
| while (true) { |
| if (jj_2_6(4)) { |
| ; |
| } else { |
| break label_2; |
| } |
| annotation = annotation(); |
| retVal.addChild(annotation); |
| } |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public Annotation annotation() throws ParseException { |
| Annotation retVal = null; |
| Token at = null; |
| StringLiteralOrQualifiedID source = null; |
| Token lparen = null; |
| KeyEqualsValueList keyEqualsValueList = null; |
| Token rparen = null; |
| at = jj_consume_token(AT); |
| source = stringLiteralOrQualifiedID(); |
| lparen = jj_consume_token(LPAREN); |
| keyEqualsValueList = keyEqualsValueList(); |
| rparen = jj_consume_token(RPAREN); |
| retVal = new Annotation(createTokenInfo(at), source, createTokenInfo(lparen), keyEqualsValueList, createTokenInfo(rparen)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public KeyEqualsValueList keyEqualsValueList() throws ParseException { |
| KeyEqualsValueList retVal = new KeyEqualsValueList(); |
| KeyEqualsValue kv1 = null; |
| Token comma = null; |
| KeyEqualsValue kvn = null; |
| kv1 = keyEqualsValue(); |
| retVal.addChild(kv1); |
| label_3: |
| while (true) { |
| if (jj_2_7(4)) { |
| ; |
| } else { |
| break label_3; |
| } |
| comma = jj_consume_token(COMMA); |
| kvn = keyEqualsValue(); |
| retVal.addChild(createTokenInfo(comma)); retVal.addChild(kvn); |
| } |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public KeyEqualsValue keyEqualsValue() throws ParseException { |
| KeyEqualsValue retVal = null; |
| StringLiteralOrQualifiedID key = null; |
| Token equals = null; |
| StringLiteralOrQualifiedID value = null; |
| key = stringLiteralOrQualifiedID(); |
| equals = jj_consume_token(EQUALS); |
| value = stringLiteralOrQualifiedID(); |
| retVal = new KeyEqualsValue(key, createTokenInfo(equals), value); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public ImportStmts importStmts() throws ParseException { |
| ImportStmts retVal = new ImportStmts(); |
| ImportStmt importStmt = null; |
| label_4: |
| while (true) { |
| if (jj_2_8(4)) { |
| ; |
| } else { |
| break label_4; |
| } |
| importStmt = importStmt(); |
| retVal.addChild(importStmt); |
| } |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public ImportStmt importStmt() throws ParseException { |
| ImportStmt retVal = null; |
| Token import_KW = null; |
| Token alias = null; |
| Token equals = null; |
| StringLiteralOrQualifiedID uri = null; |
| Token semi = null; |
| import_KW = jj_consume_token(IMPORTKW); |
| if (jj_2_9(4)) { |
| alias = jj_consume_token(ID); |
| equals = jj_consume_token(EQUALS); |
| } else { |
| ; |
| } |
| uri = stringLiteralOrQualifiedID(); |
| semi = jj_consume_token(SEMI); |
| retVal = new ImportStmt(createTokenInfo(import_KW), createTokenInfo(alias), createTokenInfo(equals), uri, createTokenInfo(semi)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public TopLevelDecls topLevelDecls() throws ParseException { |
| TopLevelDecls retVal = new TopLevelDecls(); |
| TopLevelDecl topLevelDecl = null; |
| label_5: |
| while (true) { |
| if (jj_2_10(4)) { |
| ; |
| } else { |
| break label_5; |
| } |
| topLevelDecl = topLevelDecl(); |
| retVal.addChild(topLevelDecl); |
| } |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public TopLevelDecl topLevelDecl() throws ParseException { |
| TopLevelDecl retVal = null; |
| Annotations annotations = null; |
| annotations = annotations(); |
| if (jj_2_11(4)) { |
| retVal = subPackageDecl(annotations); |
| {if (true) return retVal;} |
| } else if (jj_2_12(4)) { |
| retVal = classDecl(annotations); |
| {if (true) return retVal;} |
| } else if (jj_2_13(4)) { |
| retVal = dataTypeDecl(annotations); |
| {if (true) return retVal;} |
| } else if (jj_2_14(4)) { |
| retVal = enumDecl(annotations); |
| {if (true) return retVal;} |
| } else if (jj_2_15(4)) { |
| retVal = mapEntryDecl(annotations); |
| {if (true) return retVal;} |
| } else { |
| jj_consume_token(-1); |
| throw new ParseException(); |
| } |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public SubPackageDecl subPackageDecl(Annotations annotations) throws ParseException { |
| SubPackageDecl retVal = null; |
| Token package_KW = null; |
| Token name = null; |
| Token lcurly = null; |
| TopLevelDecls topLevelDecls = null; |
| Token rcurly = null; |
| package_KW = jj_consume_token(PACKAGEKW); |
| name = jj_consume_token(ID); |
| lcurly = jj_consume_token(LCURLY); |
| topLevelDecls = topLevelDecls(); |
| rcurly = jj_consume_token(RCURLY); |
| retVal = new SubPackageDecl(annotations, createTokenInfo(package_KW), createTokenInfo(name), createTokenInfo(lcurly), topLevelDecls, createTokenInfo(rcurly)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public ClassDecl classDecl(Annotations annotations) throws ParseException { |
| ClassDecl retVal = null; |
| AbstractModifier abstractModifier = null; |
| ClassKind classKind = null; |
| Token name = null; |
| TypeParamsInfo typeParamsInfo = null; |
| Token extends_KW = null; |
| CommaListBoundExceptWild superTypes = null; |
| Token colon = null; |
| BoundExceptWildcard instClassName = null; |
| Token lcurly = null; |
| ClassMemberDecls classMemberDecls = null; |
| Token rcurly = null; |
| if (jj_2_16(4)) { |
| abstractModifier = abstractModifier(); |
| } else { |
| ; |
| } |
| classKind = classKind(); |
| name = jj_consume_token(ID); |
| if (jj_2_17(4)) { |
| typeParamsInfo = typeParamsInfo(); |
| } else { |
| ; |
| } |
| if (jj_2_18(4)) { |
| extends_KW = jj_consume_token(EXTENDSKW); |
| superTypes = commaListBoundExceptWild(); |
| } else { |
| ; |
| } |
| if (jj_2_19(4)) { |
| colon = jj_consume_token(COLON); |
| instClassName = boundExceptWildcard(); |
| } else { |
| ; |
| } |
| lcurly = jj_consume_token(LCURLY); |
| classMemberDecls = classMemberDecls(); |
| rcurly = jj_consume_token(RCURLY); |
| retVal = new ClassDecl(annotations, abstractModifier, classKind, createTokenInfo(name), typeParamsInfo, createTokenInfo(extends_KW), superTypes, createTokenInfo(colon), instClassName, createTokenInfo(lcurly), classMemberDecls, createTokenInfo(rcurly)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public CommaListBoundExceptWild commaListBoundExceptWild() throws ParseException { |
| CommaListBoundExceptWild retVal = new CommaListBoundExceptWild(); |
| BoundExceptWildcard tb1 = null; |
| Token comma = null; |
| BoundExceptWildcard tbn = null; |
| tb1 = boundExceptWildcard(); |
| retVal.addChild(tb1); |
| label_6: |
| while (true) { |
| if (jj_2_20(4)) { |
| ; |
| } else { |
| break label_6; |
| } |
| comma = jj_consume_token(COMMA); |
| tbn = boundExceptWildcard(); |
| retVal.addChild(createTokenInfo(comma)); retVal.addChild(tbn); |
| } |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public AbstractModifier abstractModifier() throws ParseException { |
| AbstractModifier retVal = null; |
| Token abstract_KW = null; |
| abstract_KW = jj_consume_token(ABSTRACTKW); |
| retVal = new AbstractModifier(createTokenInfo(abstract_KW)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public ClassKind classKind() throws ParseException { |
| Token tok; |
| if (jj_2_21(4)) { |
| tok = jj_consume_token(CLASSKW); |
| {if (true) return new ClassKind (createTokenInfo(tok));} |
| } else if (jj_2_22(4)) { |
| tok = jj_consume_token(INTERFACEKW); |
| {if (true) return new ClassKind (createTokenInfo(tok));} |
| } else { |
| jj_consume_token(-1); |
| throw new ParseException(); |
| } |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public TypeParamsInfo typeParamsInfo() throws ParseException { |
| TypeParamsInfo retVal = null; |
| Token lt = null; |
| OneOrMoreTypeParams oneOrMoreTypeParams = null; |
| Token gt = null; |
| lt = jj_consume_token(LT); |
| oneOrMoreTypeParams = oneOrMoreTypeParams(); |
| gt = jj_consume_token(GT); |
| retVal = new TypeParamsInfo(createTokenInfo(lt), oneOrMoreTypeParams, createTokenInfo(gt)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public OneOrMoreTypeParams oneOrMoreTypeParams() throws ParseException { |
| OneOrMoreTypeParams retVal = new OneOrMoreTypeParams(); |
| TypeParam tp1 = null; |
| Token comma = null; |
| TypeParam tpn = null; |
| tp1 = typeParam(); |
| retVal.addChild(tp1); |
| label_7: |
| while (true) { |
| if (jj_2_23(4)) { |
| ; |
| } else { |
| break label_7; |
| } |
| comma = jj_consume_token(COMMA); |
| tpn = typeParam(); |
| retVal.addChild(createTokenInfo(comma)); retVal.addChild(tpn); |
| } |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public TypeParam typeParam() throws ParseException { |
| TypeParam retVal = null; |
| Token typeVarName = null; |
| TypeBoundsInfo typeBoundsInfo = null; |
| typeVarName = jj_consume_token(ID); |
| if (jj_2_24(4)) { |
| typeBoundsInfo = typeBoundsInfo(); |
| } else { |
| ; |
| } |
| retVal = new TypeParam(createTokenInfo(typeVarName), typeBoundsInfo); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public TypeBoundsInfo typeBoundsInfo() throws ParseException { |
| TypeBoundsInfo retVal = null; |
| Token extends_KW = null; |
| OneOrMoreTypeParamBounds oneOrMoreTypeParamBounds = null; |
| extends_KW = jj_consume_token(EXTENDSKW); |
| oneOrMoreTypeParamBounds = oneOrMoreTypeParamBounds(); |
| retVal = new TypeBoundsInfo(createTokenInfo(extends_KW), oneOrMoreTypeParamBounds); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public OneOrMoreTypeParamBounds oneOrMoreTypeParamBounds() throws ParseException { |
| OneOrMoreTypeParamBounds retVal = new OneOrMoreTypeParamBounds(); |
| BoundExceptWildcard tb1 = null; |
| Token amp = null; |
| BoundExceptWildcard tbn = null; |
| tb1 = boundExceptWildcard(); |
| retVal.addChild(tb1); |
| label_8: |
| while (true) { |
| if (jj_2_25(4)) { |
| ; |
| } else { |
| break label_8; |
| } |
| amp = jj_consume_token(AMP); |
| tbn = boundExceptWildcard(); |
| retVal.addChild(createTokenInfo(amp)); retVal.addChild(tbn); |
| } |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public BoundExceptWildcard boundExceptWildcard() throws ParseException { |
| BoundExceptWildcard retVal = null; |
| QualifiedID rawTNameOrTVarOrParamzedTName = null; |
| Token lt = null; |
| OneOrMoreTypeArgs oneOrMoreTypeArgs = null; |
| Token gt = null; |
| rawTNameOrTVarOrParamzedTName = qualifiedID(); |
| if (jj_2_26(4)) { |
| lt = jj_consume_token(LT); |
| oneOrMoreTypeArgs = oneOrMoreTypeArgs(); |
| gt = jj_consume_token(GT); |
| } else { |
| ; |
| } |
| retVal = new BoundExceptWildcard(rawTNameOrTVarOrParamzedTName, createTokenInfo(lt), oneOrMoreTypeArgs, createTokenInfo(gt)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public OneOrMoreTypeArgs oneOrMoreTypeArgs() throws ParseException { |
| OneOrMoreTypeArgs retVal = new OneOrMoreTypeArgs(); |
| TypeArg ta1 = null; |
| Token comma = null; |
| TypeArg tan = null; |
| ta1 = typeArg(); |
| retVal.addChild(ta1); |
| label_9: |
| while (true) { |
| if (jj_2_27(4)) { |
| ; |
| } else { |
| break label_9; |
| } |
| comma = jj_consume_token(COMMA); |
| tan = typeArg(); |
| retVal.addChild(createTokenInfo(comma)); retVal.addChild(tan); |
| } |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public TypeArg typeArg() throws ParseException { |
| TypeArg retVal = null; |
| if (jj_2_28(4)) { |
| retVal = boundExceptWildcard(); |
| {if (true) return retVal;} |
| } else if (jj_2_29(4)) { |
| retVal = wildcard(); |
| {if (true) return retVal;} |
| } else { |
| jj_consume_token(-1); |
| throw new ParseException(); |
| } |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public Wildcard wildcard() throws ParseException { |
| Wildcard retVal = null; |
| Token qmark = null; |
| ExtendsOrSuper extendsOrSuper = null; |
| BoundExceptWildcard boundExceptWildcard = null; |
| qmark = jj_consume_token(QMARK); |
| if (jj_2_30(4)) { |
| extendsOrSuper = extendsOrSuper(); |
| boundExceptWildcard = boundExceptWildcard(); |
| } else { |
| ; |
| } |
| retVal = new Wildcard(createTokenInfo(qmark), extendsOrSuper, boundExceptWildcard); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public ExtendsOrSuper extendsOrSuper() throws ParseException { |
| Token tok; |
| if (jj_2_31(4)) { |
| tok = jj_consume_token(EXTENDSKW); |
| {if (true) return new ExtendsOrSuper (createTokenInfo(tok));} |
| } else if (jj_2_32(4)) { |
| tok = jj_consume_token(SUPERKW); |
| {if (true) return new ExtendsOrSuper (createTokenInfo(tok));} |
| } else { |
| jj_consume_token(-1); |
| throw new ParseException(); |
| } |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public ClassMemberDecls classMemberDecls() throws ParseException { |
| ClassMemberDecls retVal = new ClassMemberDecls(); |
| ClassMemberDecl classMemberDecl = null; |
| label_10: |
| while (true) { |
| if (jj_2_33(4)) { |
| ; |
| } else { |
| break label_10; |
| } |
| classMemberDecl = classMemberDecl(); |
| retVal.addChild(classMemberDecl); |
| } |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public ClassMemberDecl classMemberDecl() throws ParseException { |
| ClassMemberDecl retVal = null; |
| Annotations annotations = null; |
| Modifiers modifiers = null; |
| annotations = annotations(); |
| modifiers = modifiers(); |
| if (jj_2_34(4)) { |
| retVal = attribute(annotations, modifiers); |
| {if (true) return retVal;} |
| } else if (jj_2_35(4)) { |
| retVal = reference(annotations, modifiers); |
| {if (true) return retVal;} |
| } else if (jj_2_36(4)) { |
| retVal = operation(annotations, modifiers); |
| {if (true) return retVal;} |
| } else { |
| jj_consume_token(-1); |
| throw new ParseException(); |
| } |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public Attribute attribute(Annotations annotations, Modifiers modifiers) throws ParseException { |
| Attribute retVal = null; |
| Token attr_KW = null; |
| TypeWithMulti typeWithMulti = null; |
| Token name = null; |
| Token equals = null; |
| DefaultValueExpr defaultValueExpr = null; |
| Token semi = null; |
| attr_KW = jj_consume_token(ATTRKW); |
| typeWithMulti = typeWithMulti(); |
| name = jj_consume_token(ID); |
| if (jj_2_37(4)) { |
| equals = jj_consume_token(EQUALS); |
| defaultValueExpr = defaultValueExpr(); |
| } else { |
| ; |
| } |
| semi = jj_consume_token(SEMI); |
| retVal = new Attribute(annotations, modifiers, createTokenInfo(attr_KW), typeWithMulti, createTokenInfo(name), createTokenInfo(equals), defaultValueExpr, createTokenInfo(semi)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public TypeWithMulti typeWithMulti() throws ParseException { |
| TypeWithMulti retVal = null; |
| BoundExceptWildcard name = null; |
| Multiplicity multiplicity = null; |
| name = boundExceptWildcard(); |
| if (jj_2_38(4)) { |
| multiplicity = multiplicity(); |
| } else { |
| ; |
| } |
| retVal = new TypeWithMulti(name, multiplicity); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public Multiplicity multiplicity() throws ParseException { |
| Multiplicity retVal = null; |
| Token lsquare = null; |
| MultiplicityExpr multiplicityExpr = null; |
| Token rsquare = null; |
| lsquare = jj_consume_token(LSQUARE); |
| if (jj_2_39(4)) { |
| multiplicityExpr = multiplicityExpr(); |
| } else { |
| ; |
| } |
| rsquare = jj_consume_token(RSQUARE); |
| retVal = new Multiplicity(createTokenInfo(lsquare), multiplicityExpr, createTokenInfo(rsquare)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public MultiplicityExpr multiplicityExpr() throws ParseException { |
| MultiplicityExpr retVal = null; |
| SimpleMultiplicityExpr lowerBound = null; |
| Token dot_dot = null; |
| SimpleMultiplicityExpr upperBound = null; |
| lowerBound = simpleMultiplicityExpr(); |
| if (jj_2_40(4)) { |
| dot_dot = jj_consume_token(DOT_DOT); |
| upperBound = simpleMultiplicityExpr(); |
| } else { |
| ; |
| } |
| retVal = new MultiplicityExpr(lowerBound, createTokenInfo(dot_dot), upperBound); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public SimpleMultiplicityExpr simpleMultiplicityExpr() throws ParseException { |
| Token tok; |
| if (jj_2_41(4)) { |
| tok = jj_consume_token(STAR); |
| {if (true) return new SimpleMultiplicityExpr (createTokenInfo(tok));} |
| } else if (jj_2_42(4)) { |
| tok = jj_consume_token(PLUS); |
| {if (true) return new SimpleMultiplicityExpr (createTokenInfo(tok));} |
| } else if (jj_2_43(4)) { |
| tok = jj_consume_token(QMARK); |
| {if (true) return new SimpleMultiplicityExpr (createTokenInfo(tok));} |
| } else if (jj_2_44(4)) { |
| tok = jj_consume_token(INT_LITERAL); |
| {if (true) return new SimpleMultiplicityExpr (createTokenInfo(tok));} |
| } else { |
| jj_consume_token(-1); |
| throw new ParseException(); |
| } |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public Reference reference(Annotations annotations, Modifiers modifiers) throws ParseException { |
| Reference retVal = null; |
| ReferenceKind referenceKind = null; |
| TypeWithMulti typeWithMulti = null; |
| Token hash = null; |
| Token oppositeName = null; |
| Token name = null; |
| Token semi = null; |
| referenceKind = referenceKind(); |
| typeWithMulti = typeWithMulti(); |
| if (jj_2_45(4)) { |
| hash = jj_consume_token(HASH); |
| oppositeName = jj_consume_token(ID); |
| } else { |
| ; |
| } |
| name = jj_consume_token(ID); |
| semi = jj_consume_token(SEMI); |
| retVal = new Reference(annotations, modifiers, referenceKind, typeWithMulti, createTokenInfo(hash), createTokenInfo(oppositeName), createTokenInfo(name), createTokenInfo(semi)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public ReferenceKind referenceKind() throws ParseException { |
| Token tok; |
| if (jj_2_46(4)) { |
| tok = jj_consume_token(REFKW); |
| {if (true) return new ReferenceKind (createTokenInfo(tok));} |
| } else if (jj_2_47(4)) { |
| tok = jj_consume_token(VALKW); |
| {if (true) return new ReferenceKind (createTokenInfo(tok));} |
| } else { |
| jj_consume_token(-1); |
| throw new ParseException(); |
| } |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public Modifiers modifiers() throws ParseException { |
| Modifiers retVal = new Modifiers(); |
| OptNegatedModifier optNegatedModifier = null; |
| label_11: |
| while (true) { |
| if (jj_2_48(4)) { |
| ; |
| } else { |
| break label_11; |
| } |
| optNegatedModifier = optNegatedModifier(); |
| retVal.addChild(optNegatedModifier); |
| } |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public OptNegatedModifier optNegatedModifier() throws ParseException { |
| OptNegatedModifier retVal = null; |
| Token bang = null; |
| Modifier modifier = null; |
| if (jj_2_49(4)) { |
| bang = jj_consume_token(BANG); |
| } else { |
| ; |
| } |
| modifier = modifier(); |
| retVal = new OptNegatedModifier(createTokenInfo(bang), modifier); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public Modifier modifier() throws ParseException { |
| Token tok; |
| if (jj_2_50(4)) { |
| tok = jj_consume_token(READONLYKW); |
| {if (true) return new Modifier (createTokenInfo(tok));} |
| } else if (jj_2_51(4)) { |
| tok = jj_consume_token(VOLATILEKW); |
| {if (true) return new Modifier (createTokenInfo(tok));} |
| } else if (jj_2_52(4)) { |
| tok = jj_consume_token(TRANSIENTKW); |
| {if (true) return new Modifier (createTokenInfo(tok));} |
| } else if (jj_2_53(4)) { |
| tok = jj_consume_token(UNSETTABLEKW); |
| {if (true) return new Modifier (createTokenInfo(tok));} |
| } else if (jj_2_54(4)) { |
| tok = jj_consume_token(DERIVEDKW); |
| {if (true) return new Modifier (createTokenInfo(tok));} |
| } else if (jj_2_55(4)) { |
| tok = jj_consume_token(UNIQUEKW); |
| {if (true) return new Modifier (createTokenInfo(tok));} |
| } else if (jj_2_56(4)) { |
| tok = jj_consume_token(ORDEREDKW); |
| {if (true) return new Modifier (createTokenInfo(tok));} |
| } else if (jj_2_57(4)) { |
| tok = jj_consume_token(RESOLVEKW); |
| {if (true) return new Modifier (createTokenInfo(tok));} |
| } else if (jj_2_58(4)) { |
| tok = jj_consume_token(IDKW); |
| {if (true) return new Modifier (createTokenInfo(tok));} |
| } else { |
| jj_consume_token(-1); |
| throw new ParseException(); |
| } |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public DefaultValueExpr defaultValueExpr() throws ParseException { |
| DefaultValueExpr retVal = null; |
| if (jj_2_59(4)) { |
| retVal = boolExpr(); |
| {if (true) return retVal;} |
| } else if (jj_2_60(4)) { |
| retVal = intExpr(); |
| {if (true) return retVal;} |
| } else if (jj_2_61(4)) { |
| retVal = stringExpr(); |
| {if (true) return retVal;} |
| } else if (jj_2_62(4)) { |
| retVal = charExpr(); |
| {if (true) return retVal;} |
| } else { |
| jj_consume_token(-1); |
| throw new ParseException(); |
| } |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public BoolExpr boolExpr() throws ParseException { |
| BoolExpr retVal = null; |
| TrueOrFalse trueOrFalse = null; |
| trueOrFalse = trueOrFalse(); |
| retVal = new BoolExpr(trueOrFalse); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public TrueOrFalse trueOrFalse() throws ParseException { |
| Token tok; |
| if (jj_2_63(4)) { |
| tok = jj_consume_token(TRUEKW); |
| {if (true) return new TrueOrFalse (createTokenInfo(tok));} |
| } else if (jj_2_64(4)) { |
| tok = jj_consume_token(FALSEKW); |
| {if (true) return new TrueOrFalse (createTokenInfo(tok));} |
| } else { |
| jj_consume_token(-1); |
| throw new ParseException(); |
| } |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public IntExpr intExpr() throws ParseException { |
| IntExpr retVal = null; |
| Token minus = null; |
| Token int_literal = null; |
| if (jj_2_65(4)) { |
| minus = jj_consume_token(MINUS); |
| } else { |
| ; |
| } |
| int_literal = jj_consume_token(INT_LITERAL); |
| retVal = new IntExpr(createTokenInfo(minus), createTokenInfo(int_literal)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public StringExpr stringExpr() throws ParseException { |
| StringExpr retVal = null; |
| Token string_literal = null; |
| string_literal = jj_consume_token(STRING_LITERAL); |
| retVal = new StringExpr(createTokenInfo(string_literal)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public CharExpr charExpr() throws ParseException { |
| CharExpr retVal = null; |
| Token char_literal = null; |
| char_literal = jj_consume_token(CHAR_LITERAL); |
| retVal = new CharExpr(createTokenInfo(char_literal)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public Operation operation(Annotations annotations, Modifiers modifiers) throws ParseException { |
| Operation retVal = null; |
| Token op_KW = null; |
| TypeParamsInfo typeParamsInfo = null; |
| ResultType resType = null; |
| Token name = null; |
| Token lparen = null; |
| Params params = null; |
| Token rparen = null; |
| Token throws_KW = null; |
| CommaListBoundExceptWild exceptions = null; |
| Token semi = null; |
| op_KW = jj_consume_token(OPKW); |
| if (jj_2_66(4)) { |
| typeParamsInfo = typeParamsInfo(); |
| } else { |
| ; |
| } |
| resType = resultType(); |
| name = jj_consume_token(ID); |
| lparen = jj_consume_token(LPAREN); |
| if (jj_2_67(4)) { |
| params = params(); |
| } else { |
| ; |
| } |
| rparen = jj_consume_token(RPAREN); |
| if (jj_2_68(4)) { |
| throws_KW = jj_consume_token(THROWSKW); |
| exceptions = commaListBoundExceptWild(); |
| } else { |
| ; |
| } |
| semi = jj_consume_token(SEMI); |
| retVal = new Operation(annotations, modifiers, createTokenInfo(op_KW), typeParamsInfo, resType, createTokenInfo(name), createTokenInfo(lparen), params, createTokenInfo(rparen), createTokenInfo(throws_KW), exceptions, createTokenInfo(semi)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public ResultType resultType() throws ParseException { |
| ResultType retVal = null; |
| if (jj_2_69(4)) { |
| retVal = typeWithMulti(); |
| {if (true) return retVal;} |
| } else if (jj_2_70(4)) { |
| retVal = voidContainer(); |
| {if (true) return retVal;} |
| } else { |
| jj_consume_token(-1); |
| throw new ParseException(); |
| } |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public VoidContainer voidContainer() throws ParseException { |
| VoidContainer retVal = null; |
| Token void_KW = null; |
| void_KW = jj_consume_token(VOIDKW); |
| retVal = new VoidContainer(createTokenInfo(void_KW)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public Params params() throws ParseException { |
| Params retVal = new Params(); |
| Param p1 = null; |
| Token comma = null; |
| Param pn = null; |
| p1 = param(); |
| retVal.addChild(p1); |
| label_12: |
| while (true) { |
| if (jj_2_71(4)) { |
| ; |
| } else { |
| break label_12; |
| } |
| comma = jj_consume_token(COMMA); |
| pn = param(); |
| retVal.addChild(createTokenInfo(comma)); retVal.addChild(pn); |
| } |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public Param param() throws ParseException { |
| Param retVal = null; |
| Annotations leadingAnnotations = null; |
| Modifiers modifiers = null; |
| TypeWithMulti typeWithMulti = null; |
| Token name = null; |
| Annotations trailingAnnotations = null; |
| leadingAnnotations = annotations(); |
| modifiers = modifiers(); |
| typeWithMulti = typeWithMulti(); |
| name = jj_consume_token(ID); |
| trailingAnnotations = annotations(); |
| retVal = new Param(leadingAnnotations, modifiers, typeWithMulti, createTokenInfo(name), trailingAnnotations); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public DataTypeDecl dataTypeDecl(Annotations annotations) throws ParseException { |
| DataTypeDecl retVal = null; |
| TransientModifier transientModifier = null; |
| Token datatype_KW = null; |
| Token name = null; |
| Token colon = null; |
| StringLiteralOrQualifiedID instClassName = null; |
| Token semi = null; |
| if (jj_2_72(4)) { |
| transientModifier = transientModifier(); |
| } else { |
| ; |
| } |
| datatype_KW = jj_consume_token(DATATYPEKW); |
| name = jj_consume_token(ID); |
| colon = jj_consume_token(COLON); |
| instClassName = stringLiteralOrQualifiedID(); |
| semi = jj_consume_token(SEMI); |
| retVal = new DataTypeDecl(annotations, transientModifier, createTokenInfo(datatype_KW), createTokenInfo(name), createTokenInfo(colon), instClassName, createTokenInfo(semi)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public TransientModifier transientModifier() throws ParseException { |
| TransientModifier retVal = null; |
| Token transient_KW = null; |
| transient_KW = jj_consume_token(TRANSIENTKW); |
| retVal = new TransientModifier(createTokenInfo(transient_KW)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public EnumDecl enumDecl(Annotations annotations) throws ParseException { |
| EnumDecl retVal = null; |
| Token enum_KW = null; |
| Token name = null; |
| Token lcurly = null; |
| EnumLiterals enumLiterals = null; |
| Token rcurly = null; |
| enum_KW = jj_consume_token(ENUMKW); |
| name = jj_consume_token(ID); |
| lcurly = jj_consume_token(LCURLY); |
| enumLiterals = enumLiterals(); |
| rcurly = jj_consume_token(RCURLY); |
| retVal = new EnumDecl(annotations, createTokenInfo(enum_KW), createTokenInfo(name), createTokenInfo(lcurly), enumLiterals, createTokenInfo(rcurly)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public EnumLiterals enumLiterals() throws ParseException { |
| EnumLiterals retVal = new EnumLiterals(); |
| EnumLiteral enumLiteral = null; |
| label_13: |
| while (true) { |
| if (jj_2_73(4)) { |
| ; |
| } else { |
| break label_13; |
| } |
| enumLiteral = enumLiteral(); |
| retVal.addChild(enumLiteral); |
| } |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public EnumLiteral enumLiteral() throws ParseException { |
| EnumLiteral retVal = null; |
| Annotations leadingAnnotations = null; |
| Token name = null; |
| Token equals = null; |
| Token val = null; |
| Annotations trailingAnnotations = null; |
| Token semi = null; |
| leadingAnnotations = annotations(); |
| name = jj_consume_token(ID); |
| if (jj_2_74(4)) { |
| equals = jj_consume_token(EQUALS); |
| val = jj_consume_token(INT_LITERAL); |
| } else { |
| ; |
| } |
| trailingAnnotations = annotations(); |
| semi = jj_consume_token(SEMI); |
| retVal = new EnumLiteral(leadingAnnotations, createTokenInfo(name), createTokenInfo(equals), createTokenInfo(val), trailingAnnotations, createTokenInfo(semi)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final public MapEntryDecl mapEntryDecl(Annotations annotations) throws ParseException { |
| MapEntryDecl retVal = null; |
| Token mapentry_KW = null; |
| Token name = null; |
| Token colon = null; |
| TypeWithMulti key = null; |
| Token minus_gt = null; |
| TypeWithMulti value = null; |
| Token semi = null; |
| mapentry_KW = jj_consume_token(MAPENTRYKW); |
| name = jj_consume_token(ID); |
| colon = jj_consume_token(COLON); |
| key = typeWithMulti(); |
| minus_gt = jj_consume_token(MINUS_GT); |
| value = typeWithMulti(); |
| semi = jj_consume_token(SEMI); |
| retVal = new MapEntryDecl(annotations, createTokenInfo(mapentry_KW), createTokenInfo(name), createTokenInfo(colon), key, createTokenInfo(minus_gt), value, createTokenInfo(semi)); |
| {if (true) return retVal;} |
| throw new Error("Missing return statement in function"); |
| } |
| |
| final private boolean jj_2_1(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_1(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(0, xla); } |
| } |
| |
| final private boolean jj_2_2(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_2(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(1, xla); } |
| } |
| |
| final private boolean jj_2_3(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_3(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(2, xla); } |
| } |
| |
| final private boolean jj_2_4(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_4(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(3, xla); } |
| } |
| |
| final private boolean jj_2_5(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_5(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(4, xla); } |
| } |
| |
| final private boolean jj_2_6(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_6(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(5, xla); } |
| } |
| |
| final private boolean jj_2_7(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_7(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(6, xla); } |
| } |
| |
| final private boolean jj_2_8(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_8(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(7, xla); } |
| } |
| |
| final private boolean jj_2_9(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_9(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(8, xla); } |
| } |
| |
| final private boolean jj_2_10(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_10(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(9, xla); } |
| } |
| |
| final private boolean jj_2_11(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_11(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(10, xla); } |
| } |
| |
| final private boolean jj_2_12(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_12(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(11, xla); } |
| } |
| |
| final private boolean jj_2_13(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_13(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(12, xla); } |
| } |
| |
| final private boolean jj_2_14(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_14(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(13, xla); } |
| } |
| |
| final private boolean jj_2_15(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_15(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(14, xla); } |
| } |
| |
| final private boolean jj_2_16(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_16(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(15, xla); } |
| } |
| |
| final private boolean jj_2_17(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_17(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(16, xla); } |
| } |
| |
| final private boolean jj_2_18(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_18(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(17, xla); } |
| } |
| |
| final private boolean jj_2_19(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_19(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(18, xla); } |
| } |
| |
| final private boolean jj_2_20(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_20(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(19, xla); } |
| } |
| |
| final private boolean jj_2_21(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_21(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(20, xla); } |
| } |
| |
| final private boolean jj_2_22(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_22(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(21, xla); } |
| } |
| |
| final private boolean jj_2_23(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_23(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(22, xla); } |
| } |
| |
| final private boolean jj_2_24(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_24(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(23, xla); } |
| } |
| |
| final private boolean jj_2_25(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_25(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(24, xla); } |
| } |
| |
| final private boolean jj_2_26(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_26(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(25, xla); } |
| } |
| |
| final private boolean jj_2_27(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_27(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(26, xla); } |
| } |
| |
| final private boolean jj_2_28(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_28(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(27, xla); } |
| } |
| |
| final private boolean jj_2_29(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_29(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(28, xla); } |
| } |
| |
| final private boolean jj_2_30(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_30(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(29, xla); } |
| } |
| |
| final private boolean jj_2_31(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_31(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(30, xla); } |
| } |
| |
| final private boolean jj_2_32(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_32(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(31, xla); } |
| } |
| |
| final private boolean jj_2_33(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_33(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(32, xla); } |
| } |
| |
| final private boolean jj_2_34(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_34(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(33, xla); } |
| } |
| |
| final private boolean jj_2_35(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_35(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(34, xla); } |
| } |
| |
| final private boolean jj_2_36(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_36(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(35, xla); } |
| } |
| |
| final private boolean jj_2_37(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_37(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(36, xla); } |
| } |
| |
| final private boolean jj_2_38(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_38(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(37, xla); } |
| } |
| |
| final private boolean jj_2_39(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_39(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(38, xla); } |
| } |
| |
| final private boolean jj_2_40(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_40(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(39, xla); } |
| } |
| |
| final private boolean jj_2_41(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_41(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(40, xla); } |
| } |
| |
| final private boolean jj_2_42(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_42(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(41, xla); } |
| } |
| |
| final private boolean jj_2_43(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_43(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(42, xla); } |
| } |
| |
| final private boolean jj_2_44(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_44(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(43, xla); } |
| } |
| |
| final private boolean jj_2_45(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_45(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(44, xla); } |
| } |
| |
| final private boolean jj_2_46(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_46(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(45, xla); } |
| } |
| |
| final private boolean jj_2_47(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_47(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(46, xla); } |
| } |
| |
| final private boolean jj_2_48(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_48(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(47, xla); } |
| } |
| |
| final private boolean jj_2_49(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_49(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(48, xla); } |
| } |
| |
| final private boolean jj_2_50(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_50(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(49, xla); } |
| } |
| |
| final private boolean jj_2_51(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_51(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(50, xla); } |
| } |
| |
| final private boolean jj_2_52(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_52(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(51, xla); } |
| } |
| |
| final private boolean jj_2_53(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_53(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(52, xla); } |
| } |
| |
| final private boolean jj_2_54(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_54(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(53, xla); } |
| } |
| |
| final private boolean jj_2_55(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_55(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(54, xla); } |
| } |
| |
| final private boolean jj_2_56(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_56(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(55, xla); } |
| } |
| |
| final private boolean jj_2_57(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_57(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(56, xla); } |
| } |
| |
| final private boolean jj_2_58(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_58(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(57, xla); } |
| } |
| |
| final private boolean jj_2_59(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_59(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(58, xla); } |
| } |
| |
| final private boolean jj_2_60(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_60(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(59, xla); } |
| } |
| |
| final private boolean jj_2_61(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_61(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(60, xla); } |
| } |
| |
| final private boolean jj_2_62(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_62(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(61, xla); } |
| } |
| |
| final private boolean jj_2_63(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_63(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(62, xla); } |
| } |
| |
| final private boolean jj_2_64(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_64(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(63, xla); } |
| } |
| |
| final private boolean jj_2_65(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_65(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(64, xla); } |
| } |
| |
| final private boolean jj_2_66(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_66(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(65, xla); } |
| } |
| |
| final private boolean jj_2_67(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_67(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(66, xla); } |
| } |
| |
| final private boolean jj_2_68(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_68(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(67, xla); } |
| } |
| |
| final private boolean jj_2_69(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_69(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(68, xla); } |
| } |
| |
| final private boolean jj_2_70(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_70(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(69, xla); } |
| } |
| |
| final private boolean jj_2_71(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_71(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(70, xla); } |
| } |
| |
| final private boolean jj_2_72(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_72(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(71, xla); } |
| } |
| |
| final private boolean jj_2_73(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_73(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(72, xla); } |
| } |
| |
| final private boolean jj_2_74(int xla) { |
| jj_la = xla; jj_lastpos = jj_scanpos = token; |
| try { return !jj_3_74(); } |
| catch(LookaheadSuccess ls) { return true; } |
| finally { jj_save(73, xla); } |
| } |
| |
| final private boolean jj_3_65() { |
| if (jj_scan_token(MINUS)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_46() { |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_65()) jj_scanpos = xsp; |
| if (jj_scan_token(INT_LITERAL)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_25() { |
| if (jj_scan_token(AMP)) return true; |
| if (jj_3R_29()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_15() { |
| if (jj_scan_token(STRING_LITERAL)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_17() { |
| if (jj_3R_27()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_64() { |
| if (jj_3R_29()) return true; |
| Token xsp; |
| while (true) { |
| xsp = jj_scanpos; |
| if (jj_3_25()) { jj_scanpos = xsp; break; } |
| } |
| return false; |
| } |
| |
| final private boolean jj_3_5() { |
| if (jj_3R_16()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_64() { |
| if (jj_scan_token(FALSEKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_69() { |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_63()) { |
| jj_scanpos = xsp; |
| if (jj_3_64()) return true; |
| } |
| return false; |
| } |
| |
| final private boolean jj_3_4() { |
| if (jj_3R_15()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_24() { |
| if (jj_3R_31()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_45() { |
| if (jj_scan_token(HASH)) return true; |
| if (jj_scan_token(ID)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_63() { |
| if (jj_scan_token(TRUEKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_56() { |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_4()) { |
| jj_scanpos = xsp; |
| if (jj_3_5()) return true; |
| } |
| return false; |
| } |
| |
| final private boolean jj_3_3() { |
| if (jj_scan_token(DOLLAR)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_45() { |
| if (jj_3R_69()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_31() { |
| if (jj_scan_token(EXTENDSKW)) return true; |
| if (jj_3R_64()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_14() { |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_2()) { |
| jj_scanpos = xsp; |
| if (jj_3_3()) return true; |
| } |
| return false; |
| } |
| |
| final private boolean jj_3_2() { |
| if (jj_scan_token(DOT)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_74() { |
| if (jj_scan_token(EQUALS)) return true; |
| if (jj_scan_token(INT_LITERAL)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_1() { |
| if (jj_3R_14()) return true; |
| if (jj_scan_token(ID)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_68() { |
| if (jj_scan_token(THROWSKW)) return true; |
| if (jj_3R_28()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_62() { |
| if (jj_3R_48()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_55() { |
| if (jj_scan_token(ID)) return true; |
| Token xsp; |
| while (true) { |
| xsp = jj_scanpos; |
| if (jj_3_1()) { jj_scanpos = xsp; break; } |
| } |
| return false; |
| } |
| |
| final private boolean jj_3_61() { |
| if (jj_3R_47()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_60() { |
| if (jj_3R_46()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_59() { |
| if (jj_3R_45()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_40() { |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_59()) { |
| jj_scanpos = xsp; |
| if (jj_3_60()) { |
| jj_scanpos = xsp; |
| if (jj_3_61()) { |
| jj_scanpos = xsp; |
| if (jj_3_62()) return true; |
| } |
| } |
| } |
| return false; |
| } |
| |
| final private boolean jj_3R_30() { |
| if (jj_scan_token(ID)) return true; |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_24()) jj_scanpos = xsp; |
| return false; |
| } |
| |
| final private boolean jj_3_23() { |
| if (jj_scan_token(COMMA)) return true; |
| if (jj_3R_30()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_58() { |
| if (jj_scan_token(IDKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_63() { |
| if (jj_3R_30()) return true; |
| Token xsp; |
| while (true) { |
| xsp = jj_scanpos; |
| if (jj_3_23()) { jj_scanpos = xsp; break; } |
| } |
| return false; |
| } |
| |
| final private boolean jj_3_57() { |
| if (jj_scan_token(RESOLVEKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_56() { |
| if (jj_scan_token(ORDEREDKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_55() { |
| if (jj_scan_token(UNIQUEKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_54() { |
| if (jj_scan_token(DERIVEDKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_53() { |
| if (jj_scan_token(UNSETTABLEKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_52() { |
| if (jj_scan_token(TRANSIENTKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_51() { |
| if (jj_scan_token(VOLATILEKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_68() { |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_50()) { |
| jj_scanpos = xsp; |
| if (jj_3_51()) { |
| jj_scanpos = xsp; |
| if (jj_3_52()) { |
| jj_scanpos = xsp; |
| if (jj_3_53()) { |
| jj_scanpos = xsp; |
| if (jj_3_54()) { |
| jj_scanpos = xsp; |
| if (jj_3_55()) { |
| jj_scanpos = xsp; |
| if (jj_3_56()) { |
| jj_scanpos = xsp; |
| if (jj_3_57()) { |
| jj_scanpos = xsp; |
| if (jj_3_58()) return true; |
| } |
| } |
| } |
| } |
| } |
| } |
| } |
| } |
| return false; |
| } |
| |
| final private boolean jj_3_50() { |
| if (jj_scan_token(READONLYKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_27() { |
| if (jj_scan_token(LT)) return true; |
| if (jj_3R_63()) return true; |
| if (jj_scan_token(GT)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_49() { |
| if (jj_scan_token(BANG)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_25() { |
| if (jj_scan_token(MAPENTRYKW)) return true; |
| if (jj_scan_token(ID)) return true; |
| if (jj_scan_token(COLON)) return true; |
| if (jj_3R_50()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_44() { |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_49()) jj_scanpos = xsp; |
| if (jj_3R_68()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_22() { |
| if (jj_scan_token(INTERFACEKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_48() { |
| if (jj_3R_44()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_60() { |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_21()) { |
| jj_scanpos = xsp; |
| if (jj_3_22()) return true; |
| } |
| return false; |
| } |
| |
| final private boolean jj_3_21() { |
| if (jj_scan_token(CLASSKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_65() { |
| Token xsp; |
| while (true) { |
| xsp = jj_scanpos; |
| if (jj_3_48()) { jj_scanpos = xsp; break; } |
| } |
| return false; |
| } |
| |
| final private boolean jj_3_40() { |
| if (jj_scan_token(DOT_DOT)) return true; |
| if (jj_3R_43()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_67() { |
| if (jj_3R_49()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_47() { |
| if (jj_scan_token(VALKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_66() { |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_46()) { |
| jj_scanpos = xsp; |
| if (jj_3_47()) return true; |
| } |
| return false; |
| } |
| |
| final private boolean jj_3_46() { |
| if (jj_scan_token(REFKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_26() { |
| if (jj_scan_token(ABSTRACTKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_54() { |
| if (jj_3R_58()) return true; |
| if (jj_scan_token(ID)) return true; |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_74()) jj_scanpos = xsp; |
| if (jj_3R_58()) return true; |
| if (jj_scan_token(SEMI)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_20() { |
| if (jj_scan_token(COMMA)) return true; |
| if (jj_3R_29()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_37() { |
| if (jj_scan_token(EQUALS)) return true; |
| if (jj_3R_40()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_28() { |
| if (jj_3R_29()) return true; |
| Token xsp; |
| while (true) { |
| xsp = jj_scanpos; |
| if (jj_3_20()) { jj_scanpos = xsp; break; } |
| } |
| return false; |
| } |
| |
| final private boolean jj_3R_38() { |
| if (jj_3R_66()) return true; |
| if (jj_3R_50()) return true; |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_45()) jj_scanpos = xsp; |
| if (jj_scan_token(ID)) return true; |
| if (jj_scan_token(SEMI)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_73() { |
| if (jj_3R_54()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_62() { |
| Token xsp; |
| while (true) { |
| xsp = jj_scanpos; |
| if (jj_3_73()) { jj_scanpos = xsp; break; } |
| } |
| return false; |
| } |
| |
| final private boolean jj_3_16() { |
| if (jj_3R_26()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_22() { |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_16()) jj_scanpos = xsp; |
| if (jj_3R_60()) return true; |
| if (jj_scan_token(ID)) return true; |
| xsp = jj_scanpos; |
| if (jj_3_17()) jj_scanpos = xsp; |
| xsp = jj_scanpos; |
| if (jj_3_18()) jj_scanpos = xsp; |
| xsp = jj_scanpos; |
| if (jj_3_19()) jj_scanpos = xsp; |
| if (jj_scan_token(LCURLY)) return true; |
| if (jj_3R_61()) return true; |
| if (jj_scan_token(RCURLY)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_44() { |
| if (jj_scan_token(INT_LITERAL)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_43() { |
| if (jj_scan_token(QMARK)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_24() { |
| if (jj_scan_token(ENUMKW)) return true; |
| if (jj_scan_token(ID)) return true; |
| if (jj_scan_token(LCURLY)) return true; |
| if (jj_3R_62()) return true; |
| if (jj_scan_token(RCURLY)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_42() { |
| if (jj_scan_token(PLUS)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_43() { |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_41()) { |
| jj_scanpos = xsp; |
| if (jj_3_42()) { |
| jj_scanpos = xsp; |
| if (jj_3_43()) { |
| jj_scanpos = xsp; |
| if (jj_3_44()) return true; |
| } |
| } |
| } |
| return false; |
| } |
| |
| final private boolean jj_3_39() { |
| if (jj_3R_42()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_41() { |
| if (jj_scan_token(STAR)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_38() { |
| if (jj_3R_41()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_42() { |
| if (jj_3R_43()) return true; |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_40()) jj_scanpos = xsp; |
| return false; |
| } |
| |
| final private boolean jj_3_19() { |
| if (jj_scan_token(COLON)) return true; |
| if (jj_3R_29()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_53() { |
| if (jj_scan_token(TRANSIENTKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_21() { |
| if (jj_scan_token(PACKAGEKW)) return true; |
| if (jj_scan_token(ID)) return true; |
| if (jj_scan_token(LCURLY)) return true; |
| if (jj_3R_59()) return true; |
| if (jj_scan_token(RCURLY)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_72() { |
| if (jj_3R_53()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_41() { |
| if (jj_scan_token(LSQUARE)) return true; |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_39()) jj_scanpos = xsp; |
| if (jj_scan_token(RSQUARE)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_23() { |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_72()) jj_scanpos = xsp; |
| if (jj_scan_token(DATATYPEKW)) return true; |
| if (jj_scan_token(ID)) return true; |
| if (jj_scan_token(COLON)) return true; |
| if (jj_3R_56()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_9() { |
| if (jj_scan_token(ID)) return true; |
| if (jj_scan_token(EQUALS)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_15() { |
| if (jj_3R_25()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_14() { |
| if (jj_3R_24()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_13() { |
| if (jj_3R_23()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_12() { |
| if (jj_3R_22()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_11() { |
| if (jj_3R_21()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_50() { |
| if (jj_3R_29()) return true; |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_38()) jj_scanpos = xsp; |
| return false; |
| } |
| |
| final private boolean jj_3R_20() { |
| if (jj_3R_58()) return true; |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_11()) { |
| jj_scanpos = xsp; |
| if (jj_3_12()) { |
| jj_scanpos = xsp; |
| if (jj_3_13()) { |
| jj_scanpos = xsp; |
| if (jj_3_14()) { |
| jj_scanpos = xsp; |
| if (jj_3_15()) return true; |
| } |
| } |
| } |
| } |
| return false; |
| } |
| |
| final private boolean jj_3_10() { |
| if (jj_3R_20()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_52() { |
| if (jj_3R_58()) return true; |
| if (jj_3R_65()) return true; |
| if (jj_3R_50()) return true; |
| if (jj_scan_token(ID)) return true; |
| if (jj_3R_58()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_59() { |
| Token xsp; |
| while (true) { |
| xsp = jj_scanpos; |
| if (jj_3_10()) { jj_scanpos = xsp; break; } |
| } |
| return false; |
| } |
| |
| final private boolean jj_3R_37() { |
| if (jj_scan_token(ATTRKW)) return true; |
| if (jj_3R_50()) return true; |
| if (jj_scan_token(ID)) return true; |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_37()) jj_scanpos = xsp; |
| if (jj_scan_token(SEMI)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_71() { |
| if (jj_scan_token(COMMA)) return true; |
| if (jj_3R_52()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_49() { |
| if (jj_3R_52()) return true; |
| Token xsp; |
| while (true) { |
| xsp = jj_scanpos; |
| if (jj_3_71()) { jj_scanpos = xsp; break; } |
| } |
| return false; |
| } |
| |
| final private boolean jj_3R_19() { |
| if (jj_scan_token(IMPORTKW)) return true; |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_9()) jj_scanpos = xsp; |
| if (jj_3R_56()) return true; |
| if (jj_scan_token(SEMI)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_36() { |
| if (jj_3R_39()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_35() { |
| if (jj_3R_38()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_34() { |
| if (jj_3R_37()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_8() { |
| if (jj_3R_19()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_51() { |
| if (jj_scan_token(VOIDKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_36() { |
| if (jj_3R_58()) return true; |
| if (jj_3R_65()) return true; |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_34()) { |
| jj_scanpos = xsp; |
| if (jj_3_35()) { |
| jj_scanpos = xsp; |
| if (jj_3_36()) return true; |
| } |
| } |
| return false; |
| } |
| |
| final private boolean jj_3_66() { |
| if (jj_3R_27()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_26() { |
| if (jj_scan_token(LT)) return true; |
| if (jj_3R_32()) return true; |
| if (jj_scan_token(GT)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_33() { |
| if (jj_3R_36()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_70() { |
| if (jj_3R_51()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_69() { |
| if (jj_3R_50()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_61() { |
| Token xsp; |
| while (true) { |
| xsp = jj_scanpos; |
| if (jj_3_33()) { jj_scanpos = xsp; break; } |
| } |
| return false; |
| } |
| |
| final private boolean jj_3_30() { |
| if (jj_3R_35()) return true; |
| if (jj_3R_29()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_67() { |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_69()) { |
| jj_scanpos = xsp; |
| if (jj_3_70()) return true; |
| } |
| return false; |
| } |
| |
| final private boolean jj_3R_18() { |
| if (jj_3R_56()) return true; |
| if (jj_scan_token(EQUALS)) return true; |
| if (jj_3R_56()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_32() { |
| if (jj_scan_token(SUPERKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_35() { |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_31()) { |
| jj_scanpos = xsp; |
| if (jj_3_32()) return true; |
| } |
| return false; |
| } |
| |
| final private boolean jj_3_7() { |
| if (jj_scan_token(COMMA)) return true; |
| if (jj_3R_18()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_31() { |
| if (jj_scan_token(EXTENDSKW)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_57() { |
| if (jj_3R_18()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_39() { |
| if (jj_scan_token(OPKW)) return true; |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_66()) jj_scanpos = xsp; |
| if (jj_3R_67()) return true; |
| if (jj_scan_token(ID)) return true; |
| if (jj_scan_token(LPAREN)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_18() { |
| if (jj_scan_token(EXTENDSKW)) return true; |
| if (jj_3R_28()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_34() { |
| if (jj_scan_token(QMARK)) return true; |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_30()) jj_scanpos = xsp; |
| return false; |
| } |
| |
| final private boolean jj_3R_17() { |
| if (jj_scan_token(AT)) return true; |
| if (jj_3R_56()) return true; |
| if (jj_scan_token(LPAREN)) return true; |
| if (jj_3R_57()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_29() { |
| if (jj_3R_34()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_28() { |
| if (jj_3R_29()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_33() { |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_28()) { |
| jj_scanpos = xsp; |
| if (jj_3_29()) return true; |
| } |
| return false; |
| } |
| |
| final private boolean jj_3_6() { |
| if (jj_3R_17()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3_27() { |
| if (jj_scan_token(COMMA)) return true; |
| if (jj_3R_33()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_48() { |
| if (jj_scan_token(CHAR_LITERAL)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_58() { |
| Token xsp; |
| while (true) { |
| xsp = jj_scanpos; |
| if (jj_3_6()) { jj_scanpos = xsp; break; } |
| } |
| return false; |
| } |
| |
| final private boolean jj_3R_32() { |
| if (jj_3R_33()) return true; |
| Token xsp; |
| while (true) { |
| xsp = jj_scanpos; |
| if (jj_3_27()) { jj_scanpos = xsp; break; } |
| } |
| return false; |
| } |
| |
| final private boolean jj_3R_47() { |
| if (jj_scan_token(STRING_LITERAL)) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_16() { |
| if (jj_3R_55()) return true; |
| return false; |
| } |
| |
| final private boolean jj_3R_29() { |
| if (jj_3R_55()) return true; |
| Token xsp; |
| xsp = jj_scanpos; |
| if (jj_3_26()) jj_scanpos = xsp; |
| return false; |
| } |
| |
| public EmfaticParserTokenManager token_source; |
| SimpleCharStream jj_input_stream; |
| public Token token, jj_nt; |
| private int jj_ntk; |
| private Token jj_scanpos, jj_lastpos; |
| private int jj_la; |
| public boolean lookingAhead = false; |
| private boolean jj_semLA; |
| private int jj_gen; |
| final private int[] jj_la1 = new int[0]; |
| static private int[] jj_la1_0; |
| static private int[] jj_la1_1; |
| static private int[] jj_la1_2; |
| static { |
| jj_la1_0(); |
| jj_la1_1(); |
| jj_la1_2(); |
| } |
| private static void jj_la1_0() { |
| jj_la1_0 = new int[] {}; |
| } |
| private static void jj_la1_1() { |
| jj_la1_1 = new int[] {}; |
| } |
| private static void jj_la1_2() { |
| jj_la1_2 = new int[] {}; |
| } |
| final private JJCalls[] jj_2_rtns = new JJCalls[74]; |
| private boolean jj_rescan = false; |
| private int jj_gc = 0; |
| |
| public EmfaticParser(java.io.InputStream stream) { |
| this(stream, null); |
| } |
| public EmfaticParser(java.io.InputStream stream, String encoding) { |
| try { jj_input_stream = new SimpleCharStream(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); } |
| token_source = new EmfaticParserTokenManager(jj_input_stream); |
| token = new Token(); |
| jj_ntk = -1; |
| jj_gen = 0; |
| for (int i = 0; i < 0; i++) jj_la1[i] = -1; |
| for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); |
| } |
| |
| public void ReInit(java.io.InputStream stream) { |
| ReInit(stream, null); |
| } |
| public void ReInit(java.io.InputStream stream, String encoding) { |
| try { jj_input_stream.ReInit(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); } |
| token_source.ReInit(jj_input_stream); |
| token = new Token(); |
| jj_ntk = -1; |
| jj_gen = 0; |
| for (int i = 0; i < 0; i++) jj_la1[i] = -1; |
| for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); |
| } |
| |
| public EmfaticParser(java.io.Reader stream) { |
| jj_input_stream = new SimpleCharStream(stream, 1, 1); |
| token_source = new EmfaticParserTokenManager(jj_input_stream); |
| token = new Token(); |
| jj_ntk = -1; |
| jj_gen = 0; |
| for (int i = 0; i < 0; i++) jj_la1[i] = -1; |
| for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); |
| } |
| |
| public void ReInit(java.io.Reader stream) { |
| jj_input_stream.ReInit(stream, 1, 1); |
| token_source.ReInit(jj_input_stream); |
| token = new Token(); |
| jj_ntk = -1; |
| jj_gen = 0; |
| for (int i = 0; i < 0; i++) jj_la1[i] = -1; |
| for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); |
| } |
| |
| public EmfaticParser(EmfaticParserTokenManager tm) { |
| token_source = tm; |
| token = new Token(); |
| jj_ntk = -1; |
| jj_gen = 0; |
| for (int i = 0; i < 0; i++) jj_la1[i] = -1; |
| for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); |
| } |
| |
| public void ReInit(EmfaticParserTokenManager tm) { |
| token_source = tm; |
| token = new Token(); |
| jj_ntk = -1; |
| jj_gen = 0; |
| for (int i = 0; i < 0; i++) jj_la1[i] = -1; |
| for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); |
| } |
| |
| final private Token jj_consume_token(int kind) throws ParseException { |
| Token oldToken; |
| if ((oldToken = token).next != null) token = token.next; |
| else token = token.next = token_source.getNextToken(); |
| jj_ntk = -1; |
| if (token.kind == kind) { |
| jj_gen++; |
| if (++jj_gc > 100) { |
| jj_gc = 0; |
| for (int i = 0; i < jj_2_rtns.length; i++) { |
| JJCalls c = jj_2_rtns[i]; |
| while (c != null) { |
| if (c.gen < jj_gen) c.first = null; |
| c = c.next; |
| } |
| } |
| } |
| return token; |
| } |
| token = oldToken; |
| jj_kind = kind; |
| throw generateParseException(); |
| } |
| |
| static private final class LookaheadSuccess extends java.lang.Error { } |
| final private LookaheadSuccess jj_ls = new LookaheadSuccess(); |
| final private boolean jj_scan_token(int kind) { |
| if (jj_scanpos == jj_lastpos) { |
| jj_la--; |
| if (jj_scanpos.next == null) { |
| jj_lastpos = jj_scanpos = jj_scanpos.next = token_source.getNextToken(); |
| } else { |
| jj_lastpos = jj_scanpos = jj_scanpos.next; |
| } |
| } else { |
| jj_scanpos = jj_scanpos.next; |
| } |
| if (jj_rescan) { |
| int i = 0; Token tok = token; |
| while (tok != null && tok != jj_scanpos) { i++; tok = tok.next; } |
| if (tok != null) jj_add_error_token(kind, i); |
| } |
| if (jj_scanpos.kind != kind) return true; |
| if (jj_la == 0 && jj_scanpos == jj_lastpos) throw jj_ls; |
| return false; |
| } |
| |
| final public Token getNextToken() { |
| if (token.next != null) token = token.next; |
| else token = token.next = token_source.getNextToken(); |
| jj_ntk = -1; |
| jj_gen++; |
| return token; |
| } |
| |
| final public Token getToken(int index) { |
| Token t = lookingAhead ? jj_scanpos : token; |
| for (int i = 0; i < index; i++) { |
| if (t.next != null) t = t.next; |
| else t = t.next = token_source.getNextToken(); |
| } |
| return t; |
| } |
| |
| final private int jj_ntk() { |
| if ((jj_nt=token.next) == null) |
| return (jj_ntk = (token.next=token_source.getNextToken()).kind); |
| else |
| return (jj_ntk = jj_nt.kind); |
| } |
| |
| private java.util.Vector<int[]> jj_expentries = new java.util.Vector<int[]>(); |
| private int[] jj_expentry; |
| private int jj_kind = -1; |
| private int[] jj_lasttokens = new int[100]; |
| private int jj_endpos; |
| |
| private void jj_add_error_token(int kind, int pos) { |
| if (pos >= 100) return; |
| if (pos == jj_endpos + 1) { |
| jj_lasttokens[jj_endpos++] = kind; |
| } else if (jj_endpos != 0) { |
| jj_expentry = new int[jj_endpos]; |
| for (int i = 0; i < jj_endpos; i++) { |
| jj_expentry[i] = jj_lasttokens[i]; |
| } |
| boolean exists = false; |
| for (java.util.Enumeration e = jj_expentries.elements(); e.hasMoreElements();) { |
| int[] oldentry = (int[])(e.nextElement()); |
| if (oldentry.length == jj_expentry.length) { |
| exists = true; |
| for (int i = 0; i < jj_expentry.length; i++) { |
| if (oldentry[i] != jj_expentry[i]) { |
| exists = false; |
| break; |
| } |
| } |
| if (exists) break; |
| } |
| } |
| if (!exists) jj_expentries.addElement(jj_expentry); |
| if (pos != 0) jj_lasttokens[(jj_endpos = pos) - 1] = kind; |
| } |
| } |
| |
| public ParseException generateParseException() { |
| jj_expentries.removeAllElements(); |
| boolean[] la1tokens = new boolean[72]; |
| for (int i = 0; i < 72; i++) { |
| la1tokens[i] = false; |
| } |
| if (jj_kind >= 0) { |
| la1tokens[jj_kind] = true; |
| jj_kind = -1; |
| } |
| for (int i = 0; i < 0; i++) { |
| if (jj_la1[i] == jj_gen) { |
| for (int j = 0; j < 32; j++) { |
| if ((jj_la1_0[i] & (1<<j)) != 0) { |
| la1tokens[j] = true; |
| } |
| if ((jj_la1_1[i] & (1<<j)) != 0) { |
| la1tokens[32+j] = true; |
| } |
| if ((jj_la1_2[i] & (1<<j)) != 0) { |
| la1tokens[64+j] = true; |
| } |
| } |
| } |
| } |
| for (int i = 0; i < 72; i++) { |
| if (la1tokens[i]) { |
| jj_expentry = new int[1]; |
| jj_expentry[0] = i; |
| jj_expentries.addElement(jj_expentry); |
| } |
| } |
| jj_endpos = 0; |
| jj_rescan_token(); |
| jj_add_error_token(0, 0); |
| int[][] exptokseq = new int[jj_expentries.size()][]; |
| for (int i = 0; i < jj_expentries.size(); i++) { |
| exptokseq[i] = (int[])jj_expentries.elementAt(i); |
| } |
| return new ParseException(token, exptokseq, tokenImage); |
| } |
| |
| final public void enable_tracing() { |
| } |
| |
| final public void disable_tracing() { |
| } |
| |
| final private void jj_rescan_token() { |
| jj_rescan = true; |
| for (int i = 0; i < 74; i++) { |
| try { |
| JJCalls p = jj_2_rtns[i]; |
| do { |
| if (p.gen > jj_gen) { |
| jj_la = p.arg; jj_lastpos = jj_scanpos = p.first; |
| switch (i) { |
| case 0: jj_3_1(); break; |
| case 1: jj_3_2(); break; |
| case 2: jj_3_3(); break; |
| case 3: jj_3_4(); break; |
| case 4: jj_3_5(); break; |
| case 5: jj_3_6(); break; |
| case 6: jj_3_7(); break; |
| case 7: jj_3_8(); break; |
| case 8: jj_3_9(); break; |
| case 9: jj_3_10(); break; |
| case 10: jj_3_11(); break; |
| case 11: jj_3_12(); break; |
| case 12: jj_3_13(); break; |
| case 13: jj_3_14(); break; |
| case 14: jj_3_15(); break; |
| case 15: jj_3_16(); break; |
| case 16: jj_3_17(); break; |
| case 17: jj_3_18(); break; |
| case 18: jj_3_19(); break; |
| case 19: jj_3_20(); break; |
| case 20: jj_3_21(); break; |
| case 21: jj_3_22(); break; |
| case 22: jj_3_23(); break; |
| case 23: jj_3_24(); break; |
| case 24: jj_3_25(); break; |
| case 25: jj_3_26(); break; |
| case 26: jj_3_27(); break; |
| case 27: jj_3_28(); break; |
| case 28: jj_3_29(); break; |
| case 29: jj_3_30(); break; |
| case 30: jj_3_31(); break; |
| case 31: jj_3_32(); break; |
| case 32: jj_3_33(); break; |
| case 33: jj_3_34(); break; |
| case 34: jj_3_35(); break; |
| case 35: jj_3_36(); break; |
| case 36: jj_3_37(); break; |
| case 37: jj_3_38(); break; |
| case 38: jj_3_39(); break; |
| case 39: jj_3_40(); break; |
| case 40: jj_3_41(); break; |
| case 41: jj_3_42(); break; |
| case 42: jj_3_43(); break; |
| case 43: jj_3_44(); break; |
| case 44: jj_3_45(); break; |
| case 45: jj_3_46(); break; |
| case 46: jj_3_47(); break; |
| case 47: jj_3_48(); break; |
| case 48: jj_3_49(); break; |
| case 49: jj_3_50(); break; |
| case 50: jj_3_51(); break; |
| case 51: jj_3_52(); break; |
| case 52: jj_3_53(); break; |
| case 53: jj_3_54(); break; |
| case 54: jj_3_55(); break; |
| case 55: jj_3_56(); break; |
| case 56: jj_3_57(); break; |
| case 57: jj_3_58(); break; |
| case 58: jj_3_59(); break; |
| case 59: jj_3_60(); break; |
| case 60: jj_3_61(); break; |
| case 61: jj_3_62(); break; |
| case 62: jj_3_63(); break; |
| case 63: jj_3_64(); break; |
| case 64: jj_3_65(); break; |
| case 65: jj_3_66(); break; |
| case 66: jj_3_67(); break; |
| case 67: jj_3_68(); break; |
| case 68: jj_3_69(); break; |
| case 69: jj_3_70(); break; |
| case 70: jj_3_71(); break; |
| case 71: jj_3_72(); break; |
| case 72: jj_3_73(); break; |
| case 73: jj_3_74(); break; |
| } |
| } |
| p = p.next; |
| } while (p != null); |
| } catch(LookaheadSuccess ls) { } |
| } |
| jj_rescan = false; |
| } |
| |
| final private void jj_save(int index, int xla) { |
| JJCalls p = jj_2_rtns[index]; |
| while (p.gen > jj_gen) { |
| if (p.next == null) { p = p.next = new JJCalls(); break; } |
| p = p.next; |
| } |
| p.gen = jj_gen + xla - jj_la; p.first = token; p.arg = xla; |
| } |
| |
| static final class JJCalls { |
| int gen; |
| Token first; |
| int arg; |
| JJCalls next; |
| } |
| |
| } |