final public void CompPIConstructor()

in jackrabbit-spi-commons/src/main/java/org/apache/jackrabbit/spi/commons/query/xpath/XPath.java [7598:7781]


  final public void CompPIConstructor() throws ParseException {
 /*@bgen(jjtree) CompPIConstructor */
  SimpleNode jjtn000 = new SimpleNode(this, JJTCOMPPICONSTRUCTOR);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000);
    try {
      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
      case PINCNameLbrace:
        jj_consume_token(PINCNameLbrace);
                     SimpleNode jjtn001 = new SimpleNode(this, JJTPINCNAMELBRACE);
                     boolean jjtc001 = true;
                     jjtree.openNodeScope(jjtn001);
        try {
                     jjtree.closeNodeScope(jjtn001,  true);
                     jjtc001 = false;
                    jjtn001.processToken(token);
        } finally {
                     if (jjtc001) {
                       jjtree.closeNodeScope(jjtn001,  true);
                     }
        }
        break;
      case PILbrace:
        jj_consume_token(PILbrace);
                                                                                       SimpleNode jjtn002 = new SimpleNode(this, JJTPILBRACE);
                                                                                       boolean jjtc002 = true;
                                                                                       jjtree.openNodeScope(jjtn002);
        try {
                                                                                       jjtree.closeNodeScope(jjtn002,  true);
                                                                                       jjtc002 = false;
                                                                jjtn002.processToken(token);
        } finally {
                                                                                       if (jjtc002) {
                                                                                         jjtree.closeNodeScope(jjtn002,  true);
                                                                                       }
        }
        Expr();
        jj_consume_token(Rbrace);
                                                                                                                                                     SimpleNode jjtn003 = new SimpleNode(this, JJTRBRACE);
                                                                                                                                                     boolean jjtc003 = true;
                                                                                                                                                     jjtree.openNodeScope(jjtn003);
        try {
                                                                                                                                                     jjtree.closeNodeScope(jjtn003,  true);
                                                                                                                                                     jjtc003 = false;
                                                                                                              jjtn003.processToken(token);
        } finally {
                                                                                                                                                     if (jjtc003) {
                                                                                                                                                       jjtree.closeNodeScope(jjtn003,  true);
                                                                                                                                                     }
        }
        jj_consume_token(LbraceExprEnclosure);
                                                                                                                                                                                                                       SimpleNode jjtn004 = new SimpleNode(this, JJTLBRACEEXPRENCLOSURE);
                                                                                                                                                                                                                       boolean jjtc004 = true;
                                                                                                                                                                                                                       jjtree.openNodeScope(jjtn004);
        try {
                                                                                                                                                                                                                       jjtree.closeNodeScope(jjtn004,  true);
                                                                                                                                                                                                                       jjtc004 = false;
                                                                                                                                                                  jjtn004.processToken(token);
        } finally {
                                                                                                                                                                                                                       if (jjtc004) {
                                                                                                                                                                                                                         jjtree.closeNodeScope(jjtn004,  true);
                                                                                                                                                                                                                       }
        }
        break;
      default:
        jj_la1[137] = jj_gen;
        jj_consume_token(-1);
        throw new ParseException();
      }
      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
      case IntegerLiteral:
      case DecimalLiteral:
      case DoubleLiteral:
      case StringLiteral:
      case ProcessingInstructionStart:
      case ProcessingInstructionStartForElementContent:
      case AxisChild:
      case AxisDescendant:
      case AxisParent:
      case AxisAttribute:
      case AxisSelf:
      case AxisDescendantOrSelf:
      case AxisAncestor:
      case AxisFollowingSibling:
      case AxisPrecedingSibling:
      case AxisFollowing:
      case AxisPreceding:
      case AxisAncestorOrSelf:
      case VariableIndicator:
      case ElementType:
      case AttributeType:
      case SchemaElementType:
      case SchemaAttributeType:
      case OrderedOpen:
      case UnorderedOpen:
      case ElementQNameLbrace:
      case AttributeQNameLbrace:
      case PINCNameLbrace:
      case PILbrace:
      case CommentLbrace:
      case ElementLbrace:
      case AttributeLbrace:
      case TextLbrace:
      case Star:
      case NCNameColonStar:
      case StarColonNCName:
      case Root:
      case RootDescendants:
      case UnaryMinus:
      case UnaryPlus:
      case Lpar:
      case At:
      case Some:
      case Every:
      case ForVariable:
      case LetVariable:
      case ValidateLbrace:
      case ValidateSchemaMode:
      case DocumentLpar:
      case DocumentLparForKindTest:
      case DocumentLbrace:
      case NodeLpar:
      case CommentLpar:
      case TextLpar:
      case ProcessingInstructionLpar:
      case ElementTypeForKindTest:
      case ElementTypeForDocumentTest:
      case AttributeTypeForKindTest:
      case SchemaElementTypeForKindTest:
      case SchemaElementTypeForDocumentTest:
      case SchemaAttributeTypeForKindTest:
      case ProcessingInstructionLparForKindTest:
      case TextLparForKindTest:
      case CommentLparForKindTest:
      case NodeLparForKindTest:
      case IfLpar:
      case TypeswitchLpar:
      case Dot:
      case DotDot:
      case QNameLpar:
      case StartTagOpen:
      case StartTagOpenRoot:
      case XmlCommentStart:
      case XmlCommentStartForElementContent:
      case QName:
        Expr();
        break;
      default:
        jj_la1[138] = jj_gen;
        ;
      }
      jj_consume_token(Rbrace);
                                                                                                                                                                                                                                                                                                    SimpleNode jjtn005 = new SimpleNode(this, JJTRBRACE);
                                                                                                                                                                                                                                                                                                    boolean jjtc005 = true;
                                                                                                                                                                                                                                                                                                    jjtree.openNodeScope(jjtn005);
      try {
                                                                                                                                                                                                                                                                                                    jjtree.closeNodeScope(jjtn005,  true);
                                                                                                                                                                                                                                                                                                    jjtc005 = false;
                                                                                                                                                                                                                    jjtn005.processToken(token);
      } finally {
                                                                                                                                                                                                                                                                                                    if (jjtc005) {
                                                                                                                                                                                                                                                                                                      jjtree.closeNodeScope(jjtn005,  true);
                                                                                                                                                                                                                                                                                                    }
      }
    } catch (Throwable jjte000) {
    if (jjtc000) {
      jjtree.clearNodeScope(jjtn000);
      jjtc000 = false;
    } else {
      jjtree.popNode();
    }
    if (jjte000 instanceof RuntimeException) {
      {if (true) throw (RuntimeException)jjte000;}
    }
    if (jjte000 instanceof ParseException) {
      {if (true) throw (ParseException)jjte000;}
    }
    {if (true) throw (Error)jjte000;}
    } finally {
    if (jjtc000) {
      jjtree.closeNodeScope(jjtn000, true);
    }
    }
  }