All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.sourceforge.pmd.lang.plsql.ast.PLSQLParserImpl Maven / Gradle / Ivy

There is a newer version: 7.7.0
Show newest version
/* Generated By:JJTree&JavaCC: Do not edit this line. PLSQLParserImpl.java */
/* Copyright (C) 2002 Albert Tumanov

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

*/

package net.sourceforge.pmd.lang.plsql.ast;

import static net.sourceforge.pmd.lang.plsql.ast.PLSQLTokenKinds.*;

import net.sourceforge.pmd.lang.document.Chars;
import net.sourceforge.pmd.lang.plsql.ast.internal.ParsingExclusion;

import java.util.ArrayList;
import java.util.List;

/**
 * @deprecated Since 7.3.0. PLSQLParserImpl should have been package private because this is an implementation class
 * that should not be used directly.
 */
@Deprecated
public class PLSQLParserImpl/*@bgen(jjtree)*/implements PLSQLParserImplTreeConstants {/*@bgen(jjtree)*/
  protected net.sourceforge.pmd.lang.ast.impl.javacc.JjtreeBuilder jjtree = new net.sourceforge.pmd.lang.ast.impl.javacc.JjtreeBuilder();
  /**
   Return canonical version of the Oracle
  */
  static String canonicalName(String name)
  {
    StringBuilder s =  null ;


    if (null == name) {
      return name;
    }
    else if (-1 == name.indexOf('"') )
    {
      name = name.toUpperCase();
      s = new StringBuilder(name.trim());
    }
    else
    {
      StringBuilder oldString = new StringBuilder( name.trim().length());
      s = new StringBuilder(name.trim());
      boolean quotedCharacter = false ;
      for (int i=0; i
   * Usage: LOOKAHEAD({isKeyword("WAIT")}) KEYWORD("WAIT")
   */
  private boolean isKeyword(String keyword) {
    return getToken(1).kind == IDENTIFIER
        && getToken(1).getImage().equalsIgnoreCase(keyword)
        // quoted identifiers are excluded
        && getToken(1).getText().charAt(0) != '"';
  }

/**
 * 2006-05-22 - Matthias Hendler - Added parsing of triggers and global functions/procedures
 *                                 Refactored printing of custom tags into the XML/DOM.
 *                                 Custom tags are language independent. Reserved tags are linked
 *                                 to the documented language like RETURN, PARAM and THROWS.
 */

/**
 * 2006-05-22 - Matthias Hendler - added globalBody()
 */
  final public ASTInput Input() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) Input */
  ASTInput jjtn000 = new ASTInput(JJTINPUT);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));token_source.exclusions.clear();
    try {
      label_1:
      while (true) {
        if (jj_2_1(1)) {
          ;
        } else {
          break label_1;
        }
        if (jj_2_3(7)) {
          PackageSpecification();
        } else if (jj_2_4(7)) {
          PackageBody();
        } else if (jj_2_5(6)) {
          TypeSpecification();
        } else if (jj_2_6(6)) {
          Table();
        } else if (jj_2_7(6)) {
          View();
        } else if (jj_2_8(6)) {
          TriggerUnit();
        } else if (jj_2_9(6)) {
          AlterTrigger();
        } else if (jj_2_10(6)) {
          Synonym();
        } else if (jj_2_11(6)) {
          Directory();
        } else if (jj_2_12(6)) {
          DatabaseLink();
        } else if (jj_2_13(6)) {
          Global();
        } else if (jj_2_14(1)) {
          label_2:
          while (true) {
            DDLCommand();
            if (jj_2_2(6)) {
              ;
            } else {
              break label_2;
            }
          }
        } else if (jj_2_15(2)) {
          SqlPlusCommand();
        } else {
          switch (jj_nt.kind) {
          case UPDATE:
            UpdateStatement();
            switch (jj_nt.kind) {
            case SEMICOLON:
              jj_consume_token(SEMICOLON);
              break;
            default:
              jj_la1[0] = jj_gen;
              ;
            }
            break;
          case DELETE:
            DeleteStatement();
            switch (jj_nt.kind) {
            case SEMICOLON:
              jj_consume_token(SEMICOLON);
              break;
            default:
              jj_la1[1] = jj_gen;
              ;
            }
            break;
          case INSERT:
            InsertStatement();
            switch (jj_nt.kind) {
            case SEMICOLON:
              jj_consume_token(SEMICOLON);
              break;
            default:
              jj_la1[2] = jj_gen;
              ;
            }
            break;
          case SELECT:
          case WITH:
            SelectStatement();
            switch (jj_nt.kind) {
            case SEMICOLON:
              jj_consume_token(SEMICOLON);
              break;
            default:
              jj_la1[3] = jj_gen;
              ;
            }
            break;
          case MERGE:
            MergeStatement();
            switch (jj_nt.kind) {
            case SEMICOLON:
              jj_consume_token(SEMICOLON);
              break;
            default:
              jj_la1[4] = jj_gen;
              ;
            }
            break;
          case LOCK:
          case COMMIT:
          case ROLLBACK:
          case SAVEPOINT:
            switch (jj_nt.kind) {
            case COMMIT:
              jj_consume_token(COMMIT);
              break;
            case ROLLBACK:
              jj_consume_token(ROLLBACK);
              break;
            case SAVEPOINT:
              jj_consume_token(SAVEPOINT);
              break;
            case LOCK:
              jj_consume_token(LOCK);
              jj_consume_token(TABLE);
              break;
            case WITH:
              jj_consume_token(WITH);
              break;
            default:
              jj_la1[5] = jj_gen;
              jj_consume_token(-1);
              throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
            }
            ReadPastNextOccurrence(";");
            break;
          default:
            jj_la1[6] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
        }
        label_3:
        while (true) {
          switch (jj_nt.kind) {
          case SLASH:
            ;
            break;
          default:
            jj_la1[7] = jj_gen;
            break label_3;
          }
          jj_consume_token(SLASH);
        }
      }
      jj_consume_token(0);
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
        jjtc000 = false;
        List exclusions = token_source.exclusions;
        if (exclusions != null) {
          // System.err.println("ParsingExclusions:");
          for (ParsingExclusion ex : exclusions) {
            // System.err.print("  Lines " + ex.getBeginLine() + " - " + ex.getEndLine());
            // if (ex.getReason() != null) {
            //   System.err.println(": " + ex.getReason());
            // } else {
            //   System.err.println("");
            // }
            jjtn000.addExcludedLineRange(ex.getBeginLine(), ex.getEndLine());
          }
        }
        {if (true) return jjtn000 ;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
            {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
          }
          {if (true) throw (Error)jjte000;}
    } finally {
          if (jjtc000) {
            jjtree.closeNodeScope(jjtn000, true, getToken(0));
          }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTDDLCommand DDLCommand() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) DDLCommand */
 ASTDDLCommand jjtn000 = new ASTDDLCommand(JJTDDLCOMMAND);
 boolean jjtc000 = true;
 jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null ;
    try {
      if (jj_2_16(1)) {
        if (isKeyword("COMMENT")) {

        } else {
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        simpleNode = Comment();
      } else if (jj_2_17(1)) {
        simpleNode = DDLEvent();
        ReadPastNextOccurrence(";");
      } else {
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
    jjtree.closeNodeScope(jjtn000, true, getToken(0));
    jjtc000 = false;
    jjtn000.setImage(simpleNode.getImage()) ;  {if (true) return jjtn000 ;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
      {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
    }
    {if (true) throw (Error)jjte000;}
    } finally {
    if (jjtc000) {
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
    }
    }
    throw new Error("Missing return statement in function");
  }

/*
 * See https://docs.oracle.com/en/database/oracle/oracle-database/21/sqpug/SQL-Plus-reference.html#GUID-C3D4A718-56AD-4872-ADFF-A216FF70EDF2
 */
  final public ASTSqlPlusCommand SqlPlusCommand() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) SqlPlusCommand */
  ASTSqlPlusCommand jjtn000 = new ASTSqlPlusCommand(JJTSQLPLUSCOMMAND);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));StringBuilder sb = new StringBuilder();
    try {
      switch (jj_nt.kind) {
      case 25:
        jj_consume_token(25);
        label_4:
        while (true) {
          switch (jj_nt.kind) {
          case _CHARACTER:
          case SPECIAL_CHARACTERS:
          case DELIMITER:
            ;
            break;
          default:
            jj_la1[8] = jj_gen;
            break label_4;
          }
          switch (jj_nt.kind) {
          case _CHARACTER:
            jj_consume_token(_CHARACTER);
            break;
          case SPECIAL_CHARACTERS:
            jj_consume_token(SPECIAL_CHARACTERS);
            break;
          case DELIMITER:
            jj_consume_token(DELIMITER);
            break;
          default:
            jj_la1[9] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
        }
        break;
      case AROBASE:
        jj_consume_token(AROBASE);
        label_5:
        while (true) {
          switch (jj_nt.kind) {
          case _CHARACTER:
          case SPECIAL_CHARACTERS:
          case DELIMITER:
            ;
            break;
          default:
            jj_la1[10] = jj_gen;
            break label_5;
          }
          switch (jj_nt.kind) {
          case _CHARACTER:
            jj_consume_token(_CHARACTER);
            break;
          case SPECIAL_CHARACTERS:
            jj_consume_token(SPECIAL_CHARACTERS);
            break;
          case DELIMITER:
            jj_consume_token(DELIMITER);
            break;
          default:
            jj_la1[11] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
        }
        break;
      default:
        jj_la1[26] = jj_gen;
        if (isKeyword("ACCEPT")) {
          KEYWORD("ACCEPT");
        } else if (isKeyword("ACC")) {
          KEYWORD("ACC");
        } else if (isKeyword("ARCHIVE")) {
          KEYWORD("ARCHIVE");
                                                          sb.append(token.getImage()).append(' ');
          jj_consume_token(26);
                                                                                                           sb.append(token.getImage()).append(' ');
          KEYWORD("LIST");
        } else {
          switch (jj_nt.kind) {
          case ATTRIBUTE:
            jj_consume_token(ATTRIBUTE);
            break;
          default:
            jj_la1[27] = jj_gen;
            if (isKeyword("BREAK")) {
              KEYWORD("BREAK");
            } else if (isKeyword("BTITLE")) {
              KEYWORD("BTITLE");
            } else if (isKeyword("CLEAR")) {
              KEYWORD("CLEAR");
            } else {
              switch (jj_nt.kind) {
              case COLUMN:
                jj_consume_token(COLUMN);
                break;
              default:
                jj_la1[28] = jj_gen;
                if (isKeyword("COL")) {
                  KEYWORD("COL");
                } else if (isKeyword("COMPUTE")) {
                  KEYWORD("COMPUTE");
                } else if (isKeyword("COMP")) {
                  KEYWORD("COMP");
                } else {
                  switch (jj_nt.kind) {
                  case CONNECT:
                    jj_consume_token(CONNECT);
                    break;
                  default:
                    jj_la1[29] = jj_gen;
                    if (isKeyword("CONN")) {
                      KEYWORD("CONN");
                    } else if (isKeyword("COPY")) {
                      KEYWORD("COPY");
                    } else if (isKeyword("DEFINE")) {
                      KEYWORD("DEFINE");
                    } else if (isKeyword("DEF")) {
                      KEYWORD("DEF");
                    } else if (isKeyword("DESCRIBE")) {
                      KEYWORD("DESCRIBE");
                    } else if (isKeyword("DESCR")) {
                      KEYWORD("DESCR");
                    } else if (isKeyword("DESC")) {
                      KEYWORD("DESC");
                    } else if (isKeyword("DISCONNECT")) {
                      KEYWORD("DISCONNECT");
                    } else if (isKeyword("DISC")) {
                      KEYWORD("DISC");
                    } else {
                      switch (jj_nt.kind) {
                      case EXECUTE:
                        jj_consume_token(EXECUTE);
                        break;
                      default:
                        jj_la1[30] = jj_gen;
                        if (isKeyword("EXEC")) {
                          KEYWORD("EXEC");
                        } else {
                          switch (jj_nt.kind) {
                          case EXIT:
                            jj_consume_token(EXIT);
                            break;
                          default:
                            jj_la1[31] = jj_gen;
                            if (isKeyword("HOST")) {
                              KEYWORD("HOST");
                              label_6:
                              while (true) {
                                switch (jj_nt.kind) {
                                case _CHARACTER:
                                case SPECIAL_CHARACTERS:
                                case DELIMITER:
                                  ;
                                  break;
                                default:
                                  jj_la1[12] = jj_gen;
                                  break label_6;
                                }
                                switch (jj_nt.kind) {
                                case _CHARACTER:
                                  jj_consume_token(_CHARACTER);
                                  break;
                                case SPECIAL_CHARACTERS:
                                  jj_consume_token(SPECIAL_CHARACTERS);
                                  break;
                                case DELIMITER:
                                  jj_consume_token(DELIMITER);
                                  break;
                                default:
                                  jj_la1[13] = jj_gen;
                                  jj_consume_token(-1);
                                  throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
                                }
                              }
                            } else {
                              switch (jj_nt.kind) {
                              case 27:
                                jj_consume_token(27);
                                label_7:
                                while (true) {
                                  switch (jj_nt.kind) {
                                  case _CHARACTER:
                                  case SPECIAL_CHARACTERS:
                                  case DELIMITER:
                                    ;
                                    break;
                                  default:
                                    jj_la1[14] = jj_gen;
                                    break label_7;
                                  }
                                  switch (jj_nt.kind) {
                                  case _CHARACTER:
                                    jj_consume_token(_CHARACTER);
                                    break;
                                  case SPECIAL_CHARACTERS:
                                    jj_consume_token(SPECIAL_CHARACTERS);
                                    break;
                                  case DELIMITER:
                                    jj_consume_token(DELIMITER);
                                    break;
                                  default:
                                    jj_la1[15] = jj_gen;
                                    jj_consume_token(-1);
                                    throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
                                  }
                                }
                                break;
                              case BANG:
                                jj_consume_token(BANG);
                                label_8:
                                while (true) {
                                  switch (jj_nt.kind) {
                                  case _CHARACTER:
                                  case SPECIAL_CHARACTERS:
                                  case DELIMITER:
                                    ;
                                    break;
                                  default:
                                    jj_la1[16] = jj_gen;
                                    break label_8;
                                  }
                                  switch (jj_nt.kind) {
                                  case _CHARACTER:
                                    jj_consume_token(_CHARACTER);
                                    break;
                                  case SPECIAL_CHARACTERS:
                                    jj_consume_token(SPECIAL_CHARACTERS);
                                    break;
                                  case DELIMITER:
                                    jj_consume_token(DELIMITER);
                                    break;
                                  default:
                                    jj_la1[17] = jj_gen;
                                    jj_consume_token(-1);
                                    throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
                                  }
                                }
                                break;
                              default:
                                jj_la1[32] = jj_gen;
                                if (isKeyword("INPUT")) {
                                  KEYWORD("INPUT");
                                } else if (isKeyword("PASSWORD")) {
                                  KEYWORD("PASSWORD");
                                } else if (isKeyword("PASSW")) {
                                  KEYWORD("PASSW");
                                } else if (isKeyword("PAUSE")) {
                                  KEYWORD("PAUSE");
                                } else if (isKeyword("PRINT")) {
                                  KEYWORD("PRINT");
                                } else if (isKeyword("PROMPT")) {
                                  KEYWORD("PROMPT");
                                  label_9:
                                  while (true) {
                                    switch (jj_nt.kind) {
                                    case _CHARACTER:
                                    case SPECIAL_CHARACTERS:
                                    case DELIMITER:
                                      ;
                                      break;
                                    default:
                                      jj_la1[18] = jj_gen;
                                      break label_9;
                                    }
                                    switch (jj_nt.kind) {
                                    case _CHARACTER:
                                      jj_consume_token(_CHARACTER);
                                      break;
                                    case SPECIAL_CHARACTERS:
                                      jj_consume_token(SPECIAL_CHARACTERS);
                                      break;
                                    case DELIMITER:
                                      jj_consume_token(DELIMITER);
                                      break;
                                    default:
                                      jj_la1[19] = jj_gen;
                                      jj_consume_token(-1);
                                      throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
                                    }
                                  }
                                } else if (isKeyword("QUIT")) {
                                  KEYWORD("QUIT");
                                } else if (isKeyword("RECOVER")) {
                                  KEYWORD("RECOVER");
                                } else if (isKeyword("REMARK")) {
                                  KEYWORD("REMARK");
                                  label_10:
                                  while (true) {
                                    switch (jj_nt.kind) {
                                    case _CHARACTER:
                                    case SPECIAL_CHARACTERS:
                                    case DELIMITER:
                                      ;
                                      break;
                                    default:
                                      jj_la1[20] = jj_gen;
                                      break label_10;
                                    }
                                    switch (jj_nt.kind) {
                                    case _CHARACTER:
                                      jj_consume_token(_CHARACTER);
                                      break;
                                    case SPECIAL_CHARACTERS:
                                      jj_consume_token(SPECIAL_CHARACTERS);
                                      break;
                                    case DELIMITER:
                                      jj_consume_token(DELIMITER);
                                      break;
                                    default:
                                      jj_la1[21] = jj_gen;
                                      jj_consume_token(-1);
                                      throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
                                    }
                                  }
                                } else if (isKeyword("REM")) {
                                  KEYWORD("REM");
                                  label_11:
                                  while (true) {
                                    switch (jj_nt.kind) {
                                    case _CHARACTER:
                                    case SPECIAL_CHARACTERS:
                                    case DELIMITER:
                                      ;
                                      break;
                                    default:
                                      jj_la1[22] = jj_gen;
                                      break label_11;
                                    }
                                    switch (jj_nt.kind) {
                                    case _CHARACTER:
                                      jj_consume_token(_CHARACTER);
                                      break;
                                    case SPECIAL_CHARACTERS:
                                      jj_consume_token(SPECIAL_CHARACTERS);
                                      break;
                                    case DELIMITER:
                                      jj_consume_token(DELIMITER);
                                      break;
                                    default:
                                      jj_la1[23] = jj_gen;
                                      jj_consume_token(-1);
                                      throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
                                    }
                                  }
                                } else {
                                  switch (jj_nt.kind) {
                                  case SET:
                                    jj_consume_token(SET);
                                    break;
                                  default:
                                    jj_la1[33] = jj_gen;
                                    if (isKeyword("SHOW")) {
                                      KEYWORD("SHOW");
                                    } else if (isKeyword("SHO")) {
                                      KEYWORD("SHO");
                                    } else {
                                      switch (jj_nt.kind) {
                                      case SHUTDOWN:
                                        jj_consume_token(SHUTDOWN);
                                        break;
                                      default:
                                        jj_la1[34] = jj_gen;
                                        if (isKeyword("SPOOL")) {
                                          KEYWORD("SPOOL");
                                        } else {
                                          switch (jj_nt.kind) {
                                          case START:
                                            jj_consume_token(START);
                                            label_12:
                                            while (true) {
                                              switch (jj_nt.kind) {
                                              case _CHARACTER:
                                              case SPECIAL_CHARACTERS:
                                              case DELIMITER:
                                                ;
                                                break;
                                              default:
                                                jj_la1[24] = jj_gen;
                                                break label_12;
                                              }
                                              switch (jj_nt.kind) {
                                              case _CHARACTER:
                                                jj_consume_token(_CHARACTER);
                                                break;
                                              case SPECIAL_CHARACTERS:
                                                jj_consume_token(SPECIAL_CHARACTERS);
                                                break;
                                              case DELIMITER:
                                                jj_consume_token(DELIMITER);
                                                break;
                                              default:
                                                jj_la1[25] = jj_gen;
                                                jj_consume_token(-1);
                                                throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
                                              }
                                            }
                                            break;
                                          case STARTUP:
                                            jj_consume_token(STARTUP);
                                            break;
                                          default:
                                            jj_la1[35] = jj_gen;
                                            if (isKeyword("STORE")) {
                                              KEYWORD("STORE");
                                            } else if (isKeyword("TIMING")) {
                                              KEYWORD("TIMING");
                                            } else if (isKeyword("TTITLE")) {
                                              KEYWORD("TTITLE");
                                            } else if (isKeyword("UNDEFINE")) {
                                              KEYWORD("UNDEFINE");
                                            } else if (isKeyword("VARIABLE")) {
                                              KEYWORD("VARIABLE");
                                            } else if (isKeyword("VAR")) {
                                              KEYWORD("VAR");
                                            } else if (isKeyword("WHENEVER")) {
                                              KEYWORD("WHENEVER");
                                            } else if (isKeyword("COMMENT")) {
                                              KEYWORD("COMMENT");
                                            } else {
                                              switch (jj_nt.kind) {
                                              case GRANT:
                                                jj_consume_token(GRANT);
                                                break;
                                              case REVOKE:
                                                jj_consume_token(REVOKE);
                                                break;
                                              case DROP:
                                                jj_consume_token(DROP);
                                                break;
                                              case DOT:
                                                jj_consume_token(DOT);
                                                jj_consume_token(ATTACH);
                                                break;
                                              default:
                                                jj_la1[36] = jj_gen;
                                                jj_consume_token(-1);
                                                throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
                                              }
                                            }
                                          }
                                        }
                                      }
                                    }
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    sb.append(token.getImage()) ; sb.append(" ") ; sb.append(Read2NextTokenOccurrence(EOL)) ;
    jjtree.closeNodeScope(jjtn000, true, getToken(0));
    jjtc000 = false;
    jjtn000.setImage(sb.toString()) ; {if (true) return jjtn000 ;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
      {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
    }
    {if (true) throw (Error)jjte000;}
    } finally {
    if (jjtc000) {
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
    }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * All global definitions of triggers, functions and procedures are evaluated here.
 * Every occurrence goes under a new PACKAGE-Node in the XML document.
 * This happens, cause a global "block" does not have a definied start and end token
 * like a package specification or a package body.
 * Thats why every construct is handled like a new part of the global package.
 * To overcome this problem, I could use an infinity lookahead - which should solve the problem
 * and slow down the whole parsing.
 * Another idea would be to lookahead the next tokens and decide wether they belong to a package definition or not.
 * Then I could decide to stay in this global parsing state. By now lookahead gives the parser a hint to
 * choose the correct way on a given base. So we can't negate it easily.
 * On the other hand I could also hold the global state in a global variable.
 * But this does not seems the correct way to solve the problem, I think.
 *
 * 2006-05-17 - Matthias Hendler - added
 */
  final public ASTGlobal Global() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) Global */
  ASTGlobal jjtn000 = new ASTGlobal(JJTGLOBAL);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      if (jj_2_18(2147483647)) {
        label_13:
        while (true) {
          switch (jj_nt.kind) {
          case 48:
            ;
            break;
          default:
            jj_la1[37] = jj_gen;
            break label_13;
          }
          Label();
        }
        Block();
        jj_consume_token(SEMICOLON);
      } else if (jj_2_19(4)) {
        ProgramUnit();
      } else {
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
        jjtc000 = false;
        {if (true) return jjtn000 ;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
            {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
          }
          {if (true) throw (Error)jjte000;}
    } finally {
          if (jjtc000) {
            jjtree.closeNodeScope(jjtn000, true, getToken(0));
          }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTBlock Block() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) Block */
  ASTBlock jjtn000 = new ASTBlock(JJTBLOCK);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      switch (jj_nt.kind) {
      case DECLARE:
        jj_consume_token(DECLARE);
        switch (jj_nt.kind) {
        case 26:
        case 29:
        case 30:
        case 32:
        case 33:
        case 34:
        case 35:
        case 36:
        case 37:
        case 38:
        case 39:
        case 40:
        case 41:
        case 42:
        case 43:
        case 44:
        case DEFINER:
        case CURRENT_USER:
        case SERIALLY_REUSABLE:
        case RESTRICT_REFERENCES:
        case EXCEPTION_INIT:
        case AUTONOMOUS_TRANSACTION:
        case LANGUAGE:
        case INLINE:
        case ALTER:
        case AND:
        case ANY:
        case ASC:
        case AT:
        case CHECK:
        case CLUSTER:
        case COMPRESS:
        case CREATE:
        case CURSOR:
        case DESC:
        case DROP:
        case EXCLUSIVE:
        case FETCH:
        case FUNCTION:
        case GOTO:
        case HAVING:
        case INDEX:
        case INSERT:
        case INTERSECT:
        case IS:
        case LIKE:
        case LOCK:
        case MINUS:
        case MODE:
        case NOT:
        case NULL:
        case OPTION:
        case OR:
        case ORDER:
        case PROCEDURE:
        case SHARE:
        case SUBTYPE:
        case THEN:
        case TO:
        case TYPE:
        case UPDATE:
        case ADD:
        case AGGREGATE:
        case APPLY:
        case ARRAY:
        case ATTRIBUTE:
        case AUTHID:
        case BINARY_INTEGER:
        case BODY:
        case BOOLEAN:
        case BULK:
        case BYTE:
        case CASCADE:
        case CHAR:
        case CHAR_BASE:
        case CLOSE:
        case COALESCE:
        case COLLECT:
        case COLUMN:
        case COMMIT:
        case CONSTANT:
        case CONSTRAINT:
        case CONSTRUCTOR:
        case CONTINUE:
        case CONVERT:
        case CROSS:
        case CUBE:
        case CURRENT:
        case CURRVAL:
        case DATA:
        case DATE:
        case DAY:
        case DECIMAL:
        case DEFINITION:
        case DELETE:
        case DISABLE:
        case DO:
        case DUPLICATED:
        case EDITIONABLE:
        case ELEMENT:
        case ELSIF:
        case ENABLE:
        case ESCAPE:
        case EXCEPT:
        case EXCEPTIONS:
        case EXECUTE:
        case EXIT:
        case EXTERNAL:
        case EXTENDED:
        case EXTENDS:
        case EXTRACT:
        case FALSE:
        case FINAL:
        case FLOAT:
        case FORALL:
        case FOREIGN:
        case FORCE:
        case FULL:
        case GLOBAL:
        case GROUPING:
        case HASH:
        case HEAP:
        case HOUR:
        case IMMEDIATE:
        case INNER:
        case INDICES:
        case INCLUDING:
        case INDEXTYPE:
        case INDICATOR:
        case INFINITE:
        case INSTANTIABLE:
        case INTEGER:
        case INTERFACE:
        case INTERVAL:
        case INVALIDATE:
        case ISOLATION:
        case JAVA:
        case JOIN:
        case KEY:
        case LEVEL:
        case LIKEC:
        case LIKE2:
        case LIKE4:
        case LIMIT:
        case LIMITED:
        case LONG:
        case LOOP:
        case MAP:
        case MEMBER:
        case MERGE:
        case METADATA:
        case MINUTE:
        case MLSLABEL:
        case MODIFY:
        case MOD:
        case MONTH:
        case NAN:
        case NATURAL:
        case NATURALN:
        case NEW:
        case NEXT:
        case NEXTVAL:
        case NO:
        case NOCOPY:
        case NONE:
        case NONEDITIONABLE:
        case NULLIF:
        case NULLS:
        case NUMBER:
        case BFILE_BASE:
        case BLOB_BASE:
        case CLOB_BASE:
        case DATE_BASE:
        case NUMBER_BASE:
        case OBJECT:
        case OCIROWID:
        case OFFSET:
        case OID:
        case ONLY:
        case OPAQUE:
        case OPEN:
        case OPERATOR:
        case ORGANIZATION:
        case OTHERS:
        case OUT:
        case OUTER:
        case OVERRIDING:
        case PACKAGE:
        case PARTITION:
        case PCTFREE:
        case PERCENT:
        case PLS_INTEGER:
        case POSITIVE:
        case POSITIVEN:
        case PRAGMA:
        case PRESERVE:
        case PRIOR:
        case PRIMARY:
        case PRIVATE:
        case RAISE:
        case RANGE:
        case RAW:
        case REAL:
        case RECORD:
        case REFERENCES:
        case REGEXP_LIKE:
        case RELEASE:
        case RELIES_ON:
        case RENAME:
        case RESULT:
        case RETURN:
        case RETURNING:
        case REVERSE:
        case ROLLBACK:
        case ROLLUP:
        case ROW:
        case ROWS:
        case ROWID:
        case ROWNUM:
        case ROWTYPE:
        case SAVE:
        case SAVEPOINT:
        case SECOND:
        case SELF:
        case SEPARATE:
        case SETS:
        case SIBLINGS:
        case SHARDED:
        case SHARING:
        case SMALLINT:
        case SOME:
        case SPACE:
        case SQLCODE:
        case SQLERRM:
        case STATIC:
        case SUBSTITUTABLE:
        case SUCCESSFUL:
        case SYNONYM:
        case SYS_REFCURSOR:
        case TEMPORARY:
        case TIES:
        case TIME:
        case TIMESTAMP:
        case TIMEZONE_REGION:
        case TIMEZONE_ABBR:
        case TIMEZONE_MINUTE:
        case TIMEZONE_HOUR:
        case TRANSACTION:
        case TRIGGER:
        case TRUE:
        case UI:
        case UNDER:
        case USING:
        case WHILE:
        case YES:
        case A:
        case VARCHAR:
        case VARCHAR2:
        case DOUBLE:
        case DEC:
        case PRECISION:
        case INT:
        case NUMERIC:
        case SIGNTYPE:
        case NCHAR:
        case NVARCHAR2:
        case STRING:
        case UROWID:
        case VARRAY:
        case VARYING:
        case BFILE:
        case BLOB:
        case CLOB:
        case NCLOB:
        case YEAR:
        case LOCAL:
        case ZONE:
        case CHARACTER:
        case AFTER:
        case BEFORE:
        case OLD:
        case PARENT:
        case GENERATED:
        case SCOPE:
        case INITIALLY:
        case DEFERRABLE:
        case DEFERRED:
        case CC_IF:
        case ANALYZE:
        case ASSOCIATE:
        case AUDIT:
        case COMPOUND:
        case DATABASE:
        case CALL:
        case DISASSOCIATE:
        case EACH:
        case FOLLOWS:
        case LOGOFF:
        case LOGON:
        case NESTED:
        case NOAUDIT:
        case SCHEMA:
        case SERVERERROR:
        case SHUTDOWN:
        case STARTUP:
        case STATEMENT:
        case STATISTICS:
        case SUSPEND:
        case TRUNCATE:
        case WRAPPED:
        case LIBRARY:
        case NAME:
        case STRUCT:
        case CONTEXT:
        case PARAMETERS:
        case LENGTH:
        case TDO:
        case MAXLEN:
        case CHARSETID:
        case CHARSETFORM:
        case ACCESSIBLE:
        case ATTACH:
        case CAST:
        case TREAT:
        case LEFT:
        case RIGHT:
        case BOTH:
        case EMPTY:
        case MULTISET:
        case SUBMULTISET:
        case LEADING:
        case TRAILING:
        case CHAR_CS:
        case NCHAR_CS:
        case DBTIMEZONE:
        case SESSIONTIMEZONE:
        case AUTHENTICATED:
        case LINK:
        case SHARED:
        case DIRECTORY:
        case USER:
        case READ:
        case LATERAL:
        case NOCYCLE:
        case CONNECT_BY_ROOT:
        case IDENTIFIER:
        case QUOTED_LITERAL:
        case JAVA_INTERFACE_CLASS:
        case 493:
          DeclarativeSection();
          break;
        default:
          jj_la1[38] = jj_gen;
          ;
        }
        break;
      default:
        jj_la1[39] = jj_gen;
        ;
      }
      jj_consume_token(BEGIN);
      label_14:
      while (true) {
        switch (jj_nt.kind) {
        case LPAREN:
        case PLUSSIGN:
        case MINUSSIGN:
        case STAR:
        case 26:
        case 29:
        case 30:
        case 32:
        case 33:
        case 34:
        case 35:
        case 36:
        case 37:
        case 38:
        case 39:
        case 40:
        case 41:
        case 42:
        case 43:
        case 44:
        case 48:
        case DEFINER:
        case CURRENT_USER:
        case SERIALLY_REUSABLE:
        case RESTRICT_REFERENCES:
        case EXCEPTION_INIT:
        case AUTONOMOUS_TRANSACTION:
        case LANGUAGE:
        case INLINE:
        case ALTER:
        case AND:
        case ANY:
        case ASC:
        case AT:
        case BEGIN:
        case CASE:
        case CHECK:
        case CLUSTER:
        case COMPRESS:
        case CREATE:
        case DECLARE:
        case DESC:
        case DROP:
        case EXCLUSIVE:
        case FETCH:
        case FOR:
        case GOTO:
        case HAVING:
        case IF:
        case INDEX:
        case INSERT:
        case INTERSECT:
        case IS:
        case LIKE:
        case LOCK:
        case MINUS:
        case MODE:
        case NOT:
        case NULL:
        case OPTION:
        case OR:
        case SELECT:
        case SHARE:
        case SQL:
        case SUBTYPE:
        case THEN:
        case TO:
        case TYPE:
        case UPDATE:
        case WITH:
        case ADD:
        case AGGREGATE:
        case APPLY:
        case ARRAY:
        case ATTRIBUTE:
        case AUTHID:
        case BINARY_INTEGER:
        case BODY:
        case BOOLEAN:
        case BULK:
        case BYTE:
        case CASCADE:
        case CHAR:
        case CHAR_BASE:
        case CLOSE:
        case COALESCE:
        case COLLECT:
        case COLUMN:
        case COMMIT:
        case CONSTANT:
        case CONSTRAINT:
        case CONSTRUCTOR:
        case CONTINUE:
        case CONVERT:
        case CROSS:
        case CUBE:
        case CURRENT:
        case CURRVAL:
        case DATA:
        case DATE:
        case DAY:
        case DECIMAL:
        case DEFINITION:
        case DELETE:
        case DISABLE:
        case DO:
        case DUPLICATED:
        case EDITIONABLE:
        case ELEMENT:
        case ELSIF:
        case ENABLE:
        case ESCAPE:
        case EXCEPT:
        case EXCEPTIONS:
        case EXECUTE:
        case EXIT:
        case EXTERNAL:
        case EXTENDED:
        case EXTENDS:
        case EXTRACT:
        case FALSE:
        case FINAL:
        case FLOAT:
        case FORALL:
        case FOREIGN:
        case FORCE:
        case FULL:
        case GLOBAL:
        case GROUPING:
        case HASH:
        case HEAP:
        case HOUR:
        case IMMEDIATE:
        case INNER:
        case INDICES:
        case INCLUDING:
        case INDEXTYPE:
        case INDICATOR:
        case INFINITE:
        case INSTANTIABLE:
        case INTEGER:
        case INTERFACE:
        case INTERVAL:
        case INVALIDATE:
        case ISOLATION:
        case JAVA:
        case JOIN:
        case KEY:
        case LEVEL:
        case LIKEC:
        case LIKE2:
        case LIKE4:
        case LIMIT:
        case LIMITED:
        case LONG:
        case LOOP:
        case MAP:
        case MEMBER:
        case MERGE:
        case METADATA:
        case MINUTE:
        case MLSLABEL:
        case MODIFY:
        case MOD:
        case MONTH:
        case NAN:
        case NATURAL:
        case NATURALN:
        case NEW:
        case NEW_DOT:
        case NEXT:
        case NEXTVAL:
        case NO:
        case NOCOPY:
        case NONE:
        case NONEDITIONABLE:
        case NULLIF:
        case NULLS:
        case NUMBER:
        case BFILE_BASE:
        case BLOB_BASE:
        case CLOB_BASE:
        case DATE_BASE:
        case NUMBER_BASE:
        case OBJECT:
        case OCIROWID:
        case OFFSET:
        case OID:
        case ONLY:
        case OPAQUE:
        case OPEN:
        case OPERATOR:
        case ORGANIZATION:
        case OTHERS:
        case OUT:
        case OUTER:
        case OVERRIDING:
        case PACKAGE:
        case PARTITION:
        case PCTFREE:
        case PERCENT:
        case PIPE:
        case PLS_INTEGER:
        case POSITIVE:
        case POSITIVEN:
        case PRAGMA:
        case PRESERVE:
        case PRIOR:
        case PRIMARY:
        case PRIVATE:
        case RAISE:
        case RANGE:
        case RAW:
        case REAL:
        case RECORD:
        case REFERENCES:
        case REGEXP_LIKE:
        case RELEASE:
        case RELIES_ON:
        case RENAME:
        case RESULT:
        case RETURN:
        case RETURNING:
        case REVERSE:
        case ROLLBACK:
        case ROLLUP:
        case ROW:
        case ROWS:
        case ROWID:
        case ROWNUM:
        case ROWTYPE:
        case SAVE:
        case SAVEPOINT:
        case SECOND:
        case SELF:
        case SEPARATE:
        case SET:
        case SETS:
        case SIBLINGS:
        case SHARDED:
        case SHARING:
        case SMALLINT:
        case SOME:
        case SPACE:
        case SQLCODE:
        case SQLERRM:
        case STATIC:
        case SUBSTITUTABLE:
        case SUCCESSFUL:
        case SYNONYM:
        case SYS_REFCURSOR:
        case TEMPORARY:
        case TIES:
        case TIME:
        case TIMESTAMP:
        case TIMEZONE_REGION:
        case TIMEZONE_ABBR:
        case TIMEZONE_MINUTE:
        case TIMEZONE_HOUR:
        case TRANSACTION:
        case TRIGGER:
        case TRUE:
        case UI:
        case UNDER:
        case USING:
        case WHILE:
        case YES:
        case A:
        case VARCHAR:
        case VARCHAR2:
        case DOUBLE:
        case DEC:
        case PRECISION:
        case INT:
        case NUMERIC:
        case SIGNTYPE:
        case NCHAR:
        case NVARCHAR2:
        case STRING:
        case UROWID:
        case VARRAY:
        case VARYING:
        case BFILE:
        case BLOB:
        case CLOB:
        case NCLOB:
        case YEAR:
        case LOCAL:
        case ZONE:
        case CHARACTER:
        case AFTER:
        case BEFORE:
        case OLD:
        case PARENT:
        case GENERATED:
        case SCOPE:
        case INITIALLY:
        case DEFERRABLE:
        case DEFERRED:
        case CC_IF:
        case CC_ERROR:
        case ANALYZE:
        case ASSOCIATE:
        case AUDIT:
        case COMPOUND:
        case DATABASE:
        case CALL:
        case DISASSOCIATE:
        case EACH:
        case FOLLOWS:
        case LOGOFF:
        case LOGON:
        case NESTED:
        case NOAUDIT:
        case SCHEMA:
        case SERVERERROR:
        case SHUTDOWN:
        case STARTUP:
        case STATEMENT:
        case STATISTICS:
        case SUSPEND:
        case TRUNCATE:
        case WRAPPED:
        case LIBRARY:
        case NAME:
        case STRUCT:
        case CONTEXT:
        case PARAMETERS:
        case LENGTH:
        case TDO:
        case MAXLEN:
        case CHARSETID:
        case CHARSETFORM:
        case ACCESSIBLE:
        case ATTACH:
        case CAST:
        case TREAT:
        case LEFT:
        case RIGHT:
        case BOTH:
        case EMPTY:
        case MULTISET:
        case SUBMULTISET:
        case LEADING:
        case TRAILING:
        case CHAR_CS:
        case NCHAR_CS:
        case DBTIMEZONE:
        case SESSIONTIMEZONE:
        case AUTHENTICATED:
        case LINK:
        case SHARED:
        case DIRECTORY:
        case USER:
        case READ:
        case LATERAL:
        case NOCYCLE:
        case CONNECT_BY_ROOT:
        case IDENTIFIER:
        case UNSIGNED_NUMERIC_LITERAL:
        case CHARACTER_LITERAL:
        case QUOTED_LITERAL:
        case JAVA_INTERFACE_CLASS:
        case STRING_LITERAL:
        case 493:
          ;
          break;
        default:
          jj_la1[40] = jj_gen;
          break label_14;
        }
        Statement();
      }
      switch (jj_nt.kind) {
      case EXCEPTION:
        jj_consume_token(EXCEPTION);
        label_15:
        while (true) {
          ExceptionHandler();
          switch (jj_nt.kind) {
          case WHEN:
            ;
            break;
          default:
            jj_la1[41] = jj_gen;
            break label_15;
          }
        }
        break;
      default:
        jj_la1[42] = jj_gen;
        ;
      }
      jj_consume_token(END);
      switch (jj_nt.kind) {
      case IDENTIFIER:
        jj_consume_token(IDENTIFIER);
        break;
      default:
        jj_la1[43] = jj_gen;
        ;
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000 ;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTPackageSpecification PackageSpecification() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) PackageSpecification */
 ASTPackageSpecification jjtn000 = new ASTPackageSpecification(JJTPACKAGESPECIFICATION);
 boolean jjtc000 = true;
 jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null ;
    try {
      switch (jj_nt.kind) {
      case CREATE:
        jj_consume_token(CREATE);
        switch (jj_nt.kind) {
        case OR:
          jj_consume_token(OR);
          KEYWORD("REPLACE");
          break;
        default:
          jj_la1[44] = jj_gen;
          ;
        }
        switch (jj_nt.kind) {
        case EDITIONABLE:
        case NONEDITIONABLE:
          switch (jj_nt.kind) {
          case EDITIONABLE:
            jj_consume_token(EDITIONABLE);
            break;
          case NONEDITIONABLE:
            jj_consume_token(NONEDITIONABLE);
            break;
          default:
            jj_la1[45] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
          break;
        default:
          jj_la1[46] = jj_gen;
          ;
        }
        break;
      default:
        jj_la1[47] = jj_gen;
        ;
      }
      jj_consume_token(PACKAGE);
      simpleNode = ObjectNameDeclaration();
      label_16:
      while (true) {
        switch (jj_nt.kind) {
        case AUTHID:
        case ACCESSIBLE:
          ;
          break;
        default:
          jj_la1[48] = jj_gen;
          break label_16;
        }
        switch (jj_nt.kind) {
        case AUTHID:
          jj_consume_token(AUTHID);
          switch (jj_nt.kind) {
          case CURRENT_USER:
            jj_consume_token(CURRENT_USER);
            break;
          case DEFINER:
            jj_consume_token(DEFINER);
            break;
          default:
            jj_la1[49] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
          break;
        case ACCESSIBLE:
          AccessibleByClause();
          break;
        default:
          jj_la1[50] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
      }
      switch (jj_nt.kind) {
      case WRAPPED:
        WrappedObject();
        break;
      case AS:
      case IS:
        switch (jj_nt.kind) {
        case IS:
          jj_consume_token(IS);
          break;
        case AS:
          jj_consume_token(AS);
          break;
        default:
          jj_la1[51] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        switch (jj_nt.kind) {
        case 26:
        case 29:
        case 30:
        case 32:
        case 33:
        case 34:
        case 35:
        case 36:
        case 37:
        case 38:
        case 39:
        case 40:
        case 41:
        case 42:
        case 43:
        case 44:
        case DEFINER:
        case CURRENT_USER:
        case SERIALLY_REUSABLE:
        case RESTRICT_REFERENCES:
        case EXCEPTION_INIT:
        case AUTONOMOUS_TRANSACTION:
        case LANGUAGE:
        case INLINE:
        case ALTER:
        case AND:
        case ANY:
        case ASC:
        case AT:
        case CHECK:
        case CLUSTER:
        case COMPRESS:
        case CREATE:
        case CURSOR:
        case DESC:
        case DROP:
        case EXCLUSIVE:
        case FETCH:
        case FUNCTION:
        case GOTO:
        case HAVING:
        case INDEX:
        case INSERT:
        case INTERSECT:
        case IS:
        case LIKE:
        case LOCK:
        case MINUS:
        case MODE:
        case NOT:
        case NULL:
        case OPTION:
        case OR:
        case ORDER:
        case PROCEDURE:
        case SHARE:
        case SUBTYPE:
        case THEN:
        case TO:
        case TYPE:
        case UPDATE:
        case ADD:
        case AGGREGATE:
        case APPLY:
        case ARRAY:
        case ATTRIBUTE:
        case AUTHID:
        case BINARY_INTEGER:
        case BODY:
        case BOOLEAN:
        case BULK:
        case BYTE:
        case CASCADE:
        case CHAR:
        case CHAR_BASE:
        case CLOSE:
        case COALESCE:
        case COLLECT:
        case COLUMN:
        case COMMIT:
        case CONSTANT:
        case CONSTRAINT:
        case CONSTRUCTOR:
        case CONTINUE:
        case CONVERT:
        case CROSS:
        case CUBE:
        case CURRENT:
        case CURRVAL:
        case DATA:
        case DATE:
        case DAY:
        case DECIMAL:
        case DEFINITION:
        case DELETE:
        case DISABLE:
        case DO:
        case DUPLICATED:
        case EDITIONABLE:
        case ELEMENT:
        case ELSIF:
        case ENABLE:
        case ESCAPE:
        case EXCEPT:
        case EXCEPTIONS:
        case EXECUTE:
        case EXIT:
        case EXTERNAL:
        case EXTENDED:
        case EXTENDS:
        case EXTRACT:
        case FALSE:
        case FINAL:
        case FLOAT:
        case FORALL:
        case FOREIGN:
        case FORCE:
        case FULL:
        case GLOBAL:
        case GROUPING:
        case HASH:
        case HEAP:
        case HOUR:
        case IMMEDIATE:
        case INNER:
        case INDICES:
        case INCLUDING:
        case INDEXTYPE:
        case INDICATOR:
        case INFINITE:
        case INSTANTIABLE:
        case INTEGER:
        case INTERFACE:
        case INTERVAL:
        case INVALIDATE:
        case ISOLATION:
        case JAVA:
        case JOIN:
        case KEY:
        case LEVEL:
        case LIKEC:
        case LIKE2:
        case LIKE4:
        case LIMIT:
        case LIMITED:
        case LONG:
        case LOOP:
        case MAP:
        case MEMBER:
        case MERGE:
        case METADATA:
        case MINUTE:
        case MLSLABEL:
        case MODIFY:
        case MOD:
        case MONTH:
        case NAN:
        case NATURAL:
        case NATURALN:
        case NEW:
        case NEXT:
        case NEXTVAL:
        case NO:
        case NOCOPY:
        case NONE:
        case NONEDITIONABLE:
        case NULLIF:
        case NULLS:
        case NUMBER:
        case BFILE_BASE:
        case BLOB_BASE:
        case CLOB_BASE:
        case DATE_BASE:
        case NUMBER_BASE:
        case OBJECT:
        case OCIROWID:
        case OFFSET:
        case OID:
        case ONLY:
        case OPAQUE:
        case OPEN:
        case OPERATOR:
        case ORGANIZATION:
        case OTHERS:
        case OUT:
        case OUTER:
        case OVERRIDING:
        case PACKAGE:
        case PARTITION:
        case PCTFREE:
        case PERCENT:
        case PLS_INTEGER:
        case POSITIVE:
        case POSITIVEN:
        case PRAGMA:
        case PRESERVE:
        case PRIOR:
        case PRIMARY:
        case PRIVATE:
        case RAISE:
        case RANGE:
        case RAW:
        case REAL:
        case RECORD:
        case REFERENCES:
        case REGEXP_LIKE:
        case RELEASE:
        case RELIES_ON:
        case RENAME:
        case RESULT:
        case RETURN:
        case RETURNING:
        case REVERSE:
        case ROLLBACK:
        case ROLLUP:
        case ROW:
        case ROWS:
        case ROWID:
        case ROWNUM:
        case ROWTYPE:
        case SAVE:
        case SAVEPOINT:
        case SECOND:
        case SELF:
        case SEPARATE:
        case SETS:
        case SIBLINGS:
        case SHARDED:
        case SHARING:
        case SMALLINT:
        case SOME:
        case SPACE:
        case SQLCODE:
        case SQLERRM:
        case STATIC:
        case SUBSTITUTABLE:
        case SUCCESSFUL:
        case SYNONYM:
        case SYS_REFCURSOR:
        case TEMPORARY:
        case TIES:
        case TIME:
        case TIMESTAMP:
        case TIMEZONE_REGION:
        case TIMEZONE_ABBR:
        case TIMEZONE_MINUTE:
        case TIMEZONE_HOUR:
        case TRANSACTION:
        case TRIGGER:
        case TRUE:
        case UI:
        case UNDER:
        case USING:
        case WHILE:
        case YES:
        case A:
        case VARCHAR:
        case VARCHAR2:
        case DOUBLE:
        case DEC:
        case PRECISION:
        case INT:
        case NUMERIC:
        case SIGNTYPE:
        case NCHAR:
        case NVARCHAR2:
        case STRING:
        case UROWID:
        case VARRAY:
        case VARYING:
        case BFILE:
        case BLOB:
        case CLOB:
        case NCLOB:
        case YEAR:
        case LOCAL:
        case ZONE:
        case CHARACTER:
        case AFTER:
        case BEFORE:
        case OLD:
        case PARENT:
        case GENERATED:
        case SCOPE:
        case INITIALLY:
        case DEFERRABLE:
        case DEFERRED:
        case CC_IF:
        case ANALYZE:
        case ASSOCIATE:
        case AUDIT:
        case COMPOUND:
        case DATABASE:
        case CALL:
        case DISASSOCIATE:
        case EACH:
        case FOLLOWS:
        case LOGOFF:
        case LOGON:
        case NESTED:
        case NOAUDIT:
        case SCHEMA:
        case SERVERERROR:
        case SHUTDOWN:
        case STARTUP:
        case STATEMENT:
        case STATISTICS:
        case SUSPEND:
        case TRUNCATE:
        case WRAPPED:
        case LIBRARY:
        case NAME:
        case STRUCT:
        case CONTEXT:
        case PARAMETERS:
        case LENGTH:
        case TDO:
        case MAXLEN:
        case CHARSETID:
        case CHARSETFORM:
        case ACCESSIBLE:
        case ATTACH:
        case CAST:
        case TREAT:
        case LEFT:
        case RIGHT:
        case BOTH:
        case EMPTY:
        case MULTISET:
        case SUBMULTISET:
        case LEADING:
        case TRAILING:
        case CHAR_CS:
        case NCHAR_CS:
        case DBTIMEZONE:
        case SESSIONTIMEZONE:
        case AUTHENTICATED:
        case LINK:
        case SHARED:
        case DIRECTORY:
        case USER:
        case READ:
        case LATERAL:
        case NOCYCLE:
        case CONNECT_BY_ROOT:
        case IDENTIFIER:
        case QUOTED_LITERAL:
        case JAVA_INTERFACE_CLASS:
        case 493:
          DeclarativeSection();
          break;
        default:
          jj_la1[52] = jj_gen;
          ;
        }
        jj_consume_token(END);
        switch (jj_nt.kind) {
        case 26:
        case 29:
        case 30:
        case 32:
        case 33:
        case 34:
        case 35:
        case 36:
        case 37:
        case 38:
        case 39:
        case 40:
        case 41:
        case 42:
        case 43:
        case 44:
        case DEFINER:
        case CURRENT_USER:
        case SERIALLY_REUSABLE:
        case RESTRICT_REFERENCES:
        case EXCEPTION_INIT:
        case AUTONOMOUS_TRANSACTION:
        case LANGUAGE:
        case INLINE:
        case ALTER:
        case AND:
        case ANY:
        case ASC:
        case AT:
        case CHECK:
        case CLUSTER:
        case COMPRESS:
        case CREATE:
        case DESC:
        case DROP:
        case EXCLUSIVE:
        case FETCH:
        case GOTO:
        case HAVING:
        case INDEX:
        case INSERT:
        case INTERSECT:
        case IS:
        case LIKE:
        case LOCK:
        case MINUS:
        case MODE:
        case NOT:
        case NULL:
        case OPTION:
        case OR:
        case SHARE:
        case SUBTYPE:
        case THEN:
        case TO:
        case TYPE:
        case UPDATE:
        case ADD:
        case AGGREGATE:
        case APPLY:
        case ARRAY:
        case ATTRIBUTE:
        case AUTHID:
        case BINARY_INTEGER:
        case BODY:
        case BOOLEAN:
        case BULK:
        case BYTE:
        case CASCADE:
        case CHAR:
        case CHAR_BASE:
        case CLOSE:
        case COALESCE:
        case COLLECT:
        case COLUMN:
        case COMMIT:
        case CONSTANT:
        case CONSTRAINT:
        case CONSTRUCTOR:
        case CONTINUE:
        case CONVERT:
        case CROSS:
        case CUBE:
        case CURRENT:
        case CURRVAL:
        case DATA:
        case DATE:
        case DAY:
        case DECIMAL:
        case DEFINITION:
        case DELETE:
        case DISABLE:
        case DO:
        case DUPLICATED:
        case EDITIONABLE:
        case ELEMENT:
        case ELSIF:
        case ENABLE:
        case ESCAPE:
        case EXCEPT:
        case EXCEPTIONS:
        case EXECUTE:
        case EXIT:
        case EXTERNAL:
        case EXTENDED:
        case EXTENDS:
        case EXTRACT:
        case FALSE:
        case FINAL:
        case FLOAT:
        case FORALL:
        case FOREIGN:
        case FORCE:
        case FULL:
        case GLOBAL:
        case GROUPING:
        case HASH:
        case HEAP:
        case HOUR:
        case IMMEDIATE:
        case INNER:
        case INDICES:
        case INCLUDING:
        case INDEXTYPE:
        case INDICATOR:
        case INFINITE:
        case INSTANTIABLE:
        case INTEGER:
        case INTERFACE:
        case INTERVAL:
        case INVALIDATE:
        case ISOLATION:
        case JAVA:
        case JOIN:
        case KEY:
        case LEVEL:
        case LIKEC:
        case LIKE2:
        case LIKE4:
        case LIMIT:
        case LIMITED:
        case LONG:
        case LOOP:
        case MAP:
        case MEMBER:
        case MERGE:
        case METADATA:
        case MINUTE:
        case MLSLABEL:
        case MODIFY:
        case MOD:
        case MONTH:
        case NAN:
        case NATURAL:
        case NATURALN:
        case NEW:
        case NEXT:
        case NEXTVAL:
        case NO:
        case NOCOPY:
        case NONE:
        case NONEDITIONABLE:
        case NULLIF:
        case NULLS:
        case NUMBER:
        case BFILE_BASE:
        case BLOB_BASE:
        case CLOB_BASE:
        case DATE_BASE:
        case NUMBER_BASE:
        case OBJECT:
        case OCIROWID:
        case OFFSET:
        case OID:
        case ONLY:
        case OPAQUE:
        case OPEN:
        case OPERATOR:
        case ORGANIZATION:
        case OTHERS:
        case OUT:
        case OUTER:
        case OVERRIDING:
        case PACKAGE:
        case PARTITION:
        case PCTFREE:
        case PERCENT:
        case PLS_INTEGER:
        case POSITIVE:
        case POSITIVEN:
        case PRESERVE:
        case PRIOR:
        case PRIMARY:
        case PRIVATE:
        case RAISE:
        case RANGE:
        case RAW:
        case REAL:
        case RECORD:
        case REFERENCES:
        case REGEXP_LIKE:
        case RELEASE:
        case RELIES_ON:
        case RENAME:
        case RESULT:
        case RETURN:
        case RETURNING:
        case REVERSE:
        case ROLLBACK:
        case ROLLUP:
        case ROW:
        case ROWS:
        case ROWID:
        case ROWNUM:
        case ROWTYPE:
        case SAVE:
        case SAVEPOINT:
        case SECOND:
        case SELF:
        case SEPARATE:
        case SETS:
        case SIBLINGS:
        case SHARDED:
        case SHARING:
        case SMALLINT:
        case SOME:
        case SPACE:
        case SQLCODE:
        case SQLERRM:
        case STATIC:
        case SUBSTITUTABLE:
        case SUCCESSFUL:
        case SYNONYM:
        case SYS_REFCURSOR:
        case TEMPORARY:
        case TIES:
        case TIME:
        case TIMESTAMP:
        case TIMEZONE_REGION:
        case TIMEZONE_ABBR:
        case TIMEZONE_MINUTE:
        case TIMEZONE_HOUR:
        case TRANSACTION:
        case TRIGGER:
        case TRUE:
        case UI:
        case UNDER:
        case USING:
        case WHILE:
        case YES:
        case A:
        case VARCHAR:
        case VARCHAR2:
        case DOUBLE:
        case DEC:
        case PRECISION:
        case INT:
        case NUMERIC:
        case SIGNTYPE:
        case NCHAR:
        case NVARCHAR2:
        case STRING:
        case UROWID:
        case VARRAY:
        case VARYING:
        case BFILE:
        case BLOB:
        case CLOB:
        case NCLOB:
        case YEAR:
        case LOCAL:
        case ZONE:
        case CHARACTER:
        case AFTER:
        case BEFORE:
        case OLD:
        case PARENT:
        case GENERATED:
        case SCOPE:
        case INITIALLY:
        case DEFERRABLE:
        case DEFERRED:
        case ANALYZE:
        case ASSOCIATE:
        case AUDIT:
        case COMPOUND:
        case DATABASE:
        case CALL:
        case DISASSOCIATE:
        case EACH:
        case FOLLOWS:
        case LOGOFF:
        case LOGON:
        case NESTED:
        case NOAUDIT:
        case SCHEMA:
        case SERVERERROR:
        case SHUTDOWN:
        case STARTUP:
        case STATEMENT:
        case STATISTICS:
        case SUSPEND:
        case TRUNCATE:
        case WRAPPED:
        case LIBRARY:
        case NAME:
        case STRUCT:
        case CONTEXT:
        case PARAMETERS:
        case LENGTH:
        case TDO:
        case MAXLEN:
        case CHARSETID:
        case CHARSETFORM:
        case ACCESSIBLE:
        case ATTACH:
        case CAST:
        case TREAT:
        case LEFT:
        case RIGHT:
        case BOTH:
        case EMPTY:
        case MULTISET:
        case SUBMULTISET:
        case LEADING:
        case TRAILING:
        case CHAR_CS:
        case NCHAR_CS:
        case DBTIMEZONE:
        case SESSIONTIMEZONE:
        case AUTHENTICATED:
        case LINK:
        case SHARED:
        case DIRECTORY:
        case USER:
        case READ:
        case LATERAL:
        case NOCYCLE:
        case CONNECT_BY_ROOT:
        case IDENTIFIER:
        case QUOTED_LITERAL:
        case JAVA_INTERFACE_CLASS:
        case 493:
          ID();
          break;
        default:
          jj_la1[53] = jj_gen;
          ;
        }
        jj_consume_token(SEMICOLON);
        break;
      default:
        jj_la1[54] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
        jjtc000 = false;
        jjtn000.setImage(simpleNode.getImage()) ;  {if (true) return jjtn000 ;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
          {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
        }
        {if (true) throw (Error)jjte000;}
    } finally {
        if (jjtc000) {
          jjtree.closeNodeScope(jjtn000, true, getToken(0));
        }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTPackageBody PackageBody() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) PackageBody */
 ASTPackageBody jjtn000 = new ASTPackageBody(JJTPACKAGEBODY);
 boolean jjtc000 = true;
 jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null ;
    try {
      switch (jj_nt.kind) {
      case CREATE:
        jj_consume_token(CREATE);
        switch (jj_nt.kind) {
        case OR:
          jj_consume_token(OR);
          KEYWORD("REPLACE");
          break;
        default:
          jj_la1[55] = jj_gen;
          ;
        }
        switch (jj_nt.kind) {
        case EDITIONABLE:
        case NONEDITIONABLE:
          switch (jj_nt.kind) {
          case EDITIONABLE:
            jj_consume_token(EDITIONABLE);
            break;
          case NONEDITIONABLE:
            jj_consume_token(NONEDITIONABLE);
            break;
          default:
            jj_la1[56] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
          break;
        default:
          jj_la1[57] = jj_gen;
          ;
        }
        break;
      default:
        jj_la1[58] = jj_gen;
        ;
      }
      switch (jj_nt.kind) {
      case PACKAGE:
        jj_consume_token(PACKAGE);
        break;
      case TYPE:
        jj_consume_token(TYPE);
        break;
      default:
        jj_la1[59] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      jj_consume_token(BODY);
      simpleNode = ObjectNameDeclaration();
      switch (jj_nt.kind) {
      case WRAPPED:
        WrappedObject();
        break;
      case AS:
      case IS:
        switch (jj_nt.kind) {
        case IS:
          jj_consume_token(IS);
          break;
        case AS:
          jj_consume_token(AS);
          break;
        default:
          jj_la1[60] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        switch (jj_nt.kind) {
        case 26:
        case 29:
        case 30:
        case 32:
        case 33:
        case 34:
        case 35:
        case 36:
        case 37:
        case 38:
        case 39:
        case 40:
        case 41:
        case 42:
        case 43:
        case 44:
        case DEFINER:
        case CURRENT_USER:
        case SERIALLY_REUSABLE:
        case RESTRICT_REFERENCES:
        case EXCEPTION_INIT:
        case AUTONOMOUS_TRANSACTION:
        case LANGUAGE:
        case INLINE:
        case ALTER:
        case AND:
        case ANY:
        case ASC:
        case AT:
        case CHECK:
        case CLUSTER:
        case COMPRESS:
        case CREATE:
        case CURSOR:
        case DESC:
        case DROP:
        case EXCLUSIVE:
        case FETCH:
        case FUNCTION:
        case GOTO:
        case HAVING:
        case INDEX:
        case INSERT:
        case INTERSECT:
        case IS:
        case LIKE:
        case LOCK:
        case MINUS:
        case MODE:
        case NOT:
        case NULL:
        case OPTION:
        case OR:
        case ORDER:
        case PROCEDURE:
        case SHARE:
        case SUBTYPE:
        case THEN:
        case TO:
        case TYPE:
        case UPDATE:
        case ADD:
        case AGGREGATE:
        case APPLY:
        case ARRAY:
        case ATTRIBUTE:
        case AUTHID:
        case BINARY_INTEGER:
        case BODY:
        case BOOLEAN:
        case BULK:
        case BYTE:
        case CASCADE:
        case CHAR:
        case CHAR_BASE:
        case CLOSE:
        case COALESCE:
        case COLLECT:
        case COLUMN:
        case COMMIT:
        case CONSTANT:
        case CONSTRAINT:
        case CONSTRUCTOR:
        case CONTINUE:
        case CONVERT:
        case CROSS:
        case CUBE:
        case CURRENT:
        case CURRVAL:
        case DATA:
        case DATE:
        case DAY:
        case DECIMAL:
        case DEFINITION:
        case DELETE:
        case DISABLE:
        case DO:
        case DUPLICATED:
        case EDITIONABLE:
        case ELEMENT:
        case ELSIF:
        case ENABLE:
        case ESCAPE:
        case EXCEPT:
        case EXCEPTIONS:
        case EXECUTE:
        case EXIT:
        case EXTERNAL:
        case EXTENDED:
        case EXTENDS:
        case EXTRACT:
        case FALSE:
        case FINAL:
        case FLOAT:
        case FORALL:
        case FOREIGN:
        case FORCE:
        case FULL:
        case GLOBAL:
        case GROUPING:
        case HASH:
        case HEAP:
        case HOUR:
        case IMMEDIATE:
        case INNER:
        case INDICES:
        case INCLUDING:
        case INDEXTYPE:
        case INDICATOR:
        case INFINITE:
        case INSTANTIABLE:
        case INTEGER:
        case INTERFACE:
        case INTERVAL:
        case INVALIDATE:
        case ISOLATION:
        case JAVA:
        case JOIN:
        case KEY:
        case LEVEL:
        case LIKEC:
        case LIKE2:
        case LIKE4:
        case LIMIT:
        case LIMITED:
        case LONG:
        case LOOP:
        case MAP:
        case MEMBER:
        case MERGE:
        case METADATA:
        case MINUTE:
        case MLSLABEL:
        case MODIFY:
        case MOD:
        case MONTH:
        case NAN:
        case NATURAL:
        case NATURALN:
        case NEW:
        case NEXT:
        case NEXTVAL:
        case NO:
        case NOCOPY:
        case NONE:
        case NONEDITIONABLE:
        case NULLIF:
        case NULLS:
        case NUMBER:
        case BFILE_BASE:
        case BLOB_BASE:
        case CLOB_BASE:
        case DATE_BASE:
        case NUMBER_BASE:
        case OBJECT:
        case OCIROWID:
        case OFFSET:
        case OID:
        case ONLY:
        case OPAQUE:
        case OPEN:
        case OPERATOR:
        case ORGANIZATION:
        case OTHERS:
        case OUT:
        case OUTER:
        case OVERRIDING:
        case PACKAGE:
        case PARTITION:
        case PCTFREE:
        case PERCENT:
        case PLS_INTEGER:
        case POSITIVE:
        case POSITIVEN:
        case PRAGMA:
        case PRESERVE:
        case PRIOR:
        case PRIMARY:
        case PRIVATE:
        case RAISE:
        case RANGE:
        case RAW:
        case REAL:
        case RECORD:
        case REFERENCES:
        case REGEXP_LIKE:
        case RELEASE:
        case RELIES_ON:
        case RENAME:
        case RESULT:
        case RETURN:
        case RETURNING:
        case REVERSE:
        case ROLLBACK:
        case ROLLUP:
        case ROW:
        case ROWS:
        case ROWID:
        case ROWNUM:
        case ROWTYPE:
        case SAVE:
        case SAVEPOINT:
        case SECOND:
        case SELF:
        case SEPARATE:
        case SETS:
        case SIBLINGS:
        case SHARDED:
        case SHARING:
        case SMALLINT:
        case SOME:
        case SPACE:
        case SQLCODE:
        case SQLERRM:
        case STATIC:
        case SUBSTITUTABLE:
        case SUCCESSFUL:
        case SYNONYM:
        case SYS_REFCURSOR:
        case TEMPORARY:
        case TIES:
        case TIME:
        case TIMESTAMP:
        case TIMEZONE_REGION:
        case TIMEZONE_ABBR:
        case TIMEZONE_MINUTE:
        case TIMEZONE_HOUR:
        case TRANSACTION:
        case TRIGGER:
        case TRUE:
        case UI:
        case UNDER:
        case USING:
        case WHILE:
        case YES:
        case A:
        case VARCHAR:
        case VARCHAR2:
        case DOUBLE:
        case DEC:
        case PRECISION:
        case INT:
        case NUMERIC:
        case SIGNTYPE:
        case NCHAR:
        case NVARCHAR2:
        case STRING:
        case UROWID:
        case VARRAY:
        case VARYING:
        case BFILE:
        case BLOB:
        case CLOB:
        case NCLOB:
        case YEAR:
        case LOCAL:
        case ZONE:
        case CHARACTER:
        case AFTER:
        case BEFORE:
        case OLD:
        case PARENT:
        case GENERATED:
        case SCOPE:
        case INITIALLY:
        case DEFERRABLE:
        case DEFERRED:
        case CC_IF:
        case ANALYZE:
        case ASSOCIATE:
        case AUDIT:
        case COMPOUND:
        case DATABASE:
        case CALL:
        case DISASSOCIATE:
        case EACH:
        case FOLLOWS:
        case LOGOFF:
        case LOGON:
        case NESTED:
        case NOAUDIT:
        case SCHEMA:
        case SERVERERROR:
        case SHUTDOWN:
        case STARTUP:
        case STATEMENT:
        case STATISTICS:
        case SUSPEND:
        case TRUNCATE:
        case WRAPPED:
        case LIBRARY:
        case NAME:
        case STRUCT:
        case CONTEXT:
        case PARAMETERS:
        case LENGTH:
        case TDO:
        case MAXLEN:
        case CHARSETID:
        case CHARSETFORM:
        case ACCESSIBLE:
        case ATTACH:
        case CAST:
        case TREAT:
        case LEFT:
        case RIGHT:
        case BOTH:
        case EMPTY:
        case MULTISET:
        case SUBMULTISET:
        case LEADING:
        case TRAILING:
        case CHAR_CS:
        case NCHAR_CS:
        case DBTIMEZONE:
        case SESSIONTIMEZONE:
        case AUTHENTICATED:
        case LINK:
        case SHARED:
        case DIRECTORY:
        case USER:
        case READ:
        case LATERAL:
        case NOCYCLE:
        case CONNECT_BY_ROOT:
        case IDENTIFIER:
        case QUOTED_LITERAL:
        case JAVA_INTERFACE_CLASS:
        case 493:
          DeclarativeSection();
          break;
        default:
          jj_la1[61] = jj_gen;
          ;
        }
        switch (jj_nt.kind) {
        case BEGIN:
          jj_consume_token(BEGIN);
          label_17:
          while (true) {
            switch (jj_nt.kind) {
            case LPAREN:
            case PLUSSIGN:
            case MINUSSIGN:
            case STAR:
            case 26:
            case 29:
            case 30:
            case 32:
            case 33:
            case 34:
            case 35:
            case 36:
            case 37:
            case 38:
            case 39:
            case 40:
            case 41:
            case 42:
            case 43:
            case 44:
            case 48:
            case DEFINER:
            case CURRENT_USER:
            case SERIALLY_REUSABLE:
            case RESTRICT_REFERENCES:
            case EXCEPTION_INIT:
            case AUTONOMOUS_TRANSACTION:
            case LANGUAGE:
            case INLINE:
            case ALTER:
            case AND:
            case ANY:
            case ASC:
            case AT:
            case BEGIN:
            case CASE:
            case CHECK:
            case CLUSTER:
            case COMPRESS:
            case CREATE:
            case DECLARE:
            case DESC:
            case DROP:
            case EXCLUSIVE:
            case FETCH:
            case FOR:
            case GOTO:
            case HAVING:
            case IF:
            case INDEX:
            case INSERT:
            case INTERSECT:
            case IS:
            case LIKE:
            case LOCK:
            case MINUS:
            case MODE:
            case NOT:
            case NULL:
            case OPTION:
            case OR:
            case SELECT:
            case SHARE:
            case SQL:
            case SUBTYPE:
            case THEN:
            case TO:
            case TYPE:
            case UPDATE:
            case WITH:
            case ADD:
            case AGGREGATE:
            case APPLY:
            case ARRAY:
            case ATTRIBUTE:
            case AUTHID:
            case BINARY_INTEGER:
            case BODY:
            case BOOLEAN:
            case BULK:
            case BYTE:
            case CASCADE:
            case CHAR:
            case CHAR_BASE:
            case CLOSE:
            case COALESCE:
            case COLLECT:
            case COLUMN:
            case COMMIT:
            case CONSTANT:
            case CONSTRAINT:
            case CONSTRUCTOR:
            case CONTINUE:
            case CONVERT:
            case CROSS:
            case CUBE:
            case CURRENT:
            case CURRVAL:
            case DATA:
            case DATE:
            case DAY:
            case DECIMAL:
            case DEFINITION:
            case DELETE:
            case DISABLE:
            case DO:
            case DUPLICATED:
            case EDITIONABLE:
            case ELEMENT:
            case ELSIF:
            case ENABLE:
            case ESCAPE:
            case EXCEPT:
            case EXCEPTIONS:
            case EXECUTE:
            case EXIT:
            case EXTERNAL:
            case EXTENDED:
            case EXTENDS:
            case EXTRACT:
            case FALSE:
            case FINAL:
            case FLOAT:
            case FORALL:
            case FOREIGN:
            case FORCE:
            case FULL:
            case GLOBAL:
            case GROUPING:
            case HASH:
            case HEAP:
            case HOUR:
            case IMMEDIATE:
            case INNER:
            case INDICES:
            case INCLUDING:
            case INDEXTYPE:
            case INDICATOR:
            case INFINITE:
            case INSTANTIABLE:
            case INTEGER:
            case INTERFACE:
            case INTERVAL:
            case INVALIDATE:
            case ISOLATION:
            case JAVA:
            case JOIN:
            case KEY:
            case LEVEL:
            case LIKEC:
            case LIKE2:
            case LIKE4:
            case LIMIT:
            case LIMITED:
            case LONG:
            case LOOP:
            case MAP:
            case MEMBER:
            case MERGE:
            case METADATA:
            case MINUTE:
            case MLSLABEL:
            case MODIFY:
            case MOD:
            case MONTH:
            case NAN:
            case NATURAL:
            case NATURALN:
            case NEW:
            case NEW_DOT:
            case NEXT:
            case NEXTVAL:
            case NO:
            case NOCOPY:
            case NONE:
            case NONEDITIONABLE:
            case NULLIF:
            case NULLS:
            case NUMBER:
            case BFILE_BASE:
            case BLOB_BASE:
            case CLOB_BASE:
            case DATE_BASE:
            case NUMBER_BASE:
            case OBJECT:
            case OCIROWID:
            case OFFSET:
            case OID:
            case ONLY:
            case OPAQUE:
            case OPEN:
            case OPERATOR:
            case ORGANIZATION:
            case OTHERS:
            case OUT:
            case OUTER:
            case OVERRIDING:
            case PACKAGE:
            case PARTITION:
            case PCTFREE:
            case PERCENT:
            case PIPE:
            case PLS_INTEGER:
            case POSITIVE:
            case POSITIVEN:
            case PRAGMA:
            case PRESERVE:
            case PRIOR:
            case PRIMARY:
            case PRIVATE:
            case RAISE:
            case RANGE:
            case RAW:
            case REAL:
            case RECORD:
            case REFERENCES:
            case REGEXP_LIKE:
            case RELEASE:
            case RELIES_ON:
            case RENAME:
            case RESULT:
            case RETURN:
            case RETURNING:
            case REVERSE:
            case ROLLBACK:
            case ROLLUP:
            case ROW:
            case ROWS:
            case ROWID:
            case ROWNUM:
            case ROWTYPE:
            case SAVE:
            case SAVEPOINT:
            case SECOND:
            case SELF:
            case SEPARATE:
            case SET:
            case SETS:
            case SIBLINGS:
            case SHARDED:
            case SHARING:
            case SMALLINT:
            case SOME:
            case SPACE:
            case SQLCODE:
            case SQLERRM:
            case STATIC:
            case SUBSTITUTABLE:
            case SUCCESSFUL:
            case SYNONYM:
            case SYS_REFCURSOR:
            case TEMPORARY:
            case TIES:
            case TIME:
            case TIMESTAMP:
            case TIMEZONE_REGION:
            case TIMEZONE_ABBR:
            case TIMEZONE_MINUTE:
            case TIMEZONE_HOUR:
            case TRANSACTION:
            case TRIGGER:
            case TRUE:
            case UI:
            case UNDER:
            case USING:
            case WHILE:
            case YES:
            case A:
            case VARCHAR:
            case VARCHAR2:
            case DOUBLE:
            case DEC:
            case PRECISION:
            case INT:
            case NUMERIC:
            case SIGNTYPE:
            case NCHAR:
            case NVARCHAR2:
            case STRING:
            case UROWID:
            case VARRAY:
            case VARYING:
            case BFILE:
            case BLOB:
            case CLOB:
            case NCLOB:
            case YEAR:
            case LOCAL:
            case ZONE:
            case CHARACTER:
            case AFTER:
            case BEFORE:
            case OLD:
            case PARENT:
            case GENERATED:
            case SCOPE:
            case INITIALLY:
            case DEFERRABLE:
            case DEFERRED:
            case CC_IF:
            case CC_ERROR:
            case ANALYZE:
            case ASSOCIATE:
            case AUDIT:
            case COMPOUND:
            case DATABASE:
            case CALL:
            case DISASSOCIATE:
            case EACH:
            case FOLLOWS:
            case LOGOFF:
            case LOGON:
            case NESTED:
            case NOAUDIT:
            case SCHEMA:
            case SERVERERROR:
            case SHUTDOWN:
            case STARTUP:
            case STATEMENT:
            case STATISTICS:
            case SUSPEND:
            case TRUNCATE:
            case WRAPPED:
            case LIBRARY:
            case NAME:
            case STRUCT:
            case CONTEXT:
            case PARAMETERS:
            case LENGTH:
            case TDO:
            case MAXLEN:
            case CHARSETID:
            case CHARSETFORM:
            case ACCESSIBLE:
            case ATTACH:
            case CAST:
            case TREAT:
            case LEFT:
            case RIGHT:
            case BOTH:
            case EMPTY:
            case MULTISET:
            case SUBMULTISET:
            case LEADING:
            case TRAILING:
            case CHAR_CS:
            case NCHAR_CS:
            case DBTIMEZONE:
            case SESSIONTIMEZONE:
            case AUTHENTICATED:
            case LINK:
            case SHARED:
            case DIRECTORY:
            case USER:
            case READ:
            case LATERAL:
            case NOCYCLE:
            case CONNECT_BY_ROOT:
            case IDENTIFIER:
            case UNSIGNED_NUMERIC_LITERAL:
            case CHARACTER_LITERAL:
            case QUOTED_LITERAL:
            case JAVA_INTERFACE_CLASS:
            case STRING_LITERAL:
            case 493:
              ;
              break;
            default:
              jj_la1[62] = jj_gen;
              break label_17;
            }
            Statement();
          }
          switch (jj_nt.kind) {
          case EXCEPTION:
            jj_consume_token(EXCEPTION);
            label_18:
            while (true) {
              ExceptionHandler();
              switch (jj_nt.kind) {
              case WHEN:
                ;
                break;
              default:
                jj_la1[63] = jj_gen;
                break label_18;
              }
            }
            break;
          default:
            jj_la1[64] = jj_gen;
            ;
          }
          break;
        default:
          jj_la1[65] = jj_gen;
          ;
        }
        jj_consume_token(END);
        switch (jj_nt.kind) {
        case 26:
        case 29:
        case 30:
        case 32:
        case 33:
        case 34:
        case 35:
        case 36:
        case 37:
        case 38:
        case 39:
        case 40:
        case 41:
        case 42:
        case 43:
        case 44:
        case DEFINER:
        case CURRENT_USER:
        case SERIALLY_REUSABLE:
        case RESTRICT_REFERENCES:
        case EXCEPTION_INIT:
        case AUTONOMOUS_TRANSACTION:
        case LANGUAGE:
        case INLINE:
        case ALTER:
        case AND:
        case ANY:
        case ASC:
        case AT:
        case CHECK:
        case CLUSTER:
        case COMPRESS:
        case CREATE:
        case DESC:
        case DROP:
        case EXCLUSIVE:
        case FETCH:
        case GOTO:
        case HAVING:
        case INDEX:
        case INSERT:
        case INTERSECT:
        case IS:
        case LIKE:
        case LOCK:
        case MINUS:
        case MODE:
        case NOT:
        case NULL:
        case OPTION:
        case OR:
        case SHARE:
        case SUBTYPE:
        case THEN:
        case TO:
        case TYPE:
        case UPDATE:
        case ADD:
        case AGGREGATE:
        case APPLY:
        case ARRAY:
        case ATTRIBUTE:
        case AUTHID:
        case BINARY_INTEGER:
        case BODY:
        case BOOLEAN:
        case BULK:
        case BYTE:
        case CASCADE:
        case CHAR:
        case CHAR_BASE:
        case CLOSE:
        case COALESCE:
        case COLLECT:
        case COLUMN:
        case COMMIT:
        case CONSTANT:
        case CONSTRAINT:
        case CONSTRUCTOR:
        case CONTINUE:
        case CONVERT:
        case CROSS:
        case CUBE:
        case CURRENT:
        case CURRVAL:
        case DATA:
        case DATE:
        case DAY:
        case DECIMAL:
        case DEFINITION:
        case DELETE:
        case DISABLE:
        case DO:
        case DUPLICATED:
        case EDITIONABLE:
        case ELEMENT:
        case ELSIF:
        case ENABLE:
        case ESCAPE:
        case EXCEPT:
        case EXCEPTIONS:
        case EXECUTE:
        case EXIT:
        case EXTERNAL:
        case EXTENDED:
        case EXTENDS:
        case EXTRACT:
        case FALSE:
        case FINAL:
        case FLOAT:
        case FORALL:
        case FOREIGN:
        case FORCE:
        case FULL:
        case GLOBAL:
        case GROUPING:
        case HASH:
        case HEAP:
        case HOUR:
        case IMMEDIATE:
        case INNER:
        case INDICES:
        case INCLUDING:
        case INDEXTYPE:
        case INDICATOR:
        case INFINITE:
        case INSTANTIABLE:
        case INTEGER:
        case INTERFACE:
        case INTERVAL:
        case INVALIDATE:
        case ISOLATION:
        case JAVA:
        case JOIN:
        case KEY:
        case LEVEL:
        case LIKEC:
        case LIKE2:
        case LIKE4:
        case LIMIT:
        case LIMITED:
        case LONG:
        case LOOP:
        case MAP:
        case MEMBER:
        case MERGE:
        case METADATA:
        case MINUTE:
        case MLSLABEL:
        case MODIFY:
        case MOD:
        case MONTH:
        case NAN:
        case NATURAL:
        case NATURALN:
        case NEW:
        case NEXT:
        case NEXTVAL:
        case NO:
        case NOCOPY:
        case NONE:
        case NONEDITIONABLE:
        case NULLIF:
        case NULLS:
        case NUMBER:
        case BFILE_BASE:
        case BLOB_BASE:
        case CLOB_BASE:
        case DATE_BASE:
        case NUMBER_BASE:
        case OBJECT:
        case OCIROWID:
        case OFFSET:
        case OID:
        case ONLY:
        case OPAQUE:
        case OPEN:
        case OPERATOR:
        case ORGANIZATION:
        case OTHERS:
        case OUT:
        case OUTER:
        case OVERRIDING:
        case PACKAGE:
        case PARTITION:
        case PCTFREE:
        case PERCENT:
        case PLS_INTEGER:
        case POSITIVE:
        case POSITIVEN:
        case PRESERVE:
        case PRIOR:
        case PRIMARY:
        case PRIVATE:
        case RAISE:
        case RANGE:
        case RAW:
        case REAL:
        case RECORD:
        case REFERENCES:
        case REGEXP_LIKE:
        case RELEASE:
        case RELIES_ON:
        case RENAME:
        case RESULT:
        case RETURN:
        case RETURNING:
        case REVERSE:
        case ROLLBACK:
        case ROLLUP:
        case ROW:
        case ROWS:
        case ROWID:
        case ROWNUM:
        case ROWTYPE:
        case SAVE:
        case SAVEPOINT:
        case SECOND:
        case SELF:
        case SEPARATE:
        case SETS:
        case SIBLINGS:
        case SHARDED:
        case SHARING:
        case SMALLINT:
        case SOME:
        case SPACE:
        case SQLCODE:
        case SQLERRM:
        case STATIC:
        case SUBSTITUTABLE:
        case SUCCESSFUL:
        case SYNONYM:
        case SYS_REFCURSOR:
        case TEMPORARY:
        case TIES:
        case TIME:
        case TIMESTAMP:
        case TIMEZONE_REGION:
        case TIMEZONE_ABBR:
        case TIMEZONE_MINUTE:
        case TIMEZONE_HOUR:
        case TRANSACTION:
        case TRIGGER:
        case TRUE:
        case UI:
        case UNDER:
        case USING:
        case WHILE:
        case YES:
        case A:
        case VARCHAR:
        case VARCHAR2:
        case DOUBLE:
        case DEC:
        case PRECISION:
        case INT:
        case NUMERIC:
        case SIGNTYPE:
        case NCHAR:
        case NVARCHAR2:
        case STRING:
        case UROWID:
        case VARRAY:
        case VARYING:
        case BFILE:
        case BLOB:
        case CLOB:
        case NCLOB:
        case YEAR:
        case LOCAL:
        case ZONE:
        case CHARACTER:
        case AFTER:
        case BEFORE:
        case OLD:
        case PARENT:
        case GENERATED:
        case SCOPE:
        case INITIALLY:
        case DEFERRABLE:
        case DEFERRED:
        case ANALYZE:
        case ASSOCIATE:
        case AUDIT:
        case COMPOUND:
        case DATABASE:
        case CALL:
        case DISASSOCIATE:
        case EACH:
        case FOLLOWS:
        case LOGOFF:
        case LOGON:
        case NESTED:
        case NOAUDIT:
        case SCHEMA:
        case SERVERERROR:
        case SHUTDOWN:
        case STARTUP:
        case STATEMENT:
        case STATISTICS:
        case SUSPEND:
        case TRUNCATE:
        case WRAPPED:
        case LIBRARY:
        case NAME:
        case STRUCT:
        case CONTEXT:
        case PARAMETERS:
        case LENGTH:
        case TDO:
        case MAXLEN:
        case CHARSETID:
        case CHARSETFORM:
        case ACCESSIBLE:
        case ATTACH:
        case CAST:
        case TREAT:
        case LEFT:
        case RIGHT:
        case BOTH:
        case EMPTY:
        case MULTISET:
        case SUBMULTISET:
        case LEADING:
        case TRAILING:
        case CHAR_CS:
        case NCHAR_CS:
        case DBTIMEZONE:
        case SESSIONTIMEZONE:
        case AUTHENTICATED:
        case LINK:
        case SHARED:
        case DIRECTORY:
        case USER:
        case READ:
        case LATERAL:
        case NOCYCLE:
        case CONNECT_BY_ROOT:
        case IDENTIFIER:
        case QUOTED_LITERAL:
        case JAVA_INTERFACE_CLASS:
        case 493:
          ID();
          break;
        default:
          jj_la1[66] = jj_gen;
          ;
        }
        jj_consume_token(SEMICOLON);
        break;
      default:
        jj_la1[67] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      jjtn000.setImage(simpleNode.getImage()) ;  {if (true) return jjtn000 ;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * https://docs.oracle.com/en/database/oracle/oracle-database/23/lnpls/block.html#GUID-9ACEB9ED-567E-4E1A-A16A-B8B35214FC9D__CJAIABJJ
 */
  final public ASTDeclarativeUnit DeclarativeUnit() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) DeclarativeUnit */
  ASTDeclarativeUnit jjtn000 = new ASTDeclarativeUnit(JJTDECLARATIVEUNIT);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      switch (jj_nt.kind) {
      case PRAGMA:
        Pragma();
        break;
      default:
        jj_la1[68] = jj_gen;
        if (jj_2_20(2)) {
          ExceptionDeclaration();
        } else if (jj_2_21(2147483647)) {
          SubTypeDefinition();
        } else if (jj_2_22(2147483647)) {
          ProgramUnit();
        } else if (jj_2_23(4)) {
          VariableOrConstantDeclaration();
        } else {
          switch (jj_nt.kind) {
          case CURSOR:
            CursorSpecification();
            break;
          case IDENTIFIER:
            CollectionDeclaration();
            break;
          case CREATE:
          case FUNCTION:
          case NOT:
          case ORDER:
          case PROCEDURE:
          case CONSTRUCTOR:
          case FINAL:
          case INSTANTIABLE:
          case MAP:
          case MEMBER:
          case OVERRIDING:
          case STATIC:
            MethodDeclaration();
            break;
          case CC_IF:
            CompilationDeclarationFragment();
            break;
          default:
            jj_la1[69] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
        }
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * "Declare Section"
 *
 * https://docs.oracle.com/en/database/oracle/oracle-database/23/lnpls/block.html#GUID-9ACEB9ED-567E-4E1A-A16A-B8B35214FC9D__CJAIABJJ
 */
  final public ASTDeclarativeSection DeclarativeSection() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) DeclarativeSection */
  ASTDeclarativeSection jjtn000 = new ASTDeclarativeSection(JJTDECLARATIVESECTION);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      DeclarativeUnit();
      label_19:
      while (true) {
        if (jj_2_24(3)) {
          ;
        } else {
          break label_19;
        }
        DeclarativeUnit();
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTCompilationDeclarationFragment CompilationDeclarationFragment() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) CompilationDeclarationFragment */
  ASTCompilationDeclarationFragment jjtn000 = new ASTCompilationDeclarationFragment(JJTCOMPILATIONDECLARATIONFRAGMENT);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      jj_consume_token(CC_IF);
      ConditionalOrExpression();
      jj_consume_token(CC_THEN);
      label_20:
      while (true) {
        switch (jj_nt.kind) {
        case 26:
        case 29:
        case 30:
        case 32:
        case 33:
        case 34:
        case 35:
        case 36:
        case 37:
        case 38:
        case 39:
        case 40:
        case 41:
        case 42:
        case 43:
        case 44:
        case DEFINER:
        case CURRENT_USER:
        case SERIALLY_REUSABLE:
        case RESTRICT_REFERENCES:
        case EXCEPTION_INIT:
        case AUTONOMOUS_TRANSACTION:
        case LANGUAGE:
        case INLINE:
        case ALTER:
        case AND:
        case ANY:
        case ASC:
        case AT:
        case CHECK:
        case CLUSTER:
        case COMPRESS:
        case CREATE:
        case CURSOR:
        case DESC:
        case DROP:
        case EXCLUSIVE:
        case FETCH:
        case FUNCTION:
        case GOTO:
        case HAVING:
        case INDEX:
        case INSERT:
        case INTERSECT:
        case IS:
        case LIKE:
        case LOCK:
        case MINUS:
        case MODE:
        case NOT:
        case NULL:
        case OPTION:
        case OR:
        case ORDER:
        case PROCEDURE:
        case SHARE:
        case SUBTYPE:
        case THEN:
        case TO:
        case TYPE:
        case UPDATE:
        case ADD:
        case AGGREGATE:
        case APPLY:
        case ARRAY:
        case ATTRIBUTE:
        case AUTHID:
        case BINARY_INTEGER:
        case BODY:
        case BOOLEAN:
        case BULK:
        case BYTE:
        case CASCADE:
        case CHAR:
        case CHAR_BASE:
        case CLOSE:
        case COALESCE:
        case COLLECT:
        case COLUMN:
        case COMMIT:
        case CONSTANT:
        case CONSTRAINT:
        case CONSTRUCTOR:
        case CONTINUE:
        case CONVERT:
        case CROSS:
        case CUBE:
        case CURRENT:
        case CURRVAL:
        case DATA:
        case DATE:
        case DAY:
        case DECIMAL:
        case DEFINITION:
        case DELETE:
        case DISABLE:
        case DO:
        case DUPLICATED:
        case EDITIONABLE:
        case ELEMENT:
        case ELSIF:
        case ENABLE:
        case ESCAPE:
        case EXCEPT:
        case EXCEPTIONS:
        case EXECUTE:
        case EXIT:
        case EXTERNAL:
        case EXTENDED:
        case EXTENDS:
        case EXTRACT:
        case FALSE:
        case FINAL:
        case FLOAT:
        case FORALL:
        case FOREIGN:
        case FORCE:
        case FULL:
        case GLOBAL:
        case GROUPING:
        case HASH:
        case HEAP:
        case HOUR:
        case IMMEDIATE:
        case INNER:
        case INDICES:
        case INCLUDING:
        case INDEXTYPE:
        case INDICATOR:
        case INFINITE:
        case INSTANTIABLE:
        case INTEGER:
        case INTERFACE:
        case INTERVAL:
        case INVALIDATE:
        case ISOLATION:
        case JAVA:
        case JOIN:
        case KEY:
        case LEVEL:
        case LIKEC:
        case LIKE2:
        case LIKE4:
        case LIMIT:
        case LIMITED:
        case LONG:
        case LOOP:
        case MAP:
        case MEMBER:
        case MERGE:
        case METADATA:
        case MINUTE:
        case MLSLABEL:
        case MODIFY:
        case MOD:
        case MONTH:
        case NAN:
        case NATURAL:
        case NATURALN:
        case NEW:
        case NEXT:
        case NEXTVAL:
        case NO:
        case NOCOPY:
        case NONE:
        case NONEDITIONABLE:
        case NULLIF:
        case NULLS:
        case NUMBER:
        case BFILE_BASE:
        case BLOB_BASE:
        case CLOB_BASE:
        case DATE_BASE:
        case NUMBER_BASE:
        case OBJECT:
        case OCIROWID:
        case OFFSET:
        case OID:
        case ONLY:
        case OPAQUE:
        case OPEN:
        case OPERATOR:
        case ORGANIZATION:
        case OTHERS:
        case OUT:
        case OUTER:
        case OVERRIDING:
        case PACKAGE:
        case PARTITION:
        case PCTFREE:
        case PERCENT:
        case PLS_INTEGER:
        case POSITIVE:
        case POSITIVEN:
        case PRAGMA:
        case PRESERVE:
        case PRIOR:
        case PRIMARY:
        case PRIVATE:
        case RAISE:
        case RANGE:
        case RAW:
        case REAL:
        case RECORD:
        case REFERENCES:
        case REGEXP_LIKE:
        case RELEASE:
        case RELIES_ON:
        case RENAME:
        case RESULT:
        case RETURN:
        case RETURNING:
        case REVERSE:
        case ROLLBACK:
        case ROLLUP:
        case ROW:
        case ROWS:
        case ROWID:
        case ROWNUM:
        case ROWTYPE:
        case SAVE:
        case SAVEPOINT:
        case SECOND:
        case SELF:
        case SEPARATE:
        case SETS:
        case SIBLINGS:
        case SHARDED:
        case SHARING:
        case SMALLINT:
        case SOME:
        case SPACE:
        case SQLCODE:
        case SQLERRM:
        case STATIC:
        case SUBSTITUTABLE:
        case SUCCESSFUL:
        case SYNONYM:
        case SYS_REFCURSOR:
        case TEMPORARY:
        case TIES:
        case TIME:
        case TIMESTAMP:
        case TIMEZONE_REGION:
        case TIMEZONE_ABBR:
        case TIMEZONE_MINUTE:
        case TIMEZONE_HOUR:
        case TRANSACTION:
        case TRIGGER:
        case TRUE:
        case UI:
        case UNDER:
        case USING:
        case WHILE:
        case YES:
        case A:
        case VARCHAR:
        case VARCHAR2:
        case DOUBLE:
        case DEC:
        case PRECISION:
        case INT:
        case NUMERIC:
        case SIGNTYPE:
        case NCHAR:
        case NVARCHAR2:
        case STRING:
        case UROWID:
        case VARRAY:
        case VARYING:
        case BFILE:
        case BLOB:
        case CLOB:
        case NCLOB:
        case YEAR:
        case LOCAL:
        case ZONE:
        case CHARACTER:
        case AFTER:
        case BEFORE:
        case OLD:
        case PARENT:
        case GENERATED:
        case SCOPE:
        case INITIALLY:
        case DEFERRABLE:
        case DEFERRED:
        case CC_IF:
        case CC_ERROR:
        case ANALYZE:
        case ASSOCIATE:
        case AUDIT:
        case COMPOUND:
        case DATABASE:
        case CALL:
        case DISASSOCIATE:
        case EACH:
        case FOLLOWS:
        case LOGOFF:
        case LOGON:
        case NESTED:
        case NOAUDIT:
        case SCHEMA:
        case SERVERERROR:
        case SHUTDOWN:
        case STARTUP:
        case STATEMENT:
        case STATISTICS:
        case SUSPEND:
        case TRUNCATE:
        case WRAPPED:
        case LIBRARY:
        case NAME:
        case STRUCT:
        case CONTEXT:
        case PARAMETERS:
        case LENGTH:
        case TDO:
        case MAXLEN:
        case CHARSETID:
        case CHARSETFORM:
        case ACCESSIBLE:
        case ATTACH:
        case CAST:
        case TREAT:
        case LEFT:
        case RIGHT:
        case BOTH:
        case EMPTY:
        case MULTISET:
        case SUBMULTISET:
        case LEADING:
        case TRAILING:
        case CHAR_CS:
        case NCHAR_CS:
        case DBTIMEZONE:
        case SESSIONTIMEZONE:
        case AUTHENTICATED:
        case LINK:
        case SHARED:
        case DIRECTORY:
        case USER:
        case READ:
        case LATERAL:
        case NOCYCLE:
        case CONNECT_BY_ROOT:
        case IDENTIFIER:
        case QUOTED_LITERAL:
        case JAVA_INTERFACE_CLASS:
        case 493:
          ;
          break;
        default:
          jj_la1[70] = jj_gen;
          break label_20;
        }
        switch (jj_nt.kind) {
        case 26:
        case 29:
        case 30:
        case 32:
        case 33:
        case 34:
        case 35:
        case 36:
        case 37:
        case 38:
        case 39:
        case 40:
        case 41:
        case 42:
        case 43:
        case 44:
        case DEFINER:
        case CURRENT_USER:
        case SERIALLY_REUSABLE:
        case RESTRICT_REFERENCES:
        case EXCEPTION_INIT:
        case AUTONOMOUS_TRANSACTION:
        case LANGUAGE:
        case INLINE:
        case ALTER:
        case AND:
        case ANY:
        case ASC:
        case AT:
        case CHECK:
        case CLUSTER:
        case COMPRESS:
        case CREATE:
        case CURSOR:
        case DESC:
        case DROP:
        case EXCLUSIVE:
        case FETCH:
        case FUNCTION:
        case GOTO:
        case HAVING:
        case INDEX:
        case INSERT:
        case INTERSECT:
        case IS:
        case LIKE:
        case LOCK:
        case MINUS:
        case MODE:
        case NOT:
        case NULL:
        case OPTION:
        case OR:
        case ORDER:
        case PROCEDURE:
        case SHARE:
        case SUBTYPE:
        case THEN:
        case TO:
        case TYPE:
        case UPDATE:
        case ADD:
        case AGGREGATE:
        case APPLY:
        case ARRAY:
        case ATTRIBUTE:
        case AUTHID:
        case BINARY_INTEGER:
        case BODY:
        case BOOLEAN:
        case BULK:
        case BYTE:
        case CASCADE:
        case CHAR:
        case CHAR_BASE:
        case CLOSE:
        case COALESCE:
        case COLLECT:
        case COLUMN:
        case COMMIT:
        case CONSTANT:
        case CONSTRAINT:
        case CONSTRUCTOR:
        case CONTINUE:
        case CONVERT:
        case CROSS:
        case CUBE:
        case CURRENT:
        case CURRVAL:
        case DATA:
        case DATE:
        case DAY:
        case DECIMAL:
        case DEFINITION:
        case DELETE:
        case DISABLE:
        case DO:
        case DUPLICATED:
        case EDITIONABLE:
        case ELEMENT:
        case ELSIF:
        case ENABLE:
        case ESCAPE:
        case EXCEPT:
        case EXCEPTIONS:
        case EXECUTE:
        case EXIT:
        case EXTERNAL:
        case EXTENDED:
        case EXTENDS:
        case EXTRACT:
        case FALSE:
        case FINAL:
        case FLOAT:
        case FORALL:
        case FOREIGN:
        case FORCE:
        case FULL:
        case GLOBAL:
        case GROUPING:
        case HASH:
        case HEAP:
        case HOUR:
        case IMMEDIATE:
        case INNER:
        case INDICES:
        case INCLUDING:
        case INDEXTYPE:
        case INDICATOR:
        case INFINITE:
        case INSTANTIABLE:
        case INTEGER:
        case INTERFACE:
        case INTERVAL:
        case INVALIDATE:
        case ISOLATION:
        case JAVA:
        case JOIN:
        case KEY:
        case LEVEL:
        case LIKEC:
        case LIKE2:
        case LIKE4:
        case LIMIT:
        case LIMITED:
        case LONG:
        case LOOP:
        case MAP:
        case MEMBER:
        case MERGE:
        case METADATA:
        case MINUTE:
        case MLSLABEL:
        case MODIFY:
        case MOD:
        case MONTH:
        case NAN:
        case NATURAL:
        case NATURALN:
        case NEW:
        case NEXT:
        case NEXTVAL:
        case NO:
        case NOCOPY:
        case NONE:
        case NONEDITIONABLE:
        case NULLIF:
        case NULLS:
        case NUMBER:
        case BFILE_BASE:
        case BLOB_BASE:
        case CLOB_BASE:
        case DATE_BASE:
        case NUMBER_BASE:
        case OBJECT:
        case OCIROWID:
        case OFFSET:
        case OID:
        case ONLY:
        case OPAQUE:
        case OPEN:
        case OPERATOR:
        case ORGANIZATION:
        case OTHERS:
        case OUT:
        case OUTER:
        case OVERRIDING:
        case PACKAGE:
        case PARTITION:
        case PCTFREE:
        case PERCENT:
        case PLS_INTEGER:
        case POSITIVE:
        case POSITIVEN:
        case PRAGMA:
        case PRESERVE:
        case PRIOR:
        case PRIMARY:
        case PRIVATE:
        case RAISE:
        case RANGE:
        case RAW:
        case REAL:
        case RECORD:
        case REFERENCES:
        case REGEXP_LIKE:
        case RELEASE:
        case RELIES_ON:
        case RENAME:
        case RESULT:
        case RETURN:
        case RETURNING:
        case REVERSE:
        case ROLLBACK:
        case ROLLUP:
        case ROW:
        case ROWS:
        case ROWID:
        case ROWNUM:
        case ROWTYPE:
        case SAVE:
        case SAVEPOINT:
        case SECOND:
        case SELF:
        case SEPARATE:
        case SETS:
        case SIBLINGS:
        case SHARDED:
        case SHARING:
        case SMALLINT:
        case SOME:
        case SPACE:
        case SQLCODE:
        case SQLERRM:
        case STATIC:
        case SUBSTITUTABLE:
        case SUCCESSFUL:
        case SYNONYM:
        case SYS_REFCURSOR:
        case TEMPORARY:
        case TIES:
        case TIME:
        case TIMESTAMP:
        case TIMEZONE_REGION:
        case TIMEZONE_ABBR:
        case TIMEZONE_MINUTE:
        case TIMEZONE_HOUR:
        case TRANSACTION:
        case TRIGGER:
        case TRUE:
        case UI:
        case UNDER:
        case USING:
        case WHILE:
        case YES:
        case A:
        case VARCHAR:
        case VARCHAR2:
        case DOUBLE:
        case DEC:
        case PRECISION:
        case INT:
        case NUMERIC:
        case SIGNTYPE:
        case NCHAR:
        case NVARCHAR2:
        case STRING:
        case UROWID:
        case VARRAY:
        case VARYING:
        case BFILE:
        case BLOB:
        case CLOB:
        case NCLOB:
        case YEAR:
        case LOCAL:
        case ZONE:
        case CHARACTER:
        case AFTER:
        case BEFORE:
        case OLD:
        case PARENT:
        case GENERATED:
        case SCOPE:
        case INITIALLY:
        case DEFERRABLE:
        case DEFERRED:
        case CC_IF:
        case ANALYZE:
        case ASSOCIATE:
        case AUDIT:
        case COMPOUND:
        case DATABASE:
        case CALL:
        case DISASSOCIATE:
        case EACH:
        case FOLLOWS:
        case LOGOFF:
        case LOGON:
        case NESTED:
        case NOAUDIT:
        case SCHEMA:
        case SERVERERROR:
        case SHUTDOWN:
        case STARTUP:
        case STATEMENT:
        case STATISTICS:
        case SUSPEND:
        case TRUNCATE:
        case WRAPPED:
        case LIBRARY:
        case NAME:
        case STRUCT:
        case CONTEXT:
        case PARAMETERS:
        case LENGTH:
        case TDO:
        case MAXLEN:
        case CHARSETID:
        case CHARSETFORM:
        case ACCESSIBLE:
        case ATTACH:
        case CAST:
        case TREAT:
        case LEFT:
        case RIGHT:
        case BOTH:
        case EMPTY:
        case MULTISET:
        case SUBMULTISET:
        case LEADING:
        case TRAILING:
        case CHAR_CS:
        case NCHAR_CS:
        case DBTIMEZONE:
        case SESSIONTIMEZONE:
        case AUTHENTICATED:
        case LINK:
        case SHARED:
        case DIRECTORY:
        case USER:
        case READ:
        case LATERAL:
        case NOCYCLE:
        case CONNECT_BY_ROOT:
        case IDENTIFIER:
        case QUOTED_LITERAL:
        case JAVA_INTERFACE_CLASS:
        case 493:
          DeclarativeUnit();
          break;
        case CC_ERROR:
          jj_consume_token(CC_ERROR);
          Expression();
          jj_consume_token(CC_END);
          break;
        default:
          jj_la1[71] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
      }
      label_21:
      while (true) {
        switch (jj_nt.kind) {
        case CC_ELSIF:
          ;
          break;
        default:
          jj_la1[72] = jj_gen;
          break label_21;
        }
        jj_consume_token(CC_ELSIF);
        ConditionalOrExpression();
        jj_consume_token(CC_THEN);
        label_22:
        while (true) {
          switch (jj_nt.kind) {
          case 26:
          case 29:
          case 30:
          case 32:
          case 33:
          case 34:
          case 35:
          case 36:
          case 37:
          case 38:
          case 39:
          case 40:
          case 41:
          case 42:
          case 43:
          case 44:
          case DEFINER:
          case CURRENT_USER:
          case SERIALLY_REUSABLE:
          case RESTRICT_REFERENCES:
          case EXCEPTION_INIT:
          case AUTONOMOUS_TRANSACTION:
          case LANGUAGE:
          case INLINE:
          case ALTER:
          case AND:
          case ANY:
          case ASC:
          case AT:
          case CHECK:
          case CLUSTER:
          case COMPRESS:
          case CREATE:
          case CURSOR:
          case DESC:
          case DROP:
          case EXCLUSIVE:
          case FETCH:
          case FUNCTION:
          case GOTO:
          case HAVING:
          case INDEX:
          case INSERT:
          case INTERSECT:
          case IS:
          case LIKE:
          case LOCK:
          case MINUS:
          case MODE:
          case NOT:
          case NULL:
          case OPTION:
          case OR:
          case ORDER:
          case PROCEDURE:
          case SHARE:
          case SUBTYPE:
          case THEN:
          case TO:
          case TYPE:
          case UPDATE:
          case ADD:
          case AGGREGATE:
          case APPLY:
          case ARRAY:
          case ATTRIBUTE:
          case AUTHID:
          case BINARY_INTEGER:
          case BODY:
          case BOOLEAN:
          case BULK:
          case BYTE:
          case CASCADE:
          case CHAR:
          case CHAR_BASE:
          case CLOSE:
          case COALESCE:
          case COLLECT:
          case COLUMN:
          case COMMIT:
          case CONSTANT:
          case CONSTRAINT:
          case CONSTRUCTOR:
          case CONTINUE:
          case CONVERT:
          case CROSS:
          case CUBE:
          case CURRENT:
          case CURRVAL:
          case DATA:
          case DATE:
          case DAY:
          case DECIMAL:
          case DEFINITION:
          case DELETE:
          case DISABLE:
          case DO:
          case DUPLICATED:
          case EDITIONABLE:
          case ELEMENT:
          case ELSIF:
          case ENABLE:
          case ESCAPE:
          case EXCEPT:
          case EXCEPTIONS:
          case EXECUTE:
          case EXIT:
          case EXTERNAL:
          case EXTENDED:
          case EXTENDS:
          case EXTRACT:
          case FALSE:
          case FINAL:
          case FLOAT:
          case FORALL:
          case FOREIGN:
          case FORCE:
          case FULL:
          case GLOBAL:
          case GROUPING:
          case HASH:
          case HEAP:
          case HOUR:
          case IMMEDIATE:
          case INNER:
          case INDICES:
          case INCLUDING:
          case INDEXTYPE:
          case INDICATOR:
          case INFINITE:
          case INSTANTIABLE:
          case INTEGER:
          case INTERFACE:
          case INTERVAL:
          case INVALIDATE:
          case ISOLATION:
          case JAVA:
          case JOIN:
          case KEY:
          case LEVEL:
          case LIKEC:
          case LIKE2:
          case LIKE4:
          case LIMIT:
          case LIMITED:
          case LONG:
          case LOOP:
          case MAP:
          case MEMBER:
          case MERGE:
          case METADATA:
          case MINUTE:
          case MLSLABEL:
          case MODIFY:
          case MOD:
          case MONTH:
          case NAN:
          case NATURAL:
          case NATURALN:
          case NEW:
          case NEXT:
          case NEXTVAL:
          case NO:
          case NOCOPY:
          case NONE:
          case NONEDITIONABLE:
          case NULLIF:
          case NULLS:
          case NUMBER:
          case BFILE_BASE:
          case BLOB_BASE:
          case CLOB_BASE:
          case DATE_BASE:
          case NUMBER_BASE:
          case OBJECT:
          case OCIROWID:
          case OFFSET:
          case OID:
          case ONLY:
          case OPAQUE:
          case OPEN:
          case OPERATOR:
          case ORGANIZATION:
          case OTHERS:
          case OUT:
          case OUTER:
          case OVERRIDING:
          case PACKAGE:
          case PARTITION:
          case PCTFREE:
          case PERCENT:
          case PLS_INTEGER:
          case POSITIVE:
          case POSITIVEN:
          case PRAGMA:
          case PRESERVE:
          case PRIOR:
          case PRIMARY:
          case PRIVATE:
          case RAISE:
          case RANGE:
          case RAW:
          case REAL:
          case RECORD:
          case REFERENCES:
          case REGEXP_LIKE:
          case RELEASE:
          case RELIES_ON:
          case RENAME:
          case RESULT:
          case RETURN:
          case RETURNING:
          case REVERSE:
          case ROLLBACK:
          case ROLLUP:
          case ROW:
          case ROWS:
          case ROWID:
          case ROWNUM:
          case ROWTYPE:
          case SAVE:
          case SAVEPOINT:
          case SECOND:
          case SELF:
          case SEPARATE:
          case SETS:
          case SIBLINGS:
          case SHARDED:
          case SHARING:
          case SMALLINT:
          case SOME:
          case SPACE:
          case SQLCODE:
          case SQLERRM:
          case STATIC:
          case SUBSTITUTABLE:
          case SUCCESSFUL:
          case SYNONYM:
          case SYS_REFCURSOR:
          case TEMPORARY:
          case TIES:
          case TIME:
          case TIMESTAMP:
          case TIMEZONE_REGION:
          case TIMEZONE_ABBR:
          case TIMEZONE_MINUTE:
          case TIMEZONE_HOUR:
          case TRANSACTION:
          case TRIGGER:
          case TRUE:
          case UI:
          case UNDER:
          case USING:
          case WHILE:
          case YES:
          case A:
          case VARCHAR:
          case VARCHAR2:
          case DOUBLE:
          case DEC:
          case PRECISION:
          case INT:
          case NUMERIC:
          case SIGNTYPE:
          case NCHAR:
          case NVARCHAR2:
          case STRING:
          case UROWID:
          case VARRAY:
          case VARYING:
          case BFILE:
          case BLOB:
          case CLOB:
          case NCLOB:
          case YEAR:
          case LOCAL:
          case ZONE:
          case CHARACTER:
          case AFTER:
          case BEFORE:
          case OLD:
          case PARENT:
          case GENERATED:
          case SCOPE:
          case INITIALLY:
          case DEFERRABLE:
          case DEFERRED:
          case CC_IF:
          case CC_ERROR:
          case ANALYZE:
          case ASSOCIATE:
          case AUDIT:
          case COMPOUND:
          case DATABASE:
          case CALL:
          case DISASSOCIATE:
          case EACH:
          case FOLLOWS:
          case LOGOFF:
          case LOGON:
          case NESTED:
          case NOAUDIT:
          case SCHEMA:
          case SERVERERROR:
          case SHUTDOWN:
          case STARTUP:
          case STATEMENT:
          case STATISTICS:
          case SUSPEND:
          case TRUNCATE:
          case WRAPPED:
          case LIBRARY:
          case NAME:
          case STRUCT:
          case CONTEXT:
          case PARAMETERS:
          case LENGTH:
          case TDO:
          case MAXLEN:
          case CHARSETID:
          case CHARSETFORM:
          case ACCESSIBLE:
          case ATTACH:
          case CAST:
          case TREAT:
          case LEFT:
          case RIGHT:
          case BOTH:
          case EMPTY:
          case MULTISET:
          case SUBMULTISET:
          case LEADING:
          case TRAILING:
          case CHAR_CS:
          case NCHAR_CS:
          case DBTIMEZONE:
          case SESSIONTIMEZONE:
          case AUTHENTICATED:
          case LINK:
          case SHARED:
          case DIRECTORY:
          case USER:
          case READ:
          case LATERAL:
          case NOCYCLE:
          case CONNECT_BY_ROOT:
          case IDENTIFIER:
          case QUOTED_LITERAL:
          case JAVA_INTERFACE_CLASS:
          case 493:
            ;
            break;
          default:
            jj_la1[73] = jj_gen;
            break label_22;
          }
          switch (jj_nt.kind) {
          case 26:
          case 29:
          case 30:
          case 32:
          case 33:
          case 34:
          case 35:
          case 36:
          case 37:
          case 38:
          case 39:
          case 40:
          case 41:
          case 42:
          case 43:
          case 44:
          case DEFINER:
          case CURRENT_USER:
          case SERIALLY_REUSABLE:
          case RESTRICT_REFERENCES:
          case EXCEPTION_INIT:
          case AUTONOMOUS_TRANSACTION:
          case LANGUAGE:
          case INLINE:
          case ALTER:
          case AND:
          case ANY:
          case ASC:
          case AT:
          case CHECK:
          case CLUSTER:
          case COMPRESS:
          case CREATE:
          case CURSOR:
          case DESC:
          case DROP:
          case EXCLUSIVE:
          case FETCH:
          case FUNCTION:
          case GOTO:
          case HAVING:
          case INDEX:
          case INSERT:
          case INTERSECT:
          case IS:
          case LIKE:
          case LOCK:
          case MINUS:
          case MODE:
          case NOT:
          case NULL:
          case OPTION:
          case OR:
          case ORDER:
          case PROCEDURE:
          case SHARE:
          case SUBTYPE:
          case THEN:
          case TO:
          case TYPE:
          case UPDATE:
          case ADD:
          case AGGREGATE:
          case APPLY:
          case ARRAY:
          case ATTRIBUTE:
          case AUTHID:
          case BINARY_INTEGER:
          case BODY:
          case BOOLEAN:
          case BULK:
          case BYTE:
          case CASCADE:
          case CHAR:
          case CHAR_BASE:
          case CLOSE:
          case COALESCE:
          case COLLECT:
          case COLUMN:
          case COMMIT:
          case CONSTANT:
          case CONSTRAINT:
          case CONSTRUCTOR:
          case CONTINUE:
          case CONVERT:
          case CROSS:
          case CUBE:
          case CURRENT:
          case CURRVAL:
          case DATA:
          case DATE:
          case DAY:
          case DECIMAL:
          case DEFINITION:
          case DELETE:
          case DISABLE:
          case DO:
          case DUPLICATED:
          case EDITIONABLE:
          case ELEMENT:
          case ELSIF:
          case ENABLE:
          case ESCAPE:
          case EXCEPT:
          case EXCEPTIONS:
          case EXECUTE:
          case EXIT:
          case EXTERNAL:
          case EXTENDED:
          case EXTENDS:
          case EXTRACT:
          case FALSE:
          case FINAL:
          case FLOAT:
          case FORALL:
          case FOREIGN:
          case FORCE:
          case FULL:
          case GLOBAL:
          case GROUPING:
          case HASH:
          case HEAP:
          case HOUR:
          case IMMEDIATE:
          case INNER:
          case INDICES:
          case INCLUDING:
          case INDEXTYPE:
          case INDICATOR:
          case INFINITE:
          case INSTANTIABLE:
          case INTEGER:
          case INTERFACE:
          case INTERVAL:
          case INVALIDATE:
          case ISOLATION:
          case JAVA:
          case JOIN:
          case KEY:
          case LEVEL:
          case LIKEC:
          case LIKE2:
          case LIKE4:
          case LIMIT:
          case LIMITED:
          case LONG:
          case LOOP:
          case MAP:
          case MEMBER:
          case MERGE:
          case METADATA:
          case MINUTE:
          case MLSLABEL:
          case MODIFY:
          case MOD:
          case MONTH:
          case NAN:
          case NATURAL:
          case NATURALN:
          case NEW:
          case NEXT:
          case NEXTVAL:
          case NO:
          case NOCOPY:
          case NONE:
          case NONEDITIONABLE:
          case NULLIF:
          case NULLS:
          case NUMBER:
          case BFILE_BASE:
          case BLOB_BASE:
          case CLOB_BASE:
          case DATE_BASE:
          case NUMBER_BASE:
          case OBJECT:
          case OCIROWID:
          case OFFSET:
          case OID:
          case ONLY:
          case OPAQUE:
          case OPEN:
          case OPERATOR:
          case ORGANIZATION:
          case OTHERS:
          case OUT:
          case OUTER:
          case OVERRIDING:
          case PACKAGE:
          case PARTITION:
          case PCTFREE:
          case PERCENT:
          case PLS_INTEGER:
          case POSITIVE:
          case POSITIVEN:
          case PRAGMA:
          case PRESERVE:
          case PRIOR:
          case PRIMARY:
          case PRIVATE:
          case RAISE:
          case RANGE:
          case RAW:
          case REAL:
          case RECORD:
          case REFERENCES:
          case REGEXP_LIKE:
          case RELEASE:
          case RELIES_ON:
          case RENAME:
          case RESULT:
          case RETURN:
          case RETURNING:
          case REVERSE:
          case ROLLBACK:
          case ROLLUP:
          case ROW:
          case ROWS:
          case ROWID:
          case ROWNUM:
          case ROWTYPE:
          case SAVE:
          case SAVEPOINT:
          case SECOND:
          case SELF:
          case SEPARATE:
          case SETS:
          case SIBLINGS:
          case SHARDED:
          case SHARING:
          case SMALLINT:
          case SOME:
          case SPACE:
          case SQLCODE:
          case SQLERRM:
          case STATIC:
          case SUBSTITUTABLE:
          case SUCCESSFUL:
          case SYNONYM:
          case SYS_REFCURSOR:
          case TEMPORARY:
          case TIES:
          case TIME:
          case TIMESTAMP:
          case TIMEZONE_REGION:
          case TIMEZONE_ABBR:
          case TIMEZONE_MINUTE:
          case TIMEZONE_HOUR:
          case TRANSACTION:
          case TRIGGER:
          case TRUE:
          case UI:
          case UNDER:
          case USING:
          case WHILE:
          case YES:
          case A:
          case VARCHAR:
          case VARCHAR2:
          case DOUBLE:
          case DEC:
          case PRECISION:
          case INT:
          case NUMERIC:
          case SIGNTYPE:
          case NCHAR:
          case NVARCHAR2:
          case STRING:
          case UROWID:
          case VARRAY:
          case VARYING:
          case BFILE:
          case BLOB:
          case CLOB:
          case NCLOB:
          case YEAR:
          case LOCAL:
          case ZONE:
          case CHARACTER:
          case AFTER:
          case BEFORE:
          case OLD:
          case PARENT:
          case GENERATED:
          case SCOPE:
          case INITIALLY:
          case DEFERRABLE:
          case DEFERRED:
          case CC_IF:
          case ANALYZE:
          case ASSOCIATE:
          case AUDIT:
          case COMPOUND:
          case DATABASE:
          case CALL:
          case DISASSOCIATE:
          case EACH:
          case FOLLOWS:
          case LOGOFF:
          case LOGON:
          case NESTED:
          case NOAUDIT:
          case SCHEMA:
          case SERVERERROR:
          case SHUTDOWN:
          case STARTUP:
          case STATEMENT:
          case STATISTICS:
          case SUSPEND:
          case TRUNCATE:
          case WRAPPED:
          case LIBRARY:
          case NAME:
          case STRUCT:
          case CONTEXT:
          case PARAMETERS:
          case LENGTH:
          case TDO:
          case MAXLEN:
          case CHARSETID:
          case CHARSETFORM:
          case ACCESSIBLE:
          case ATTACH:
          case CAST:
          case TREAT:
          case LEFT:
          case RIGHT:
          case BOTH:
          case EMPTY:
          case MULTISET:
          case SUBMULTISET:
          case LEADING:
          case TRAILING:
          case CHAR_CS:
          case NCHAR_CS:
          case DBTIMEZONE:
          case SESSIONTIMEZONE:
          case AUTHENTICATED:
          case LINK:
          case SHARED:
          case DIRECTORY:
          case USER:
          case READ:
          case LATERAL:
          case NOCYCLE:
          case CONNECT_BY_ROOT:
          case IDENTIFIER:
          case QUOTED_LITERAL:
          case JAVA_INTERFACE_CLASS:
          case 493:
            DeclarativeUnit();
            break;
          case CC_ERROR:
            jj_consume_token(CC_ERROR);
            Expression();
            jj_consume_token(CC_END);
            break;
          default:
            jj_la1[74] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
        }
      }
      label_23:
      while (true) {
        switch (jj_nt.kind) {
        case CC_ELSE:
          ;
          break;
        default:
          jj_la1[75] = jj_gen;
          break label_23;
        }
        jj_consume_token(CC_ELSE);
        label_24:
        while (true) {
          switch (jj_nt.kind) {
          case 26:
          case 29:
          case 30:
          case 32:
          case 33:
          case 34:
          case 35:
          case 36:
          case 37:
          case 38:
          case 39:
          case 40:
          case 41:
          case 42:
          case 43:
          case 44:
          case DEFINER:
          case CURRENT_USER:
          case SERIALLY_REUSABLE:
          case RESTRICT_REFERENCES:
          case EXCEPTION_INIT:
          case AUTONOMOUS_TRANSACTION:
          case LANGUAGE:
          case INLINE:
          case ALTER:
          case AND:
          case ANY:
          case ASC:
          case AT:
          case CHECK:
          case CLUSTER:
          case COMPRESS:
          case CREATE:
          case CURSOR:
          case DESC:
          case DROP:
          case EXCLUSIVE:
          case FETCH:
          case FUNCTION:
          case GOTO:
          case HAVING:
          case INDEX:
          case INSERT:
          case INTERSECT:
          case IS:
          case LIKE:
          case LOCK:
          case MINUS:
          case MODE:
          case NOT:
          case NULL:
          case OPTION:
          case OR:
          case ORDER:
          case PROCEDURE:
          case SHARE:
          case SUBTYPE:
          case THEN:
          case TO:
          case TYPE:
          case UPDATE:
          case ADD:
          case AGGREGATE:
          case APPLY:
          case ARRAY:
          case ATTRIBUTE:
          case AUTHID:
          case BINARY_INTEGER:
          case BODY:
          case BOOLEAN:
          case BULK:
          case BYTE:
          case CASCADE:
          case CHAR:
          case CHAR_BASE:
          case CLOSE:
          case COALESCE:
          case COLLECT:
          case COLUMN:
          case COMMIT:
          case CONSTANT:
          case CONSTRAINT:
          case CONSTRUCTOR:
          case CONTINUE:
          case CONVERT:
          case CROSS:
          case CUBE:
          case CURRENT:
          case CURRVAL:
          case DATA:
          case DATE:
          case DAY:
          case DECIMAL:
          case DEFINITION:
          case DELETE:
          case DISABLE:
          case DO:
          case DUPLICATED:
          case EDITIONABLE:
          case ELEMENT:
          case ELSIF:
          case ENABLE:
          case ESCAPE:
          case EXCEPT:
          case EXCEPTIONS:
          case EXECUTE:
          case EXIT:
          case EXTERNAL:
          case EXTENDED:
          case EXTENDS:
          case EXTRACT:
          case FALSE:
          case FINAL:
          case FLOAT:
          case FORALL:
          case FOREIGN:
          case FORCE:
          case FULL:
          case GLOBAL:
          case GROUPING:
          case HASH:
          case HEAP:
          case HOUR:
          case IMMEDIATE:
          case INNER:
          case INDICES:
          case INCLUDING:
          case INDEXTYPE:
          case INDICATOR:
          case INFINITE:
          case INSTANTIABLE:
          case INTEGER:
          case INTERFACE:
          case INTERVAL:
          case INVALIDATE:
          case ISOLATION:
          case JAVA:
          case JOIN:
          case KEY:
          case LEVEL:
          case LIKEC:
          case LIKE2:
          case LIKE4:
          case LIMIT:
          case LIMITED:
          case LONG:
          case LOOP:
          case MAP:
          case MEMBER:
          case MERGE:
          case METADATA:
          case MINUTE:
          case MLSLABEL:
          case MODIFY:
          case MOD:
          case MONTH:
          case NAN:
          case NATURAL:
          case NATURALN:
          case NEW:
          case NEXT:
          case NEXTVAL:
          case NO:
          case NOCOPY:
          case NONE:
          case NONEDITIONABLE:
          case NULLIF:
          case NULLS:
          case NUMBER:
          case BFILE_BASE:
          case BLOB_BASE:
          case CLOB_BASE:
          case DATE_BASE:
          case NUMBER_BASE:
          case OBJECT:
          case OCIROWID:
          case OFFSET:
          case OID:
          case ONLY:
          case OPAQUE:
          case OPEN:
          case OPERATOR:
          case ORGANIZATION:
          case OTHERS:
          case OUT:
          case OUTER:
          case OVERRIDING:
          case PACKAGE:
          case PARTITION:
          case PCTFREE:
          case PERCENT:
          case PLS_INTEGER:
          case POSITIVE:
          case POSITIVEN:
          case PRAGMA:
          case PRESERVE:
          case PRIOR:
          case PRIMARY:
          case PRIVATE:
          case RAISE:
          case RANGE:
          case RAW:
          case REAL:
          case RECORD:
          case REFERENCES:
          case REGEXP_LIKE:
          case RELEASE:
          case RELIES_ON:
          case RENAME:
          case RESULT:
          case RETURN:
          case RETURNING:
          case REVERSE:
          case ROLLBACK:
          case ROLLUP:
          case ROW:
          case ROWS:
          case ROWID:
          case ROWNUM:
          case ROWTYPE:
          case SAVE:
          case SAVEPOINT:
          case SECOND:
          case SELF:
          case SEPARATE:
          case SETS:
          case SIBLINGS:
          case SHARDED:
          case SHARING:
          case SMALLINT:
          case SOME:
          case SPACE:
          case SQLCODE:
          case SQLERRM:
          case STATIC:
          case SUBSTITUTABLE:
          case SUCCESSFUL:
          case SYNONYM:
          case SYS_REFCURSOR:
          case TEMPORARY:
          case TIES:
          case TIME:
          case TIMESTAMP:
          case TIMEZONE_REGION:
          case TIMEZONE_ABBR:
          case TIMEZONE_MINUTE:
          case TIMEZONE_HOUR:
          case TRANSACTION:
          case TRIGGER:
          case TRUE:
          case UI:
          case UNDER:
          case USING:
          case WHILE:
          case YES:
          case A:
          case VARCHAR:
          case VARCHAR2:
          case DOUBLE:
          case DEC:
          case PRECISION:
          case INT:
          case NUMERIC:
          case SIGNTYPE:
          case NCHAR:
          case NVARCHAR2:
          case STRING:
          case UROWID:
          case VARRAY:
          case VARYING:
          case BFILE:
          case BLOB:
          case CLOB:
          case NCLOB:
          case YEAR:
          case LOCAL:
          case ZONE:
          case CHARACTER:
          case AFTER:
          case BEFORE:
          case OLD:
          case PARENT:
          case GENERATED:
          case SCOPE:
          case INITIALLY:
          case DEFERRABLE:
          case DEFERRED:
          case CC_IF:
          case CC_ERROR:
          case ANALYZE:
          case ASSOCIATE:
          case AUDIT:
          case COMPOUND:
          case DATABASE:
          case CALL:
          case DISASSOCIATE:
          case EACH:
          case FOLLOWS:
          case LOGOFF:
          case LOGON:
          case NESTED:
          case NOAUDIT:
          case SCHEMA:
          case SERVERERROR:
          case SHUTDOWN:
          case STARTUP:
          case STATEMENT:
          case STATISTICS:
          case SUSPEND:
          case TRUNCATE:
          case WRAPPED:
          case LIBRARY:
          case NAME:
          case STRUCT:
          case CONTEXT:
          case PARAMETERS:
          case LENGTH:
          case TDO:
          case MAXLEN:
          case CHARSETID:
          case CHARSETFORM:
          case ACCESSIBLE:
          case ATTACH:
          case CAST:
          case TREAT:
          case LEFT:
          case RIGHT:
          case BOTH:
          case EMPTY:
          case MULTISET:
          case SUBMULTISET:
          case LEADING:
          case TRAILING:
          case CHAR_CS:
          case NCHAR_CS:
          case DBTIMEZONE:
          case SESSIONTIMEZONE:
          case AUTHENTICATED:
          case LINK:
          case SHARED:
          case DIRECTORY:
          case USER:
          case READ:
          case LATERAL:
          case NOCYCLE:
          case CONNECT_BY_ROOT:
          case IDENTIFIER:
          case QUOTED_LITERAL:
          case JAVA_INTERFACE_CLASS:
          case 493:
            ;
            break;
          default:
            jj_la1[76] = jj_gen;
            break label_24;
          }
          switch (jj_nt.kind) {
          case 26:
          case 29:
          case 30:
          case 32:
          case 33:
          case 34:
          case 35:
          case 36:
          case 37:
          case 38:
          case 39:
          case 40:
          case 41:
          case 42:
          case 43:
          case 44:
          case DEFINER:
          case CURRENT_USER:
          case SERIALLY_REUSABLE:
          case RESTRICT_REFERENCES:
          case EXCEPTION_INIT:
          case AUTONOMOUS_TRANSACTION:
          case LANGUAGE:
          case INLINE:
          case ALTER:
          case AND:
          case ANY:
          case ASC:
          case AT:
          case CHECK:
          case CLUSTER:
          case COMPRESS:
          case CREATE:
          case CURSOR:
          case DESC:
          case DROP:
          case EXCLUSIVE:
          case FETCH:
          case FUNCTION:
          case GOTO:
          case HAVING:
          case INDEX:
          case INSERT:
          case INTERSECT:
          case IS:
          case LIKE:
          case LOCK:
          case MINUS:
          case MODE:
          case NOT:
          case NULL:
          case OPTION:
          case OR:
          case ORDER:
          case PROCEDURE:
          case SHARE:
          case SUBTYPE:
          case THEN:
          case TO:
          case TYPE:
          case UPDATE:
          case ADD:
          case AGGREGATE:
          case APPLY:
          case ARRAY:
          case ATTRIBUTE:
          case AUTHID:
          case BINARY_INTEGER:
          case BODY:
          case BOOLEAN:
          case BULK:
          case BYTE:
          case CASCADE:
          case CHAR:
          case CHAR_BASE:
          case CLOSE:
          case COALESCE:
          case COLLECT:
          case COLUMN:
          case COMMIT:
          case CONSTANT:
          case CONSTRAINT:
          case CONSTRUCTOR:
          case CONTINUE:
          case CONVERT:
          case CROSS:
          case CUBE:
          case CURRENT:
          case CURRVAL:
          case DATA:
          case DATE:
          case DAY:
          case DECIMAL:
          case DEFINITION:
          case DELETE:
          case DISABLE:
          case DO:
          case DUPLICATED:
          case EDITIONABLE:
          case ELEMENT:
          case ELSIF:
          case ENABLE:
          case ESCAPE:
          case EXCEPT:
          case EXCEPTIONS:
          case EXECUTE:
          case EXIT:
          case EXTERNAL:
          case EXTENDED:
          case EXTENDS:
          case EXTRACT:
          case FALSE:
          case FINAL:
          case FLOAT:
          case FORALL:
          case FOREIGN:
          case FORCE:
          case FULL:
          case GLOBAL:
          case GROUPING:
          case HASH:
          case HEAP:
          case HOUR:
          case IMMEDIATE:
          case INNER:
          case INDICES:
          case INCLUDING:
          case INDEXTYPE:
          case INDICATOR:
          case INFINITE:
          case INSTANTIABLE:
          case INTEGER:
          case INTERFACE:
          case INTERVAL:
          case INVALIDATE:
          case ISOLATION:
          case JAVA:
          case JOIN:
          case KEY:
          case LEVEL:
          case LIKEC:
          case LIKE2:
          case LIKE4:
          case LIMIT:
          case LIMITED:
          case LONG:
          case LOOP:
          case MAP:
          case MEMBER:
          case MERGE:
          case METADATA:
          case MINUTE:
          case MLSLABEL:
          case MODIFY:
          case MOD:
          case MONTH:
          case NAN:
          case NATURAL:
          case NATURALN:
          case NEW:
          case NEXT:
          case NEXTVAL:
          case NO:
          case NOCOPY:
          case NONE:
          case NONEDITIONABLE:
          case NULLIF:
          case NULLS:
          case NUMBER:
          case BFILE_BASE:
          case BLOB_BASE:
          case CLOB_BASE:
          case DATE_BASE:
          case NUMBER_BASE:
          case OBJECT:
          case OCIROWID:
          case OFFSET:
          case OID:
          case ONLY:
          case OPAQUE:
          case OPEN:
          case OPERATOR:
          case ORGANIZATION:
          case OTHERS:
          case OUT:
          case OUTER:
          case OVERRIDING:
          case PACKAGE:
          case PARTITION:
          case PCTFREE:
          case PERCENT:
          case PLS_INTEGER:
          case POSITIVE:
          case POSITIVEN:
          case PRAGMA:
          case PRESERVE:
          case PRIOR:
          case PRIMARY:
          case PRIVATE:
          case RAISE:
          case RANGE:
          case RAW:
          case REAL:
          case RECORD:
          case REFERENCES:
          case REGEXP_LIKE:
          case RELEASE:
          case RELIES_ON:
          case RENAME:
          case RESULT:
          case RETURN:
          case RETURNING:
          case REVERSE:
          case ROLLBACK:
          case ROLLUP:
          case ROW:
          case ROWS:
          case ROWID:
          case ROWNUM:
          case ROWTYPE:
          case SAVE:
          case SAVEPOINT:
          case SECOND:
          case SELF:
          case SEPARATE:
          case SETS:
          case SIBLINGS:
          case SHARDED:
          case SHARING:
          case SMALLINT:
          case SOME:
          case SPACE:
          case SQLCODE:
          case SQLERRM:
          case STATIC:
          case SUBSTITUTABLE:
          case SUCCESSFUL:
          case SYNONYM:
          case SYS_REFCURSOR:
          case TEMPORARY:
          case TIES:
          case TIME:
          case TIMESTAMP:
          case TIMEZONE_REGION:
          case TIMEZONE_ABBR:
          case TIMEZONE_MINUTE:
          case TIMEZONE_HOUR:
          case TRANSACTION:
          case TRIGGER:
          case TRUE:
          case UI:
          case UNDER:
          case USING:
          case WHILE:
          case YES:
          case A:
          case VARCHAR:
          case VARCHAR2:
          case DOUBLE:
          case DEC:
          case PRECISION:
          case INT:
          case NUMERIC:
          case SIGNTYPE:
          case NCHAR:
          case NVARCHAR2:
          case STRING:
          case UROWID:
          case VARRAY:
          case VARYING:
          case BFILE:
          case BLOB:
          case CLOB:
          case NCLOB:
          case YEAR:
          case LOCAL:
          case ZONE:
          case CHARACTER:
          case AFTER:
          case BEFORE:
          case OLD:
          case PARENT:
          case GENERATED:
          case SCOPE:
          case INITIALLY:
          case DEFERRABLE:
          case DEFERRED:
          case CC_IF:
          case ANALYZE:
          case ASSOCIATE:
          case AUDIT:
          case COMPOUND:
          case DATABASE:
          case CALL:
          case DISASSOCIATE:
          case EACH:
          case FOLLOWS:
          case LOGOFF:
          case LOGON:
          case NESTED:
          case NOAUDIT:
          case SCHEMA:
          case SERVERERROR:
          case SHUTDOWN:
          case STARTUP:
          case STATEMENT:
          case STATISTICS:
          case SUSPEND:
          case TRUNCATE:
          case WRAPPED:
          case LIBRARY:
          case NAME:
          case STRUCT:
          case CONTEXT:
          case PARAMETERS:
          case LENGTH:
          case TDO:
          case MAXLEN:
          case CHARSETID:
          case CHARSETFORM:
          case ACCESSIBLE:
          case ATTACH:
          case CAST:
          case TREAT:
          case LEFT:
          case RIGHT:
          case BOTH:
          case EMPTY:
          case MULTISET:
          case SUBMULTISET:
          case LEADING:
          case TRAILING:
          case CHAR_CS:
          case NCHAR_CS:
          case DBTIMEZONE:
          case SESSIONTIMEZONE:
          case AUTHENTICATED:
          case LINK:
          case SHARED:
          case DIRECTORY:
          case USER:
          case READ:
          case LATERAL:
          case NOCYCLE:
          case CONNECT_BY_ROOT:
          case IDENTIFIER:
          case QUOTED_LITERAL:
          case JAVA_INTERFACE_CLASS:
          case 493:
            DeclarativeUnit();
            break;
          case CC_ERROR:
            jj_consume_token(CC_ERROR);
            Expression();
            jj_consume_token(CC_END);
            break;
          default:
            jj_la1[77] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
        }
      }
      jj_consume_token(CC_END);
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
        jjtc000 = false;
        {if (true) return jjtn000 ;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
            {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
          }
          {if (true) throw (Error)jjte000;}
    } finally {
          if (jjtc000) {
            jjtree.closeNodeScope(jjtn000, true, getToken(0));
          }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * 2006-05-22 - Matthias Hendler - Printing of custom tag "@deprecated" removed.
 *                                 Printing of any custom tag added. Now user can define his own
 *								   custom tags which he can evaluate in the XSLT.
 *                                 This methode also documents global functions/procedures.
 */
  final public ASTProgramUnit ProgramUnit() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) ProgramUnit */
  ASTProgramUnit jjtn000 = new ASTProgramUnit(JJTPROGRAMUNIT);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      switch (jj_nt.kind) {
      case CREATE:
        jj_consume_token(CREATE);
        switch (jj_nt.kind) {
        case OR:
          jj_consume_token(OR);
          KEYWORD("REPLACE");
          break;
        default:
          jj_la1[78] = jj_gen;
          ;
        }
        switch (jj_nt.kind) {
        case EDITIONABLE:
        case NONEDITIONABLE:
          switch (jj_nt.kind) {
          case EDITIONABLE:
            jj_consume_token(EDITIONABLE);
            break;
          case NONEDITIONABLE:
            jj_consume_token(NONEDITIONABLE);
            break;
          default:
            jj_la1[79] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
          break;
        default:
          jj_la1[80] = jj_gen;
          ;
        }
        break;
      default:
        jj_la1[81] = jj_gen;
        ;
      }
      MethodDeclarator();
      switch (jj_nt.kind) {
      case WRAPPED:
        WrappedObject();
        break;
      case SEMICOLON:
      case AS:
      case IS:
      case AGGREGATE:
      case AUTHID:
      case DETERMINISTIC:
      case PARALLEL_ENABLE:
      case PIPELINED:
      case RESULT_CACHE:
      case ACCESSIBLE:
        label_25:
        while (true) {
          switch (jj_nt.kind) {
          case AUTHID:
          case DETERMINISTIC:
          case PARALLEL_ENABLE:
          case PIPELINED:
          case RESULT_CACHE:
          case ACCESSIBLE:
            ;
            break;
          default:
            jj_la1[82] = jj_gen;
            break label_25;
          }
          switch (jj_nt.kind) {
          case AUTHID:
            jj_consume_token(AUTHID);
            switch (jj_nt.kind) {
            case CURRENT_USER:
              jj_consume_token(CURRENT_USER);
              break;
            case DEFINER:
              jj_consume_token(DEFINER);
              break;
            default:
              jj_la1[83] = jj_gen;
              jj_consume_token(-1);
              throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
            }
            break;
          case DETERMINISTIC:
            jj_consume_token(DETERMINISTIC);
            break;
          case ACCESSIBLE:
            AccessibleByClause();
            break;
          case PARALLEL_ENABLE:
            jj_consume_token(PARALLEL_ENABLE);
            switch (jj_nt.kind) {
            case LPAREN:
              ParallelClause();
              break;
            default:
              jj_la1[84] = jj_gen;
              ;
            }
            switch (jj_nt.kind) {
            case USING:
              jj_consume_token(USING);
              ID();
              switch (jj_nt.kind) {
              case DOT:
                jj_consume_token(DOT);
                ID();
                break;
              default:
                jj_la1[85] = jj_gen;
                ;
              }
              break;
            default:
              jj_la1[86] = jj_gen;
              ;
            }
            break;
          case PIPELINED:
            jj_consume_token(PIPELINED);
            switch (jj_nt.kind) {
            case CLUSTER:
            case ORDER:
            case USING:
              switch (jj_nt.kind) {
              case USING:
                jj_consume_token(USING);
                ID();
                switch (jj_nt.kind) {
                case DOT:
                  jj_consume_token(DOT);
                  ID();
                  break;
                default:
                  jj_la1[87] = jj_gen;
                  ;
                }
                break;
              case CLUSTER:
              case ORDER:
                switch (jj_nt.kind) {
                case ORDER:
                  jj_consume_token(ORDER);
                  break;
                case CLUSTER:
                  jj_consume_token(CLUSTER);
                  break;
                default:
                  jj_la1[88] = jj_gen;
                  jj_consume_token(-1);
                  throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
                }
                switch (jj_nt.kind) {
                case 26:
                case 29:
                case 30:
                case 32:
                case 33:
                case 34:
                case 35:
                case 36:
                case 37:
                case 38:
                case 39:
                case 40:
                case 41:
                case 42:
                case 43:
                case 44:
                case DEFINER:
                case CURRENT_USER:
                case SERIALLY_REUSABLE:
                case RESTRICT_REFERENCES:
                case EXCEPTION_INIT:
                case AUTONOMOUS_TRANSACTION:
                case LANGUAGE:
                case INLINE:
                case ALTER:
                case AND:
                case ANY:
                case ASC:
                case AT:
                case CHECK:
                case CLUSTER:
                case COMPRESS:
                case CREATE:
                case DESC:
                case DROP:
                case EXCLUSIVE:
                case FETCH:
                case GOTO:
                case HAVING:
                case INDEX:
                case INSERT:
                case INTERSECT:
                case IS:
                case LIKE:
                case LOCK:
                case MINUS:
                case MODE:
                case NOT:
                case NULL:
                case OPTION:
                case OR:
                case SHARE:
                case SUBTYPE:
                case THEN:
                case TO:
                case TYPE:
                case UPDATE:
                case ADD:
                case AGGREGATE:
                case APPLY:
                case ARRAY:
                case ATTRIBUTE:
                case AUTHID:
                case BINARY_INTEGER:
                case BODY:
                case BOOLEAN:
                case BULK:
                case BYTE:
                case CASCADE:
                case CHAR:
                case CHAR_BASE:
                case CLOSE:
                case COALESCE:
                case COLLECT:
                case COLUMN:
                case COMMIT:
                case CONSTANT:
                case CONSTRAINT:
                case CONSTRUCTOR:
                case CONTINUE:
                case CONVERT:
                case CROSS:
                case CUBE:
                case CURRENT:
                case CURRVAL:
                case DATA:
                case DATE:
                case DAY:
                case DECIMAL:
                case DEFINITION:
                case DELETE:
                case DISABLE:
                case DO:
                case DUPLICATED:
                case EDITIONABLE:
                case ELEMENT:
                case ELSIF:
                case ENABLE:
                case ESCAPE:
                case EXCEPT:
                case EXCEPTIONS:
                case EXECUTE:
                case EXIT:
                case EXTERNAL:
                case EXTENDED:
                case EXTENDS:
                case EXTRACT:
                case FALSE:
                case FINAL:
                case FLOAT:
                case FORALL:
                case FOREIGN:
                case FORCE:
                case FULL:
                case GLOBAL:
                case GROUPING:
                case HASH:
                case HEAP:
                case HOUR:
                case IMMEDIATE:
                case INNER:
                case INDICES:
                case INCLUDING:
                case INDEXTYPE:
                case INDICATOR:
                case INFINITE:
                case INSTANTIABLE:
                case INTEGER:
                case INTERFACE:
                case INTERVAL:
                case INVALIDATE:
                case ISOLATION:
                case JAVA:
                case JOIN:
                case KEY:
                case LEVEL:
                case LIKEC:
                case LIKE2:
                case LIKE4:
                case LIMIT:
                case LIMITED:
                case LONG:
                case LOOP:
                case MAP:
                case MEMBER:
                case MERGE:
                case METADATA:
                case MINUTE:
                case MLSLABEL:
                case MODIFY:
                case MOD:
                case MONTH:
                case NAN:
                case NATURAL:
                case NATURALN:
                case NEW:
                case NEXT:
                case NEXTVAL:
                case NO:
                case NOCOPY:
                case NONE:
                case NONEDITIONABLE:
                case NULLIF:
                case NULLS:
                case NUMBER:
                case BFILE_BASE:
                case BLOB_BASE:
                case CLOB_BASE:
                case DATE_BASE:
                case NUMBER_BASE:
                case OBJECT:
                case OCIROWID:
                case OFFSET:
                case OID:
                case ONLY:
                case OPAQUE:
                case OPEN:
                case OPERATOR:
                case ORGANIZATION:
                case OTHERS:
                case OUT:
                case OUTER:
                case OVERRIDING:
                case PACKAGE:
                case PARTITION:
                case PCTFREE:
                case PERCENT:
                case PLS_INTEGER:
                case POSITIVE:
                case POSITIVEN:
                case PRESERVE:
                case PRIOR:
                case PRIMARY:
                case PRIVATE:
                case RAISE:
                case RANGE:
                case RAW:
                case REAL:
                case RECORD:
                case REFERENCES:
                case REGEXP_LIKE:
                case RELEASE:
                case RELIES_ON:
                case RENAME:
                case RESULT:
                case RETURN:
                case RETURNING:
                case REVERSE:
                case ROLLBACK:
                case ROLLUP:
                case ROW:
                case ROWS:
                case ROWID:
                case ROWNUM:
                case ROWTYPE:
                case SAVE:
                case SAVEPOINT:
                case SECOND:
                case SELF:
                case SEPARATE:
                case SETS:
                case SIBLINGS:
                case SHARDED:
                case SHARING:
                case SMALLINT:
                case SOME:
                case SPACE:
                case SQLCODE:
                case SQLERRM:
                case STATIC:
                case SUBSTITUTABLE:
                case SUCCESSFUL:
                case SYNONYM:
                case SYS_REFCURSOR:
                case TEMPORARY:
                case TIES:
                case TIME:
                case TIMESTAMP:
                case TIMEZONE_REGION:
                case TIMEZONE_ABBR:
                case TIMEZONE_MINUTE:
                case TIMEZONE_HOUR:
                case TRANSACTION:
                case TRIGGER:
                case TRUE:
                case UI:
                case UNDER:
                case USING:
                case WHILE:
                case YES:
                case A:
                case VARCHAR:
                case VARCHAR2:
                case DOUBLE:
                case DEC:
                case PRECISION:
                case INT:
                case NUMERIC:
                case SIGNTYPE:
                case NCHAR:
                case NVARCHAR2:
                case STRING:
                case UROWID:
                case VARRAY:
                case VARYING:
                case BFILE:
                case BLOB:
                case CLOB:
                case NCLOB:
                case YEAR:
                case LOCAL:
                case ZONE:
                case CHARACTER:
                case AFTER:
                case BEFORE:
                case OLD:
                case PARENT:
                case GENERATED:
                case SCOPE:
                case INITIALLY:
                case DEFERRABLE:
                case DEFERRED:
                case ANALYZE:
                case ASSOCIATE:
                case AUDIT:
                case COMPOUND:
                case DATABASE:
                case CALL:
                case DISASSOCIATE:
                case EACH:
                case FOLLOWS:
                case LOGOFF:
                case LOGON:
                case NESTED:
                case NOAUDIT:
                case SCHEMA:
                case SERVERERROR:
                case SHUTDOWN:
                case STARTUP:
                case STATEMENT:
                case STATISTICS:
                case SUSPEND:
                case TRUNCATE:
                case WRAPPED:
                case LIBRARY:
                case NAME:
                case STRUCT:
                case CONTEXT:
                case PARAMETERS:
                case LENGTH:
                case TDO:
                case MAXLEN:
                case CHARSETID:
                case CHARSETFORM:
                case ACCESSIBLE:
                case ATTACH:
                case CAST:
                case TREAT:
                case LEFT:
                case RIGHT:
                case BOTH:
                case EMPTY:
                case MULTISET:
                case SUBMULTISET:
                case LEADING:
                case TRAILING:
                case CHAR_CS:
                case NCHAR_CS:
                case DBTIMEZONE:
                case SESSIONTIMEZONE:
                case AUTHENTICATED:
                case LINK:
                case SHARED:
                case DIRECTORY:
                case USER:
                case READ:
                case LATERAL:
                case NOCYCLE:
                case CONNECT_BY_ROOT:
                case IDENTIFIER:
                case QUOTED_LITERAL:
                case JAVA_INTERFACE_CLASS:
                case 493:
                  ID();
                  break;
                default:
                  jj_la1[89] = jj_gen;
                  ;
                }
                jj_consume_token(BY);
                jj_consume_token(LPAREN);
                ID();
                label_26:
                while (true) {
                  switch (jj_nt.kind) {
                  case COMMA:
                    ;
                    break;
                  default:
                    jj_la1[90] = jj_gen;
                    break label_26;
                  }
                  jj_consume_token(COMMA);
                  ID();
                }
                jj_consume_token(RPAREN);
                break;
              default:
                jj_la1[91] = jj_gen;
                jj_consume_token(-1);
                throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
              }
              break;
            default:
              jj_la1[92] = jj_gen;
              ;
            }
            break;
          case RESULT_CACHE:
            jj_consume_token(RESULT_CACHE);
            switch (jj_nt.kind) {
            case RELIES_ON:
              jj_consume_token(RELIES_ON);
              jj_consume_token(LPAREN);
              ID();
              switch (jj_nt.kind) {
              case DOT:
                jj_consume_token(DOT);
                ID();
                break;
              default:
                jj_la1[93] = jj_gen;
                ;
              }
              label_27:
              while (true) {
                switch (jj_nt.kind) {
                case COMMA:
                  ;
                  break;
                default:
                  jj_la1[94] = jj_gen;
                  break label_27;
                }
                jj_consume_token(COMMA);
                ID();
                switch (jj_nt.kind) {
                case DOT:
                  jj_consume_token(DOT);
                  ID();
                  break;
                default:
                  jj_la1[95] = jj_gen;
                  ;
                }
              }
              jj_consume_token(RPAREN);
              break;
            default:
              jj_la1[96] = jj_gen;
              ;
            }
            break;
          default:
            jj_la1[97] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
        }
        switch (jj_nt.kind) {
        case AGGREGATE:
          jj_consume_token(AGGREGATE);
          jj_consume_token(USING);
          ID();
          break;
        default:
          jj_la1[98] = jj_gen;
          ;
        }
        switch (jj_nt.kind) {
        case AS:
        case IS:
          switch (jj_nt.kind) {
          case IS:
            jj_consume_token(IS);
            break;
          case AS:
            jj_consume_token(AS);
            break;
          default:
            jj_la1[99] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
          if (jj_2_25(2)) {
            CallSpecTail();
          } else {
            switch (jj_nt.kind) {
            case 26:
            case 29:
            case 30:
            case 32:
            case 33:
            case 34:
            case 35:
            case 36:
            case 37:
            case 38:
            case 39:
            case 40:
            case 41:
            case 42:
            case 43:
            case 44:
            case DEFINER:
            case CURRENT_USER:
            case SERIALLY_REUSABLE:
            case RESTRICT_REFERENCES:
            case EXCEPTION_INIT:
            case AUTONOMOUS_TRANSACTION:
            case LANGUAGE:
            case INLINE:
            case ALTER:
            case AND:
            case ANY:
            case ASC:
            case AT:
            case BEGIN:
            case CHECK:
            case CLUSTER:
            case COMPRESS:
            case CREATE:
            case CURSOR:
            case DESC:
            case DROP:
            case EXCLUSIVE:
            case FETCH:
            case FUNCTION:
            case GOTO:
            case HAVING:
            case INDEX:
            case INSERT:
            case INTERSECT:
            case IS:
            case LIKE:
            case LOCK:
            case MINUS:
            case MODE:
            case NOT:
            case NULL:
            case OPTION:
            case OR:
            case ORDER:
            case PROCEDURE:
            case SHARE:
            case SUBTYPE:
            case THEN:
            case TO:
            case TYPE:
            case UPDATE:
            case ADD:
            case AGGREGATE:
            case APPLY:
            case ARRAY:
            case ATTRIBUTE:
            case AUTHID:
            case BINARY_INTEGER:
            case BODY:
            case BOOLEAN:
            case BULK:
            case BYTE:
            case CASCADE:
            case CHAR:
            case CHAR_BASE:
            case CLOSE:
            case COALESCE:
            case COLLECT:
            case COLUMN:
            case COMMIT:
            case CONSTANT:
            case CONSTRAINT:
            case CONSTRUCTOR:
            case CONTINUE:
            case CONVERT:
            case CROSS:
            case CUBE:
            case CURRENT:
            case CURRVAL:
            case DATA:
            case DATE:
            case DAY:
            case DECIMAL:
            case DEFINITION:
            case DELETE:
            case DISABLE:
            case DO:
            case DUPLICATED:
            case EDITIONABLE:
            case ELEMENT:
            case ELSIF:
            case ENABLE:
            case ESCAPE:
            case EXCEPT:
            case EXCEPTIONS:
            case EXECUTE:
            case EXIT:
            case EXTERNAL:
            case EXTENDED:
            case EXTENDS:
            case EXTRACT:
            case FALSE:
            case FINAL:
            case FLOAT:
            case FORALL:
            case FOREIGN:
            case FORCE:
            case FULL:
            case GLOBAL:
            case GROUPING:
            case HASH:
            case HEAP:
            case HOUR:
            case IMMEDIATE:
            case INNER:
            case INDICES:
            case INCLUDING:
            case INDEXTYPE:
            case INDICATOR:
            case INFINITE:
            case INSTANTIABLE:
            case INTEGER:
            case INTERFACE:
            case INTERVAL:
            case INVALIDATE:
            case ISOLATION:
            case JAVA:
            case JOIN:
            case KEY:
            case LEVEL:
            case LIKEC:
            case LIKE2:
            case LIKE4:
            case LIMIT:
            case LIMITED:
            case LONG:
            case LOOP:
            case MAP:
            case MEMBER:
            case MERGE:
            case METADATA:
            case MINUTE:
            case MLSLABEL:
            case MODIFY:
            case MOD:
            case MONTH:
            case NAN:
            case NATURAL:
            case NATURALN:
            case NEW:
            case NEXT:
            case NEXTVAL:
            case NO:
            case NOCOPY:
            case NONE:
            case NONEDITIONABLE:
            case NULLIF:
            case NULLS:
            case NUMBER:
            case BFILE_BASE:
            case BLOB_BASE:
            case CLOB_BASE:
            case DATE_BASE:
            case NUMBER_BASE:
            case OBJECT:
            case OCIROWID:
            case OFFSET:
            case OID:
            case ONLY:
            case OPAQUE:
            case OPEN:
            case OPERATOR:
            case ORGANIZATION:
            case OTHERS:
            case OUT:
            case OUTER:
            case OVERRIDING:
            case PACKAGE:
            case PARTITION:
            case PCTFREE:
            case PERCENT:
            case PLS_INTEGER:
            case POSITIVE:
            case POSITIVEN:
            case PRAGMA:
            case PRESERVE:
            case PRIOR:
            case PRIMARY:
            case PRIVATE:
            case RAISE:
            case RANGE:
            case RAW:
            case REAL:
            case RECORD:
            case REFERENCES:
            case REGEXP_LIKE:
            case RELEASE:
            case RELIES_ON:
            case RENAME:
            case RESULT:
            case RETURN:
            case RETURNING:
            case REVERSE:
            case ROLLBACK:
            case ROLLUP:
            case ROW:
            case ROWS:
            case ROWID:
            case ROWNUM:
            case ROWTYPE:
            case SAVE:
            case SAVEPOINT:
            case SECOND:
            case SELF:
            case SEPARATE:
            case SETS:
            case SIBLINGS:
            case SHARDED:
            case SHARING:
            case SMALLINT:
            case SOME:
            case SPACE:
            case SQLCODE:
            case SQLERRM:
            case STATIC:
            case SUBSTITUTABLE:
            case SUCCESSFUL:
            case SYNONYM:
            case SYS_REFCURSOR:
            case TEMPORARY:
            case TIES:
            case TIME:
            case TIMESTAMP:
            case TIMEZONE_REGION:
            case TIMEZONE_ABBR:
            case TIMEZONE_MINUTE:
            case TIMEZONE_HOUR:
            case TRANSACTION:
            case TRIGGER:
            case TRUE:
            case UI:
            case UNDER:
            case USING:
            case WHILE:
            case YES:
            case A:
            case VARCHAR:
            case VARCHAR2:
            case DOUBLE:
            case DEC:
            case PRECISION:
            case INT:
            case NUMERIC:
            case SIGNTYPE:
            case NCHAR:
            case NVARCHAR2:
            case STRING:
            case UROWID:
            case VARRAY:
            case VARYING:
            case BFILE:
            case BLOB:
            case CLOB:
            case NCLOB:
            case YEAR:
            case LOCAL:
            case ZONE:
            case CHARACTER:
            case AFTER:
            case BEFORE:
            case OLD:
            case PARENT:
            case GENERATED:
            case SCOPE:
            case INITIALLY:
            case DEFERRABLE:
            case DEFERRED:
            case CC_IF:
            case ANALYZE:
            case ASSOCIATE:
            case AUDIT:
            case COMPOUND:
            case DATABASE:
            case CALL:
            case DISASSOCIATE:
            case EACH:
            case FOLLOWS:
            case LOGOFF:
            case LOGON:
            case NESTED:
            case NOAUDIT:
            case SCHEMA:
            case SERVERERROR:
            case SHUTDOWN:
            case STARTUP:
            case STATEMENT:
            case STATISTICS:
            case SUSPEND:
            case TRUNCATE:
            case WRAPPED:
            case LIBRARY:
            case NAME:
            case STRUCT:
            case CONTEXT:
            case PARAMETERS:
            case LENGTH:
            case TDO:
            case MAXLEN:
            case CHARSETID:
            case CHARSETFORM:
            case ACCESSIBLE:
            case ATTACH:
            case CAST:
            case TREAT:
            case LEFT:
            case RIGHT:
            case BOTH:
            case EMPTY:
            case MULTISET:
            case SUBMULTISET:
            case LEADING:
            case TRAILING:
            case CHAR_CS:
            case NCHAR_CS:
            case DBTIMEZONE:
            case SESSIONTIMEZONE:
            case AUTHENTICATED:
            case LINK:
            case SHARED:
            case DIRECTORY:
            case USER:
            case READ:
            case LATERAL:
            case NOCYCLE:
            case CONNECT_BY_ROOT:
            case IDENTIFIER:
            case QUOTED_LITERAL:
            case JAVA_INTERFACE_CLASS:
            case 493:
              switch (jj_nt.kind) {
              case 26:
              case 29:
              case 30:
              case 32:
              case 33:
              case 34:
              case 35:
              case 36:
              case 37:
              case 38:
              case 39:
              case 40:
              case 41:
              case 42:
              case 43:
              case 44:
              case DEFINER:
              case CURRENT_USER:
              case SERIALLY_REUSABLE:
              case RESTRICT_REFERENCES:
              case EXCEPTION_INIT:
              case AUTONOMOUS_TRANSACTION:
              case LANGUAGE:
              case INLINE:
              case ALTER:
              case AND:
              case ANY:
              case ASC:
              case AT:
              case CHECK:
              case CLUSTER:
              case COMPRESS:
              case CREATE:
              case CURSOR:
              case DESC:
              case DROP:
              case EXCLUSIVE:
              case FETCH:
              case FUNCTION:
              case GOTO:
              case HAVING:
              case INDEX:
              case INSERT:
              case INTERSECT:
              case IS:
              case LIKE:
              case LOCK:
              case MINUS:
              case MODE:
              case NOT:
              case NULL:
              case OPTION:
              case OR:
              case ORDER:
              case PROCEDURE:
              case SHARE:
              case SUBTYPE:
              case THEN:
              case TO:
              case TYPE:
              case UPDATE:
              case ADD:
              case AGGREGATE:
              case APPLY:
              case ARRAY:
              case ATTRIBUTE:
              case AUTHID:
              case BINARY_INTEGER:
              case BODY:
              case BOOLEAN:
              case BULK:
              case BYTE:
              case CASCADE:
              case CHAR:
              case CHAR_BASE:
              case CLOSE:
              case COALESCE:
              case COLLECT:
              case COLUMN:
              case COMMIT:
              case CONSTANT:
              case CONSTRAINT:
              case CONSTRUCTOR:
              case CONTINUE:
              case CONVERT:
              case CROSS:
              case CUBE:
              case CURRENT:
              case CURRVAL:
              case DATA:
              case DATE:
              case DAY:
              case DECIMAL:
              case DEFINITION:
              case DELETE:
              case DISABLE:
              case DO:
              case DUPLICATED:
              case EDITIONABLE:
              case ELEMENT:
              case ELSIF:
              case ENABLE:
              case ESCAPE:
              case EXCEPT:
              case EXCEPTIONS:
              case EXECUTE:
              case EXIT:
              case EXTERNAL:
              case EXTENDED:
              case EXTENDS:
              case EXTRACT:
              case FALSE:
              case FINAL:
              case FLOAT:
              case FORALL:
              case FOREIGN:
              case FORCE:
              case FULL:
              case GLOBAL:
              case GROUPING:
              case HASH:
              case HEAP:
              case HOUR:
              case IMMEDIATE:
              case INNER:
              case INDICES:
              case INCLUDING:
              case INDEXTYPE:
              case INDICATOR:
              case INFINITE:
              case INSTANTIABLE:
              case INTEGER:
              case INTERFACE:
              case INTERVAL:
              case INVALIDATE:
              case ISOLATION:
              case JAVA:
              case JOIN:
              case KEY:
              case LEVEL:
              case LIKEC:
              case LIKE2:
              case LIKE4:
              case LIMIT:
              case LIMITED:
              case LONG:
              case LOOP:
              case MAP:
              case MEMBER:
              case MERGE:
              case METADATA:
              case MINUTE:
              case MLSLABEL:
              case MODIFY:
              case MOD:
              case MONTH:
              case NAN:
              case NATURAL:
              case NATURALN:
              case NEW:
              case NEXT:
              case NEXTVAL:
              case NO:
              case NOCOPY:
              case NONE:
              case NONEDITIONABLE:
              case NULLIF:
              case NULLS:
              case NUMBER:
              case BFILE_BASE:
              case BLOB_BASE:
              case CLOB_BASE:
              case DATE_BASE:
              case NUMBER_BASE:
              case OBJECT:
              case OCIROWID:
              case OFFSET:
              case OID:
              case ONLY:
              case OPAQUE:
              case OPEN:
              case OPERATOR:
              case ORGANIZATION:
              case OTHERS:
              case OUT:
              case OUTER:
              case OVERRIDING:
              case PACKAGE:
              case PARTITION:
              case PCTFREE:
              case PERCENT:
              case PLS_INTEGER:
              case POSITIVE:
              case POSITIVEN:
              case PRAGMA:
              case PRESERVE:
              case PRIOR:
              case PRIMARY:
              case PRIVATE:
              case RAISE:
              case RANGE:
              case RAW:
              case REAL:
              case RECORD:
              case REFERENCES:
              case REGEXP_LIKE:
              case RELEASE:
              case RELIES_ON:
              case RENAME:
              case RESULT:
              case RETURN:
              case RETURNING:
              case REVERSE:
              case ROLLBACK:
              case ROLLUP:
              case ROW:
              case ROWS:
              case ROWID:
              case ROWNUM:
              case ROWTYPE:
              case SAVE:
              case SAVEPOINT:
              case SECOND:
              case SELF:
              case SEPARATE:
              case SETS:
              case SIBLINGS:
              case SHARDED:
              case SHARING:
              case SMALLINT:
              case SOME:
              case SPACE:
              case SQLCODE:
              case SQLERRM:
              case STATIC:
              case SUBSTITUTABLE:
              case SUCCESSFUL:
              case SYNONYM:
              case SYS_REFCURSOR:
              case TEMPORARY:
              case TIES:
              case TIME:
              case TIMESTAMP:
              case TIMEZONE_REGION:
              case TIMEZONE_ABBR:
              case TIMEZONE_MINUTE:
              case TIMEZONE_HOUR:
              case TRANSACTION:
              case TRIGGER:
              case TRUE:
              case UI:
              case UNDER:
              case USING:
              case WHILE:
              case YES:
              case A:
              case VARCHAR:
              case VARCHAR2:
              case DOUBLE:
              case DEC:
              case PRECISION:
              case INT:
              case NUMERIC:
              case SIGNTYPE:
              case NCHAR:
              case NVARCHAR2:
              case STRING:
              case UROWID:
              case VARRAY:
              case VARYING:
              case BFILE:
              case BLOB:
              case CLOB:
              case NCLOB:
              case YEAR:
              case LOCAL:
              case ZONE:
              case CHARACTER:
              case AFTER:
              case BEFORE:
              case OLD:
              case PARENT:
              case GENERATED:
              case SCOPE:
              case INITIALLY:
              case DEFERRABLE:
              case DEFERRED:
              case CC_IF:
              case ANALYZE:
              case ASSOCIATE:
              case AUDIT:
              case COMPOUND:
              case DATABASE:
              case CALL:
              case DISASSOCIATE:
              case EACH:
              case FOLLOWS:
              case LOGOFF:
              case LOGON:
              case NESTED:
              case NOAUDIT:
              case SCHEMA:
              case SERVERERROR:
              case SHUTDOWN:
              case STARTUP:
              case STATEMENT:
              case STATISTICS:
              case SUSPEND:
              case TRUNCATE:
              case WRAPPED:
              case LIBRARY:
              case NAME:
              case STRUCT:
              case CONTEXT:
              case PARAMETERS:
              case LENGTH:
              case TDO:
              case MAXLEN:
              case CHARSETID:
              case CHARSETFORM:
              case ACCESSIBLE:
              case ATTACH:
              case CAST:
              case TREAT:
              case LEFT:
              case RIGHT:
              case BOTH:
              case EMPTY:
              case MULTISET:
              case SUBMULTISET:
              case LEADING:
              case TRAILING:
              case CHAR_CS:
              case NCHAR_CS:
              case DBTIMEZONE:
              case SESSIONTIMEZONE:
              case AUTHENTICATED:
              case LINK:
              case SHARED:
              case DIRECTORY:
              case USER:
              case READ:
              case LATERAL:
              case NOCYCLE:
              case CONNECT_BY_ROOT:
              case IDENTIFIER:
              case QUOTED_LITERAL:
              case JAVA_INTERFACE_CLASS:
              case 493:
                DeclarativeSection();
                break;
              default:
                jj_la1[100] = jj_gen;
                ;
              }
              jj_consume_token(BEGIN);
              switch (jj_nt.kind) {
              case PRAGMA:
                Pragma();
                break;
              default:
                jj_la1[101] = jj_gen;
                ;
              }
              label_28:
              while (true) {
                switch (jj_nt.kind) {
                case LPAREN:
                case PLUSSIGN:
                case MINUSSIGN:
                case STAR:
                case 26:
                case 29:
                case 30:
                case 32:
                case 33:
                case 34:
                case 35:
                case 36:
                case 37:
                case 38:
                case 39:
                case 40:
                case 41:
                case 42:
                case 43:
                case 44:
                case 48:
                case DEFINER:
                case CURRENT_USER:
                case SERIALLY_REUSABLE:
                case RESTRICT_REFERENCES:
                case EXCEPTION_INIT:
                case AUTONOMOUS_TRANSACTION:
                case LANGUAGE:
                case INLINE:
                case ALTER:
                case AND:
                case ANY:
                case ASC:
                case AT:
                case BEGIN:
                case CASE:
                case CHECK:
                case CLUSTER:
                case COMPRESS:
                case CREATE:
                case DECLARE:
                case DESC:
                case DROP:
                case EXCLUSIVE:
                case FETCH:
                case FOR:
                case GOTO:
                case HAVING:
                case IF:
                case INDEX:
                case INSERT:
                case INTERSECT:
                case IS:
                case LIKE:
                case LOCK:
                case MINUS:
                case MODE:
                case NOT:
                case NULL:
                case OPTION:
                case OR:
                case SELECT:
                case SHARE:
                case SQL:
                case SUBTYPE:
                case THEN:
                case TO:
                case TYPE:
                case UPDATE:
                case WITH:
                case ADD:
                case AGGREGATE:
                case APPLY:
                case ARRAY:
                case ATTRIBUTE:
                case AUTHID:
                case BINARY_INTEGER:
                case BODY:
                case BOOLEAN:
                case BULK:
                case BYTE:
                case CASCADE:
                case CHAR:
                case CHAR_BASE:
                case CLOSE:
                case COALESCE:
                case COLLECT:
                case COLUMN:
                case COMMIT:
                case CONSTANT:
                case CONSTRAINT:
                case CONSTRUCTOR:
                case CONTINUE:
                case CONVERT:
                case CROSS:
                case CUBE:
                case CURRENT:
                case CURRVAL:
                case DATA:
                case DATE:
                case DAY:
                case DECIMAL:
                case DEFINITION:
                case DELETE:
                case DISABLE:
                case DO:
                case DUPLICATED:
                case EDITIONABLE:
                case ELEMENT:
                case ELSIF:
                case ENABLE:
                case ESCAPE:
                case EXCEPT:
                case EXCEPTIONS:
                case EXECUTE:
                case EXIT:
                case EXTERNAL:
                case EXTENDED:
                case EXTENDS:
                case EXTRACT:
                case FALSE:
                case FINAL:
                case FLOAT:
                case FORALL:
                case FOREIGN:
                case FORCE:
                case FULL:
                case GLOBAL:
                case GROUPING:
                case HASH:
                case HEAP:
                case HOUR:
                case IMMEDIATE:
                case INNER:
                case INDICES:
                case INCLUDING:
                case INDEXTYPE:
                case INDICATOR:
                case INFINITE:
                case INSTANTIABLE:
                case INTEGER:
                case INTERFACE:
                case INTERVAL:
                case INVALIDATE:
                case ISOLATION:
                case JAVA:
                case JOIN:
                case KEY:
                case LEVEL:
                case LIKEC:
                case LIKE2:
                case LIKE4:
                case LIMIT:
                case LIMITED:
                case LONG:
                case LOOP:
                case MAP:
                case MEMBER:
                case MERGE:
                case METADATA:
                case MINUTE:
                case MLSLABEL:
                case MODIFY:
                case MOD:
                case MONTH:
                case NAN:
                case NATURAL:
                case NATURALN:
                case NEW:
                case NEW_DOT:
                case NEXT:
                case NEXTVAL:
                case NO:
                case NOCOPY:
                case NONE:
                case NONEDITIONABLE:
                case NULLIF:
                case NULLS:
                case NUMBER:
                case BFILE_BASE:
                case BLOB_BASE:
                case CLOB_BASE:
                case DATE_BASE:
                case NUMBER_BASE:
                case OBJECT:
                case OCIROWID:
                case OFFSET:
                case OID:
                case ONLY:
                case OPAQUE:
                case OPEN:
                case OPERATOR:
                case ORGANIZATION:
                case OTHERS:
                case OUT:
                case OUTER:
                case OVERRIDING:
                case PACKAGE:
                case PARTITION:
                case PCTFREE:
                case PERCENT:
                case PIPE:
                case PLS_INTEGER:
                case POSITIVE:
                case POSITIVEN:
                case PRAGMA:
                case PRESERVE:
                case PRIOR:
                case PRIMARY:
                case PRIVATE:
                case RAISE:
                case RANGE:
                case RAW:
                case REAL:
                case RECORD:
                case REFERENCES:
                case REGEXP_LIKE:
                case RELEASE:
                case RELIES_ON:
                case RENAME:
                case RESULT:
                case RETURN:
                case RETURNING:
                case REVERSE:
                case ROLLBACK:
                case ROLLUP:
                case ROW:
                case ROWS:
                case ROWID:
                case ROWNUM:
                case ROWTYPE:
                case SAVE:
                case SAVEPOINT:
                case SECOND:
                case SELF:
                case SEPARATE:
                case SET:
                case SETS:
                case SIBLINGS:
                case SHARDED:
                case SHARING:
                case SMALLINT:
                case SOME:
                case SPACE:
                case SQLCODE:
                case SQLERRM:
                case STATIC:
                case SUBSTITUTABLE:
                case SUCCESSFUL:
                case SYNONYM:
                case SYS_REFCURSOR:
                case TEMPORARY:
                case TIES:
                case TIME:
                case TIMESTAMP:
                case TIMEZONE_REGION:
                case TIMEZONE_ABBR:
                case TIMEZONE_MINUTE:
                case TIMEZONE_HOUR:
                case TRANSACTION:
                case TRIGGER:
                case TRUE:
                case UI:
                case UNDER:
                case USING:
                case WHILE:
                case YES:
                case A:
                case VARCHAR:
                case VARCHAR2:
                case DOUBLE:
                case DEC:
                case PRECISION:
                case INT:
                case NUMERIC:
                case SIGNTYPE:
                case NCHAR:
                case NVARCHAR2:
                case STRING:
                case UROWID:
                case VARRAY:
                case VARYING:
                case BFILE:
                case BLOB:
                case CLOB:
                case NCLOB:
                case YEAR:
                case LOCAL:
                case ZONE:
                case CHARACTER:
                case AFTER:
                case BEFORE:
                case OLD:
                case PARENT:
                case GENERATED:
                case SCOPE:
                case INITIALLY:
                case DEFERRABLE:
                case DEFERRED:
                case CC_IF:
                case CC_ERROR:
                case ANALYZE:
                case ASSOCIATE:
                case AUDIT:
                case COMPOUND:
                case DATABASE:
                case CALL:
                case DISASSOCIATE:
                case EACH:
                case FOLLOWS:
                case LOGOFF:
                case LOGON:
                case NESTED:
                case NOAUDIT:
                case SCHEMA:
                case SERVERERROR:
                case SHUTDOWN:
                case STARTUP:
                case STATEMENT:
                case STATISTICS:
                case SUSPEND:
                case TRUNCATE:
                case WRAPPED:
                case LIBRARY:
                case NAME:
                case STRUCT:
                case CONTEXT:
                case PARAMETERS:
                case LENGTH:
                case TDO:
                case MAXLEN:
                case CHARSETID:
                case CHARSETFORM:
                case ACCESSIBLE:
                case ATTACH:
                case CAST:
                case TREAT:
                case LEFT:
                case RIGHT:
                case BOTH:
                case EMPTY:
                case MULTISET:
                case SUBMULTISET:
                case LEADING:
                case TRAILING:
                case CHAR_CS:
                case NCHAR_CS:
                case DBTIMEZONE:
                case SESSIONTIMEZONE:
                case AUTHENTICATED:
                case LINK:
                case SHARED:
                case DIRECTORY:
                case USER:
                case READ:
                case LATERAL:
                case NOCYCLE:
                case CONNECT_BY_ROOT:
                case IDENTIFIER:
                case UNSIGNED_NUMERIC_LITERAL:
                case CHARACTER_LITERAL:
                case QUOTED_LITERAL:
                case JAVA_INTERFACE_CLASS:
                case STRING_LITERAL:
                case 493:
                  ;
                  break;
                default:
                  jj_la1[102] = jj_gen;
                  break label_28;
                }
                Statement();
              }
              switch (jj_nt.kind) {
              case EXCEPTION:
                jj_consume_token(EXCEPTION);
                label_29:
                while (true) {
                  ExceptionHandler();
                  switch (jj_nt.kind) {
                  case WHEN:
                    ;
                    break;
                  default:
                    jj_la1[103] = jj_gen;
                    break label_29;
                  }
                }
                break;
              default:
                jj_la1[104] = jj_gen;
                ;
              }
              jj_consume_token(END);
              switch (jj_nt.kind) {
              case 26:
              case 29:
              case 30:
              case 32:
              case 33:
              case 34:
              case 35:
              case 36:
              case 37:
              case 38:
              case 39:
              case 40:
              case 41:
              case 42:
              case 43:
              case 44:
              case DEFINER:
              case CURRENT_USER:
              case SERIALLY_REUSABLE:
              case RESTRICT_REFERENCES:
              case EXCEPTION_INIT:
              case AUTONOMOUS_TRANSACTION:
              case LANGUAGE:
              case INLINE:
              case ALTER:
              case AND:
              case ANY:
              case ASC:
              case AT:
              case CHECK:
              case CLUSTER:
              case COMPRESS:
              case CREATE:
              case DESC:
              case DROP:
              case EXCLUSIVE:
              case FETCH:
              case GOTO:
              case HAVING:
              case INDEX:
              case INSERT:
              case INTERSECT:
              case IS:
              case LIKE:
              case LOCK:
              case MINUS:
              case MODE:
              case NOT:
              case NULL:
              case OPTION:
              case OR:
              case SHARE:
              case SUBTYPE:
              case THEN:
              case TO:
              case TYPE:
              case UPDATE:
              case ADD:
              case AGGREGATE:
              case APPLY:
              case ARRAY:
              case ATTRIBUTE:
              case AUTHID:
              case BINARY_INTEGER:
              case BODY:
              case BOOLEAN:
              case BULK:
              case BYTE:
              case CASCADE:
              case CHAR:
              case CHAR_BASE:
              case CLOSE:
              case COALESCE:
              case COLLECT:
              case COLUMN:
              case COMMIT:
              case CONSTANT:
              case CONSTRAINT:
              case CONSTRUCTOR:
              case CONTINUE:
              case CONVERT:
              case CROSS:
              case CUBE:
              case CURRENT:
              case CURRVAL:
              case DATA:
              case DATE:
              case DAY:
              case DECIMAL:
              case DEFINITION:
              case DELETE:
              case DISABLE:
              case DO:
              case DUPLICATED:
              case EDITIONABLE:
              case ELEMENT:
              case ELSIF:
              case ENABLE:
              case ESCAPE:
              case EXCEPT:
              case EXCEPTIONS:
              case EXECUTE:
              case EXIT:
              case EXTERNAL:
              case EXTENDED:
              case EXTENDS:
              case EXTRACT:
              case FALSE:
              case FINAL:
              case FLOAT:
              case FORALL:
              case FOREIGN:
              case FORCE:
              case FULL:
              case GLOBAL:
              case GROUPING:
              case HASH:
              case HEAP:
              case HOUR:
              case IMMEDIATE:
              case INNER:
              case INDICES:
              case INCLUDING:
              case INDEXTYPE:
              case INDICATOR:
              case INFINITE:
              case INSTANTIABLE:
              case INTEGER:
              case INTERFACE:
              case INTERVAL:
              case INVALIDATE:
              case ISOLATION:
              case JAVA:
              case JOIN:
              case KEY:
              case LEVEL:
              case LIKEC:
              case LIKE2:
              case LIKE4:
              case LIMIT:
              case LIMITED:
              case LONG:
              case LOOP:
              case MAP:
              case MEMBER:
              case MERGE:
              case METADATA:
              case MINUTE:
              case MLSLABEL:
              case MODIFY:
              case MOD:
              case MONTH:
              case NAN:
              case NATURAL:
              case NATURALN:
              case NEW:
              case NEXT:
              case NEXTVAL:
              case NO:
              case NOCOPY:
              case NONE:
              case NONEDITIONABLE:
              case NULLIF:
              case NULLS:
              case NUMBER:
              case BFILE_BASE:
              case BLOB_BASE:
              case CLOB_BASE:
              case DATE_BASE:
              case NUMBER_BASE:
              case OBJECT:
              case OCIROWID:
              case OFFSET:
              case OID:
              case ONLY:
              case OPAQUE:
              case OPEN:
              case OPERATOR:
              case ORGANIZATION:
              case OTHERS:
              case OUT:
              case OUTER:
              case OVERRIDING:
              case PACKAGE:
              case PARTITION:
              case PCTFREE:
              case PERCENT:
              case PLS_INTEGER:
              case POSITIVE:
              case POSITIVEN:
              case PRESERVE:
              case PRIOR:
              case PRIMARY:
              case PRIVATE:
              case RAISE:
              case RANGE:
              case RAW:
              case REAL:
              case RECORD:
              case REFERENCES:
              case REGEXP_LIKE:
              case RELEASE:
              case RELIES_ON:
              case RENAME:
              case RESULT:
              case RETURN:
              case RETURNING:
              case REVERSE:
              case ROLLBACK:
              case ROLLUP:
              case ROW:
              case ROWS:
              case ROWID:
              case ROWNUM:
              case ROWTYPE:
              case SAVE:
              case SAVEPOINT:
              case SECOND:
              case SELF:
              case SEPARATE:
              case SETS:
              case SIBLINGS:
              case SHARDED:
              case SHARING:
              case SMALLINT:
              case SOME:
              case SPACE:
              case SQLCODE:
              case SQLERRM:
              case STATIC:
              case SUBSTITUTABLE:
              case SUCCESSFUL:
              case SYNONYM:
              case SYS_REFCURSOR:
              case TEMPORARY:
              case TIES:
              case TIME:
              case TIMESTAMP:
              case TIMEZONE_REGION:
              case TIMEZONE_ABBR:
              case TIMEZONE_MINUTE:
              case TIMEZONE_HOUR:
              case TRANSACTION:
              case TRIGGER:
              case TRUE:
              case UI:
              case UNDER:
              case USING:
              case WHILE:
              case YES:
              case A:
              case VARCHAR:
              case VARCHAR2:
              case DOUBLE:
              case DEC:
              case PRECISION:
              case INT:
              case NUMERIC:
              case SIGNTYPE:
              case NCHAR:
              case NVARCHAR2:
              case STRING:
              case UROWID:
              case VARRAY:
              case VARYING:
              case BFILE:
              case BLOB:
              case CLOB:
              case NCLOB:
              case YEAR:
              case LOCAL:
              case ZONE:
              case CHARACTER:
              case AFTER:
              case BEFORE:
              case OLD:
              case PARENT:
              case GENERATED:
              case SCOPE:
              case INITIALLY:
              case DEFERRABLE:
              case DEFERRED:
              case ANALYZE:
              case ASSOCIATE:
              case AUDIT:
              case COMPOUND:
              case DATABASE:
              case CALL:
              case DISASSOCIATE:
              case EACH:
              case FOLLOWS:
              case LOGOFF:
              case LOGON:
              case NESTED:
              case NOAUDIT:
              case SCHEMA:
              case SERVERERROR:
              case SHUTDOWN:
              case STARTUP:
              case STATEMENT:
              case STATISTICS:
              case SUSPEND:
              case TRUNCATE:
              case WRAPPED:
              case LIBRARY:
              case NAME:
              case STRUCT:
              case CONTEXT:
              case PARAMETERS:
              case LENGTH:
              case TDO:
              case MAXLEN:
              case CHARSETID:
              case CHARSETFORM:
              case ACCESSIBLE:
              case ATTACH:
              case CAST:
              case TREAT:
              case LEFT:
              case RIGHT:
              case BOTH:
              case EMPTY:
              case MULTISET:
              case SUBMULTISET:
              case LEADING:
              case TRAILING:
              case CHAR_CS:
              case NCHAR_CS:
              case DBTIMEZONE:
              case SESSIONTIMEZONE:
              case AUTHENTICATED:
              case LINK:
              case SHARED:
              case DIRECTORY:
              case USER:
              case READ:
              case LATERAL:
              case NOCYCLE:
              case CONNECT_BY_ROOT:
              case IDENTIFIER:
              case QUOTED_LITERAL:
              case JAVA_INTERFACE_CLASS:
              case 493:
                ID();
                break;
              default:
                jj_la1[105] = jj_gen;
                ;
              }
              break;
            default:
              jj_la1[106] = jj_gen;
              jj_consume_token(-1);
              throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
            }
          }
          break;
        default:
          jj_la1[107] = jj_gen;
          ;
        }
        jj_consume_token(SEMICOLON);
        break;
      default:
        jj_la1[108] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
        jjtc000 = false;
        {if (true) return jjtn000 ;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
            {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
          }
          {if (true) throw (Error)jjte000;}
    } finally {
          if (jjtc000) {
            jjtree.closeNodeScope(jjtn000, true, getToken(0));
          }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTObjectNameDeclaration ObjectNameDeclaration() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) ObjectNameDeclaration */
 ASTObjectNameDeclaration jjtn000 = new ASTObjectNameDeclaration(JJTOBJECTNAMEDECLARATION);
 boolean jjtc000 = true;
 jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode schemaName = null, objectName = null ;
    try {
      if (jj_2_26(2)) {
        schemaName = ID();
        jj_consume_token(DOT);
      } else {
        ;
      }
      objectName = ID();
    jjtn000.setImage(  (null == schemaName) ?  objectName.getImage() : (schemaName.getImage() + "." + objectName.getImage() )  )  ;
    jjtree.closeNodeScope(jjtn000, true, getToken(0));
    jjtc000 = false;
    {if (true) return jjtn000 ;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
      {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
    }
    {if (true) throw (Error)jjte000;}
    } finally {
    if (jjtc000) {
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
    }
    }
    throw new Error("Missing return statement in function");
  }

/*
 * See https://docs.oracle.com/en/database/oracle/oracle-database/18/lnpls/formal-parameter-declaration.html#GUID-5BA8E033-96B9-439A-A4FC-4844FEC14AD8
 */
  final public ASTFormalParameter FormalParameter() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) FormalParameter */
 ASTFormalParameter jjtn000 = new ASTFormalParameter(JJTFORMALPARAMETER);
 boolean jjtc000 = true;
 jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null ;
    try {
      simpleNode = ID();
      switch (jj_nt.kind) {
      case IN:
        jj_consume_token(IN);
           jjtn000.setIn(true);
        break;
      default:
        jj_la1[109] = jj_gen;
        ;
      }
      switch (jj_nt.kind) {
      case OUT:
        jj_consume_token(OUT);
            jjtn000.setOut(true);
        break;
      default:
        jj_la1[110] = jj_gen;
        ;
      }
      switch (jj_nt.kind) {
      case NOCOPY:
        jj_consume_token(NOCOPY);
               jjtn000.setNoCopy(true);
        break;
      default:
        jj_la1[111] = jj_gen;
        ;
      }
      switch (jj_nt.kind) {
      case 28:
        jj_consume_token(28);
        break;
      case 26:
      case 29:
      case 30:
      case 32:
      case 33:
      case 34:
      case 35:
      case 36:
      case 37:
      case 38:
      case 39:
      case 40:
      case 41:
      case 42:
      case 43:
      case 44:
      case DEFINER:
      case CURRENT_USER:
      case LANGUAGE:
      case INLINE:
      case AT:
      case SUBTYPE:
      case TYPE:
      case ADD:
      case AGGREGATE:
      case APPLY:
      case ARRAY:
      case ATTRIBUTE:
      case AUTHID:
      case BINARY_INTEGER:
      case BODY:
      case BOOLEAN:
      case BULK:
      case BYTE:
      case CASCADE:
      case CHAR:
      case CHAR_BASE:
      case CLOSE:
      case COALESCE:
      case COLLECT:
      case COLUMN:
      case COMMIT:
      case CONSTRAINT:
      case CONSTRUCTOR:
      case CONTINUE:
      case CONVERT:
      case CROSS:
      case CUBE:
      case CURRENT:
      case DATA:
      case DATE:
      case DAY:
      case DECIMAL:
      case DEFINITION:
      case DISABLE:
      case DUPLICATED:
      case EDITIONABLE:
      case ELEMENT:
      case ENABLE:
      case ESCAPE:
      case EXCEPT:
      case EXCEPTIONS:
      case EXECUTE:
      case EXIT:
      case EXTERNAL:
      case EXTENDED:
      case EXTENDS:
      case EXTRACT:
      case FALSE:
      case FINAL:
      case FLOAT:
      case FOREIGN:
      case FORCE:
      case FULL:
      case GLOBAL:
      case GROUPING:
      case HASH:
      case HEAP:
      case HOUR:
      case IMMEDIATE:
      case INNER:
      case INDICES:
      case INCLUDING:
      case INDEXTYPE:
      case INDICATOR:
      case INFINITE:
      case INSTANTIABLE:
      case INTEGER:
      case INTERVAL:
      case INVALIDATE:
      case ISOLATION:
      case JAVA:
      case JOIN:
      case KEY:
      case LEVEL:
      case LIKEC:
      case LIKE2:
      case LIKE4:
      case LIMIT:
      case LONG:
      case LOOP:
      case MAP:
      case MEMBER:
      case MERGE:
      case METADATA:
      case MINUTE:
      case MLSLABEL:
      case MODIFY:
      case MOD:
      case MONTH:
      case NAN:
      case NATURAL:
      case NATURALN:
      case NEW:
      case NEXT:
      case NO:
      case NONE:
      case NONEDITIONABLE:
      case NULLIF:
      case NULLS:
      case NUMBER:
      case BFILE_BASE:
      case BLOB_BASE:
      case CLOB_BASE:
      case DATE_BASE:
      case NUMBER_BASE:
      case OBJECT:
      case OFFSET:
      case OID:
      case ONLY:
      case OPAQUE:
      case OPEN:
      case OPERATOR:
      case ORGANIZATION:
      case OTHERS:
      case OUTER:
      case OVERRIDING:
      case PACKAGE:
      case PARTITION:
      case PERCENT:
      case PLS_INTEGER:
      case POSITIVE:
      case POSITIVEN:
      case PRESERVE:
      case PRIMARY:
      case PRIVATE:
      case RANGE:
      case RAW:
      case REAL:
      case RECORD:
      case REFERENCES:
      case REGEXP_LIKE:
      case RELEASE:
      case RELIES_ON:
      case RENAME:
      case RESULT:
      case RETURN:
      case RETURNING:
      case REVERSE:
      case ROLLBACK:
      case ROLLUP:
      case ROW:
      case ROWS:
      case ROWID:
      case ROWNUM:
      case SAVE:
      case SAVEPOINT:
      case SECOND:
      case SELF:
      case SETS:
      case SIBLINGS:
      case SHARDED:
      case SHARING:
      case SMALLINT:
      case SOME:
      case SPACE:
      case SQLCODE:
      case SQLERRM:
      case STATIC:
      case SUBSTITUTABLE:
      case SUCCESSFUL:
      case SYS_REFCURSOR:
      case TEMPORARY:
      case TIES:
      case TIME:
      case TIMESTAMP:
      case TIMEZONE_REGION:
      case TIMEZONE_ABBR:
      case TIMEZONE_MINUTE:
      case TIMEZONE_HOUR:
      case TRANSACTION:
      case TRUE:
      case UNDER:
      case USING:
      case YES:
      case A:
      case VARCHAR:
      case VARCHAR2:
      case DOUBLE:
      case DEC:
      case PRECISION:
      case INT:
      case NUMERIC:
      case SIGNTYPE:
      case NCHAR:
      case NVARCHAR2:
      case STRING:
      case UROWID:
      case VARRAY:
      case VARYING:
      case BFILE:
      case BLOB:
      case CLOB:
      case NCLOB:
      case YEAR:
      case LOCAL:
      case ZONE:
      case CHARACTER:
      case AFTER:
      case BEFORE:
      case OLD:
      case PARENT:
      case GENERATED:
      case SCOPE:
      case INITIALLY:
      case DEFERRABLE:
      case DEFERRED:
      case CC_IF:
      case ANALYZE:
      case ASSOCIATE:
      case AUDIT:
      case COMPOUND:
      case DATABASE:
      case CALL:
      case DISASSOCIATE:
      case EACH:
      case FOLLOWS:
      case LOGOFF:
      case LOGON:
      case NESTED:
      case NOAUDIT:
      case SCHEMA:
      case SERVERERROR:
      case SHUTDOWN:
      case STARTUP:
      case STATEMENT:
      case STATISTICS:
      case SUSPEND:
      case TRUNCATE:
      case WRAPPED:
      case LIBRARY:
      case NAME:
      case STRUCT:
      case CONTEXT:
      case PARAMETERS:
      case LENGTH:
      case TDO:
      case MAXLEN:
      case CHARSETID:
      case CHARSETFORM:
      case ACCESSIBLE:
      case ATTACH:
      case CAST:
      case TREAT:
      case LEFT:
      case RIGHT:
      case BOTH:
      case EMPTY:
      case MULTISET:
      case SUBMULTISET:
      case LEADING:
      case TRAILING:
      case CHAR_CS:
      case NCHAR_CS:
      case DBTIMEZONE:
      case SESSIONTIMEZONE:
      case AUTHENTICATED:
      case LINK:
      case SHARED:
      case DIRECTORY:
      case USER:
      case READ:
      case LATERAL:
      case NOCYCLE:
      case CONNECT_BY_ROOT:
      case IDENTIFIER:
      case QUOTED_LITERAL:
      case 493:
        Datatype();
        break;
      default:
        jj_la1[112] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      switch (jj_nt.kind) {
      case COLON:
      case _DEFAULT:
        switch (jj_nt.kind) {
        case COLON:
          jj_consume_token(COLON);
          jj_consume_token(ASSIGN);
          break;
        case _DEFAULT:
          jj_consume_token(_DEFAULT);
          break;
        default:
          jj_la1[113] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        Expression();
        break;
      default:
        jj_la1[114] = jj_gen;
        ;
      }
     jjtree.closeNodeScope(jjtn000, true, getToken(0));
     jjtc000 = false;
     jjtn000.setImage(simpleNode.getImage()) ;  {if (true) return jjtn000 ;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
       {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
     }
     {if (true) throw (Error)jjte000;}
    } finally {
     if (jjtc000) {
       jjtree.closeNodeScope(jjtn000, true, getToken(0));
     }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTMethodDeclaration MethodDeclaration() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) MethodDeclaration */
  ASTMethodDeclaration jjtn000 = new ASTMethodDeclaration(JJTMETHODDECLARATION);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      switch (jj_nt.kind) {
      case CREATE:
      case FUNCTION:
      case PROCEDURE:
        ProgramUnit();
        break;
      case NOT:
      case ORDER:
      case CONSTRUCTOR:
      case FINAL:
      case INSTANTIABLE:
      case MAP:
      case MEMBER:
      case OVERRIDING:
      case STATIC:
        TypeMethod();
        break;
      default:
        jj_la1[115] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
    jjtree.closeNodeScope(jjtn000, true, getToken(0));
    jjtc000 = false;
    {if (true) return jjtn000 ;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
      {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
    }
    {if (true) throw (Error)jjte000;}
    } finally {
    if (jjtc000) {
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
    }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTMethodDeclarator MethodDeclarator() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) MethodDeclarator */
 ASTMethodDeclarator jjtn000 = new ASTMethodDeclarator(JJTMETHODDECLARATOR);
 boolean jjtc000 = true;
 jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null ;
    try {
      switch (jj_nt.kind) {
      case FUNCTION:
        jj_consume_token(FUNCTION);
        simpleNode = ObjectNameDeclaration();
        switch (jj_nt.kind) {
        case LPAREN:
          FormalParameters();
          break;
        default:
          jj_la1[116] = jj_gen;
          ;
        }
        net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken nextToken;
        nextToken = getToken(1); //ReadAhead
        if (!nextToken.getImage().equalsIgnoreCase("WRAPPED")
            &&
            !nextToken.getImage().equalsIgnoreCase("RETURN")
           )
        {
          {if (true) throw new net.sourceforge.pmd.lang.ast.ParseException("FUNCTION must RETURN a value or must be WRAPPED : found \u005c""
                                              + nextToken.getImage()
                                              + "\u005c""
                                             ).withLocation(nextToken);}
        }
        switch (jj_nt.kind) {
        case RETURN:
          jj_consume_token(RETURN);
          Datatype();
          if (isKeyword("SQL_MACRO")) {
            SqlMacroClause();
          } else {
            ;
          }
          break;
        default:
          jj_la1[117] = jj_gen;
          ;
        }
        break;
      case PROCEDURE:
        jj_consume_token(PROCEDURE);
        simpleNode = ObjectNameDeclaration();
        switch (jj_nt.kind) {
        case LPAREN:
          FormalParameters();
          break;
        default:
          jj_la1[118] = jj_gen;
          ;
        }
        break;
      default:
        jj_la1[119] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
    jjtree.closeNodeScope(jjtn000, true, getToken(0));
    jjtc000 = false;
    jjtn000.setImage(simpleNode.getImage()) ;  {if (true) return jjtn000 ;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
      {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
    }
    {if (true) throw (Error)jjte000;}
    } finally {
    if (jjtc000) {
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
    }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTFormalParameters FormalParameters() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) FormalParameters */
 ASTFormalParameters jjtn000 = new ASTFormalParameters(JJTFORMALPARAMETERS);
 boolean jjtc000 = true;
 jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null ;
 StringBuilder sb = new StringBuilder();
    try {
      jj_consume_token(LPAREN);
        sb.append("(");
      switch (jj_nt.kind) {
      case 26:
      case 29:
      case 30:
      case 32:
      case 33:
      case 34:
      case 35:
      case 36:
      case 37:
      case 38:
      case 39:
      case 40:
      case 41:
      case 42:
      case 43:
      case 44:
      case DEFINER:
      case CURRENT_USER:
      case SERIALLY_REUSABLE:
      case RESTRICT_REFERENCES:
      case EXCEPTION_INIT:
      case AUTONOMOUS_TRANSACTION:
      case LANGUAGE:
      case INLINE:
      case ALTER:
      case AND:
      case ANY:
      case ASC:
      case AT:
      case CHECK:
      case CLUSTER:
      case COMPRESS:
      case CREATE:
      case DESC:
      case DROP:
      case EXCLUSIVE:
      case FETCH:
      case GOTO:
      case HAVING:
      case INDEX:
      case INSERT:
      case INTERSECT:
      case IS:
      case LIKE:
      case LOCK:
      case MINUS:
      case MODE:
      case NOT:
      case NULL:
      case OPTION:
      case OR:
      case SHARE:
      case SUBTYPE:
      case THEN:
      case TO:
      case TYPE:
      case UPDATE:
      case ADD:
      case AGGREGATE:
      case APPLY:
      case ARRAY:
      case ATTRIBUTE:
      case AUTHID:
      case BINARY_INTEGER:
      case BODY:
      case BOOLEAN:
      case BULK:
      case BYTE:
      case CASCADE:
      case CHAR:
      case CHAR_BASE:
      case CLOSE:
      case COALESCE:
      case COLLECT:
      case COLUMN:
      case COMMIT:
      case CONSTANT:
      case CONSTRAINT:
      case CONSTRUCTOR:
      case CONTINUE:
      case CONVERT:
      case CROSS:
      case CUBE:
      case CURRENT:
      case CURRVAL:
      case DATA:
      case DATE:
      case DAY:
      case DECIMAL:
      case DEFINITION:
      case DELETE:
      case DISABLE:
      case DO:
      case DUPLICATED:
      case EDITIONABLE:
      case ELEMENT:
      case ELSIF:
      case ENABLE:
      case ESCAPE:
      case EXCEPT:
      case EXCEPTIONS:
      case EXECUTE:
      case EXIT:
      case EXTERNAL:
      case EXTENDED:
      case EXTENDS:
      case EXTRACT:
      case FALSE:
      case FINAL:
      case FLOAT:
      case FORALL:
      case FOREIGN:
      case FORCE:
      case FULL:
      case GLOBAL:
      case GROUPING:
      case HASH:
      case HEAP:
      case HOUR:
      case IMMEDIATE:
      case INNER:
      case INDICES:
      case INCLUDING:
      case INDEXTYPE:
      case INDICATOR:
      case INFINITE:
      case INSTANTIABLE:
      case INTEGER:
      case INTERFACE:
      case INTERVAL:
      case INVALIDATE:
      case ISOLATION:
      case JAVA:
      case JOIN:
      case KEY:
      case LEVEL:
      case LIKEC:
      case LIKE2:
      case LIKE4:
      case LIMIT:
      case LIMITED:
      case LONG:
      case LOOP:
      case MAP:
      case MEMBER:
      case MERGE:
      case METADATA:
      case MINUTE:
      case MLSLABEL:
      case MODIFY:
      case MOD:
      case MONTH:
      case NAN:
      case NATURAL:
      case NATURALN:
      case NEW:
      case NEXT:
      case NEXTVAL:
      case NO:
      case NOCOPY:
      case NONE:
      case NONEDITIONABLE:
      case NULLIF:
      case NULLS:
      case NUMBER:
      case BFILE_BASE:
      case BLOB_BASE:
      case CLOB_BASE:
      case DATE_BASE:
      case NUMBER_BASE:
      case OBJECT:
      case OCIROWID:
      case OFFSET:
      case OID:
      case ONLY:
      case OPAQUE:
      case OPEN:
      case OPERATOR:
      case ORGANIZATION:
      case OTHERS:
      case OUT:
      case OUTER:
      case OVERRIDING:
      case PACKAGE:
      case PARTITION:
      case PCTFREE:
      case PERCENT:
      case PLS_INTEGER:
      case POSITIVE:
      case POSITIVEN:
      case PRESERVE:
      case PRIOR:
      case PRIMARY:
      case PRIVATE:
      case RAISE:
      case RANGE:
      case RAW:
      case REAL:
      case RECORD:
      case REFERENCES:
      case REGEXP_LIKE:
      case RELEASE:
      case RELIES_ON:
      case RENAME:
      case RESULT:
      case RETURN:
      case RETURNING:
      case REVERSE:
      case ROLLBACK:
      case ROLLUP:
      case ROW:
      case ROWS:
      case ROWID:
      case ROWNUM:
      case ROWTYPE:
      case SAVE:
      case SAVEPOINT:
      case SECOND:
      case SELF:
      case SEPARATE:
      case SETS:
      case SIBLINGS:
      case SHARDED:
      case SHARING:
      case SMALLINT:
      case SOME:
      case SPACE:
      case SQLCODE:
      case SQLERRM:
      case STATIC:
      case SUBSTITUTABLE:
      case SUCCESSFUL:
      case SYNONYM:
      case SYS_REFCURSOR:
      case TEMPORARY:
      case TIES:
      case TIME:
      case TIMESTAMP:
      case TIMEZONE_REGION:
      case TIMEZONE_ABBR:
      case TIMEZONE_MINUTE:
      case TIMEZONE_HOUR:
      case TRANSACTION:
      case TRIGGER:
      case TRUE:
      case UI:
      case UNDER:
      case USING:
      case WHILE:
      case YES:
      case A:
      case VARCHAR:
      case VARCHAR2:
      case DOUBLE:
      case DEC:
      case PRECISION:
      case INT:
      case NUMERIC:
      case SIGNTYPE:
      case NCHAR:
      case NVARCHAR2:
      case STRING:
      case UROWID:
      case VARRAY:
      case VARYING:
      case BFILE:
      case BLOB:
      case CLOB:
      case NCLOB:
      case YEAR:
      case LOCAL:
      case ZONE:
      case CHARACTER:
      case AFTER:
      case BEFORE:
      case OLD:
      case PARENT:
      case GENERATED:
      case SCOPE:
      case INITIALLY:
      case DEFERRABLE:
      case DEFERRED:
      case ANALYZE:
      case ASSOCIATE:
      case AUDIT:
      case COMPOUND:
      case DATABASE:
      case CALL:
      case DISASSOCIATE:
      case EACH:
      case FOLLOWS:
      case LOGOFF:
      case LOGON:
      case NESTED:
      case NOAUDIT:
      case SCHEMA:
      case SERVERERROR:
      case SHUTDOWN:
      case STARTUP:
      case STATEMENT:
      case STATISTICS:
      case SUSPEND:
      case TRUNCATE:
      case WRAPPED:
      case LIBRARY:
      case NAME:
      case STRUCT:
      case CONTEXT:
      case PARAMETERS:
      case LENGTH:
      case TDO:
      case MAXLEN:
      case CHARSETID:
      case CHARSETFORM:
      case ACCESSIBLE:
      case ATTACH:
      case CAST:
      case TREAT:
      case LEFT:
      case RIGHT:
      case BOTH:
      case EMPTY:
      case MULTISET:
      case SUBMULTISET:
      case LEADING:
      case TRAILING:
      case CHAR_CS:
      case NCHAR_CS:
      case DBTIMEZONE:
      case SESSIONTIMEZONE:
      case AUTHENTICATED:
      case LINK:
      case SHARED:
      case DIRECTORY:
      case USER:
      case READ:
      case LATERAL:
      case NOCYCLE:
      case CONNECT_BY_ROOT:
      case IDENTIFIER:
      case QUOTED_LITERAL:
      case JAVA_INTERFACE_CLASS:
      case 493:
        simpleNode = FormalParameter();
                                         sb.append(simpleNode.getImage());
        label_30:
        while (true) {
          switch (jj_nt.kind) {
          case COMMA:
            ;
            break;
          default:
            jj_la1[120] = jj_gen;
            break label_30;
          }
          jj_consume_token(COMMA);
          simpleNode = FormalParameter();
                                               sb.append(","+simpleNode.getImage());
        }
        break;
      default:
        jj_la1[121] = jj_gen;
        ;
      }
      jj_consume_token(RPAREN);
       sb.append(")");
    jjtree.closeNodeScope(jjtn000, true, getToken(0));
    jjtc000 = false;
    jjtn000.setImage(sb.toString()) ;  {if (true) return jjtn000 ;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
      {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
    }
    {if (true) throw (Error)jjte000;}
    } finally {
    if (jjtc000) {
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
    }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTVariableOrConstantDeclarator VariableOrConstantDeclarator() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) VariableOrConstantDeclarator */
 ASTVariableOrConstantDeclarator jjtn000 = new ASTVariableOrConstantDeclarator(JJTVARIABLEORCONSTANTDECLARATOR);
 boolean jjtc000 = true;
 jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null ;
 StringBuilder sb = new StringBuilder();
    try {
      simpleNode = VariableOrConstantDeclaratorId();
                                                  sb.append(simpleNode.getImage());
      if (jj_2_27(2)) {
        jj_consume_token(CONSTANT);
                            sb.append(" " + token.getImage());
      } else {
        ;
      }
      simpleNode = Datatype();
                                                                                            sb.append(" " + simpleNode.getImage());
      switch (jj_nt.kind) {
      case NOT:
      case NULL:
        switch (jj_nt.kind) {
        case NOT:
          jj_consume_token(NOT);
           sb.append(" " + token.getImage());
          break;
        default:
          jj_la1[122] = jj_gen;
          ;
        }
        jj_consume_token(NULL);
                                                         sb.append(" " + token.getImage());
        break;
      default:
        jj_la1[123] = jj_gen;
        ;
      }
      switch (jj_nt.kind) {
      case COLON:
      case _DEFAULT:
        switch (jj_nt.kind) {
        case COLON:
          jj_consume_token(COLON);
          jj_consume_token(ASSIGN);
               sb.append(" :=");
          break;
        case _DEFAULT:
          jj_consume_token(_DEFAULT);
                                               sb.append(" " + token.getImage());
          break;
        default:
          jj_la1[124] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        simpleNode = VariableOrConstantInitializer();
                                                   sb.append(" " + simpleNode.getImage());
        break;
      default:
        jj_la1[125] = jj_gen;
        ;
      }
    jjtree.closeNodeScope(jjtn000, true, getToken(0));
    jjtc000 = false;
    jjtn000.setImage(sb.toString()) ;  {if (true) return jjtn000 ;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
      {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
    }
    {if (true) throw (Error)jjte000;}
    } finally {
    if (jjtc000) {
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
    }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTVariableOrConstantDeclaratorId VariableOrConstantDeclaratorId() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) VariableOrConstantDeclaratorId */
 ASTVariableOrConstantDeclaratorId jjtn000 = new ASTVariableOrConstantDeclaratorId(JJTVARIABLEORCONSTANTDECLARATORID);
 boolean jjtc000 = true;
 jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null ;
    try {
      simpleNode = ID();
    jjtree.closeNodeScope(jjtn000, true, getToken(0));
    jjtc000 = false;
    jjtn000.setImage(simpleNode.getImage()) ;  {if (true) return jjtn000 ;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
      {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
    }
    {if (true) throw (Error)jjte000;}
    } finally {
    if (jjtc000) {
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
    }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTVariableOrConstantInitializer VariableOrConstantInitializer() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) VariableOrConstantInitializer */
 ASTVariableOrConstantInitializer jjtn000 = new ASTVariableOrConstantInitializer(JJTVARIABLEORCONSTANTINITIALIZER);
 boolean jjtc000 = true;
 jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null ;
    try {
      simpleNode = Expression();
    jjtree.closeNodeScope(jjtn000, true, getToken(0));
    jjtc000 = false;
    jjtn000.setImage(simpleNode.getImage()) ;  {if (true) return jjtn000 ;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
     {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
   }
   {if (true) throw (Error)jjte000;}
    } finally {
   if (jjtc000) {
     jjtree.closeNodeScope(jjtn000, true, getToken(0));
   }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTDatatype Datatype() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) Datatype */
 ASTDatatype jjtn000 = new ASTDatatype(JJTDATATYPE);
 boolean jjtc000 = true;
 jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null ;
 StringBuilder sb = new StringBuilder();
    try {
      switch (jj_nt.kind) {
      case CC_IF:
        // this should be first
                        simpleNode = CompilationDataType();
                                                    sb.append(simpleNode.getImage());
        break;
      default:
        jj_la1[129] = jj_gen;
        if (jj_2_29(2)) {
          simpleNode = ScalarDataTypeName();
                                                                sb.append(simpleNode.getImage());
        } else {
          switch (jj_nt.kind) {
          case 26:
          case 29:
          case 30:
          case 32:
          case 33:
          case 34:
          case 35:
          case 36:
          case 37:
          case 38:
          case 39:
          case 40:
          case 41:
          case 42:
          case 43:
          case 44:
          case DEFINER:
          case CURRENT_USER:
          case LANGUAGE:
          case INLINE:
          case AT:
          case SUBTYPE:
          case TYPE:
          case ADD:
          case AGGREGATE:
          case APPLY:
          case ARRAY:
          case ATTRIBUTE:
          case AUTHID:
          case BODY:
          case BULK:
          case BYTE:
          case CASCADE:
          case CLOSE:
          case COALESCE:
          case COLLECT:
          case COLUMN:
          case COMMIT:
          case CONSTRAINT:
          case CONSTRUCTOR:
          case CONTINUE:
          case CONVERT:
          case CROSS:
          case CUBE:
          case CURRENT:
          case DATA:
          case DAY:
          case DEFINITION:
          case DISABLE:
          case DUPLICATED:
          case EDITIONABLE:
          case ELEMENT:
          case ENABLE:
          case ESCAPE:
          case EXCEPT:
          case EXCEPTIONS:
          case EXECUTE:
          case EXIT:
          case EXTERNAL:
          case EXTENDED:
          case EXTENDS:
          case EXTRACT:
          case FALSE:
          case FINAL:
          case FOREIGN:
          case FORCE:
          case FULL:
          case GLOBAL:
          case GROUPING:
          case HASH:
          case HEAP:
          case HOUR:
          case IMMEDIATE:
          case INNER:
          case INDICES:
          case INCLUDING:
          case INDEXTYPE:
          case INDICATOR:
          case INFINITE:
          case INSTANTIABLE:
          case INTERVAL:
          case INVALIDATE:
          case ISOLATION:
          case JAVA:
          case JOIN:
          case KEY:
          case LEVEL:
          case LIKEC:
          case LIKE2:
          case LIKE4:
          case LIMIT:
          case LOOP:
          case MAP:
          case MEMBER:
          case MERGE:
          case METADATA:
          case MINUTE:
          case MLSLABEL:
          case MODIFY:
          case MOD:
          case MONTH:
          case NAN:
          case NATURAL:
          case NEW:
          case NEXT:
          case NO:
          case NONE:
          case NONEDITIONABLE:
          case NULLIF:
          case NULLS:
          case OBJECT:
          case OFFSET:
          case OID:
          case ONLY:
          case OPAQUE:
          case OPEN:
          case OPERATOR:
          case ORGANIZATION:
          case OTHERS:
          case OUTER:
          case OVERRIDING:
          case PACKAGE:
          case PARTITION:
          case PERCENT:
          case PRESERVE:
          case PRIMARY:
          case PRIVATE:
          case RANGE:
          case RAW:
          case REAL:
          case RECORD:
          case REFERENCES:
          case REGEXP_LIKE:
          case RELEASE:
          case RELIES_ON:
          case RENAME:
          case RESULT:
          case RETURN:
          case RETURNING:
          case REVERSE:
          case ROLLBACK:
          case ROLLUP:
          case ROW:
          case ROWS:
          case ROWID:
          case ROWNUM:
          case SAVE:
          case SAVEPOINT:
          case SECOND:
          case SELF:
          case SETS:
          case SIBLINGS:
          case SHARDED:
          case SHARING:
          case SOME:
          case SPACE:
          case SQLCODE:
          case SQLERRM:
          case STATIC:
          case SUBSTITUTABLE:
          case SUCCESSFUL:
          case SYS_REFCURSOR:
          case TEMPORARY:
          case TIES:
          case TIME:
          case TIMESTAMP:
          case TIMEZONE_REGION:
          case TIMEZONE_ABBR:
          case TIMEZONE_MINUTE:
          case TIMEZONE_HOUR:
          case TRANSACTION:
          case TRUE:
          case UNDER:
          case USING:
          case YES:
          case A:
          case DOUBLE:
          case DEC:
          case PRECISION:
          case INT:
          case NUMERIC:
          case NCHAR:
          case NVARCHAR2:
          case STRING:
          case UROWID:
          case VARRAY:
          case VARYING:
          case BFILE:
          case BLOB:
          case CLOB:
          case NCLOB:
          case YEAR:
          case LOCAL:
          case ZONE:
          case CHARACTER:
          case AFTER:
          case BEFORE:
          case OLD:
          case PARENT:
          case GENERATED:
          case SCOPE:
          case INITIALLY:
          case DEFERRABLE:
          case DEFERRED:
          case ANALYZE:
          case ASSOCIATE:
          case AUDIT:
          case COMPOUND:
          case DATABASE:
          case CALL:
          case DISASSOCIATE:
          case EACH:
          case FOLLOWS:
          case LOGOFF:
          case LOGON:
          case NESTED:
          case NOAUDIT:
          case SCHEMA:
          case SERVERERROR:
          case SHUTDOWN:
          case STARTUP:
          case STATEMENT:
          case STATISTICS:
          case SUSPEND:
          case TRUNCATE:
          case WRAPPED:
          case LIBRARY:
          case NAME:
          case STRUCT:
          case CONTEXT:
          case PARAMETERS:
          case LENGTH:
          case TDO:
          case MAXLEN:
          case CHARSETID:
          case CHARSETFORM:
          case ACCESSIBLE:
          case ATTACH:
          case CAST:
          case TREAT:
          case LEFT:
          case RIGHT:
          case BOTH:
          case EMPTY:
          case MULTISET:
          case SUBMULTISET:
          case LEADING:
          case TRAILING:
          case CHAR_CS:
          case NCHAR_CS:
          case DBTIMEZONE:
          case SESSIONTIMEZONE:
          case AUTHENTICATED:
          case LINK:
          case SHARED:
          case DIRECTORY:
          case USER:
          case READ:
          case LATERAL:
          case NOCYCLE:
          case CONNECT_BY_ROOT:
          case IDENTIFIER:
          case QUOTED_LITERAL:
          case 493:
            if (jj_2_28(2)) {
              jj_consume_token(29);
                                          sb.append(token.getImage());
            } else {
              ;
            }
            simpleNode = QualifiedName();
                                                                                                         sb.append(simpleNode.getImage());
            switch (jj_nt.kind) {
            case AROBASE:
              jj_consume_token(AROBASE);
              simpleNode = QualifiedName();
                                                       sb.append("@"+simpleNode.getImage());
              break;
            default:
              jj_la1[126] = jj_gen;
              ;
            }
            switch (jj_nt.kind) {
            case REM:
              jj_consume_token(REM);
              switch (jj_nt.kind) {
              case TYPE:
                jj_consume_token(TYPE);
                break;
              case ROWTYPE:
                jj_consume_token(ROWTYPE);
                break;
              default:
                jj_la1[127] = jj_gen;
                jj_consume_token(-1);
                throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
              }
                                            sb.append("%"+token.getImage());
              break;
            default:
              jj_la1[128] = jj_gen;
              ;
            }
            break;
          default:
            jj_la1[130] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
        }
      }
          jjtree.closeNodeScope(jjtn000, true, getToken(0));
          jjtc000 = false;
          jjtn000.setImage(sb.toString()) ;  {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
            {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
          }
          {if (true) throw (Error)jjte000;}
    } finally {
          if (jjtc000) {
            jjtree.closeNodeScope(jjtn000, true, getToken(0));
          }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTCompilationDataType CompilationDataType() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) CompilationDataType */
  ASTCompilationDataType jjtn000 = new ASTCompilationDataType(JJTCOMPILATIONDATATYPE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null;
  StringBuilder sb = new StringBuilder() ;
    try {
      jj_consume_token(CC_IF);
                   sb.append(" "); sb.append(token.getImage()) ;
      simpleNode = ConditionalOrExpression();
                                                 sb.append(" "); sb.append(simpleNode.getImage());
      jj_consume_token(CC_THEN);
                     sb.append(" "); sb.append(token.getImage());
      simpleNode = Datatype();
                                   sb.append(" "); sb.append(simpleNode.getImage());
      label_31:
      while (true) {
        switch (jj_nt.kind) {
        case CC_ELSIF:
          ;
          break;
        default:
          jj_la1[131] = jj_gen;
          break label_31;
        }
        jj_consume_token(CC_ELSIF);
                        sb.append(" "); sb.append(token.getImage());
        simpleNode = ConditionalOrExpression();
                                                    sb.append(" "); sb.append(simpleNode.getImage());
        jj_consume_token(CC_THEN);
                       sb.append(" "); sb.append(token.getImage());
        simpleNode = Datatype();
                                     sb.append(" "); sb.append(simpleNode.getImage());
      }
      label_32:
      while (true) {
        switch (jj_nt.kind) {
        case CC_ELSE:
          ;
          break;
        default:
          jj_la1[132] = jj_gen;
          break label_32;
        }
        jj_consume_token(CC_ELSE);
                       sb.append(" "); sb.append(token.getImage());
        simpleNode = Datatype();
                                      sb.append(" "); sb.append(simpleNode.getImage());
      }
      jj_consume_token(CC_END);
                    sb.append(" "); sb.append(token.getImage());
   jjtree.closeNodeScope(jjtn000, true, getToken(0));
   jjtc000 = false;
 jjtn000.setImage(sb.toString()) ;  {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
            {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
          }
          {if (true) throw (Error)jjte000;}
    } finally {
          if (jjtc000) {
            jjtree.closeNodeScope(jjtn000, true, getToken(0));
          }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * https://docs.oracle.com/en/database/oracle/oracle-database/23/lnpls/CREATE-TYPE-statement.html#GUID-389D603D-FBD0-452A-8414-240BBBC57034__OBJECT_BASE_TYPE_DEF-DE2DD0FF
 */
  final public ASTCollectionTypeName CollectionTypeName() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) CollectionTypeName */
  ASTCollectionTypeName jjtn000 = new ASTCollectionTypeName(JJTCOLLECTIONTYPENAME);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode size=null, precision=null;
        StringBuilder sb = new StringBuilder();
    try {
      switch (jj_nt.kind) {
      case TABLE:
        jj_consume_token(TABLE);
        break;
      case VARRAY:
        jj_consume_token(VARRAY);
        break;
      case VARYING:
        jj_consume_token(VARYING);
        jj_consume_token(ARRAY);
                                                sb.append( "VARYING ARRAY") ;
        break;
      default:
        jj_la1[133] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      if (sb.length() ==  0) {
        sb.append(token.getImage());
      }
      if (jj_2_30(2)) {
        jj_consume_token(LPAREN);
        size = NumericLiteral();
                                                    sb.append("(").append(size.getImage());
        switch (jj_nt.kind) {
        case COMMA:
          jj_consume_token(COMMA);
          precision = NumericLiteral();
                                                    sb.append(",").append(precision.getImage());
          break;
        default:
          jj_la1[134] = jj_gen;
          ;
        }
        switch (jj_nt.kind) {
        case CHAR:
          jj_consume_token(CHAR);
                          sb.append( " CHAR") ;
          break;
        default:
          jj_la1[135] = jj_gen;
          ;
        }
        switch (jj_nt.kind) {
        case BYTE:
          jj_consume_token(BYTE);
                          sb.append( " BYTE") ;
          break;
        default:
          jj_la1[136] = jj_gen;
          ;
        }
        jj_consume_token(RPAREN);
             sb.append( ")");
      } else {
        ;
      }
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
        jjtc000 = false;
        jjtn000.setImage(sb.toString()) ;  {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
         {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
       }
       {if (true) throw (Error)jjte000;}
    } finally {
       if (jjtc000) {
         jjtree.closeNodeScope(jjtn000, true, getToken(0));
       }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTScalarDataTypeName ScalarDataTypeName() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) ScalarDataTypeName */
  ASTScalarDataTypeName jjtn000 = new ASTScalarDataTypeName(JJTSCALARDATATYPENAME);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode size=null, precision=null ;
        StringBuilder name = new StringBuilder();
        PLSQLNode characterSet = null;
    try {
      switch (jj_nt.kind) {
      case BFILE_BASE:
        jj_consume_token(BFILE_BASE);
        break;
      case BLOB_BASE:
        jj_consume_token(BLOB_BASE);
        break;
      case CHAR_BASE:
        jj_consume_token(CHAR_BASE);
        break;
      case CLOB_BASE:
        jj_consume_token(CLOB_BASE);
        break;
      case DATE_BASE:
        jj_consume_token(DATE_BASE);
        break;
      case NUMBER_BASE:
        jj_consume_token(NUMBER_BASE);
        break;
      case BINARY_INTEGER:
        jj_consume_token(BINARY_INTEGER);
        break;
      case DEC:
        jj_consume_token(DEC);
        break;
      case DECIMAL:
        jj_consume_token(DECIMAL);
        break;
      case DOUBLE:
        jj_consume_token(DOUBLE);
        jj_consume_token(PRECISION);
                                                                     name.append("DOUBLE PRECISION");
        break;
      case FLOAT:
        jj_consume_token(FLOAT);
        break;
      case INT:
        jj_consume_token(INT);
        break;
      case INTEGER:
        jj_consume_token(INTEGER);
        break;
      case NATURAL:
        jj_consume_token(NATURAL);
        break;
      case NATURALN:
        jj_consume_token(NATURALN);
        break;
      case NUMBER:
        jj_consume_token(NUMBER);
        break;
      case NUMERIC:
        jj_consume_token(NUMERIC);
        break;
      case PLS_INTEGER:
        jj_consume_token(PLS_INTEGER);
        break;
      case POSITIVE:
        jj_consume_token(POSITIVE);
        break;
      case POSITIVEN:
        jj_consume_token(POSITIVEN);
        break;
      case REAL:
        jj_consume_token(REAL);
        break;
      case SIGNTYPE:
        jj_consume_token(SIGNTYPE);
        break;
      case SMALLINT:
        jj_consume_token(SMALLINT);
        break;
      case CHAR:
      case LONG:
      case RAW:
      case ROWID:
      case VARCHAR:
      case VARCHAR2:
      case NCHAR:
      case NVARCHAR2:
      case STRING:
      case UROWID:
      case CLOB:
      case NCLOB:
      case CHARACTER:
        switch (jj_nt.kind) {
        case CHAR:
          jj_consume_token(CHAR);
          break;
        case CHARACTER:
          jj_consume_token(CHARACTER);
          break;
        default:
          jj_la1[137] = jj_gen;
          if (jj_2_31(2)) {
            jj_consume_token(LONG);
            jj_consume_token(RAW);
                                       name.append("LONG RAW");
          } else {
            switch (jj_nt.kind) {
            case LONG:
              jj_consume_token(LONG);
              break;
            case NCHAR:
              jj_consume_token(NCHAR);
              break;
            case NVARCHAR2:
              jj_consume_token(NVARCHAR2);
              break;
            case RAW:
              jj_consume_token(RAW);
              break;
            case ROWID:
              jj_consume_token(ROWID);
              break;
            case STRING:
              jj_consume_token(STRING);
              break;
            case UROWID:
              jj_consume_token(UROWID);
              break;
            case VARCHAR:
              jj_consume_token(VARCHAR);
              break;
            case VARCHAR2:
              jj_consume_token(VARCHAR2);
              break;
            case CLOB:
              jj_consume_token(CLOB);
              break;
            case NCLOB:
              jj_consume_token(NCLOB);
              break;
            default:
              jj_la1[138] = jj_gen;
              jj_consume_token(-1);
              throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
            }
          }
        }
        break;
      case BOOLEAN:
        jj_consume_token(BOOLEAN);
        break;
      case BFILE:
        jj_consume_token(BFILE);
        break;
      case BLOB:
        jj_consume_token(BLOB);
        break;
      case SYS_REFCURSOR:
        jj_consume_token(SYS_REFCURSOR);
        break;
      case 29:
        jj_consume_token(29);
        jj_consume_token(CURSOR);
                         name.append("REF CURSOR");
        break;
      case DATE:
        jj_consume_token(DATE);
        break;
      default:
        jj_la1[139] = jj_gen;
        if (jj_2_32(2)) {
          jj_consume_token(INTERVAL);
          jj_consume_token(YEAR);
                                        name.append("INTERVAL YEAR");
        } else if (jj_2_33(2)) {
          jj_consume_token(INTERVAL);
          jj_consume_token(DAY);
                                       name.append("INTERVAL DAY");
        } else {
          switch (jj_nt.kind) {
          case TIME:
            jj_consume_token(TIME);
            break;
          case TIMESTAMP:
            jj_consume_token(TIMESTAMP);
            break;
          case SELF:
            jj_consume_token(SELF);
            jj_consume_token(AS);
            jj_consume_token(RESULT);
                             name.append("SELF AS RESULT");
            break;
          default:
            jj_la1[140] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
        }
      }
      if (name.length() == 0 ) {
        name.append(token.getImage());
      }
      if (jj_2_34(2)) {
        jj_consume_token(LPAREN);
        size = NumericLiteral();
                                                 name.append("("); name.append(size.getImage()) ;
        switch (jj_nt.kind) {
        case COMMA:
          jj_consume_token(COMMA);
          precision = UnaryExpression(true);
                                                      name.append(",") ; name.append(precision.getImage()) ;
          break;
        default:
          jj_la1[141] = jj_gen;
          ;
        }
        switch (jj_nt.kind) {
        case CHAR:
          jj_consume_token(CHAR);
                          name.append(" CHAR") ;
          break;
        default:
          jj_la1[142] = jj_gen;
          ;
        }
        switch (jj_nt.kind) {
        case BYTE:
          jj_consume_token(BYTE);
                          name.append(" BYTE") ;
          break;
        default:
          jj_la1[143] = jj_gen;
          ;
        }
        jj_consume_token(RPAREN);
             name.append( ")") ;
      } else {
        ;
      }
      switch (jj_nt.kind) {
      case TO:
      case WITH:
      case CHARACTER:
        switch (jj_nt.kind) {
        case CHARACTER:
          jj_consume_token(CHARACTER);
          jj_consume_token(SET);
          characterSet = Name();
                                              name.append( " CHARACTER SET ") ;  name.append(characterSet.getImage()) ;
          break;
        default:
          jj_la1[144] = jj_gen;
          if (jj_2_36(4)) {
            jj_consume_token(WITH);
            jj_consume_token(LOCAL);
            jj_consume_token(TIME);
            jj_consume_token(ZONE);
                                             name.append(" WITH LOCAL TIME ZONE");
          } else if (jj_2_37(3)) {
            jj_consume_token(WITH);
            jj_consume_token(TIME);
            jj_consume_token(ZONE);
                                      name.append( " WITH TIME ZONE");
          } else if (jj_2_38(2)) {
            jj_consume_token(TO);
            jj_consume_token(MONTH);
                               name.append( " TO MONTH");
          } else if (jj_2_39(2)) {
            jj_consume_token(TO);
            jj_consume_token(SECOND);
                                name.append(" TO SECOND");
            if (jj_2_35(2)) {
              jj_consume_token(LPAREN);
              precision = NumericLiteral();
                                                                  name.append("(").append(precision.getImage()).append(")");
              jj_consume_token(RPAREN);
            } else {
              ;
            }
          } else {
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
        }
        break;
      default:
        jj_la1[145] = jj_gen;
        ;
      }
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
        jjtc000 = false;
        jjtn000.setImage(name.toString()) ;  {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
            {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
          }
          {if (true) throw (Error)jjte000;}
    } finally {
          if (jjtc000) {
            jjtree.closeNodeScope(jjtn000, true, getToken(0));
          }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTDateTimeLiteral DateTimeLiteral() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) DateTimeLiteral */
 ASTDateTimeLiteral jjtn000 = new ASTDateTimeLiteral(JJTDATETIMELITERAL);
 boolean jjtc000 = true;
 jjtree.openNodeScope(jjtn000, getToken(1));net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken t = null ;
 PLSQLNode simpleNode = null ;
 StringBuilder sb = new StringBuilder() ;
    try {
      switch (jj_nt.kind) {
      case INTERVAL:
        jj_consume_token(INTERVAL);
        break;
      case TIMESTAMP:
        jj_consume_token(TIMESTAMP);
        break;
      case DATE:
        jj_consume_token(DATE);
        break;
      default:
        jj_la1[146] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
          sb.append(token.getImage());
      switch (jj_nt.kind) {
      case CHARACTER_LITERAL:
        jj_consume_token(CHARACTER_LITERAL);
                                sb.append(" ");  sb.append(token.getImage());
        break;
      case STRING_LITERAL:
        simpleNode = StringLiteral();
                                        sb.append(" ");  sb.append(simpleNode.getImage());
        break;
      default:
        jj_la1[147] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      switch (jj_nt.kind) {
      case DAY:
      case HOUR:
      case MINUTE:
      case MONTH:
      case SECOND:
      case YEAR:
        switch (jj_nt.kind) {
        case YEAR:
          jj_consume_token(YEAR);
          break;
        case MONTH:
          jj_consume_token(MONTH);
          break;
        case DAY:
          jj_consume_token(DAY);
          break;
        case HOUR:
          jj_consume_token(HOUR);
          break;
        case MINUTE:
          jj_consume_token(MINUTE);
          break;
        case SECOND:
          jj_consume_token(SECOND);
          break;
        default:
          jj_la1[148] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        break;
      default:
        jj_la1[149] = jj_gen;
        ;
      }
           if (null != t)
           {
            sb.append(" ");  sb.append(token.getImage());
            t = null;
           }
      if (jj_2_40(2)) {
        jj_consume_token(LPAREN);
        simpleNode = NumericLiteral();
                                                           sb.append("(");  sb.append(simpleNode.getImage());
        jj_consume_token(RPAREN);
               sb.append("}");
      } else {
        ;
      }
      switch (jj_nt.kind) {
      case TO:
      case WITH:
        switch (jj_nt.kind) {
        case WITH:
          jj_consume_token(WITH);
              sb.append(" "); sb.append(token.getImage()) ;
          switch (jj_nt.kind) {
          case LOCAL:
            jj_consume_token(LOCAL);
                  sb.append(" "); sb.append(token.getImage()) ;
            break;
          default:
            jj_la1[150] = jj_gen;
            ;
          }
          jj_consume_token(TIME);
          jj_consume_token(ZONE);
                    sb.append(" "); sb.append("TIME ZONE") ;
          break;
        case TO:
          jj_consume_token(TO);
            sb.append(" "); sb.append(token.getImage()) ;
          switch (jj_nt.kind) {
          case YEAR:
            jj_consume_token(YEAR);
            break;
          case MONTH:
            jj_consume_token(MONTH);
            break;
          case DAY:
            jj_consume_token(DAY);
            break;
          case HOUR:
            jj_consume_token(HOUR);
            break;
          case MINUTE:
            jj_consume_token(MINUTE);
            break;
          case SECOND:
            jj_consume_token(SECOND);
            break;
          default:
            jj_la1[151] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
          sb.append(token.getImage());
          if (jj_2_41(2)) {
            jj_consume_token(LPAREN);
            simpleNode = NumericLiteral();
                                                           sb.append("(");  sb.append(simpleNode.getImage());
            jj_consume_token(RPAREN);
                sb.append("}");
          } else {
            ;
          }
          break;
        default:
          jj_la1[152] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        break;
      default:
        jj_la1[153] = jj_gen;
        ;
      }
     jjtree.closeNodeScope(jjtn000, true, getToken(0));
     jjtc000 = false;
    jjtn000.setImage(sb.toString()) ;  {if (true) return jjtn000 ;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * https://docs.oracle.com/en/database/oracle/oracle-database/23/lnpls/exception-handler.html#GUID-3FECF29B-A240-4191-A635-92C612D00C4D__CJAEIGAB
 */
  final public ASTExceptionHandler ExceptionHandler() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) ExceptionHandler */
  ASTExceptionHandler jjtn000 = new ASTExceptionHandler(JJTEXCEPTIONHANDLER);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      jj_consume_token(WHEN);
      QualifiedName();
      label_33:
      while (true) {
        switch (jj_nt.kind) {
        case OR:
          ;
          break;
        default:
          jj_la1[154] = jj_gen;
          break label_33;
        }
        jj_consume_token(OR);
        QualifiedName();
      }
      jj_consume_token(THEN);
      label_34:
      while (true) {
        Statement();
        switch (jj_nt.kind) {
        case LPAREN:
        case PLUSSIGN:
        case MINUSSIGN:
        case STAR:
        case 26:
        case 29:
        case 30:
        case 32:
        case 33:
        case 34:
        case 35:
        case 36:
        case 37:
        case 38:
        case 39:
        case 40:
        case 41:
        case 42:
        case 43:
        case 44:
        case 48:
        case DEFINER:
        case CURRENT_USER:
        case SERIALLY_REUSABLE:
        case RESTRICT_REFERENCES:
        case EXCEPTION_INIT:
        case AUTONOMOUS_TRANSACTION:
        case LANGUAGE:
        case INLINE:
        case ALTER:
        case AND:
        case ANY:
        case ASC:
        case AT:
        case BEGIN:
        case CASE:
        case CHECK:
        case CLUSTER:
        case COMPRESS:
        case CREATE:
        case DECLARE:
        case DESC:
        case DROP:
        case EXCLUSIVE:
        case FETCH:
        case FOR:
        case GOTO:
        case HAVING:
        case IF:
        case INDEX:
        case INSERT:
        case INTERSECT:
        case IS:
        case LIKE:
        case LOCK:
        case MINUS:
        case MODE:
        case NOT:
        case NULL:
        case OPTION:
        case OR:
        case SELECT:
        case SHARE:
        case SQL:
        case SUBTYPE:
        case THEN:
        case TO:
        case TYPE:
        case UPDATE:
        case WITH:
        case ADD:
        case AGGREGATE:
        case APPLY:
        case ARRAY:
        case ATTRIBUTE:
        case AUTHID:
        case BINARY_INTEGER:
        case BODY:
        case BOOLEAN:
        case BULK:
        case BYTE:
        case CASCADE:
        case CHAR:
        case CHAR_BASE:
        case CLOSE:
        case COALESCE:
        case COLLECT:
        case COLUMN:
        case COMMIT:
        case CONSTANT:
        case CONSTRAINT:
        case CONSTRUCTOR:
        case CONTINUE:
        case CONVERT:
        case CROSS:
        case CUBE:
        case CURRENT:
        case CURRVAL:
        case DATA:
        case DATE:
        case DAY:
        case DECIMAL:
        case DEFINITION:
        case DELETE:
        case DISABLE:
        case DO:
        case DUPLICATED:
        case EDITIONABLE:
        case ELEMENT:
        case ELSIF:
        case ENABLE:
        case ESCAPE:
        case EXCEPT:
        case EXCEPTIONS:
        case EXECUTE:
        case EXIT:
        case EXTERNAL:
        case EXTENDED:
        case EXTENDS:
        case EXTRACT:
        case FALSE:
        case FINAL:
        case FLOAT:
        case FORALL:
        case FOREIGN:
        case FORCE:
        case FULL:
        case GLOBAL:
        case GROUPING:
        case HASH:
        case HEAP:
        case HOUR:
        case IMMEDIATE:
        case INNER:
        case INDICES:
        case INCLUDING:
        case INDEXTYPE:
        case INDICATOR:
        case INFINITE:
        case INSTANTIABLE:
        case INTEGER:
        case INTERFACE:
        case INTERVAL:
        case INVALIDATE:
        case ISOLATION:
        case JAVA:
        case JOIN:
        case KEY:
        case LEVEL:
        case LIKEC:
        case LIKE2:
        case LIKE4:
        case LIMIT:
        case LIMITED:
        case LONG:
        case LOOP:
        case MAP:
        case MEMBER:
        case MERGE:
        case METADATA:
        case MINUTE:
        case MLSLABEL:
        case MODIFY:
        case MOD:
        case MONTH:
        case NAN:
        case NATURAL:
        case NATURALN:
        case NEW:
        case NEW_DOT:
        case NEXT:
        case NEXTVAL:
        case NO:
        case NOCOPY:
        case NONE:
        case NONEDITIONABLE:
        case NULLIF:
        case NULLS:
        case NUMBER:
        case BFILE_BASE:
        case BLOB_BASE:
        case CLOB_BASE:
        case DATE_BASE:
        case NUMBER_BASE:
        case OBJECT:
        case OCIROWID:
        case OFFSET:
        case OID:
        case ONLY:
        case OPAQUE:
        case OPEN:
        case OPERATOR:
        case ORGANIZATION:
        case OTHERS:
        case OUT:
        case OUTER:
        case OVERRIDING:
        case PACKAGE:
        case PARTITION:
        case PCTFREE:
        case PERCENT:
        case PIPE:
        case PLS_INTEGER:
        case POSITIVE:
        case POSITIVEN:
        case PRAGMA:
        case PRESERVE:
        case PRIOR:
        case PRIMARY:
        case PRIVATE:
        case RAISE:
        case RANGE:
        case RAW:
        case REAL:
        case RECORD:
        case REFERENCES:
        case REGEXP_LIKE:
        case RELEASE:
        case RELIES_ON:
        case RENAME:
        case RESULT:
        case RETURN:
        case RETURNING:
        case REVERSE:
        case ROLLBACK:
        case ROLLUP:
        case ROW:
        case ROWS:
        case ROWID:
        case ROWNUM:
        case ROWTYPE:
        case SAVE:
        case SAVEPOINT:
        case SECOND:
        case SELF:
        case SEPARATE:
        case SET:
        case SETS:
        case SIBLINGS:
        case SHARDED:
        case SHARING:
        case SMALLINT:
        case SOME:
        case SPACE:
        case SQLCODE:
        case SQLERRM:
        case STATIC:
        case SUBSTITUTABLE:
        case SUCCESSFUL:
        case SYNONYM:
        case SYS_REFCURSOR:
        case TEMPORARY:
        case TIES:
        case TIME:
        case TIMESTAMP:
        case TIMEZONE_REGION:
        case TIMEZONE_ABBR:
        case TIMEZONE_MINUTE:
        case TIMEZONE_HOUR:
        case TRANSACTION:
        case TRIGGER:
        case TRUE:
        case UI:
        case UNDER:
        case USING:
        case WHILE:
        case YES:
        case A:
        case VARCHAR:
        case VARCHAR2:
        case DOUBLE:
        case DEC:
        case PRECISION:
        case INT:
        case NUMERIC:
        case SIGNTYPE:
        case NCHAR:
        case NVARCHAR2:
        case STRING:
        case UROWID:
        case VARRAY:
        case VARYING:
        case BFILE:
        case BLOB:
        case CLOB:
        case NCLOB:
        case YEAR:
        case LOCAL:
        case ZONE:
        case CHARACTER:
        case AFTER:
        case BEFORE:
        case OLD:
        case PARENT:
        case GENERATED:
        case SCOPE:
        case INITIALLY:
        case DEFERRABLE:
        case DEFERRED:
        case CC_IF:
        case CC_ERROR:
        case ANALYZE:
        case ASSOCIATE:
        case AUDIT:
        case COMPOUND:
        case DATABASE:
        case CALL:
        case DISASSOCIATE:
        case EACH:
        case FOLLOWS:
        case LOGOFF:
        case LOGON:
        case NESTED:
        case NOAUDIT:
        case SCHEMA:
        case SERVERERROR:
        case SHUTDOWN:
        case STARTUP:
        case STATEMENT:
        case STATISTICS:
        case SUSPEND:
        case TRUNCATE:
        case WRAPPED:
        case LIBRARY:
        case NAME:
        case STRUCT:
        case CONTEXT:
        case PARAMETERS:
        case LENGTH:
        case TDO:
        case MAXLEN:
        case CHARSETID:
        case CHARSETFORM:
        case ACCESSIBLE:
        case ATTACH:
        case CAST:
        case TREAT:
        case LEFT:
        case RIGHT:
        case BOTH:
        case EMPTY:
        case MULTISET:
        case SUBMULTISET:
        case LEADING:
        case TRAILING:
        case CHAR_CS:
        case NCHAR_CS:
        case DBTIMEZONE:
        case SESSIONTIMEZONE:
        case AUTHENTICATED:
        case LINK:
        case SHARED:
        case DIRECTORY:
        case USER:
        case READ:
        case LATERAL:
        case NOCYCLE:
        case CONNECT_BY_ROOT:
        case IDENTIFIER:
        case UNSIGNED_NUMERIC_LITERAL:
        case CHARACTER_LITERAL:
        case QUOTED_LITERAL:
        case JAVA_INTERFACE_CLASS:
        case STRING_LITERAL:
        case 493:
          ;
          break;
        default:
          jj_la1[155] = jj_gen;
          break label_34;
        }
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public void Skip2NextTerminator(String initiator,String terminator) throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) Skip2NextTerminator */
  ASTSkip2NextTerminator jjtn000 = new ASTSkip2NextTerminator(JJTSKIP2NEXTTERMINATOR);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken beginToken = getToken(0);
  net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken t = getToken(1);
  int count = (initiator == null) ? 0 : 1;
  if(t.getImage().equals(initiator)) count++;
  while (count > 0 || !t.getImage().equals(terminator))
  {
      t = getNextToken();
      t = getToken(1);
      if (t.getImage().equals(initiator)) {
          count++;
      }
      if (t.getImage().equals(terminator)) {
          count--;
      }
      if ((null != t.specialToken
            && beginToken.kind != SELECT
            && beginToken.kind != INSERT
            && beginToken.kind != UPDATE
            && beginToken.kind != DELETE
            && beginToken.kind != MERGE
            && beginToken.kind != EXECUTE
            && beginToken.kind != WITH)
            || t.kind == EOF) {
          return;
      }
      if (t.specialToken != null && "/".equals(t.getImage())) {
          return;
    }
  }
    try {
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
  }

/*
 Read Tokens up to but not including the target String.
*/
  final public void Skip2NextOccurrence(String target) throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) Skip2NextOccurrence */
  ASTSkip2NextOccurrence jjtn000 = new ASTSkip2NextOccurrence(JJTSKIP2NEXTOCCURRENCE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken nextToken = getToken(1);
  while (!nextToken.getImage().equals(target)
         && (null == nextToken.specialToken || !nextToken.specialToken.getImage().equals(target) ) //In case the target is a Special net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken
         && nextToken.kind!=EOF //SRT 20110521 - Prevent endless loop when target does not exist in the input stream
        )
  {
    nextToken = getNextToken();
    nextToken = getToken(1);
  }
    try {
          jjtree.closeNodeScope(jjtn000, true, getToken(0));
          jjtc000 = false;
          {if (true) return;}
    } finally {
          if (jjtc000) {
            jjtree.closeNodeScope(jjtn000, true, getToken(0));
          }
    }
  }

/*
 Read Tokens up to and including the target String.
*/
  final public void SkipPastNextOccurrence(String target) throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) SkipPastNextOccurrence */
  ASTSkipPastNextOccurrence jjtn000 = new ASTSkipPastNextOccurrence(JJTSKIPPASTNEXTOCCURRENCE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken t = null;
  Skip2NextOccurrence(target) ;
  t = getNextToken();
    try {
          jjtree.closeNodeScope(jjtn000, true, getToken(0));
          jjtc000 = false;
          {if (true) return;}
    } finally {
          if (jjtc000) {
            jjtree.closeNodeScope(jjtn000, true, getToken(0));
          }
    }
  }

/**
 * Read Tokens up to but not including the target net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken.kind.
 */
  final public void Skip2NextTokenOccurrence(int target) throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) Skip2NextTokenOccurrence */
    ASTSkip2NextTokenOccurrence jjtn000 = new ASTSkip2NextTokenOccurrence(JJTSKIP2NEXTTOKENOCCURRENCE);
    boolean jjtc000 = true;
    jjtree.openNodeScope(jjtn000, getToken(1));net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken nextToken = getToken(1);
    net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken specToken = null ;
    while (nextToken.kind!=target
        && (null == nextToken.specialToken || nextToken.specialToken.kind!=target ) //In case the target is a Special net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken
        && nextToken.kind!=EOF) //SRT 20110521 - Prevent endless loop when target does not exist in the input stream
    {
        /*
         * Check if the target appears as a SpecialToken
         *
         * nextToken.specialToken points to the _LAST_ of any SpecialTokens before the current normal net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken.
         *
         * It is the head of a doubly-linked list:
         *
         * The ${specialToken}.specialToken field POINTS BACKWARDS TOWARDS the FIRST occurring SpecialToken
         * The ${specialToken}.next field POINTS FORWARDS to to the LAST occurring SpecialToken
         *
         * This means that if the program is interested in a specific SpecialToken, it must examine the linked list for every net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken which has nexToken.specialToken != null.
         */
        specToken = nextToken.specialToken;
        if (null!= specToken) {
            //Walk backwards through the list looking for this net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken as a Special net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken
            while (specToken != null && specToken.kind != target) {
                specToken = specToken.specialToken;
            }
        }

        //We have found the target as a SpecialToken - break out of normal net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken search
        if (null != specToken && specToken.kind == target) {
            break;
        }

        nextToken = getNextToken();
        nextToken = getToken(1);
    }
    try {
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
  }

/*
 Read Tokens up to and including the target net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken.kind.
*/
  final public void SkipPastNextTokenOccurrence(int target) throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) SkipPastNextTokenOccurrence */
  ASTSkipPastNextTokenOccurrence jjtn000 = new ASTSkipPastNextTokenOccurrence(JJTSKIPPASTNEXTTOKENOCCURRENCE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken t = null;
  Skip2NextTokenOccurrence(target) ;
  t = getNextToken();
    try {
          jjtree.closeNodeScope(jjtn000, true, getToken(0));
          jjtc000 = false;
          {if (true) return;}
    } finally {
          if (jjtc000) {
            jjtree.closeNodeScope(jjtn000, true, getToken(0));
          }
    }
  }

/*
 Read Tokens up to but not including the target String.
*/
  final public ASTRead2NextOccurrence Read2NextOccurrence(String target) throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) Read2NextOccurrence */
  ASTRead2NextOccurrence jjtn000 = new ASTRead2NextOccurrence(JJTREAD2NEXTOCCURRENCE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));StringBuilder sb = new StringBuilder();
  net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken nextToken = getToken(1);
  while (!nextToken.getImage().equals(target)
         && nextToken.kind!=EOF
        )
  {
    nextToken = getNextToken();
    sb.append(nextToken.getImage());
    sb.append(' ');
    nextToken = getToken(1);
  }
    try {
          jjtree.closeNodeScope(jjtn000, true, getToken(0));
          jjtc000 = false;
          jjtn000.setImage(sb.toString()) ;  jjtn000.value = sb.toString(); {if (true) return jjtn000 ;}
    } finally {
          if (jjtc000) {
            jjtree.closeNodeScope(jjtn000, true, getToken(0));
          }
    }
    throw new Error("Missing return statement in function");
  }

/*
 Read Tokens up to but not including the target token.
*/
  String Read2NextTokenOccurrence(int target) throws net.sourceforge.pmd.lang.ast.ParseException {
  StringBuilder sb = new StringBuilder();
  net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken nextToken = getToken(1);
  while (nextToken.kind!=target
        && (null == nextToken.specialToken || nextToken.specialToken.kind!=target ) //In case the target is a Special net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken
        && nextToken.kind!=EOF
        )
  {
    nextToken = getNextToken();
    sb.append(nextToken.getImage());
    sb.append(' ');
    nextToken = getToken(1);
  }
  return sb.toString();
  }

/*
 Read Tokens up to and including the target String.
*/
  final public ASTReadPastNextOccurrence ReadPastNextOccurrence(String target) throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) ReadPastNextOccurrence */
  ASTReadPastNextOccurrence jjtn000 = new ASTReadPastNextOccurrence(JJTREADPASTNEXTOCCURRENCE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));ASTRead2NextOccurrence skipped = Read2NextOccurrence(target);

  StringBuilder sb = new StringBuilder();
  sb.append(skipped.getImage()) ;
  net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken t = getNextToken(); // Chomp this one
  sb.append(t.getImage());
    try {
          jjtree.closeNodeScope(jjtn000, true, getToken(0));
          jjtc000 = false;
          jjtn000.setImage(sb.toString()) ;  jjtn000.value = sb.toString(); {if (true) return jjtn000 ;}
    } finally {
          if (jjtc000) {
            jjtree.closeNodeScope(jjtn000, true, getToken(0));
          }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * 2006-05-24 - Matthias Hendler - added MERGE
 */
  final public ASTSqlStatement SqlStatement(String initiator, String terminator) throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) SqlStatement */
  ASTSqlStatement jjtn000 = new ASTSqlStatement(JJTSQLSTATEMENT);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      switch (jj_nt.kind) {
      case SELECT:
        jj_consume_token(SELECT);
        break;
      case UPDATE:
        jj_consume_token(UPDATE);
        break;
      case INSERT:
        jj_consume_token(INSERT);
        break;
      case DELETE:
        jj_consume_token(DELETE);
        break;
      case COMMIT:
        jj_consume_token(COMMIT);
              jjtn000.setType(ASTSqlStatement.Type.COMMIT);
        break;
      case ROLLBACK:
        jj_consume_token(ROLLBACK);
                jjtn000.setType(ASTSqlStatement.Type.ROLLBACK);
        break;
      case SAVEPOINT:
        jj_consume_token(SAVEPOINT);
                 jjtn000.setType(ASTSqlStatement.Type.SAVEPOINT);
        break;
      case SET:
        jj_consume_token(SET);
        jj_consume_token(TRANSACTION);
                        jjtn000.setType(ASTSqlStatement.Type.SET_TRANSACTION);
        break;
      case LOCK:
        jj_consume_token(LOCK);
        jj_consume_token(TABLE);
                   jjtn000.setType(ASTSqlStatement.Type.LOCK_TABLE);
        break;
      case MERGE:
        jj_consume_token(MERGE);
             jjtn000.setType(ASTSqlStatement.Type.MERGE);
        break;
      case WITH:
        jj_consume_token(WITH);
        break;
      default:
        jj_la1[156] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      Skip2NextTerminator(initiator, terminator);
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
        {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public void AbstractSelectStatement(AbstractSelectStatement node) throws net.sourceforge.pmd.lang.ast.ParseException {
    jj_consume_token(SELECT);
    switch (jj_nt.kind) {
    case ALL:
    case DISTINCT:
    case UNIQUE:
      switch (jj_nt.kind) {
      case DISTINCT:
        jj_consume_token(DISTINCT);
                      node.setDistinct(true);
        break;
      case UNIQUE:
        jj_consume_token(UNIQUE);
                    node.setUnique(true);
        break;
      case ALL:
        jj_consume_token(ALL);
                 node.setAll(true);
        break;
      default:
        jj_la1[157] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      break;
    default:
      jj_la1[158] = jj_gen;
      ;
    }
  }

/**
 * Note: The SELECT INTO statement can be preceded by a WithClause, even though this is not in the
 * official reference documentation.
 *
 * @see SELECT INTO (18)
 * @see SELECT INTO (23)
 * @see SELECT (23)
 */
  final public ASTSelectIntoStatement SelectIntoStatement() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) SelectIntoStatement */
  ASTSelectIntoStatement jjtn000 = new ASTSelectIntoStatement(JJTSELECTINTOSTATEMENT);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      switch (jj_nt.kind) {
      case WITH:
        WithClause();
        break;
      default:
        jj_la1[159] = jj_gen;
        ;
      }
      AbstractSelectStatement(jjtn000);
      SelectList();
      switch (jj_nt.kind) {
      case INTO:
        IntoClause();
        break;
      case BULK:
        BulkCollectIntoClause();
        break;
      default:
        jj_la1[160] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      RestOfStatement();
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public void RestOfStatement() throws net.sourceforge.pmd.lang.ast.ParseException {
    FromClause();
    switch (jj_nt.kind) {
    case WHERE:
      WhereClause();
      break;
    default:
      jj_la1[161] = jj_gen;
      ;
    }
    switch (jj_nt.kind) {
    case CONNECT:
    case START:
      HierarchicalQueryClause();
      break;
    default:
      jj_la1[162] = jj_gen;
      ;
    }
    switch (jj_nt.kind) {
    case GROUP:
      GroupByClause();
      break;
    default:
      jj_la1[163] = jj_gen;
      ;
    }
    label_35:
    while (true) {
      if (jj_2_42(2)) {
        ;
      } else {
        break label_35;
      }
      SubqueryOperation();
      Subquery();
    }
    switch (jj_nt.kind) {
    case ORDER:
      OrderByClause();
      break;
    default:
      jj_la1[164] = jj_gen;
      ;
    }
    switch (jj_nt.kind) {
    case FETCH:
    case OFFSET:
      RowLimitingClause();
      break;
    default:
      jj_la1[165] = jj_gen;
      ;
    }
    if (jj_2_43(2)) {
      ForUpdateClause();
    } else {
      ;
    }
  }

/**
 * @see SELECT - for_update_clause
 */
  final public void ForUpdateClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) ForUpdateClause */
  ASTForUpdateClause jjtn000 = new ASTForUpdateClause(JJTFORUPDATECLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      jj_consume_token(FOR);
      jj_consume_token(UPDATE);
      switch (jj_nt.kind) {
      case OF:
        jj_consume_token(OF);
        ColumnPath();
        label_36:
        while (true) {
          if (jj_2_44(2)) {
            ;
          } else {
            break label_36;
          }
          jj_consume_token(COMMA);
          ColumnPath();
        }
        break;
      default:
        jj_la1[166] = jj_gen;
        ;
      }
      if (jj_2_45(1)) {
        switch (jj_nt.kind) {
        case NOWAIT:
          jj_consume_token(NOWAIT);
          break;
        default:
          jj_la1[167] = jj_gen;
          if (isKeyword("WAIT")) {
            KEYWORD("WAIT");
            jj_consume_token(UNSIGNED_NUMERIC_LITERAL);
          } else if (isKeyword("SKIP")) {
            KEYWORD("SKIP");
            KEYWORD("LOCKED");
          } else {
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
        }
      } else {
        ;
      }
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
      {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
    }
    {if (true) throw (Error)jjte000;}
    } finally {
    if (jjtc000) {
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
    }
    }
  }

  final public void ColumnPath() throws net.sourceforge.pmd.lang.ast.ParseException {
    if (jj_2_46(6)) {
      SchemaName();
      jj_consume_token(DOT);
    } else {
      ;
    }
    if (jj_2_47(4)) {
      TableName();
      jj_consume_token(DOT);
    } else {
      ;
    }
    Column();
  }

  final public void Subquery() throws net.sourceforge.pmd.lang.ast.ParseException {
    switch (jj_nt.kind) {
    case SELECT:
    case WITH:
      QueryBlock();
      label_37:
      while (true) {
        if (jj_2_48(2)) {
          ;
        } else {
          break label_37;
        }
        SubqueryOperation();
        Subquery();
      }
      break;
    case LPAREN:
      jj_consume_token(LPAREN);
      Subquery();
      jj_consume_token(RPAREN);
      break;
    default:
      jj_la1[168] = jj_gen;
      jj_consume_token(-1);
      throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
    }
    if (jj_2_49(2)) {
      OrderByClause();
    } else {
      ;
    }
    if (jj_2_50(2)) {
      RowLimitingClause();
    } else {
      ;
    }
  }

  final public ASTSubqueryOperation SubqueryOperation() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) SubqueryOperation */
  ASTSubqueryOperation jjtn000 = new ASTSubqueryOperation(JJTSUBQUERYOPERATION);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      switch (jj_nt.kind) {
      case UNION:
        jj_consume_token(UNION);
              jjtn000.setImage(token.getImage()); jjtn000.setUnion(true);
        switch (jj_nt.kind) {
        case ALL:
          jj_consume_token(ALL);
                                                                                      jjtn000.setImage(jjtn000.getImage() + " " + token.getImage()); jjtn000.setAll(true);
          break;
        default:
          jj_la1[169] = jj_gen;
          ;
        }
        break;
      case INTERSECT:
        jj_consume_token(INTERSECT);
                  jjtn000.setImage(token.getImage()); jjtn000.setIntersect(true);
        break;
      case MINUS:
        jj_consume_token(MINUS);
              jjtn000.setImage(token.getImage()); jjtn000.setMinus(true);
        break;
      default:
        jj_la1[170] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } finally {
    if (jjtc000) {
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
    }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * @see ORDER BY clause
 */
  final public ASTOrderByClause OrderByClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) OrderByClause */
  ASTOrderByClause jjtn000 = new ASTOrderByClause(JJTORDERBYCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      jj_consume_token(ORDER);
      switch (jj_nt.kind) {
      case SIBLINGS:
        jj_consume_token(SIBLINGS);
        break;
      default:
        jj_la1[171] = jj_gen;
        ;
      }
      jj_consume_token(BY);
      OrderByEntry();
      label_38:
      while (true) {
        switch (jj_nt.kind) {
        case COMMA:
          ;
          break;
        default:
          jj_la1[172] = jj_gen;
          break label_38;
        }
        jj_consume_token(COMMA);
        OrderByEntry();
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public void OrderByEntry() throws net.sourceforge.pmd.lang.ast.ParseException {
    SqlExpression();
    switch (jj_nt.kind) {
    case ASC:
    case DESC:
      switch (jj_nt.kind) {
      case ASC:
        jj_consume_token(ASC);
        break;
      case DESC:
        jj_consume_token(DESC);
        break;
      default:
        jj_la1[173] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      break;
    default:
      jj_la1[174] = jj_gen;
      ;
    }
    switch (jj_nt.kind) {
    case NULLS:
      jj_consume_token(NULLS);
      switch (jj_nt.kind) {
      case IDENTIFIER:
        KEYWORD("FIRST");
        break;
      case 30:
        jj_consume_token(30);
        break;
      default:
        jj_la1[175] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      break;
    default:
      jj_la1[176] = jj_gen;
      ;
    }
  }

/**
 * @see Row Limiting Clause
 */
  final public ASTRowLimitingClause RowLimitingClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) RowLimitingClause */
  ASTRowLimitingClause jjtn000 = new ASTRowLimitingClause(JJTROWLIMITINGCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      switch (jj_nt.kind) {
      case OFFSET:
        jj_consume_token(OFFSET);
        NumericLiteral();
        switch (jj_nt.kind) {
        case ROW:
          jj_consume_token(ROW);
          break;
        case ROWS:
          jj_consume_token(ROWS);
          break;
        default:
          jj_la1[177] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        break;
      case FETCH:
        jj_consume_token(FETCH);
        switch (jj_nt.kind) {
        case IDENTIFIER:
          KEYWORD("FIRST");
          break;
        case NEXT:
          jj_consume_token(NEXT);
          break;
        default:
          jj_la1[178] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        switch (jj_nt.kind) {
        case UNSIGNED_NUMERIC_LITERAL:
          NumericLiteral();
          switch (jj_nt.kind) {
          case PERCENT:
            jj_consume_token(PERCENT);
            break;
          default:
            jj_la1[179] = jj_gen;
            ;
          }
          break;
        default:
          jj_la1[180] = jj_gen;
          ;
        }
        switch (jj_nt.kind) {
        case ROW:
          jj_consume_token(ROW);
          break;
        case ROWS:
          jj_consume_token(ROWS);
          break;
        default:
          jj_la1[181] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        switch (jj_nt.kind) {
        case ONLY:
          jj_consume_token(ONLY);
          break;
        case WITH:
          jj_consume_token(WITH);
          jj_consume_token(TIES);
          break;
        default:
          jj_la1[182] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        break;
      default:
        jj_la1[183] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
      {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
    }
    {if (true) throw (Error)jjte000;}
    } finally {
    if (jjtc000) {
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
    }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTQueryBlock QueryBlock() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) QueryBlock */
  ASTQueryBlock jjtn000 = new ASTQueryBlock(JJTQUERYBLOCK);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      switch (jj_nt.kind) {
      case WITH:
        WithClause();
        break;
      default:
        jj_la1[184] = jj_gen;
        ;
      }
      AbstractSelectStatement(jjtn000);
      SelectList();
      FromClause();
      switch (jj_nt.kind) {
      case WHERE:
        WhereClause();
        break;
      default:
        jj_la1[185] = jj_gen;
        ;
      }
      switch (jj_nt.kind) {
      case CONNECT:
      case START:
        HierarchicalQueryClause();
        break;
      default:
        jj_la1[186] = jj_gen;
        ;
      }
      switch (jj_nt.kind) {
      case GROUP:
        GroupByClause();
        break;
      default:
        jj_la1[187] = jj_gen;
        ;
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * @see Group By Clause
 */
  final public ASTGroupByClause GroupByClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) GroupByClause */
  ASTGroupByClause jjtn000 = new ASTGroupByClause(JJTGROUPBYCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      jj_consume_token(GROUP);
      jj_consume_token(BY);
      label_39:
      while (true) {
        switch (jj_nt.kind) {
        case COMMA:
          jj_consume_token(COMMA);
          break;
        default:
          jj_la1[188] = jj_gen;
          ;
        }
        if (jj_2_51(3)) {
          RollupCubeClause();
        } else if (jj_2_52(3)) {
          GroupingSetsClause();
        } else if (jj_2_53(3)) {
          Expression();
        } else {
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        if (jj_2_54(2)) {
          ;
        } else {
          break label_39;
        }
      }
      switch (jj_nt.kind) {
      case HAVING:
        jj_consume_token(HAVING);
        Condition();
        break;
      default:
        jj_la1[189] = jj_gen;
        ;
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTRollupCubeClause RollupCubeClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) RollupCubeClause */
  ASTRollupCubeClause jjtn000 = new ASTRollupCubeClause(JJTROLLUPCUBECLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      switch (jj_nt.kind) {
      case ROLLUP:
        jj_consume_token(ROLLUP);
        break;
      case CUBE:
        jj_consume_token(CUBE);
        break;
      default:
        jj_la1[190] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
                            jjtn000.setImage(token.getImage());
      jj_consume_token(LPAREN);
      GroupingExpressionList();
      jj_consume_token(RPAREN);
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTGroupingSetsClause GroupingSetsClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) GroupingSetsClause */
  ASTGroupingSetsClause jjtn000 = new ASTGroupingSetsClause(JJTGROUPINGSETSCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      jj_consume_token(GROUPING);
      jj_consume_token(SETS);
      jj_consume_token(LPAREN);
      label_40:
      while (true) {
        switch (jj_nt.kind) {
        case COMMA:
          jj_consume_token(COMMA);
          break;
        default:
          jj_la1[191] = jj_gen;
          ;
        }
        if (jj_2_55(3)) {
          RollupCubeClause();
        } else if (jj_2_56(3)) {
          GroupingExpressionList();
        } else {
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        switch (jj_nt.kind) {
        case LPAREN:
        case COMMA:
        case PLUSSIGN:
        case MINUSSIGN:
        case STAR:
        case 26:
        case 29:
        case 30:
        case 32:
        case 33:
        case 34:
        case 35:
        case 36:
        case 37:
        case 38:
        case 39:
        case 40:
        case 41:
        case 42:
        case 43:
        case 44:
        case DEFINER:
        case CURRENT_USER:
        case SERIALLY_REUSABLE:
        case RESTRICT_REFERENCES:
        case EXCEPTION_INIT:
        case AUTONOMOUS_TRANSACTION:
        case LANGUAGE:
        case INLINE:
        case ALTER:
        case AND:
        case ANY:
        case ASC:
        case AT:
        case CASE:
        case CHECK:
        case CLUSTER:
        case COMPRESS:
        case CREATE:
        case DESC:
        case DROP:
        case EXCLUSIVE:
        case FETCH:
        case GOTO:
        case HAVING:
        case INDEX:
        case INSERT:
        case INTERSECT:
        case IS:
        case LIKE:
        case LOCK:
        case MINUS:
        case MODE:
        case NOT:
        case NULL:
        case OPTION:
        case OR:
        case SHARE:
        case SQL:
        case SUBTYPE:
        case THEN:
        case TO:
        case TYPE:
        case UPDATE:
        case WITH:
        case ADD:
        case AGGREGATE:
        case APPLY:
        case ARRAY:
        case ATTRIBUTE:
        case AUTHID:
        case BINARY_INTEGER:
        case BODY:
        case BOOLEAN:
        case BULK:
        case BYTE:
        case CASCADE:
        case CHAR:
        case CHAR_BASE:
        case CLOSE:
        case COALESCE:
        case COLLECT:
        case COLUMN:
        case COMMIT:
        case CONSTANT:
        case CONSTRAINT:
        case CONSTRUCTOR:
        case CONTINUE:
        case CONVERT:
        case CROSS:
        case CUBE:
        case CURRENT:
        case CURRVAL:
        case DATA:
        case DATE:
        case DAY:
        case DECIMAL:
        case DEFINITION:
        case DELETE:
        case DISABLE:
        case DO:
        case DUPLICATED:
        case EDITIONABLE:
        case ELEMENT:
        case ELSIF:
        case ENABLE:
        case ESCAPE:
        case EXCEPT:
        case EXCEPTIONS:
        case EXECUTE:
        case EXIT:
        case EXTERNAL:
        case EXTENDED:
        case EXTENDS:
        case EXTRACT:
        case FALSE:
        case FINAL:
        case FLOAT:
        case FORALL:
        case FOREIGN:
        case FORCE:
        case FULL:
        case GLOBAL:
        case GROUPING:
        case HASH:
        case HEAP:
        case HOUR:
        case IMMEDIATE:
        case INNER:
        case INDICES:
        case INCLUDING:
        case INDEXTYPE:
        case INDICATOR:
        case INFINITE:
        case INSTANTIABLE:
        case INTEGER:
        case INTERFACE:
        case INTERVAL:
        case INVALIDATE:
        case ISOLATION:
        case JAVA:
        case JOIN:
        case KEY:
        case LEVEL:
        case LIKEC:
        case LIKE2:
        case LIKE4:
        case LIMIT:
        case LIMITED:
        case LONG:
        case LOOP:
        case MAP:
        case MEMBER:
        case MERGE:
        case METADATA:
        case MINUTE:
        case MLSLABEL:
        case MODIFY:
        case MOD:
        case MONTH:
        case NAN:
        case NATURAL:
        case NATURALN:
        case NEW:
        case NEW_DOT:
        case NEXT:
        case NEXTVAL:
        case NO:
        case NOCOPY:
        case NONE:
        case NONEDITIONABLE:
        case NULLIF:
        case NULLS:
        case NUMBER:
        case BFILE_BASE:
        case BLOB_BASE:
        case CLOB_BASE:
        case DATE_BASE:
        case NUMBER_BASE:
        case OBJECT:
        case OCIROWID:
        case OFFSET:
        case OID:
        case ONLY:
        case OPAQUE:
        case OPEN:
        case OPERATOR:
        case ORGANIZATION:
        case OTHERS:
        case OUT:
        case OUTER:
        case OVERRIDING:
        case PACKAGE:
        case PARTITION:
        case PCTFREE:
        case PERCENT:
        case PLS_INTEGER:
        case POSITIVE:
        case POSITIVEN:
        case PRESERVE:
        case PRIOR:
        case PRIMARY:
        case PRIVATE:
        case RAISE:
        case RANGE:
        case RAW:
        case REAL:
        case RECORD:
        case REFERENCES:
        case REGEXP_LIKE:
        case RELEASE:
        case RELIES_ON:
        case RENAME:
        case RESULT:
        case RETURN:
        case RETURNING:
        case REVERSE:
        case ROLLBACK:
        case ROLLUP:
        case ROW:
        case ROWS:
        case ROWID:
        case ROWNUM:
        case ROWTYPE:
        case SAVE:
        case SAVEPOINT:
        case SECOND:
        case SELF:
        case SEPARATE:
        case SETS:
        case SIBLINGS:
        case SHARDED:
        case SHARING:
        case SMALLINT:
        case SOME:
        case SPACE:
        case SQLCODE:
        case SQLERRM:
        case STATIC:
        case SUBSTITUTABLE:
        case SUCCESSFUL:
        case SYNONYM:
        case SYS_REFCURSOR:
        case TEMPORARY:
        case TIES:
        case TIME:
        case TIMESTAMP:
        case TIMEZONE_REGION:
        case TIMEZONE_ABBR:
        case TIMEZONE_MINUTE:
        case TIMEZONE_HOUR:
        case TRANSACTION:
        case TRIGGER:
        case TRUE:
        case UI:
        case UNDER:
        case USING:
        case WHILE:
        case YES:
        case A:
        case VARCHAR:
        case VARCHAR2:
        case DOUBLE:
        case DEC:
        case PRECISION:
        case INT:
        case NUMERIC:
        case SIGNTYPE:
        case NCHAR:
        case NVARCHAR2:
        case STRING:
        case UROWID:
        case VARRAY:
        case VARYING:
        case BFILE:
        case BLOB:
        case CLOB:
        case NCLOB:
        case YEAR:
        case LOCAL:
        case ZONE:
        case CHARACTER:
        case AFTER:
        case BEFORE:
        case OLD:
        case PARENT:
        case GENERATED:
        case SCOPE:
        case INITIALLY:
        case DEFERRABLE:
        case DEFERRED:
        case ANALYZE:
        case ASSOCIATE:
        case AUDIT:
        case COMPOUND:
        case DATABASE:
        case CALL:
        case DISASSOCIATE:
        case EACH:
        case FOLLOWS:
        case LOGOFF:
        case LOGON:
        case NESTED:
        case NOAUDIT:
        case SCHEMA:
        case SERVERERROR:
        case SHUTDOWN:
        case STARTUP:
        case STATEMENT:
        case STATISTICS:
        case SUSPEND:
        case TRUNCATE:
        case WRAPPED:
        case LIBRARY:
        case NAME:
        case STRUCT:
        case CONTEXT:
        case PARAMETERS:
        case LENGTH:
        case TDO:
        case MAXLEN:
        case CHARSETID:
        case CHARSETFORM:
        case ACCESSIBLE:
        case ATTACH:
        case CAST:
        case TREAT:
        case LEFT:
        case RIGHT:
        case BOTH:
        case EMPTY:
        case MULTISET:
        case SUBMULTISET:
        case LEADING:
        case TRAILING:
        case CHAR_CS:
        case NCHAR_CS:
        case DBTIMEZONE:
        case SESSIONTIMEZONE:
        case AUTHENTICATED:
        case LINK:
        case SHARED:
        case DIRECTORY:
        case USER:
        case READ:
        case LATERAL:
        case NOCYCLE:
        case CONNECT_BY_ROOT:
        case IDENTIFIER:
        case UNSIGNED_NUMERIC_LITERAL:
        case CHARACTER_LITERAL:
        case QUOTED_LITERAL:
        case JAVA_INTERFACE_CLASS:
        case STRING_LITERAL:
        case 493:
          ;
          break;
        default:
          jj_la1[192] = jj_gen;
          break label_40;
        }
      }
      jj_consume_token(RPAREN);
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTGroupingExpressionList GroupingExpressionList() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) GroupingExpressionList */
  ASTGroupingExpressionList jjtn000 = new ASTGroupingExpressionList(JJTGROUPINGEXPRESSIONLIST);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      ExpressionList();
      label_41:
      while (true) {
        if (jj_2_57(2)) {
          ;
        } else {
          break label_41;
        }
        jj_consume_token(COMMA);
        ExpressionList();
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTWhereClause WhereClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) WhereClause */
  ASTWhereClause jjtn000 = new ASTWhereClause(JJTWHERECLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      if (jj_2_58(3)) {
        jj_consume_token(WHERE);
        jj_consume_token(CURRENT);
        jj_consume_token(OF);
        Expression();
      } else {
        switch (jj_nt.kind) {
        case WHERE:
          jj_consume_token(WHERE);
          Condition();
          break;
        default:
          jj_la1[193] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * @see About SQL Conditions
 */
  final public ASTCondition Condition() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) Condition */
  ASTCondition jjtn000 = new ASTCondition(JJTCONDITION);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      CompoundCondition();
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
     {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
   }
   {if (true) throw (Error)jjte000;}
    } finally {
   if (jjtc000) {
     jjtree.closeNodeScope(jjtn000, true, getToken(0));
   }
    }
    throw new Error("Missing return statement in function");
  }

// Separate production to resolve left recursion Condition -> CompoundCondition -> Condition
  final public void Condition2() throws net.sourceforge.pmd.lang.ast.ParseException {
    if (jj_2_59(2147483647)) {
      RegexpLikeCondition();
    } else if (jj_2_60(2147483647)) {
      ExistsCondition();
    } else if (isKeyword("XMLEXISTS")) {
      XMLExists();
    } else if (jj_2_61(2147483647)) {
      MultisetCondition();
    } else if (jj_2_62(2147483647)) {
      FloatingPointCondition();
    } else if (jj_2_63(2147483647)) {
      InCondition();
    } else if (jj_2_64(2147483647)) {
      LikeCondition();
    } else if (jj_2_65(2147483647)) {
      BetweenCondition();
    } else if (jj_2_66(2147483647)) {
      IsNullCondition();
    } else if (jj_2_67(2147483647)) {
      IsOfTypeCondition();
    } else {
      switch (jj_nt.kind) {
      case LPAREN:
      case PLUSSIGN:
      case MINUSSIGN:
      case STAR:
      case 26:
      case 29:
      case 30:
      case 32:
      case 33:
      case 34:
      case 35:
      case 36:
      case 37:
      case 38:
      case 39:
      case 40:
      case 41:
      case 42:
      case 43:
      case 44:
      case DEFINER:
      case CURRENT_USER:
      case SERIALLY_REUSABLE:
      case RESTRICT_REFERENCES:
      case EXCEPTION_INIT:
      case AUTONOMOUS_TRANSACTION:
      case LANGUAGE:
      case INLINE:
      case ALTER:
      case AND:
      case ANY:
      case ASC:
      case AT:
      case CASE:
      case CHECK:
      case CLUSTER:
      case COMPRESS:
      case CREATE:
      case DESC:
      case DROP:
      case EXCLUSIVE:
      case FETCH:
      case GOTO:
      case HAVING:
      case INDEX:
      case INSERT:
      case INTERSECT:
      case IS:
      case LIKE:
      case LOCK:
      case MINUS:
      case MODE:
      case NOT:
      case NULL:
      case OPTION:
      case OR:
      case SHARE:
      case SQL:
      case SUBTYPE:
      case THEN:
      case TO:
      case TYPE:
      case UPDATE:
      case WITH:
      case ADD:
      case AGGREGATE:
      case APPLY:
      case ARRAY:
      case ATTRIBUTE:
      case AUTHID:
      case BINARY_INTEGER:
      case BODY:
      case BOOLEAN:
      case BULK:
      case BYTE:
      case CASCADE:
      case CHAR:
      case CHAR_BASE:
      case CLOSE:
      case COALESCE:
      case COLLECT:
      case COLUMN:
      case COMMIT:
      case CONSTANT:
      case CONSTRAINT:
      case CONSTRUCTOR:
      case CONTINUE:
      case CONVERT:
      case CROSS:
      case CUBE:
      case CURRENT:
      case CURRVAL:
      case DATA:
      case DATE:
      case DAY:
      case DECIMAL:
      case DEFINITION:
      case DELETE:
      case DISABLE:
      case DO:
      case DUPLICATED:
      case EDITIONABLE:
      case ELEMENT:
      case ELSIF:
      case ENABLE:
      case ESCAPE:
      case EXCEPT:
      case EXCEPTIONS:
      case EXECUTE:
      case EXIT:
      case EXTERNAL:
      case EXTENDED:
      case EXTENDS:
      case EXTRACT:
      case FALSE:
      case FINAL:
      case FLOAT:
      case FORALL:
      case FOREIGN:
      case FORCE:
      case FULL:
      case GLOBAL:
      case GROUPING:
      case HASH:
      case HEAP:
      case HOUR:
      case IMMEDIATE:
      case INNER:
      case INDICES:
      case INCLUDING:
      case INDEXTYPE:
      case INDICATOR:
      case INFINITE:
      case INSTANTIABLE:
      case INTEGER:
      case INTERFACE:
      case INTERVAL:
      case INVALIDATE:
      case ISOLATION:
      case JAVA:
      case JOIN:
      case KEY:
      case LEVEL:
      case LIKEC:
      case LIKE2:
      case LIKE4:
      case LIMIT:
      case LIMITED:
      case LONG:
      case LOOP:
      case MAP:
      case MEMBER:
      case MERGE:
      case METADATA:
      case MINUTE:
      case MLSLABEL:
      case MODIFY:
      case MOD:
      case MONTH:
      case NAN:
      case NATURAL:
      case NATURALN:
      case NEW:
      case NEW_DOT:
      case NEXT:
      case NEXTVAL:
      case NO:
      case NOCOPY:
      case NONE:
      case NONEDITIONABLE:
      case NULLIF:
      case NULLS:
      case NUMBER:
      case BFILE_BASE:
      case BLOB_BASE:
      case CLOB_BASE:
      case DATE_BASE:
      case NUMBER_BASE:
      case OBJECT:
      case OCIROWID:
      case OFFSET:
      case OID:
      case ONLY:
      case OPAQUE:
      case OPEN:
      case OPERATOR:
      case ORGANIZATION:
      case OTHERS:
      case OUT:
      case OUTER:
      case OVERRIDING:
      case PACKAGE:
      case PARTITION:
      case PCTFREE:
      case PERCENT:
      case PLS_INTEGER:
      case POSITIVE:
      case POSITIVEN:
      case PRESERVE:
      case PRIOR:
      case PRIMARY:
      case PRIVATE:
      case RAISE:
      case RANGE:
      case RAW:
      case REAL:
      case RECORD:
      case REFERENCES:
      case REGEXP_LIKE:
      case RELEASE:
      case RELIES_ON:
      case RENAME:
      case RESULT:
      case RETURN:
      case RETURNING:
      case REVERSE:
      case ROLLBACK:
      case ROLLUP:
      case ROW:
      case ROWS:
      case ROWID:
      case ROWNUM:
      case ROWTYPE:
      case SAVE:
      case SAVEPOINT:
      case SECOND:
      case SELF:
      case SEPARATE:
      case SETS:
      case SIBLINGS:
      case SHARDED:
      case SHARING:
      case SMALLINT:
      case SOME:
      case SPACE:
      case SQLCODE:
      case SQLERRM:
      case STATIC:
      case SUBSTITUTABLE:
      case SUCCESSFUL:
      case SYNONYM:
      case SYS_REFCURSOR:
      case TEMPORARY:
      case TIES:
      case TIME:
      case TIMESTAMP:
      case TIMEZONE_REGION:
      case TIMEZONE_ABBR:
      case TIMEZONE_MINUTE:
      case TIMEZONE_HOUR:
      case TRANSACTION:
      case TRIGGER:
      case TRUE:
      case UI:
      case UNDER:
      case USING:
      case WHILE:
      case YES:
      case A:
      case VARCHAR:
      case VARCHAR2:
      case DOUBLE:
      case DEC:
      case PRECISION:
      case INT:
      case NUMERIC:
      case SIGNTYPE:
      case NCHAR:
      case NVARCHAR2:
      case STRING:
      case UROWID:
      case VARRAY:
      case VARYING:
      case BFILE:
      case BLOB:
      case CLOB:
      case NCLOB:
      case YEAR:
      case LOCAL:
      case ZONE:
      case CHARACTER:
      case AFTER:
      case BEFORE:
      case OLD:
      case PARENT:
      case GENERATED:
      case SCOPE:
      case INITIALLY:
      case DEFERRABLE:
      case DEFERRED:
      case ANALYZE:
      case ASSOCIATE:
      case AUDIT:
      case COMPOUND:
      case DATABASE:
      case CALL:
      case DISASSOCIATE:
      case EACH:
      case FOLLOWS:
      case LOGOFF:
      case LOGON:
      case NESTED:
      case NOAUDIT:
      case SCHEMA:
      case SERVERERROR:
      case SHUTDOWN:
      case STARTUP:
      case STATEMENT:
      case STATISTICS:
      case SUSPEND:
      case TRUNCATE:
      case WRAPPED:
      case LIBRARY:
      case NAME:
      case STRUCT:
      case CONTEXT:
      case PARAMETERS:
      case LENGTH:
      case TDO:
      case MAXLEN:
      case CHARSETID:
      case CHARSETFORM:
      case ACCESSIBLE:
      case ATTACH:
      case CAST:
      case TREAT:
      case LEFT:
      case RIGHT:
      case BOTH:
      case EMPTY:
      case MULTISET:
      case SUBMULTISET:
      case LEADING:
      case TRAILING:
      case CHAR_CS:
      case NCHAR_CS:
      case DBTIMEZONE:
      case SESSIONTIMEZONE:
      case AUTHENTICATED:
      case LINK:
      case SHARED:
      case DIRECTORY:
      case USER:
      case READ:
      case LATERAL:
      case NOCYCLE:
      case CONNECT_BY_ROOT:
      case IDENTIFIER:
      case UNSIGNED_NUMERIC_LITERAL:
      case CHARACTER_LITERAL:
      case QUOTED_LITERAL:
      case JAVA_INTERFACE_CLASS:
      case STRING_LITERAL:
      case 493:
        ComparisonCondition();
        break;
      default:
        jj_la1[194] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
    }
  }

  final public ASTFloatingPointCondition FloatingPointCondition() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) FloatingPointCondition */
  ASTFloatingPointCondition jjtn000 = new ASTFloatingPointCondition(JJTFLOATINGPOINTCONDITION);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      SqlExpression();
      jj_consume_token(IS);
      switch (jj_nt.kind) {
      case NOT:
        jj_consume_token(NOT);
        break;
      default:
        jj_la1[195] = jj_gen;
        ;
      }
      switch (jj_nt.kind) {
      case NAN:
        jj_consume_token(NAN);
        break;
      case INFINITE:
        jj_consume_token(INFINITE);
        break;
      default:
        jj_la1[196] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTBetweenCondition BetweenCondition() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) BetweenCondition */
  ASTBetweenCondition jjtn000 = new ASTBetweenCondition(JJTBETWEENCONDITION);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      SqlExpression();
      switch (jj_nt.kind) {
      case NOT:
        jj_consume_token(NOT);
        break;
      default:
        jj_la1[197] = jj_gen;
        ;
      }
      jj_consume_token(BETWEEN);
      SqlExpression();
      jj_consume_token(AND);
      SqlExpression();
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTLikeCondition LikeCondition() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) LikeCondition */
  ASTLikeCondition jjtn000 = new ASTLikeCondition(JJTLIKECONDITION);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      SqlExpression();
      switch (jj_nt.kind) {
      case NOT:
        jj_consume_token(NOT);
        break;
      default:
        jj_la1[198] = jj_gen;
        ;
      }
      switch (jj_nt.kind) {
      case LIKE:
        jj_consume_token(LIKE);
        break;
      case LIKEC:
        jj_consume_token(LIKEC);
        break;
      case LIKE2:
        jj_consume_token(LIKE2);
        break;
      case LIKE4:
        jj_consume_token(LIKE4);
        break;
      default:
        jj_la1[199] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      SqlExpression();
      switch (jj_nt.kind) {
      case ESCAPE:
        jj_consume_token(ESCAPE);
        SqlExpression();
        break;
      default:
        jj_la1[200] = jj_gen;
        ;
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTRegexpLikeCondition RegexpLikeCondition() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) RegexpLikeCondition */
    ASTRegexpLikeCondition jjtn000 = new ASTRegexpLikeCondition(JJTREGEXPLIKECONDITION);
    boolean jjtc000 = true;
    jjtree.openNodeScope(jjtn000, getToken(1));net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken matchParam = null;
    try {
      jj_consume_token(REGEXP_LIKE);
      jj_consume_token(LPAREN);
      SqlExpression();
      jj_consume_token(COMMA);
      SqlExpression();
      switch (jj_nt.kind) {
      case COMMA:
        jj_consume_token(COMMA);
        switch (jj_nt.kind) {
        case CHARACTER_LITERAL:
          matchParam = jj_consume_token(CHARACTER_LITERAL);
          break;
        case STRING_LITERAL:
          matchParam = jj_consume_token(STRING_LITERAL);
          break;
        default:
          jj_la1[201] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
                                                                                    jjtn000.setMatchParam(matchParam.getImage());
        break;
      default:
        jj_la1[202] = jj_gen;
        ;
      }
      jj_consume_token(RPAREN);
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTExistsCondition ExistsCondition() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) ExistsCondition */
  ASTExistsCondition jjtn000 = new ASTExistsCondition(JJTEXISTSCONDITION);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      jj_consume_token(EXISTS);
      jj_consume_token(LPAREN);
      Subquery();
      jj_consume_token(RPAREN);
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public void MultisetCondition() throws net.sourceforge.pmd.lang.ast.ParseException {
    if (jj_2_68(4)) {
      IsASetCondition();
    } else if (jj_2_69(4)) {
      IsEmptyCondition();
    } else if (jj_2_70(4)) {
      MemberCondition();
    } else if (jj_2_71(4)) {
      SubmultisetCondition();
    } else {
      jj_consume_token(-1);
      throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
    }
  }

  final public ASTIsASetCondition IsASetCondition() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) IsASetCondition */
  ASTIsASetCondition jjtn000 = new ASTIsASetCondition(JJTISASETCONDITION);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      TableName();
      jj_consume_token(IS);
      switch (jj_nt.kind) {
      case NOT:
        jj_consume_token(NOT);
        break;
      default:
        jj_la1[203] = jj_gen;
        ;
      }
      jj_consume_token(A);
      jj_consume_token(SET);
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTIsEmptyCondition IsEmptyCondition() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) IsEmptyCondition */
  ASTIsEmptyCondition jjtn000 = new ASTIsEmptyCondition(JJTISEMPTYCONDITION);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      TableName();
      jj_consume_token(IS);
      switch (jj_nt.kind) {
      case NOT:
        jj_consume_token(NOT);
        break;
      default:
        jj_la1[204] = jj_gen;
        ;
      }
      jj_consume_token(EMPTY);
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTMemberCondition MemberCondition() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) MemberCondition */
  ASTMemberCondition jjtn000 = new ASTMemberCondition(JJTMEMBERCONDITION);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      SqlExpression();
      switch (jj_nt.kind) {
      case NOT:
        jj_consume_token(NOT);
        break;
      default:
        jj_la1[205] = jj_gen;
        ;
      }
      jj_consume_token(MEMBER);
      switch (jj_nt.kind) {
      case OF:
        jj_consume_token(OF);
        break;
      default:
        jj_la1[206] = jj_gen;
        ;
      }
      TableName();
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTSubmultisetCondition SubmultisetCondition() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) SubmultisetCondition */
  ASTSubmultisetCondition jjtn000 = new ASTSubmultisetCondition(JJTSUBMULTISETCONDITION);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      TableName();
      switch (jj_nt.kind) {
      case NOT:
        jj_consume_token(NOT);
        break;
      default:
        jj_la1[207] = jj_gen;
        ;
      }
      jj_consume_token(SUBMULTISET);
      switch (jj_nt.kind) {
      case OF:
        jj_consume_token(OF);
        break;
      default:
        jj_la1[208] = jj_gen;
        ;
      }
      TableName();
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTCompoundCondition CompoundCondition() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) CompoundCondition */
  ASTCompoundCondition jjtn000 = new ASTCompoundCondition(JJTCOMPOUNDCONDITION);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      switch (jj_nt.kind) {
      case NOT:
        jj_consume_token(NOT);
                        jjtn000.setType(token.getImage());
        Condition();
        break;
      default:
        jj_la1[212] = jj_gen;
        if (jj_2_75(2147483647)) {
          Condition2();
          label_42:
          while (true) {
            if (jj_2_72(2)) {
              ;
            } else {
              break label_42;
            }
            switch (jj_nt.kind) {
            case AND:
              jj_consume_token(AND);
              break;
            case OR:
              jj_consume_token(OR);
              break;
            default:
              jj_la1[209] = jj_gen;
              jj_consume_token(-1);
              throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
            }
                                                                                    jjtn000.setType(token.getImage());
            Condition();
          }
        } else {
          switch (jj_nt.kind) {
          case LPAREN:
            jj_consume_token(LPAREN);
            Condition();
            jj_consume_token(RPAREN);
            label_43:
            while (true) {
              if (jj_2_73(2)) {
                ;
              } else {
                break label_43;
              }
              switch (jj_nt.kind) {
              case AND:
                jj_consume_token(AND);
                break;
              case OR:
                jj_consume_token(OR);
                break;
              default:
                jj_la1[210] = jj_gen;
                jj_consume_token(-1);
                throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
              }
                                                                     jjtn000.setType(token.getImage());
              Condition();
            }
            break;
          default:
            jj_la1[213] = jj_gen;
            if (jj_2_76(1)) {
              Condition2();
              label_44:
              while (true) {
                if (jj_2_74(2)) {
                  ;
                } else {
                  break label_44;
                }
                switch (jj_nt.kind) {
                case AND:
                  jj_consume_token(AND);
                  break;
                case OR:
                  jj_consume_token(OR);
                  break;
                default:
                  jj_la1[211] = jj_gen;
                  jj_consume_token(-1);
                  throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
                }
                                                  jjtn000.setType(token.getImage());
                Condition();
              }
            } else {
              jj_consume_token(-1);
              throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
            }
          }
        }
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
     {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
   }
   {if (true) throw (Error)jjte000;}
    } finally {
   if (jjtc000) {
     jjtree.closeNodeScope(jjtn000, true, getToken(0));
   }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTInCondition InCondition() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) InCondition */
  ASTInCondition jjtn000 = new ASTInCondition(JJTINCONDITION);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      SqlExpression();
      switch (jj_nt.kind) {
      case NOT:
        jj_consume_token(NOT);
        break;
      default:
        jj_la1[214] = jj_gen;
        ;
      }
      jj_consume_token(IN);
      jj_consume_token(LPAREN);
      if (jj_2_77(3)) {
        Subquery();
      } else if (jj_2_78(3)) {
        ExpressionListSingle();
      } else {
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      jj_consume_token(RPAREN);
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final private String ComparisonOp() throws net.sourceforge.pmd.lang.ast.ParseException {
    switch (jj_nt.kind) {
    case ASSIGN:
      jj_consume_token(ASSIGN);
           {if (true) return "=";}
      break;
    case BANG:
      jj_consume_token(BANG);
      jj_consume_token(ASSIGN);
               {if (true) return "!=";}
      break;
    case XOR:
      jj_consume_token(XOR);
      jj_consume_token(ASSIGN);
               {if (true) return "^=";}
      break;
    case LT:
      jj_consume_token(LT);
      switch (jj_nt.kind) {
      case ASSIGN:
      case 31:
        switch (jj_nt.kind) {
        case ASSIGN:
          jj_consume_token(ASSIGN);
                 {if (true) return "<=";}
          break;
        case 31:
          jj_consume_token(31);
                                      {if (true) return "<>";}
          break;
        default:
          jj_la1[215] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        break;
      default:
        jj_la1[216] = jj_gen;
        ;
      }
                                                        {if (true) return "<";}
      break;
    case 31:
      jj_consume_token(31);
      switch (jj_nt.kind) {
      case ASSIGN:
        jj_consume_token(ASSIGN);
                 {if (true) return ">=";}
        break;
      default:
        jj_la1[217] = jj_gen;
        ;
      }
                                   {if (true) return ">";}
      break;
    default:
      jj_la1[218] = jj_gen;
      jj_consume_token(-1);
      throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTComparisonCondition ComparisonCondition() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) ComparisonCondition */
 ASTComparisonCondition jjtn000 = new ASTComparisonCondition(JJTCOMPARISONCONDITION);
 boolean jjtc000 = true;
 jjtree.openNodeScope(jjtn000, getToken(1));String op;
    try {
      if (jj_2_79(3)) {
        SqlExpression();
      } else {
        switch (jj_nt.kind) {
        case LPAREN:
          ExpressionListMultiple();
          break;
        default:
          jj_la1[219] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
      }
      op = ComparisonOp();
                        jjtn000.setOperator(op);
      switch (jj_nt.kind) {
      case ALL:
      case ANY:
      case SOME:
        switch (jj_nt.kind) {
        case ANY:
          jj_consume_token(ANY);
          break;
        case SOME:
          jj_consume_token(SOME);
          break;
        case ALL:
          jj_consume_token(ALL);
          break;
        default:
          jj_la1[220] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        break;
      default:
        jj_la1[221] = jj_gen;
        ;
      }
      if (jj_2_80(3)) {
        jj_consume_token(LPAREN);
        Subquery();
        jj_consume_token(RPAREN);
      } else if (jj_2_81(3)) {
        jj_consume_token(LPAREN);
        ExpressionListSingle();
        jj_consume_token(RPAREN);
      } else if (jj_2_82(3)) {
        jj_consume_token(LPAREN);
        ExpressionListMultiple();
        label_45:
        while (true) {
          switch (jj_nt.kind) {
          case COMMA:
            ;
            break;
          default:
            jj_la1[222] = jj_gen;
            break label_45;
          }
          jj_consume_token(COMMA);
          ExpressionListMultiple();
        }
        jj_consume_token(RPAREN);
      } else if (jj_2_83(3)) {
        SqlExpression();
      } else {
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTExpressionListSingle ExpressionListSingle() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) ExpressionListSingle */
  ASTExpressionListSingle jjtn000 = new ASTExpressionListSingle(JJTEXPRESSIONLISTSINGLE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      SqlExpression();
      label_46:
      while (true) {
        if (jj_2_84(2)) {
          ;
        } else {
          break label_46;
        }
        jj_consume_token(COMMA);
        SqlExpression();
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTExpressionListMultiple ExpressionListMultiple() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) ExpressionListMultiple */
  ASTExpressionListMultiple jjtn000 = new ASTExpressionListMultiple(JJTEXPRESSIONLISTMULTIPLE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      jj_consume_token(LPAREN);
      switch (jj_nt.kind) {
      case LPAREN:
      case PLUSSIGN:
      case MINUSSIGN:
      case STAR:
      case 26:
      case 29:
      case 30:
      case 32:
      case 33:
      case 34:
      case 35:
      case 36:
      case 37:
      case 38:
      case 39:
      case 40:
      case 41:
      case 42:
      case 43:
      case 44:
      case DEFINER:
      case CURRENT_USER:
      case SERIALLY_REUSABLE:
      case RESTRICT_REFERENCES:
      case EXCEPTION_INIT:
      case AUTONOMOUS_TRANSACTION:
      case LANGUAGE:
      case INLINE:
      case ALTER:
      case AND:
      case ANY:
      case ASC:
      case AT:
      case CASE:
      case CHECK:
      case CLUSTER:
      case COMPRESS:
      case CREATE:
      case DESC:
      case DROP:
      case EXCLUSIVE:
      case FETCH:
      case GOTO:
      case HAVING:
      case INDEX:
      case INSERT:
      case INTERSECT:
      case IS:
      case LIKE:
      case LOCK:
      case MINUS:
      case MODE:
      case NOT:
      case NULL:
      case OPTION:
      case OR:
      case SHARE:
      case SQL:
      case SUBTYPE:
      case THEN:
      case TO:
      case TYPE:
      case UPDATE:
      case WITH:
      case ADD:
      case AGGREGATE:
      case APPLY:
      case ARRAY:
      case ATTRIBUTE:
      case AUTHID:
      case BINARY_INTEGER:
      case BODY:
      case BOOLEAN:
      case BULK:
      case BYTE:
      case CASCADE:
      case CHAR:
      case CHAR_BASE:
      case CLOSE:
      case COALESCE:
      case COLLECT:
      case COLUMN:
      case COMMIT:
      case CONSTANT:
      case CONSTRAINT:
      case CONSTRUCTOR:
      case CONTINUE:
      case CONVERT:
      case CROSS:
      case CUBE:
      case CURRENT:
      case CURRVAL:
      case DATA:
      case DATE:
      case DAY:
      case DECIMAL:
      case DEFINITION:
      case DELETE:
      case DISABLE:
      case DO:
      case DUPLICATED:
      case EDITIONABLE:
      case ELEMENT:
      case ELSIF:
      case ENABLE:
      case ESCAPE:
      case EXCEPT:
      case EXCEPTIONS:
      case EXECUTE:
      case EXIT:
      case EXTERNAL:
      case EXTENDED:
      case EXTENDS:
      case EXTRACT:
      case FALSE:
      case FINAL:
      case FLOAT:
      case FORALL:
      case FOREIGN:
      case FORCE:
      case FULL:
      case GLOBAL:
      case GROUPING:
      case HASH:
      case HEAP:
      case HOUR:
      case IMMEDIATE:
      case INNER:
      case INDICES:
      case INCLUDING:
      case INDEXTYPE:
      case INDICATOR:
      case INFINITE:
      case INSTANTIABLE:
      case INTEGER:
      case INTERFACE:
      case INTERVAL:
      case INVALIDATE:
      case ISOLATION:
      case JAVA:
      case JOIN:
      case KEY:
      case LEVEL:
      case LIKEC:
      case LIKE2:
      case LIKE4:
      case LIMIT:
      case LIMITED:
      case LONG:
      case LOOP:
      case MAP:
      case MEMBER:
      case MERGE:
      case METADATA:
      case MINUTE:
      case MLSLABEL:
      case MODIFY:
      case MOD:
      case MONTH:
      case NAN:
      case NATURAL:
      case NATURALN:
      case NEW:
      case NEW_DOT:
      case NEXT:
      case NEXTVAL:
      case NO:
      case NOCOPY:
      case NONE:
      case NONEDITIONABLE:
      case NULLIF:
      case NULLS:
      case NUMBER:
      case BFILE_BASE:
      case BLOB_BASE:
      case CLOB_BASE:
      case DATE_BASE:
      case NUMBER_BASE:
      case OBJECT:
      case OCIROWID:
      case OFFSET:
      case OID:
      case ONLY:
      case OPAQUE:
      case OPEN:
      case OPERATOR:
      case ORGANIZATION:
      case OTHERS:
      case OUT:
      case OUTER:
      case OVERRIDING:
      case PACKAGE:
      case PARTITION:
      case PCTFREE:
      case PERCENT:
      case PLS_INTEGER:
      case POSITIVE:
      case POSITIVEN:
      case PRESERVE:
      case PRIOR:
      case PRIMARY:
      case PRIVATE:
      case RAISE:
      case RANGE:
      case RAW:
      case REAL:
      case RECORD:
      case REFERENCES:
      case REGEXP_LIKE:
      case RELEASE:
      case RELIES_ON:
      case RENAME:
      case RESULT:
      case RETURN:
      case RETURNING:
      case REVERSE:
      case ROLLBACK:
      case ROLLUP:
      case ROW:
      case ROWS:
      case ROWID:
      case ROWNUM:
      case ROWTYPE:
      case SAVE:
      case SAVEPOINT:
      case SECOND:
      case SELF:
      case SEPARATE:
      case SETS:
      case SIBLINGS:
      case SHARDED:
      case SHARING:
      case SMALLINT:
      case SOME:
      case SPACE:
      case SQLCODE:
      case SQLERRM:
      case STATIC:
      case SUBSTITUTABLE:
      case SUCCESSFUL:
      case SYNONYM:
      case SYS_REFCURSOR:
      case TEMPORARY:
      case TIES:
      case TIME:
      case TIMESTAMP:
      case TIMEZONE_REGION:
      case TIMEZONE_ABBR:
      case TIMEZONE_MINUTE:
      case TIMEZONE_HOUR:
      case TRANSACTION:
      case TRIGGER:
      case TRUE:
      case UI:
      case UNDER:
      case USING:
      case WHILE:
      case YES:
      case A:
      case VARCHAR:
      case VARCHAR2:
      case DOUBLE:
      case DEC:
      case PRECISION:
      case INT:
      case NUMERIC:
      case SIGNTYPE:
      case NCHAR:
      case NVARCHAR2:
      case STRING:
      case UROWID:
      case VARRAY:
      case VARYING:
      case BFILE:
      case BLOB:
      case CLOB:
      case NCLOB:
      case YEAR:
      case LOCAL:
      case ZONE:
      case CHARACTER:
      case AFTER:
      case BEFORE:
      case OLD:
      case PARENT:
      case GENERATED:
      case SCOPE:
      case INITIALLY:
      case DEFERRABLE:
      case DEFERRED:
      case ANALYZE:
      case ASSOCIATE:
      case AUDIT:
      case COMPOUND:
      case DATABASE:
      case CALL:
      case DISASSOCIATE:
      case EACH:
      case FOLLOWS:
      case LOGOFF:
      case LOGON:
      case NESTED:
      case NOAUDIT:
      case SCHEMA:
      case SERVERERROR:
      case SHUTDOWN:
      case STARTUP:
      case STATEMENT:
      case STATISTICS:
      case SUSPEND:
      case TRUNCATE:
      case WRAPPED:
      case LIBRARY:
      case NAME:
      case STRUCT:
      case CONTEXT:
      case PARAMETERS:
      case LENGTH:
      case TDO:
      case MAXLEN:
      case CHARSETID:
      case CHARSETFORM:
      case ACCESSIBLE:
      case ATTACH:
      case CAST:
      case TREAT:
      case LEFT:
      case RIGHT:
      case BOTH:
      case EMPTY:
      case MULTISET:
      case SUBMULTISET:
      case LEADING:
      case TRAILING:
      case CHAR_CS:
      case NCHAR_CS:
      case DBTIMEZONE:
      case SESSIONTIMEZONE:
      case AUTHENTICATED:
      case LINK:
      case SHARED:
      case DIRECTORY:
      case USER:
      case READ:
      case LATERAL:
      case NOCYCLE:
      case CONNECT_BY_ROOT:
      case IDENTIFIER:
      case UNSIGNED_NUMERIC_LITERAL:
      case CHARACTER_LITERAL:
      case QUOTED_LITERAL:
      case JAVA_INTERFACE_CLASS:
      case STRING_LITERAL:
      case 493:
        SqlExpression();
        label_47:
        while (true) {
          switch (jj_nt.kind) {
          case COMMA:
            ;
            break;
          default:
            jj_la1[223] = jj_gen;
            break label_47;
          }
          jj_consume_token(COMMA);
          SqlExpression();
        }
        break;
      default:
        jj_la1[224] = jj_gen;
        ;
      }
      jj_consume_token(RPAREN);
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTExpressionList ExpressionList() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) ExpressionList */
  ASTExpressionList jjtn000 = new ASTExpressionList(JJTEXPRESSIONLIST);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      if (jj_2_85(3)) {
        ExpressionListSingle();
      } else if (jj_2_86(3)) {
        ExpressionListMultiple();
      } else {
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * @see About SQL Expressions
 */
  final public ASTSqlExpression SqlExpression() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) SqlExpression */
  ASTSqlExpression jjtn000 = new ASTSqlExpression(JJTSQLEXPRESSION);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null;
    try {
      simpleNode = AdditiveExpression();
                                            jjtn000.setImage(simpleNode.getImage());
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
     {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
   }
   {if (true) throw (Error)jjte000;}
    } finally {
   if (jjtc000) {
     jjtree.closeNodeScope(jjtn000, true, getToken(0));
   }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/Simple-Expressions.html
 */
  final public ASTSimpleExpression SimpleExpression() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) SimpleExpression */
  ASTSimpleExpression jjtn000 = new ASTSimpleExpression(JJTSIMPLEEXPRESSION);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));StringBuilder sb = new StringBuilder();
    try {
      if (jj_2_87(2)) {
        jj_consume_token(ROWNUM);
                            sb.append(token.getImage());
      } else {
        switch (jj_nt.kind) {
        case STRING_LITERAL:
          StringLiteral();
                      sb.append(token.getImage());
          break;
        case UNSIGNED_NUMERIC_LITERAL:
          NumericLiteral();
                       sb.append(token.getImage());
          break;
        default:
          jj_la1[229] = jj_gen;
          if (jj_2_88(2)) {
            NullLiteral();
                                 sb.append(token.getImage());
          } else if (jj_2_89(4)) {
            ID();
            jj_consume_token(DOT);
            switch (jj_nt.kind) {
            case CURRVAL:
              jj_consume_token(CURRVAL);
              break;
            case NEXTVAL:
              jj_consume_token(NEXTVAL);
              break;
            default:
              jj_la1[225] = jj_gen;
              jj_consume_token(-1);
              throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
            }
          } else if (jj_2_90(6)) {
            SchemaName();
                       sb.append(token.getText());
            jj_consume_token(DOT);
                                                           sb.append(token.getImage());
            TableName();
                      sb.append(token.getText());
            jj_consume_token(DOT);
                                                          sb.append(token.getImage());
            switch (jj_nt.kind) {
            case STAR:
              jj_consume_token(STAR);
              break;
            case 26:
            case 29:
            case 30:
            case 32:
            case 33:
            case 34:
            case 35:
            case 36:
            case 37:
            case 38:
            case 39:
            case 40:
            case 41:
            case 42:
            case 43:
            case 44:
            case DEFINER:
            case CURRENT_USER:
            case SERIALLY_REUSABLE:
            case RESTRICT_REFERENCES:
            case EXCEPTION_INIT:
            case AUTONOMOUS_TRANSACTION:
            case LANGUAGE:
            case INLINE:
            case ALTER:
            case AND:
            case ANY:
            case ASC:
            case AT:
            case CHECK:
            case CLUSTER:
            case COMPRESS:
            case CREATE:
            case DESC:
            case DROP:
            case EXCLUSIVE:
            case FETCH:
            case GOTO:
            case HAVING:
            case INDEX:
            case INSERT:
            case INTERSECT:
            case IS:
            case LIKE:
            case LOCK:
            case MINUS:
            case MODE:
            case NOT:
            case NULL:
            case OPTION:
            case OR:
            case SHARE:
            case SUBTYPE:
            case THEN:
            case TO:
            case TYPE:
            case UPDATE:
            case ADD:
            case AGGREGATE:
            case APPLY:
            case ARRAY:
            case ATTRIBUTE:
            case AUTHID:
            case BINARY_INTEGER:
            case BODY:
            case BOOLEAN:
            case BULK:
            case BYTE:
            case CASCADE:
            case CHAR:
            case CHAR_BASE:
            case CLOSE:
            case COALESCE:
            case COLLECT:
            case COLUMN:
            case COMMIT:
            case CONSTANT:
            case CONSTRAINT:
            case CONSTRUCTOR:
            case CONTINUE:
            case CONVERT:
            case CROSS:
            case CUBE:
            case CURRENT:
            case CURRVAL:
            case DATA:
            case DATE:
            case DAY:
            case DECIMAL:
            case DEFINITION:
            case DELETE:
            case DISABLE:
            case DO:
            case DUPLICATED:
            case EDITIONABLE:
            case ELEMENT:
            case ELSIF:
            case ENABLE:
            case ESCAPE:
            case EXCEPT:
            case EXCEPTIONS:
            case EXECUTE:
            case EXIT:
            case EXTERNAL:
            case EXTENDED:
            case EXTENDS:
            case EXTRACT:
            case FALSE:
            case FINAL:
            case FLOAT:
            case FORALL:
            case FOREIGN:
            case FORCE:
            case FULL:
            case GLOBAL:
            case GROUPING:
            case HASH:
            case HEAP:
            case HOUR:
            case IMMEDIATE:
            case INNER:
            case INDICES:
            case INCLUDING:
            case INDEXTYPE:
            case INDICATOR:
            case INFINITE:
            case INSTANTIABLE:
            case INTEGER:
            case INTERFACE:
            case INTERVAL:
            case INVALIDATE:
            case ISOLATION:
            case JAVA:
            case JOIN:
            case KEY:
            case LEVEL:
            case LIKEC:
            case LIKE2:
            case LIKE4:
            case LIMIT:
            case LIMITED:
            case LONG:
            case LOOP:
            case MAP:
            case MEMBER:
            case MERGE:
            case METADATA:
            case MINUTE:
            case MLSLABEL:
            case MODIFY:
            case MOD:
            case MONTH:
            case NAN:
            case NATURAL:
            case NATURALN:
            case NEW:
            case NEXT:
            case NEXTVAL:
            case NO:
            case NOCOPY:
            case NONE:
            case NONEDITIONABLE:
            case NULLIF:
            case NULLS:
            case NUMBER:
            case BFILE_BASE:
            case BLOB_BASE:
            case CLOB_BASE:
            case DATE_BASE:
            case NUMBER_BASE:
            case OBJECT:
            case OCIROWID:
            case OFFSET:
            case OID:
            case ONLY:
            case OPAQUE:
            case OPEN:
            case OPERATOR:
            case ORGANIZATION:
            case OTHERS:
            case OUT:
            case OUTER:
            case OVERRIDING:
            case PACKAGE:
            case PARTITION:
            case PCTFREE:
            case PERCENT:
            case PLS_INTEGER:
            case POSITIVE:
            case POSITIVEN:
            case PRESERVE:
            case PRIOR:
            case PRIMARY:
            case PRIVATE:
            case RAISE:
            case RANGE:
            case RAW:
            case REAL:
            case RECORD:
            case REFERENCES:
            case REGEXP_LIKE:
            case RELEASE:
            case RELIES_ON:
            case RENAME:
            case RESULT:
            case RETURN:
            case RETURNING:
            case REVERSE:
            case ROLLBACK:
            case ROLLUP:
            case ROW:
            case ROWS:
            case ROWID:
            case ROWNUM:
            case ROWTYPE:
            case SAVE:
            case SAVEPOINT:
            case SECOND:
            case SELF:
            case SEPARATE:
            case SETS:
            case SIBLINGS:
            case SHARDED:
            case SHARING:
            case SMALLINT:
            case SOME:
            case SPACE:
            case SQLCODE:
            case SQLERRM:
            case STATIC:
            case SUBSTITUTABLE:
            case SUCCESSFUL:
            case SYNONYM:
            case SYS_REFCURSOR:
            case TEMPORARY:
            case TIES:
            case TIME:
            case TIMESTAMP:
            case TIMEZONE_REGION:
            case TIMEZONE_ABBR:
            case TIMEZONE_MINUTE:
            case TIMEZONE_HOUR:
            case TRANSACTION:
            case TRIGGER:
            case TRUE:
            case UI:
            case UNDER:
            case USING:
            case WHILE:
            case YES:
            case A:
            case VARCHAR:
            case VARCHAR2:
            case DOUBLE:
            case DEC:
            case PRECISION:
            case INT:
            case NUMERIC:
            case SIGNTYPE:
            case NCHAR:
            case NVARCHAR2:
            case STRING:
            case UROWID:
            case VARRAY:
            case VARYING:
            case BFILE:
            case BLOB:
            case CLOB:
            case NCLOB:
            case YEAR:
            case LOCAL:
            case ZONE:
            case CHARACTER:
            case AFTER:
            case BEFORE:
            case OLD:
            case PARENT:
            case GENERATED:
            case SCOPE:
            case INITIALLY:
            case DEFERRABLE:
            case DEFERRED:
            case ANALYZE:
            case ASSOCIATE:
            case AUDIT:
            case COMPOUND:
            case DATABASE:
            case CALL:
            case DISASSOCIATE:
            case EACH:
            case FOLLOWS:
            case LOGOFF:
            case LOGON:
            case NESTED:
            case NOAUDIT:
            case SCHEMA:
            case SERVERERROR:
            case SHUTDOWN:
            case STARTUP:
            case STATEMENT:
            case STATISTICS:
            case SUSPEND:
            case TRUNCATE:
            case WRAPPED:
            case LIBRARY:
            case NAME:
            case STRUCT:
            case CONTEXT:
            case PARAMETERS:
            case LENGTH:
            case TDO:
            case MAXLEN:
            case CHARSETID:
            case CHARSETFORM:
            case ACCESSIBLE:
            case ATTACH:
            case CAST:
            case TREAT:
            case LEFT:
            case RIGHT:
            case BOTH:
            case EMPTY:
            case MULTISET:
            case SUBMULTISET:
            case LEADING:
            case TRAILING:
            case CHAR_CS:
            case NCHAR_CS:
            case DBTIMEZONE:
            case SESSIONTIMEZONE:
            case AUTHENTICATED:
            case LINK:
            case SHARED:
            case DIRECTORY:
            case USER:
            case READ:
            case LATERAL:
            case NOCYCLE:
            case CONNECT_BY_ROOT:
            case IDENTIFIER:
            case QUOTED_LITERAL:
            case JAVA_INTERFACE_CLASS:
            case 493:
              Column();
              break;
            default:
              jj_la1[226] = jj_gen;
              jj_consume_token(-1);
              throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
            }
                             sb.append(token.getText());
          } else if (jj_2_91(4)) {
            TableName();
                      sb.append(token.getText());
            jj_consume_token(DOT);
                                                          sb.append(token.getImage());
            switch (jj_nt.kind) {
            case STAR:
              jj_consume_token(STAR);
              break;
            case 26:
            case 29:
            case 30:
            case 32:
            case 33:
            case 34:
            case 35:
            case 36:
            case 37:
            case 38:
            case 39:
            case 40:
            case 41:
            case 42:
            case 43:
            case 44:
            case DEFINER:
            case CURRENT_USER:
            case SERIALLY_REUSABLE:
            case RESTRICT_REFERENCES:
            case EXCEPTION_INIT:
            case AUTONOMOUS_TRANSACTION:
            case LANGUAGE:
            case INLINE:
            case ALTER:
            case AND:
            case ANY:
            case ASC:
            case AT:
            case CHECK:
            case CLUSTER:
            case COMPRESS:
            case CREATE:
            case DESC:
            case DROP:
            case EXCLUSIVE:
            case FETCH:
            case GOTO:
            case HAVING:
            case INDEX:
            case INSERT:
            case INTERSECT:
            case IS:
            case LIKE:
            case LOCK:
            case MINUS:
            case MODE:
            case NOT:
            case NULL:
            case OPTION:
            case OR:
            case SHARE:
            case SUBTYPE:
            case THEN:
            case TO:
            case TYPE:
            case UPDATE:
            case ADD:
            case AGGREGATE:
            case APPLY:
            case ARRAY:
            case ATTRIBUTE:
            case AUTHID:
            case BINARY_INTEGER:
            case BODY:
            case BOOLEAN:
            case BULK:
            case BYTE:
            case CASCADE:
            case CHAR:
            case CHAR_BASE:
            case CLOSE:
            case COALESCE:
            case COLLECT:
            case COLUMN:
            case COMMIT:
            case CONSTANT:
            case CONSTRAINT:
            case CONSTRUCTOR:
            case CONTINUE:
            case CONVERT:
            case CROSS:
            case CUBE:
            case CURRENT:
            case CURRVAL:
            case DATA:
            case DATE:
            case DAY:
            case DECIMAL:
            case DEFINITION:
            case DELETE:
            case DISABLE:
            case DO:
            case DUPLICATED:
            case EDITIONABLE:
            case ELEMENT:
            case ELSIF:
            case ENABLE:
            case ESCAPE:
            case EXCEPT:
            case EXCEPTIONS:
            case EXECUTE:
            case EXIT:
            case EXTERNAL:
            case EXTENDED:
            case EXTENDS:
            case EXTRACT:
            case FALSE:
            case FINAL:
            case FLOAT:
            case FORALL:
            case FOREIGN:
            case FORCE:
            case FULL:
            case GLOBAL:
            case GROUPING:
            case HASH:
            case HEAP:
            case HOUR:
            case IMMEDIATE:
            case INNER:
            case INDICES:
            case INCLUDING:
            case INDEXTYPE:
            case INDICATOR:
            case INFINITE:
            case INSTANTIABLE:
            case INTEGER:
            case INTERFACE:
            case INTERVAL:
            case INVALIDATE:
            case ISOLATION:
            case JAVA:
            case JOIN:
            case KEY:
            case LEVEL:
            case LIKEC:
            case LIKE2:
            case LIKE4:
            case LIMIT:
            case LIMITED:
            case LONG:
            case LOOP:
            case MAP:
            case MEMBER:
            case MERGE:
            case METADATA:
            case MINUTE:
            case MLSLABEL:
            case MODIFY:
            case MOD:
            case MONTH:
            case NAN:
            case NATURAL:
            case NATURALN:
            case NEW:
            case NEXT:
            case NEXTVAL:
            case NO:
            case NOCOPY:
            case NONE:
            case NONEDITIONABLE:
            case NULLIF:
            case NULLS:
            case NUMBER:
            case BFILE_BASE:
            case BLOB_BASE:
            case CLOB_BASE:
            case DATE_BASE:
            case NUMBER_BASE:
            case OBJECT:
            case OCIROWID:
            case OFFSET:
            case OID:
            case ONLY:
            case OPAQUE:
            case OPEN:
            case OPERATOR:
            case ORGANIZATION:
            case OTHERS:
            case OUT:
            case OUTER:
            case OVERRIDING:
            case PACKAGE:
            case PARTITION:
            case PCTFREE:
            case PERCENT:
            case PLS_INTEGER:
            case POSITIVE:
            case POSITIVEN:
            case PRESERVE:
            case PRIOR:
            case PRIMARY:
            case PRIVATE:
            case RAISE:
            case RANGE:
            case RAW:
            case REAL:
            case RECORD:
            case REFERENCES:
            case REGEXP_LIKE:
            case RELEASE:
            case RELIES_ON:
            case RENAME:
            case RESULT:
            case RETURN:
            case RETURNING:
            case REVERSE:
            case ROLLBACK:
            case ROLLUP:
            case ROW:
            case ROWS:
            case ROWID:
            case ROWNUM:
            case ROWTYPE:
            case SAVE:
            case SAVEPOINT:
            case SECOND:
            case SELF:
            case SEPARATE:
            case SETS:
            case SIBLINGS:
            case SHARDED:
            case SHARING:
            case SMALLINT:
            case SOME:
            case SPACE:
            case SQLCODE:
            case SQLERRM:
            case STATIC:
            case SUBSTITUTABLE:
            case SUCCESSFUL:
            case SYNONYM:
            case SYS_REFCURSOR:
            case TEMPORARY:
            case TIES:
            case TIME:
            case TIMESTAMP:
            case TIMEZONE_REGION:
            case TIMEZONE_ABBR:
            case TIMEZONE_MINUTE:
            case TIMEZONE_HOUR:
            case TRANSACTION:
            case TRIGGER:
            case TRUE:
            case UI:
            case UNDER:
            case USING:
            case WHILE:
            case YES:
            case A:
            case VARCHAR:
            case VARCHAR2:
            case DOUBLE:
            case DEC:
            case PRECISION:
            case INT:
            case NUMERIC:
            case SIGNTYPE:
            case NCHAR:
            case NVARCHAR2:
            case STRING:
            case UROWID:
            case VARRAY:
            case VARYING:
            case BFILE:
            case BLOB:
            case CLOB:
            case NCLOB:
            case YEAR:
            case LOCAL:
            case ZONE:
            case CHARACTER:
            case AFTER:
            case BEFORE:
            case OLD:
            case PARENT:
            case GENERATED:
            case SCOPE:
            case INITIALLY:
            case DEFERRABLE:
            case DEFERRED:
            case ANALYZE:
            case ASSOCIATE:
            case AUDIT:
            case COMPOUND:
            case DATABASE:
            case CALL:
            case DISASSOCIATE:
            case EACH:
            case FOLLOWS:
            case LOGOFF:
            case LOGON:
            case NESTED:
            case NOAUDIT:
            case SCHEMA:
            case SERVERERROR:
            case SHUTDOWN:
            case STARTUP:
            case STATEMENT:
            case STATISTICS:
            case SUSPEND:
            case TRUNCATE:
            case WRAPPED:
            case LIBRARY:
            case NAME:
            case STRUCT:
            case CONTEXT:
            case PARAMETERS:
            case LENGTH:
            case TDO:
            case MAXLEN:
            case CHARSETID:
            case CHARSETFORM:
            case ACCESSIBLE:
            case ATTACH:
            case CAST:
            case TREAT:
            case LEFT:
            case RIGHT:
            case BOTH:
            case EMPTY:
            case MULTISET:
            case SUBMULTISET:
            case LEADING:
            case TRAILING:
            case CHAR_CS:
            case NCHAR_CS:
            case DBTIMEZONE:
            case SESSIONTIMEZONE:
            case AUTHENTICATED:
            case LINK:
            case SHARED:
            case DIRECTORY:
            case USER:
            case READ:
            case LATERAL:
            case NOCYCLE:
            case CONNECT_BY_ROOT:
            case IDENTIFIER:
            case QUOTED_LITERAL:
            case JAVA_INTERFACE_CLASS:
            case 493:
              Column();
              break;
            default:
              jj_la1[227] = jj_gen;
              jj_consume_token(-1);
              throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
            }
                             sb.append(token.getText());
          } else if (jj_2_92(3)) {
            Column();
                   sb.append(token.getText());
            jj_consume_token(REM);
            if (isKeyword("isopen")) {
              KEYWORD("ISOPEN");
            } else if (isKeyword("found")) {
              KEYWORD("FOUND");
            } else if (isKeyword("notfound")) {
              KEYWORD("NOTFOUND");
            } else if (isKeyword("rowcount")) {
              KEYWORD("ROWCOUNT");
            } else if (isKeyword("bulk_rowcount")) {
              KEYWORD("BULK_ROWCOUNT");
            } else if (isKeyword("bulk_exceptions")) {
              KEYWORD("BULK_EXCEPTIONS");
            } else {
              jj_consume_token(-1);
              throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
            }
                         sb.append('%').append(token.getImage());
          } else if (jj_2_93(2)) {
            switch (jj_nt.kind) {
            case STAR:
              jj_consume_token(STAR);
              break;
            case 26:
            case 29:
            case 30:
            case 32:
            case 33:
            case 34:
            case 35:
            case 36:
            case 37:
            case 38:
            case 39:
            case 40:
            case 41:
            case 42:
            case 43:
            case 44:
            case DEFINER:
            case CURRENT_USER:
            case SERIALLY_REUSABLE:
            case RESTRICT_REFERENCES:
            case EXCEPTION_INIT:
            case AUTONOMOUS_TRANSACTION:
            case LANGUAGE:
            case INLINE:
            case ALTER:
            case AND:
            case ANY:
            case ASC:
            case AT:
            case CHECK:
            case CLUSTER:
            case COMPRESS:
            case CREATE:
            case DESC:
            case DROP:
            case EXCLUSIVE:
            case FETCH:
            case GOTO:
            case HAVING:
            case INDEX:
            case INSERT:
            case INTERSECT:
            case IS:
            case LIKE:
            case LOCK:
            case MINUS:
            case MODE:
            case NOT:
            case NULL:
            case OPTION:
            case OR:
            case SHARE:
            case SUBTYPE:
            case THEN:
            case TO:
            case TYPE:
            case UPDATE:
            case ADD:
            case AGGREGATE:
            case APPLY:
            case ARRAY:
            case ATTRIBUTE:
            case AUTHID:
            case BINARY_INTEGER:
            case BODY:
            case BOOLEAN:
            case BULK:
            case BYTE:
            case CASCADE:
            case CHAR:
            case CHAR_BASE:
            case CLOSE:
            case COALESCE:
            case COLLECT:
            case COLUMN:
            case COMMIT:
            case CONSTANT:
            case CONSTRAINT:
            case CONSTRUCTOR:
            case CONTINUE:
            case CONVERT:
            case CROSS:
            case CUBE:
            case CURRENT:
            case CURRVAL:
            case DATA:
            case DATE:
            case DAY:
            case DECIMAL:
            case DEFINITION:
            case DELETE:
            case DISABLE:
            case DO:
            case DUPLICATED:
            case EDITIONABLE:
            case ELEMENT:
            case ELSIF:
            case ENABLE:
            case ESCAPE:
            case EXCEPT:
            case EXCEPTIONS:
            case EXECUTE:
            case EXIT:
            case EXTERNAL:
            case EXTENDED:
            case EXTENDS:
            case EXTRACT:
            case FALSE:
            case FINAL:
            case FLOAT:
            case FORALL:
            case FOREIGN:
            case FORCE:
            case FULL:
            case GLOBAL:
            case GROUPING:
            case HASH:
            case HEAP:
            case HOUR:
            case IMMEDIATE:
            case INNER:
            case INDICES:
            case INCLUDING:
            case INDEXTYPE:
            case INDICATOR:
            case INFINITE:
            case INSTANTIABLE:
            case INTEGER:
            case INTERFACE:
            case INTERVAL:
            case INVALIDATE:
            case ISOLATION:
            case JAVA:
            case JOIN:
            case KEY:
            case LEVEL:
            case LIKEC:
            case LIKE2:
            case LIKE4:
            case LIMIT:
            case LIMITED:
            case LONG:
            case LOOP:
            case MAP:
            case MEMBER:
            case MERGE:
            case METADATA:
            case MINUTE:
            case MLSLABEL:
            case MODIFY:
            case MOD:
            case MONTH:
            case NAN:
            case NATURAL:
            case NATURALN:
            case NEW:
            case NEXT:
            case NEXTVAL:
            case NO:
            case NOCOPY:
            case NONE:
            case NONEDITIONABLE:
            case NULLIF:
            case NULLS:
            case NUMBER:
            case BFILE_BASE:
            case BLOB_BASE:
            case CLOB_BASE:
            case DATE_BASE:
            case NUMBER_BASE:
            case OBJECT:
            case OCIROWID:
            case OFFSET:
            case OID:
            case ONLY:
            case OPAQUE:
            case OPEN:
            case OPERATOR:
            case ORGANIZATION:
            case OTHERS:
            case OUT:
            case OUTER:
            case OVERRIDING:
            case PACKAGE:
            case PARTITION:
            case PCTFREE:
            case PERCENT:
            case PLS_INTEGER:
            case POSITIVE:
            case POSITIVEN:
            case PRESERVE:
            case PRIOR:
            case PRIMARY:
            case PRIVATE:
            case RAISE:
            case RANGE:
            case RAW:
            case REAL:
            case RECORD:
            case REFERENCES:
            case REGEXP_LIKE:
            case RELEASE:
            case RELIES_ON:
            case RENAME:
            case RESULT:
            case RETURN:
            case RETURNING:
            case REVERSE:
            case ROLLBACK:
            case ROLLUP:
            case ROW:
            case ROWS:
            case ROWID:
            case ROWNUM:
            case ROWTYPE:
            case SAVE:
            case SAVEPOINT:
            case SECOND:
            case SELF:
            case SEPARATE:
            case SETS:
            case SIBLINGS:
            case SHARDED:
            case SHARING:
            case SMALLINT:
            case SOME:
            case SPACE:
            case SQLCODE:
            case SQLERRM:
            case STATIC:
            case SUBSTITUTABLE:
            case SUCCESSFUL:
            case SYNONYM:
            case SYS_REFCURSOR:
            case TEMPORARY:
            case TIES:
            case TIME:
            case TIMESTAMP:
            case TIMEZONE_REGION:
            case TIMEZONE_ABBR:
            case TIMEZONE_MINUTE:
            case TIMEZONE_HOUR:
            case TRANSACTION:
            case TRIGGER:
            case TRUE:
            case UI:
            case UNDER:
            case USING:
            case WHILE:
            case YES:
            case A:
            case VARCHAR:
            case VARCHAR2:
            case DOUBLE:
            case DEC:
            case PRECISION:
            case INT:
            case NUMERIC:
            case SIGNTYPE:
            case NCHAR:
            case NVARCHAR2:
            case STRING:
            case UROWID:
            case VARRAY:
            case VARYING:
            case BFILE:
            case BLOB:
            case CLOB:
            case NCLOB:
            case YEAR:
            case LOCAL:
            case ZONE:
            case CHARACTER:
            case AFTER:
            case BEFORE:
            case OLD:
            case PARENT:
            case GENERATED:
            case SCOPE:
            case INITIALLY:
            case DEFERRABLE:
            case DEFERRED:
            case ANALYZE:
            case ASSOCIATE:
            case AUDIT:
            case COMPOUND:
            case DATABASE:
            case CALL:
            case DISASSOCIATE:
            case EACH:
            case FOLLOWS:
            case LOGOFF:
            case LOGON:
            case NESTED:
            case NOAUDIT:
            case SCHEMA:
            case SERVERERROR:
            case SHUTDOWN:
            case STARTUP:
            case STATEMENT:
            case STATISTICS:
            case SUSPEND:
            case TRUNCATE:
            case WRAPPED:
            case LIBRARY:
            case NAME:
            case STRUCT:
            case CONTEXT:
            case PARAMETERS:
            case LENGTH:
            case TDO:
            case MAXLEN:
            case CHARSETID:
            case CHARSETFORM:
            case ACCESSIBLE:
            case ATTACH:
            case CAST:
            case TREAT:
            case LEFT:
            case RIGHT:
            case BOTH:
            case EMPTY:
            case MULTISET:
            case SUBMULTISET:
            case LEADING:
            case TRAILING:
            case CHAR_CS:
            case NCHAR_CS:
            case DBTIMEZONE:
            case SESSIONTIMEZONE:
            case AUTHENTICATED:
            case LINK:
            case SHARED:
            case DIRECTORY:
            case USER:
            case READ:
            case LATERAL:
            case NOCYCLE:
            case CONNECT_BY_ROOT:
            case IDENTIFIER:
            case QUOTED_LITERAL:
            case JAVA_INTERFACE_CLASS:
            case 493:
              Column();
              break;
            default:
              jj_la1[228] = jj_gen;
              jj_consume_token(-1);
              throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
            }
                             sb.append(token.getText());
          } else {
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
        }
      }
   jjtree.closeNodeScope(jjtn000, true, getToken(0));
   jjtc000 = false;
    jjtn000.setImage(sb.toString());
    {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
     {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
   }
   {if (true) throw (Error)jjte000;}
    } finally {
   if (jjtc000) {
     jjtree.closeNodeScope(jjtn000, true, getToken(0));
   }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTOuterJoinExpression OuterJoinExpression() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) OuterJoinExpression */
  ASTOuterJoinExpression jjtn000 = new ASTOuterJoinExpression(JJTOUTERJOINEXPRESSION);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));StringBuilder sb = new StringBuilder(); PLSQLNode node;
    try {
      if (jj_2_94(6)) {
        node = SchemaName();
                                       sb.append(node.getImage());
        jj_consume_token(DOT);
                                                                           sb.append(token.getImage());
      } else {
        ;
      }
      if (jj_2_95(4)) {
        node = TableName();
                                      sb.append(node.getImage());
        jj_consume_token(DOT);
                                                                          sb.append(token.getImage());
      } else {
        ;
      }
      node = Column();
                    sb.append(node.getImage());
      jj_consume_token(LPAREN);
      jj_consume_token(PLUSSIGN);
      jj_consume_token(RPAREN);
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
        jjtn000.setImage(sb.toString());
        {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * Built-in function call or a user defined function call.
 * See https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/Functions.html#GUID-D079EFD3-C683-441F-977E-2C9503089982
 * See https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/About-User-Defined-Functions.html#GUID-4EB3E236-8216-471C-BA44-23D87BDFEA67
 *
 * XML Functions:
 * https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/XMLROOT.html#GUID-5BD300E2-7138-436D-87AF-21658840CF9D
 * https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/XMLFOREST.html#GUID-68E5C67E-CE97-4BF8-B7FF-2365E062C363
 *
 * A function reference/name might be:
 * function_name
 * package.function_name
 * package.schema.function_name
 * optional: @ dblink
 *
 */
  final public ASTFunctionCall FunctionCall() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) FunctionCall */
    ASTFunctionCall jjtn000 = new ASTFunctionCall(JJTFUNCTIONCALL);
    boolean jjtc000 = true;
    jjtree.openNodeScope(jjtn000, getToken(1));ASTFunctionName name;
    try {
      name = FunctionName();
      if ("TRIM".equalsIgnoreCase(token.getImage())) {
        TrimExpression();
      } else if ("XMLCAST".equalsIgnoreCase(token.getImage())) {
        jj_consume_token(LPAREN);
        Expression();
        jj_consume_token(AS);
        Datatype();
        jj_consume_token(RPAREN);
      } else if ("XMLQUERY".equalsIgnoreCase(token.getImage())) {
        jj_consume_token(LPAREN);
        StringLiteral();
        if (isKeyword("PASSING")) {
          XMLPassingClause();
        } else {
          ;
        }
        jj_consume_token(RETURNING);
        KEYWORD("CONTENT");
        switch (jj_nt.kind) {
        case NULL:
          jj_consume_token(NULL);
          jj_consume_token(ON);
          jj_consume_token(EMPTY);
          break;
        default:
          jj_la1[230] = jj_gen;
          ;
        }
        jj_consume_token(RPAREN);
      } else if ("CAST".equalsIgnoreCase(token.getImage())) {
        jj_consume_token(LPAREN);
        switch (jj_nt.kind) {
        case MULTISET:
          jj_consume_token(MULTISET);
          jj_consume_token(LPAREN);
          Subquery();
          jj_consume_token(RPAREN);
          break;
        case LPAREN:
        case PLUSSIGN:
        case MINUSSIGN:
        case STAR:
        case 26:
        case 29:
        case 30:
        case 32:
        case 33:
        case 34:
        case 35:
        case 36:
        case 37:
        case 38:
        case 39:
        case 40:
        case 41:
        case 42:
        case 43:
        case 44:
        case DEFINER:
        case CURRENT_USER:
        case SERIALLY_REUSABLE:
        case RESTRICT_REFERENCES:
        case EXCEPTION_INIT:
        case AUTONOMOUS_TRANSACTION:
        case LANGUAGE:
        case INLINE:
        case ALTER:
        case AND:
        case ANY:
        case ASC:
        case AT:
        case CASE:
        case CHECK:
        case CLUSTER:
        case COMPRESS:
        case CREATE:
        case DESC:
        case DROP:
        case EXCLUSIVE:
        case FETCH:
        case GOTO:
        case HAVING:
        case INDEX:
        case INSERT:
        case INTERSECT:
        case IS:
        case LIKE:
        case LOCK:
        case MINUS:
        case MODE:
        case NOT:
        case NULL:
        case OPTION:
        case OR:
        case SHARE:
        case SQL:
        case SUBTYPE:
        case THEN:
        case TO:
        case TYPE:
        case UPDATE:
        case WITH:
        case ADD:
        case AGGREGATE:
        case APPLY:
        case ARRAY:
        case ATTRIBUTE:
        case AUTHID:
        case BINARY_INTEGER:
        case BODY:
        case BOOLEAN:
        case BULK:
        case BYTE:
        case CASCADE:
        case CHAR:
        case CHAR_BASE:
        case CLOSE:
        case COALESCE:
        case COLLECT:
        case COLUMN:
        case COMMIT:
        case CONSTANT:
        case CONSTRAINT:
        case CONSTRUCTOR:
        case CONTINUE:
        case CONVERT:
        case CROSS:
        case CUBE:
        case CURRENT:
        case CURRVAL:
        case DATA:
        case DATE:
        case DAY:
        case DECIMAL:
        case DEFINITION:
        case DELETE:
        case DISABLE:
        case DO:
        case DUPLICATED:
        case EDITIONABLE:
        case ELEMENT:
        case ELSIF:
        case ENABLE:
        case ESCAPE:
        case EXCEPT:
        case EXCEPTIONS:
        case EXECUTE:
        case EXIT:
        case EXTERNAL:
        case EXTENDED:
        case EXTENDS:
        case EXTRACT:
        case FALSE:
        case FINAL:
        case FLOAT:
        case FORALL:
        case FOREIGN:
        case FORCE:
        case FULL:
        case GLOBAL:
        case GROUPING:
        case HASH:
        case HEAP:
        case HOUR:
        case IMMEDIATE:
        case INNER:
        case INDICES:
        case INCLUDING:
        case INDEXTYPE:
        case INDICATOR:
        case INFINITE:
        case INSTANTIABLE:
        case INTEGER:
        case INTERFACE:
        case INTERVAL:
        case INVALIDATE:
        case ISOLATION:
        case JAVA:
        case JOIN:
        case KEY:
        case LEVEL:
        case LIKEC:
        case LIKE2:
        case LIKE4:
        case LIMIT:
        case LIMITED:
        case LONG:
        case LOOP:
        case MAP:
        case MEMBER:
        case MERGE:
        case METADATA:
        case MINUTE:
        case MLSLABEL:
        case MODIFY:
        case MOD:
        case MONTH:
        case NAN:
        case NATURAL:
        case NATURALN:
        case NEW:
        case NEW_DOT:
        case NEXT:
        case NEXTVAL:
        case NO:
        case NOCOPY:
        case NONE:
        case NONEDITIONABLE:
        case NULLIF:
        case NULLS:
        case NUMBER:
        case BFILE_BASE:
        case BLOB_BASE:
        case CLOB_BASE:
        case DATE_BASE:
        case NUMBER_BASE:
        case OBJECT:
        case OCIROWID:
        case OFFSET:
        case OID:
        case ONLY:
        case OPAQUE:
        case OPEN:
        case OPERATOR:
        case ORGANIZATION:
        case OTHERS:
        case OUT:
        case OUTER:
        case OVERRIDING:
        case PACKAGE:
        case PARTITION:
        case PCTFREE:
        case PERCENT:
        case PLS_INTEGER:
        case POSITIVE:
        case POSITIVEN:
        case PRESERVE:
        case PRIOR:
        case PRIMARY:
        case PRIVATE:
        case RAISE:
        case RANGE:
        case RAW:
        case REAL:
        case RECORD:
        case REFERENCES:
        case REGEXP_LIKE:
        case RELEASE:
        case RELIES_ON:
        case RENAME:
        case RESULT:
        case RETURN:
        case RETURNING:
        case REVERSE:
        case ROLLBACK:
        case ROLLUP:
        case ROW:
        case ROWS:
        case ROWID:
        case ROWNUM:
        case ROWTYPE:
        case SAVE:
        case SAVEPOINT:
        case SECOND:
        case SELF:
        case SEPARATE:
        case SETS:
        case SIBLINGS:
        case SHARDED:
        case SHARING:
        case SMALLINT:
        case SOME:
        case SPACE:
        case SQLCODE:
        case SQLERRM:
        case STATIC:
        case SUBSTITUTABLE:
        case SUCCESSFUL:
        case SYNONYM:
        case SYS_REFCURSOR:
        case TEMPORARY:
        case TIES:
        case TIME:
        case TIMESTAMP:
        case TIMEZONE_REGION:
        case TIMEZONE_ABBR:
        case TIMEZONE_MINUTE:
        case TIMEZONE_HOUR:
        case TRANSACTION:
        case TRIGGER:
        case TRUE:
        case UI:
        case UNDER:
        case USING:
        case WHILE:
        case YES:
        case A:
        case VARCHAR:
        case VARCHAR2:
        case DOUBLE:
        case DEC:
        case PRECISION:
        case INT:
        case NUMERIC:
        case SIGNTYPE:
        case NCHAR:
        case NVARCHAR2:
        case STRING:
        case UROWID:
        case VARRAY:
        case VARYING:
        case BFILE:
        case BLOB:
        case CLOB:
        case NCLOB:
        case YEAR:
        case LOCAL:
        case ZONE:
        case CHARACTER:
        case AFTER:
        case BEFORE:
        case OLD:
        case PARENT:
        case GENERATED:
        case SCOPE:
        case INITIALLY:
        case DEFERRABLE:
        case DEFERRED:
        case CC_IF:
        case ANALYZE:
        case ASSOCIATE:
        case AUDIT:
        case COMPOUND:
        case DATABASE:
        case CALL:
        case DISASSOCIATE:
        case EACH:
        case FOLLOWS:
        case LOGOFF:
        case LOGON:
        case NESTED:
        case NOAUDIT:
        case SCHEMA:
        case SERVERERROR:
        case SHUTDOWN:
        case STARTUP:
        case STATEMENT:
        case STATISTICS:
        case SUSPEND:
        case TRUNCATE:
        case WRAPPED:
        case LIBRARY:
        case NAME:
        case STRUCT:
        case CONTEXT:
        case PARAMETERS:
        case LENGTH:
        case TDO:
        case MAXLEN:
        case CHARSETID:
        case CHARSETFORM:
        case ACCESSIBLE:
        case ATTACH:
        case CAST:
        case TREAT:
        case LEFT:
        case RIGHT:
        case BOTH:
        case EMPTY:
        case SUBMULTISET:
        case LEADING:
        case TRAILING:
        case CHAR_CS:
        case NCHAR_CS:
        case DBTIMEZONE:
        case SESSIONTIMEZONE:
        case AUTHENTICATED:
        case LINK:
        case SHARED:
        case DIRECTORY:
        case USER:
        case READ:
        case LATERAL:
        case NOCYCLE:
        case CONNECT_BY_ROOT:
        case IDENTIFIER:
        case UNSIGNED_NUMERIC_LITERAL:
        case CHARACTER_LITERAL:
        case QUOTED_LITERAL:
        case JAVA_INTERFACE_CLASS:
        case STRING_LITERAL:
        case 493:
          Expression();
          break;
        default:
          jj_la1[231] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        jj_consume_token(AS);
        Datatype();
        jj_consume_token(RPAREN);
      } else if ("XMLFOREST".equalsIgnoreCase(token.getImage())) {
        jj_consume_token(LPAREN);
        SqlExpression();
        switch (jj_nt.kind) {
        case 26:
        case 29:
        case 30:
        case 32:
        case 33:
        case 34:
        case 35:
        case 36:
        case 37:
        case 38:
        case 39:
        case 40:
        case 41:
        case 42:
        case 43:
        case 44:
        case DEFINER:
        case CURRENT_USER:
        case SERIALLY_REUSABLE:
        case RESTRICT_REFERENCES:
        case EXCEPTION_INIT:
        case AUTONOMOUS_TRANSACTION:
        case LANGUAGE:
        case INLINE:
        case ALTER:
        case AND:
        case ANY:
        case AS:
        case ASC:
        case AT:
        case CHECK:
        case CLUSTER:
        case COMPRESS:
        case CREATE:
        case DESC:
        case DROP:
        case EXCLUSIVE:
        case FETCH:
        case GOTO:
        case HAVING:
        case INDEX:
        case INSERT:
        case INTERSECT:
        case IS:
        case LIKE:
        case LOCK:
        case MINUS:
        case MODE:
        case NOT:
        case NULL:
        case OPTION:
        case OR:
        case SHARE:
        case SUBTYPE:
        case THEN:
        case TO:
        case TYPE:
        case UPDATE:
        case ADD:
        case AGGREGATE:
        case APPLY:
        case ARRAY:
        case ATTRIBUTE:
        case AUTHID:
        case BINARY_INTEGER:
        case BODY:
        case BOOLEAN:
        case BULK:
        case BYTE:
        case CASCADE:
        case CHAR:
        case CHAR_BASE:
        case CLOSE:
        case COALESCE:
        case COLLECT:
        case COLUMN:
        case COMMIT:
        case CONSTANT:
        case CONSTRAINT:
        case CONSTRUCTOR:
        case CONTINUE:
        case CONVERT:
        case CROSS:
        case CUBE:
        case CURRENT:
        case CURRVAL:
        case DATA:
        case DATE:
        case DAY:
        case DECIMAL:
        case DEFINITION:
        case DELETE:
        case DISABLE:
        case DO:
        case DUPLICATED:
        case EDITIONABLE:
        case ELEMENT:
        case ELSIF:
        case ENABLE:
        case ESCAPE:
        case EXCEPT:
        case EXCEPTIONS:
        case EXECUTE:
        case EXIT:
        case EXTERNAL:
        case EXTENDED:
        case EXTENDS:
        case EXTRACT:
        case FALSE:
        case FINAL:
        case FLOAT:
        case FORALL:
        case FOREIGN:
        case FORCE:
        case FULL:
        case GLOBAL:
        case GROUPING:
        case HASH:
        case HEAP:
        case HOUR:
        case IMMEDIATE:
        case INNER:
        case INDICES:
        case INCLUDING:
        case INDEXTYPE:
        case INDICATOR:
        case INFINITE:
        case INSTANTIABLE:
        case INTEGER:
        case INTERFACE:
        case INTERVAL:
        case INVALIDATE:
        case ISOLATION:
        case JAVA:
        case JOIN:
        case KEY:
        case LEVEL:
        case LIKEC:
        case LIKE2:
        case LIKE4:
        case LIMIT:
        case LIMITED:
        case LONG:
        case LOOP:
        case MAP:
        case MEMBER:
        case MERGE:
        case METADATA:
        case MINUTE:
        case MLSLABEL:
        case MODIFY:
        case MOD:
        case MONTH:
        case NAN:
        case NATURAL:
        case NATURALN:
        case NEW:
        case NEXT:
        case NEXTVAL:
        case NO:
        case NOCOPY:
        case NONE:
        case NONEDITIONABLE:
        case NULLIF:
        case NULLS:
        case NUMBER:
        case BFILE_BASE:
        case BLOB_BASE:
        case CLOB_BASE:
        case DATE_BASE:
        case NUMBER_BASE:
        case OBJECT:
        case OCIROWID:
        case OFFSET:
        case OID:
        case ONLY:
        case OPAQUE:
        case OPEN:
        case OPERATOR:
        case ORGANIZATION:
        case OTHERS:
        case OUT:
        case OUTER:
        case OVERRIDING:
        case PACKAGE:
        case PARTITION:
        case PCTFREE:
        case PERCENT:
        case PLS_INTEGER:
        case POSITIVE:
        case POSITIVEN:
        case PRESERVE:
        case PRIOR:
        case PRIMARY:
        case PRIVATE:
        case RAISE:
        case RANGE:
        case RAW:
        case REAL:
        case RECORD:
        case REFERENCES:
        case REGEXP_LIKE:
        case RELEASE:
        case RELIES_ON:
        case RENAME:
        case RESULT:
        case RETURN:
        case RETURNING:
        case REVERSE:
        case ROLLBACK:
        case ROLLUP:
        case ROW:
        case ROWS:
        case ROWID:
        case ROWNUM:
        case ROWTYPE:
        case SAVE:
        case SAVEPOINT:
        case SECOND:
        case SELF:
        case SEPARATE:
        case SETS:
        case SIBLINGS:
        case SHARDED:
        case SHARING:
        case SMALLINT:
        case SOME:
        case SPACE:
        case SQLCODE:
        case SQLERRM:
        case STATIC:
        case SUBSTITUTABLE:
        case SUCCESSFUL:
        case SYNONYM:
        case SYS_REFCURSOR:
        case TEMPORARY:
        case TIES:
        case TIME:
        case TIMESTAMP:
        case TIMEZONE_REGION:
        case TIMEZONE_ABBR:
        case TIMEZONE_MINUTE:
        case TIMEZONE_HOUR:
        case TRANSACTION:
        case TRIGGER:
        case TRUE:
        case UI:
        case UNDER:
        case USING:
        case WHILE:
        case YES:
        case A:
        case VARCHAR:
        case VARCHAR2:
        case DOUBLE:
        case DEC:
        case PRECISION:
        case INT:
        case NUMERIC:
        case SIGNTYPE:
        case NCHAR:
        case NVARCHAR2:
        case STRING:
        case UROWID:
        case VARRAY:
        case VARYING:
        case BFILE:
        case BLOB:
        case CLOB:
        case NCLOB:
        case YEAR:
        case LOCAL:
        case ZONE:
        case CHARACTER:
        case AFTER:
        case BEFORE:
        case OLD:
        case PARENT:
        case GENERATED:
        case SCOPE:
        case INITIALLY:
        case DEFERRABLE:
        case DEFERRED:
        case ANALYZE:
        case ASSOCIATE:
        case AUDIT:
        case COMPOUND:
        case DATABASE:
        case CALL:
        case DISASSOCIATE:
        case EACH:
        case FOLLOWS:
        case LOGOFF:
        case LOGON:
        case NESTED:
        case NOAUDIT:
        case SCHEMA:
        case SERVERERROR:
        case SHUTDOWN:
        case STARTUP:
        case STATEMENT:
        case STATISTICS:
        case SUSPEND:
        case TRUNCATE:
        case WRAPPED:
        case LIBRARY:
        case NAME:
        case STRUCT:
        case CONTEXT:
        case PARAMETERS:
        case LENGTH:
        case TDO:
        case MAXLEN:
        case CHARSETID:
        case CHARSETFORM:
        case ACCESSIBLE:
        case ATTACH:
        case CAST:
        case TREAT:
        case LEFT:
        case RIGHT:
        case BOTH:
        case EMPTY:
        case MULTISET:
        case SUBMULTISET:
        case LEADING:
        case TRAILING:
        case CHAR_CS:
        case NCHAR_CS:
        case DBTIMEZONE:
        case SESSIONTIMEZONE:
        case AUTHENTICATED:
        case LINK:
        case SHARED:
        case DIRECTORY:
        case USER:
        case READ:
        case LATERAL:
        case NOCYCLE:
        case CONNECT_BY_ROOT:
        case IDENTIFIER:
        case QUOTED_LITERAL:
        case JAVA_INTERFACE_CLASS:
        case 493:
          switch (jj_nt.kind) {
          case AS:
            jj_consume_token(AS);
            break;
          default:
            jj_la1[232] = jj_gen;
            ;
          }
          ID();
          break;
        default:
          jj_la1[233] = jj_gen;
          ;
        }
        label_48:
        while (true) {
          switch (jj_nt.kind) {
          case COMMA:
            ;
            break;
          default:
            jj_la1[234] = jj_gen;
            break label_48;
          }
          jj_consume_token(COMMA);
          SqlExpression();
          switch (jj_nt.kind) {
          case 26:
          case 29:
          case 30:
          case 32:
          case 33:
          case 34:
          case 35:
          case 36:
          case 37:
          case 38:
          case 39:
          case 40:
          case 41:
          case 42:
          case 43:
          case 44:
          case DEFINER:
          case CURRENT_USER:
          case SERIALLY_REUSABLE:
          case RESTRICT_REFERENCES:
          case EXCEPTION_INIT:
          case AUTONOMOUS_TRANSACTION:
          case LANGUAGE:
          case INLINE:
          case ALTER:
          case AND:
          case ANY:
          case AS:
          case ASC:
          case AT:
          case CHECK:
          case CLUSTER:
          case COMPRESS:
          case CREATE:
          case DESC:
          case DROP:
          case EXCLUSIVE:
          case FETCH:
          case GOTO:
          case HAVING:
          case INDEX:
          case INSERT:
          case INTERSECT:
          case IS:
          case LIKE:
          case LOCK:
          case MINUS:
          case MODE:
          case NOT:
          case NULL:
          case OPTION:
          case OR:
          case SHARE:
          case SUBTYPE:
          case THEN:
          case TO:
          case TYPE:
          case UPDATE:
          case ADD:
          case AGGREGATE:
          case APPLY:
          case ARRAY:
          case ATTRIBUTE:
          case AUTHID:
          case BINARY_INTEGER:
          case BODY:
          case BOOLEAN:
          case BULK:
          case BYTE:
          case CASCADE:
          case CHAR:
          case CHAR_BASE:
          case CLOSE:
          case COALESCE:
          case COLLECT:
          case COLUMN:
          case COMMIT:
          case CONSTANT:
          case CONSTRAINT:
          case CONSTRUCTOR:
          case CONTINUE:
          case CONVERT:
          case CROSS:
          case CUBE:
          case CURRENT:
          case CURRVAL:
          case DATA:
          case DATE:
          case DAY:
          case DECIMAL:
          case DEFINITION:
          case DELETE:
          case DISABLE:
          case DO:
          case DUPLICATED:
          case EDITIONABLE:
          case ELEMENT:
          case ELSIF:
          case ENABLE:
          case ESCAPE:
          case EXCEPT:
          case EXCEPTIONS:
          case EXECUTE:
          case EXIT:
          case EXTERNAL:
          case EXTENDED:
          case EXTENDS:
          case EXTRACT:
          case FALSE:
          case FINAL:
          case FLOAT:
          case FORALL:
          case FOREIGN:
          case FORCE:
          case FULL:
          case GLOBAL:
          case GROUPING:
          case HASH:
          case HEAP:
          case HOUR:
          case IMMEDIATE:
          case INNER:
          case INDICES:
          case INCLUDING:
          case INDEXTYPE:
          case INDICATOR:
          case INFINITE:
          case INSTANTIABLE:
          case INTEGER:
          case INTERFACE:
          case INTERVAL:
          case INVALIDATE:
          case ISOLATION:
          case JAVA:
          case JOIN:
          case KEY:
          case LEVEL:
          case LIKEC:
          case LIKE2:
          case LIKE4:
          case LIMIT:
          case LIMITED:
          case LONG:
          case LOOP:
          case MAP:
          case MEMBER:
          case MERGE:
          case METADATA:
          case MINUTE:
          case MLSLABEL:
          case MODIFY:
          case MOD:
          case MONTH:
          case NAN:
          case NATURAL:
          case NATURALN:
          case NEW:
          case NEXT:
          case NEXTVAL:
          case NO:
          case NOCOPY:
          case NONE:
          case NONEDITIONABLE:
          case NULLIF:
          case NULLS:
          case NUMBER:
          case BFILE_BASE:
          case BLOB_BASE:
          case CLOB_BASE:
          case DATE_BASE:
          case NUMBER_BASE:
          case OBJECT:
          case OCIROWID:
          case OFFSET:
          case OID:
          case ONLY:
          case OPAQUE:
          case OPEN:
          case OPERATOR:
          case ORGANIZATION:
          case OTHERS:
          case OUT:
          case OUTER:
          case OVERRIDING:
          case PACKAGE:
          case PARTITION:
          case PCTFREE:
          case PERCENT:
          case PLS_INTEGER:
          case POSITIVE:
          case POSITIVEN:
          case PRESERVE:
          case PRIOR:
          case PRIMARY:
          case PRIVATE:
          case RAISE:
          case RANGE:
          case RAW:
          case REAL:
          case RECORD:
          case REFERENCES:
          case REGEXP_LIKE:
          case RELEASE:
          case RELIES_ON:
          case RENAME:
          case RESULT:
          case RETURN:
          case RETURNING:
          case REVERSE:
          case ROLLBACK:
          case ROLLUP:
          case ROW:
          case ROWS:
          case ROWID:
          case ROWNUM:
          case ROWTYPE:
          case SAVE:
          case SAVEPOINT:
          case SECOND:
          case SELF:
          case SEPARATE:
          case SETS:
          case SIBLINGS:
          case SHARDED:
          case SHARING:
          case SMALLINT:
          case SOME:
          case SPACE:
          case SQLCODE:
          case SQLERRM:
          case STATIC:
          case SUBSTITUTABLE:
          case SUCCESSFUL:
          case SYNONYM:
          case SYS_REFCURSOR:
          case TEMPORARY:
          case TIES:
          case TIME:
          case TIMESTAMP:
          case TIMEZONE_REGION:
          case TIMEZONE_ABBR:
          case TIMEZONE_MINUTE:
          case TIMEZONE_HOUR:
          case TRANSACTION:
          case TRIGGER:
          case TRUE:
          case UI:
          case UNDER:
          case USING:
          case WHILE:
          case YES:
          case A:
          case VARCHAR:
          case VARCHAR2:
          case DOUBLE:
          case DEC:
          case PRECISION:
          case INT:
          case NUMERIC:
          case SIGNTYPE:
          case NCHAR:
          case NVARCHAR2:
          case STRING:
          case UROWID:
          case VARRAY:
          case VARYING:
          case BFILE:
          case BLOB:
          case CLOB:
          case NCLOB:
          case YEAR:
          case LOCAL:
          case ZONE:
          case CHARACTER:
          case AFTER:
          case BEFORE:
          case OLD:
          case PARENT:
          case GENERATED:
          case SCOPE:
          case INITIALLY:
          case DEFERRABLE:
          case DEFERRED:
          case ANALYZE:
          case ASSOCIATE:
          case AUDIT:
          case COMPOUND:
          case DATABASE:
          case CALL:
          case DISASSOCIATE:
          case EACH:
          case FOLLOWS:
          case LOGOFF:
          case LOGON:
          case NESTED:
          case NOAUDIT:
          case SCHEMA:
          case SERVERERROR:
          case SHUTDOWN:
          case STARTUP:
          case STATEMENT:
          case STATISTICS:
          case SUSPEND:
          case TRUNCATE:
          case WRAPPED:
          case LIBRARY:
          case NAME:
          case STRUCT:
          case CONTEXT:
          case PARAMETERS:
          case LENGTH:
          case TDO:
          case MAXLEN:
          case CHARSETID:
          case CHARSETFORM:
          case ACCESSIBLE:
          case ATTACH:
          case CAST:
          case TREAT:
          case LEFT:
          case RIGHT:
          case BOTH:
          case EMPTY:
          case MULTISET:
          case SUBMULTISET:
          case LEADING:
          case TRAILING:
          case CHAR_CS:
          case NCHAR_CS:
          case DBTIMEZONE:
          case SESSIONTIMEZONE:
          case AUTHENTICATED:
          case LINK:
          case SHARED:
          case DIRECTORY:
          case USER:
          case READ:
          case LATERAL:
          case NOCYCLE:
          case CONNECT_BY_ROOT:
          case IDENTIFIER:
          case QUOTED_LITERAL:
          case JAVA_INTERFACE_CLASS:
          case 493:
            switch (jj_nt.kind) {
            case AS:
              jj_consume_token(AS);
              break;
            default:
              jj_la1[235] = jj_gen;
              ;
            }
            ID();
            break;
          default:
            jj_la1[236] = jj_gen;
            ;
          }
        }
        jj_consume_token(RPAREN);
      } else if ("XMLELEMENT".equalsIgnoreCase(token.getImage())) {
        XMLElement();
      } else if ("XMLROOT".equalsIgnoreCase(token.getImage())) {
        jj_consume_token(LPAREN);
        Expression();
        jj_consume_token(COMMA);
        KEYWORD("VERSION");
        switch (jj_nt.kind) {
        case NO:
          jj_consume_token(NO);
          KEYWORD("VALUE");
          break;
        case LPAREN:
        case PLUSSIGN:
        case MINUSSIGN:
        case STAR:
        case 26:
        case 29:
        case 30:
        case 32:
        case 33:
        case 34:
        case 35:
        case 36:
        case 37:
        case 38:
        case 39:
        case 40:
        case 41:
        case 42:
        case 43:
        case 44:
        case DEFINER:
        case CURRENT_USER:
        case SERIALLY_REUSABLE:
        case RESTRICT_REFERENCES:
        case EXCEPTION_INIT:
        case AUTONOMOUS_TRANSACTION:
        case LANGUAGE:
        case INLINE:
        case ALTER:
        case AND:
        case ANY:
        case ASC:
        case AT:
        case CASE:
        case CHECK:
        case CLUSTER:
        case COMPRESS:
        case CREATE:
        case DESC:
        case DROP:
        case EXCLUSIVE:
        case FETCH:
        case GOTO:
        case HAVING:
        case INDEX:
        case INSERT:
        case INTERSECT:
        case IS:
        case LIKE:
        case LOCK:
        case MINUS:
        case MODE:
        case NOT:
        case NULL:
        case OPTION:
        case OR:
        case SHARE:
        case SQL:
        case SUBTYPE:
        case THEN:
        case TO:
        case TYPE:
        case UPDATE:
        case WITH:
        case ADD:
        case AGGREGATE:
        case APPLY:
        case ARRAY:
        case ATTRIBUTE:
        case AUTHID:
        case BINARY_INTEGER:
        case BODY:
        case BOOLEAN:
        case BULK:
        case BYTE:
        case CASCADE:
        case CHAR:
        case CHAR_BASE:
        case CLOSE:
        case COALESCE:
        case COLLECT:
        case COLUMN:
        case COMMIT:
        case CONSTANT:
        case CONSTRAINT:
        case CONSTRUCTOR:
        case CONTINUE:
        case CONVERT:
        case CROSS:
        case CUBE:
        case CURRENT:
        case CURRVAL:
        case DATA:
        case DATE:
        case DAY:
        case DECIMAL:
        case DEFINITION:
        case DELETE:
        case DISABLE:
        case DO:
        case DUPLICATED:
        case EDITIONABLE:
        case ELEMENT:
        case ELSIF:
        case ENABLE:
        case ESCAPE:
        case EXCEPT:
        case EXCEPTIONS:
        case EXECUTE:
        case EXIT:
        case EXTERNAL:
        case EXTENDED:
        case EXTENDS:
        case EXTRACT:
        case FALSE:
        case FINAL:
        case FLOAT:
        case FORALL:
        case FOREIGN:
        case FORCE:
        case FULL:
        case GLOBAL:
        case GROUPING:
        case HASH:
        case HEAP:
        case HOUR:
        case IMMEDIATE:
        case INNER:
        case INDICES:
        case INCLUDING:
        case INDEXTYPE:
        case INDICATOR:
        case INFINITE:
        case INSTANTIABLE:
        case INTEGER:
        case INTERFACE:
        case INTERVAL:
        case INVALIDATE:
        case ISOLATION:
        case JAVA:
        case JOIN:
        case KEY:
        case LEVEL:
        case LIKEC:
        case LIKE2:
        case LIKE4:
        case LIMIT:
        case LIMITED:
        case LONG:
        case LOOP:
        case MAP:
        case MEMBER:
        case MERGE:
        case METADATA:
        case MINUTE:
        case MLSLABEL:
        case MODIFY:
        case MOD:
        case MONTH:
        case NAN:
        case NATURAL:
        case NATURALN:
        case NEW:
        case NEW_DOT:
        case NEXT:
        case NEXTVAL:
        case NOCOPY:
        case NONE:
        case NONEDITIONABLE:
        case NULLIF:
        case NULLS:
        case NUMBER:
        case BFILE_BASE:
        case BLOB_BASE:
        case CLOB_BASE:
        case DATE_BASE:
        case NUMBER_BASE:
        case OBJECT:
        case OCIROWID:
        case OFFSET:
        case OID:
        case ONLY:
        case OPAQUE:
        case OPEN:
        case OPERATOR:
        case ORGANIZATION:
        case OTHERS:
        case OUT:
        case OUTER:
        case OVERRIDING:
        case PACKAGE:
        case PARTITION:
        case PCTFREE:
        case PERCENT:
        case PLS_INTEGER:
        case POSITIVE:
        case POSITIVEN:
        case PRESERVE:
        case PRIOR:
        case PRIMARY:
        case PRIVATE:
        case RAISE:
        case RANGE:
        case RAW:
        case REAL:
        case RECORD:
        case REFERENCES:
        case REGEXP_LIKE:
        case RELEASE:
        case RELIES_ON:
        case RENAME:
        case RESULT:
        case RETURN:
        case RETURNING:
        case REVERSE:
        case ROLLBACK:
        case ROLLUP:
        case ROW:
        case ROWS:
        case ROWID:
        case ROWNUM:
        case ROWTYPE:
        case SAVE:
        case SAVEPOINT:
        case SECOND:
        case SELF:
        case SEPARATE:
        case SETS:
        case SIBLINGS:
        case SHARDED:
        case SHARING:
        case SMALLINT:
        case SOME:
        case SPACE:
        case SQLCODE:
        case SQLERRM:
        case STATIC:
        case SUBSTITUTABLE:
        case SUCCESSFUL:
        case SYNONYM:
        case SYS_REFCURSOR:
        case TEMPORARY:
        case TIES:
        case TIME:
        case TIMESTAMP:
        case TIMEZONE_REGION:
        case TIMEZONE_ABBR:
        case TIMEZONE_MINUTE:
        case TIMEZONE_HOUR:
        case TRANSACTION:
        case TRIGGER:
        case TRUE:
        case UI:
        case UNDER:
        case USING:
        case WHILE:
        case YES:
        case A:
        case VARCHAR:
        case VARCHAR2:
        case DOUBLE:
        case DEC:
        case PRECISION:
        case INT:
        case NUMERIC:
        case SIGNTYPE:
        case NCHAR:
        case NVARCHAR2:
        case STRING:
        case UROWID:
        case VARRAY:
        case VARYING:
        case BFILE:
        case BLOB:
        case CLOB:
        case NCLOB:
        case YEAR:
        case LOCAL:
        case ZONE:
        case CHARACTER:
        case AFTER:
        case BEFORE:
        case OLD:
        case PARENT:
        case GENERATED:
        case SCOPE:
        case INITIALLY:
        case DEFERRABLE:
        case DEFERRED:
        case CC_IF:
        case ANALYZE:
        case ASSOCIATE:
        case AUDIT:
        case COMPOUND:
        case DATABASE:
        case CALL:
        case DISASSOCIATE:
        case EACH:
        case FOLLOWS:
        case LOGOFF:
        case LOGON:
        case NESTED:
        case NOAUDIT:
        case SCHEMA:
        case SERVERERROR:
        case SHUTDOWN:
        case STARTUP:
        case STATEMENT:
        case STATISTICS:
        case SUSPEND:
        case TRUNCATE:
        case WRAPPED:
        case LIBRARY:
        case NAME:
        case STRUCT:
        case CONTEXT:
        case PARAMETERS:
        case LENGTH:
        case TDO:
        case MAXLEN:
        case CHARSETID:
        case CHARSETFORM:
        case ACCESSIBLE:
        case ATTACH:
        case CAST:
        case TREAT:
        case LEFT:
        case RIGHT:
        case BOTH:
        case EMPTY:
        case MULTISET:
        case SUBMULTISET:
        case LEADING:
        case TRAILING:
        case CHAR_CS:
        case NCHAR_CS:
        case DBTIMEZONE:
        case SESSIONTIMEZONE:
        case AUTHENTICATED:
        case LINK:
        case SHARED:
        case DIRECTORY:
        case USER:
        case READ:
        case LATERAL:
        case NOCYCLE:
        case CONNECT_BY_ROOT:
        case IDENTIFIER:
        case UNSIGNED_NUMERIC_LITERAL:
        case CHARACTER_LITERAL:
        case QUOTED_LITERAL:
        case JAVA_INTERFACE_CLASS:
        case STRING_LITERAL:
        case 493:
          Expression();
          break;
        default:
          jj_la1[237] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        switch (jj_nt.kind) {
        case COMMA:
          jj_consume_token(COMMA);
          KEYWORD("STANDALONE");
          switch (jj_nt.kind) {
          case YES:
            jj_consume_token(YES);
            break;
          case NO:
            jj_consume_token(NO);
            if (isKeyword("VALUE")) {
              KEYWORD("VALUE");
            } else {
              ;
            }
            break;
          default:
            jj_la1[238] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
          break;
        default:
          jj_la1[239] = jj_gen;
          ;
        }
        jj_consume_token(RPAREN);
      } else {
        switch (jj_nt.kind) {
        case LPAREN:
          Arguments();
          break;
        default:
          jj_la1[240] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
        jjtn000.setImage(name.getImage());
        {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTFunctionName FunctionName() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) FunctionName */
    ASTFunctionName jjtn000 = new ASTFunctionName(JJTFUNCTIONNAME);
    boolean jjtc000 = true;
    jjtree.openNodeScope(jjtn000, getToken(1));ASTID id;
    StringBuilder name = new StringBuilder();
    try {
      id = ID();
                name.append(id.getImage());
      switch (jj_nt.kind) {
      case DOT:
        jj_consume_token(DOT);
        id = ID();
                      name.append('.').append(id.getImage());
        switch (jj_nt.kind) {
        case DOT:
          jj_consume_token(DOT);
          id = ID();
                        name.append('.').append(id.getImage());
          break;
        default:
          jj_la1[241] = jj_gen;
          ;
        }
        break;
      default:
        jj_la1[242] = jj_gen;
        ;
      }
      switch (jj_nt.kind) {
      case AROBASE:
        jj_consume_token(AROBASE);
        id = ID();
                      name.append('@').append(id.getImage());
        break;
      default:
        jj_la1[243] = jj_gen;
        ;
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
        jjtn000.setImage(name.toString());
        {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/XMLTABLE.html
 */
  final public ASTXMLTable XMLTable() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) XMLTable */
  ASTXMLTable jjtn000 = new ASTXMLTable(JJTXMLTABLE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      KEYWORD("XMLTABLE");
      jj_consume_token(LPAREN);
      if (isKeyword("XMLNAMESPACES")) {
        XMLNamespacesClause();
        jj_consume_token(COMMA);
      } else {
        ;
      }
      StringLiteral();
      XMLTableOptions();
      jj_consume_token(RPAREN);
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTXMLNamespacesClause XMLNamespacesClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) XMLNamespacesClause */
  ASTXMLNamespacesClause jjtn000 = new ASTXMLNamespacesClause(JJTXMLNAMESPACESCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      KEYWORD("XMLNAMESPACES");
      jj_consume_token(LPAREN);
      label_49:
      while (true) {
        switch (jj_nt.kind) {
        case STRING_LITERAL:
          StringLiteral();
          jj_consume_token(AS);
          ID();
          break;
        case _DEFAULT:
          jj_consume_token(_DEFAULT);
          StringLiteral();
          break;
        default:
          jj_la1[244] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        switch (jj_nt.kind) {
        case COMMA:
          jj_consume_token(COMMA);
          break;
        default:
          jj_la1[245] = jj_gen;
          ;
        }
        switch (jj_nt.kind) {
        case _DEFAULT:
        case STRING_LITERAL:
          ;
          break;
        default:
          jj_la1[246] = jj_gen;
          break label_49;
        }
      }
      jj_consume_token(RPAREN);
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTXMLTableOptions XMLTableOptions() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) XMLTableOptions */
  ASTXMLTableOptions jjtn000 = new ASTXMLTableOptions(JJTXMLTABLEOPTIONS);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      if (isKeyword("PASSING")) {
        XMLPassingClause();
      } else {
        ;
      }
      switch (jj_nt.kind) {
      case RETURNING:
        jj_consume_token(RETURNING);
        KEYWORD("SEQUENCE");
        jj_consume_token(BY);
        jj_consume_token(29);
        break;
      default:
        jj_la1[247] = jj_gen;
        ;
      }
      switch (jj_nt.kind) {
      case COLUMNS:
        jj_consume_token(COLUMNS);
        label_50:
        while (true) {
          XMLTableColum();
          switch (jj_nt.kind) {
          case COMMA:
            jj_consume_token(COMMA);
            break;
          default:
            jj_la1[248] = jj_gen;
            ;
          }
          switch (jj_nt.kind) {
          case 26:
          case 29:
          case 30:
          case 32:
          case 33:
          case 34:
          case 35:
          case 36:
          case 37:
          case 38:
          case 39:
          case 40:
          case 41:
          case 42:
          case 43:
          case 44:
          case DEFINER:
          case CURRENT_USER:
          case SERIALLY_REUSABLE:
          case RESTRICT_REFERENCES:
          case EXCEPTION_INIT:
          case AUTONOMOUS_TRANSACTION:
          case LANGUAGE:
          case INLINE:
          case ALTER:
          case AND:
          case ANY:
          case ASC:
          case AT:
          case CHECK:
          case CLUSTER:
          case COMPRESS:
          case CREATE:
          case DESC:
          case DROP:
          case EXCLUSIVE:
          case FETCH:
          case GOTO:
          case HAVING:
          case INDEX:
          case INSERT:
          case INTERSECT:
          case IS:
          case LIKE:
          case LOCK:
          case MINUS:
          case MODE:
          case NOT:
          case NULL:
          case OPTION:
          case OR:
          case SHARE:
          case SUBTYPE:
          case THEN:
          case TO:
          case TYPE:
          case UPDATE:
          case ADD:
          case AGGREGATE:
          case APPLY:
          case ARRAY:
          case ATTRIBUTE:
          case AUTHID:
          case BINARY_INTEGER:
          case BODY:
          case BOOLEAN:
          case BULK:
          case BYTE:
          case CASCADE:
          case CHAR:
          case CHAR_BASE:
          case CLOSE:
          case COALESCE:
          case COLLECT:
          case COLUMN:
          case COMMIT:
          case CONSTANT:
          case CONSTRAINT:
          case CONSTRUCTOR:
          case CONTINUE:
          case CONVERT:
          case CROSS:
          case CUBE:
          case CURRENT:
          case CURRVAL:
          case DATA:
          case DATE:
          case DAY:
          case DECIMAL:
          case DEFINITION:
          case DELETE:
          case DISABLE:
          case DO:
          case DUPLICATED:
          case EDITIONABLE:
          case ELEMENT:
          case ELSIF:
          case ENABLE:
          case ESCAPE:
          case EXCEPT:
          case EXCEPTIONS:
          case EXECUTE:
          case EXIT:
          case EXTERNAL:
          case EXTENDED:
          case EXTENDS:
          case EXTRACT:
          case FALSE:
          case FINAL:
          case FLOAT:
          case FORALL:
          case FOREIGN:
          case FORCE:
          case FULL:
          case GLOBAL:
          case GROUPING:
          case HASH:
          case HEAP:
          case HOUR:
          case IMMEDIATE:
          case INNER:
          case INDICES:
          case INCLUDING:
          case INDEXTYPE:
          case INDICATOR:
          case INFINITE:
          case INSTANTIABLE:
          case INTEGER:
          case INTERFACE:
          case INTERVAL:
          case INVALIDATE:
          case ISOLATION:
          case JAVA:
          case JOIN:
          case KEY:
          case LEVEL:
          case LIKEC:
          case LIKE2:
          case LIKE4:
          case LIMIT:
          case LIMITED:
          case LONG:
          case LOOP:
          case MAP:
          case MEMBER:
          case MERGE:
          case METADATA:
          case MINUTE:
          case MLSLABEL:
          case MODIFY:
          case MOD:
          case MONTH:
          case NAN:
          case NATURAL:
          case NATURALN:
          case NEW:
          case NEXT:
          case NEXTVAL:
          case NO:
          case NOCOPY:
          case NONE:
          case NONEDITIONABLE:
          case NULLIF:
          case NULLS:
          case NUMBER:
          case BFILE_BASE:
          case BLOB_BASE:
          case CLOB_BASE:
          case DATE_BASE:
          case NUMBER_BASE:
          case OBJECT:
          case OCIROWID:
          case OFFSET:
          case OID:
          case ONLY:
          case OPAQUE:
          case OPEN:
          case OPERATOR:
          case ORGANIZATION:
          case OTHERS:
          case OUT:
          case OUTER:
          case OVERRIDING:
          case PACKAGE:
          case PARTITION:
          case PCTFREE:
          case PERCENT:
          case PLS_INTEGER:
          case POSITIVE:
          case POSITIVEN:
          case PRESERVE:
          case PRIOR:
          case PRIMARY:
          case PRIVATE:
          case RAISE:
          case RANGE:
          case RAW:
          case REAL:
          case RECORD:
          case REFERENCES:
          case REGEXP_LIKE:
          case RELEASE:
          case RELIES_ON:
          case RENAME:
          case RESULT:
          case RETURN:
          case RETURNING:
          case REVERSE:
          case ROLLBACK:
          case ROLLUP:
          case ROW:
          case ROWS:
          case ROWID:
          case ROWNUM:
          case ROWTYPE:
          case SAVE:
          case SAVEPOINT:
          case SECOND:
          case SELF:
          case SEPARATE:
          case SETS:
          case SIBLINGS:
          case SHARDED:
          case SHARING:
          case SMALLINT:
          case SOME:
          case SPACE:
          case SQLCODE:
          case SQLERRM:
          case STATIC:
          case SUBSTITUTABLE:
          case SUCCESSFUL:
          case SYNONYM:
          case SYS_REFCURSOR:
          case TEMPORARY:
          case TIES:
          case TIME:
          case TIMESTAMP:
          case TIMEZONE_REGION:
          case TIMEZONE_ABBR:
          case TIMEZONE_MINUTE:
          case TIMEZONE_HOUR:
          case TRANSACTION:
          case TRIGGER:
          case TRUE:
          case UI:
          case UNDER:
          case USING:
          case WHILE:
          case YES:
          case A:
          case VARCHAR:
          case VARCHAR2:
          case DOUBLE:
          case DEC:
          case PRECISION:
          case INT:
          case NUMERIC:
          case SIGNTYPE:
          case NCHAR:
          case NVARCHAR2:
          case STRING:
          case UROWID:
          case VARRAY:
          case VARYING:
          case BFILE:
          case BLOB:
          case CLOB:
          case NCLOB:
          case YEAR:
          case LOCAL:
          case ZONE:
          case CHARACTER:
          case AFTER:
          case BEFORE:
          case OLD:
          case PARENT:
          case GENERATED:
          case SCOPE:
          case INITIALLY:
          case DEFERRABLE:
          case DEFERRED:
          case ANALYZE:
          case ASSOCIATE:
          case AUDIT:
          case COMPOUND:
          case DATABASE:
          case CALL:
          case DISASSOCIATE:
          case EACH:
          case FOLLOWS:
          case LOGOFF:
          case LOGON:
          case NESTED:
          case NOAUDIT:
          case SCHEMA:
          case SERVERERROR:
          case SHUTDOWN:
          case STARTUP:
          case STATEMENT:
          case STATISTICS:
          case SUSPEND:
          case TRUNCATE:
          case WRAPPED:
          case LIBRARY:
          case NAME:
          case STRUCT:
          case CONTEXT:
          case PARAMETERS:
          case LENGTH:
          case TDO:
          case MAXLEN:
          case CHARSETID:
          case CHARSETFORM:
          case ACCESSIBLE:
          case ATTACH:
          case CAST:
          case TREAT:
          case LEFT:
          case RIGHT:
          case BOTH:
          case EMPTY:
          case MULTISET:
          case SUBMULTISET:
          case LEADING:
          case TRAILING:
          case CHAR_CS:
          case NCHAR_CS:
          case DBTIMEZONE:
          case SESSIONTIMEZONE:
          case AUTHENTICATED:
          case LINK:
          case SHARED:
          case DIRECTORY:
          case USER:
          case READ:
          case LATERAL:
          case NOCYCLE:
          case CONNECT_BY_ROOT:
          case IDENTIFIER:
          case QUOTED_LITERAL:
          case JAVA_INTERFACE_CLASS:
          case 493:
            ;
            break;
          default:
            jj_la1[249] = jj_gen;
            break label_50;
          }
        }
        break;
      default:
        jj_la1[250] = jj_gen;
        ;
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTXMLTableColum XMLTableColum() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) XMLTableColum */
  ASTXMLTableColum jjtn000 = new ASTXMLTableColum(JJTXMLTABLECOLUM);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      Column();
      switch (jj_nt.kind) {
      case FOR:
        jj_consume_token(FOR);
        KEYWORD("ORDINALITY");
        break;
      default:
        jj_la1[254] = jj_gen;
        if (jj_2_96(1)) {
          if (isKeyword("XMLTYPE")) {
            KEYWORD("XMLTYPE");
            switch (jj_nt.kind) {
            case LPAREN:
              jj_consume_token(LPAREN);
              KEYWORD("SEQUENCE");
              jj_consume_token(RPAREN);
              jj_consume_token(BY);
              jj_consume_token(29);
              break;
            default:
              jj_la1[251] = jj_gen;
              ;
            }
          } else {
            switch (jj_nt.kind) {
            case 26:
            case 29:
            case 30:
            case 32:
            case 33:
            case 34:
            case 35:
            case 36:
            case 37:
            case 38:
            case 39:
            case 40:
            case 41:
            case 42:
            case 43:
            case 44:
            case DEFINER:
            case CURRENT_USER:
            case LANGUAGE:
            case INLINE:
            case AT:
            case SUBTYPE:
            case TYPE:
            case ADD:
            case AGGREGATE:
            case APPLY:
            case ARRAY:
            case ATTRIBUTE:
            case AUTHID:
            case BINARY_INTEGER:
            case BODY:
            case BOOLEAN:
            case BULK:
            case BYTE:
            case CASCADE:
            case CHAR:
            case CHAR_BASE:
            case CLOSE:
            case COALESCE:
            case COLLECT:
            case COLUMN:
            case COMMIT:
            case CONSTRAINT:
            case CONSTRUCTOR:
            case CONTINUE:
            case CONVERT:
            case CROSS:
            case CUBE:
            case CURRENT:
            case DATA:
            case DATE:
            case DAY:
            case DECIMAL:
            case DEFINITION:
            case DISABLE:
            case DUPLICATED:
            case EDITIONABLE:
            case ELEMENT:
            case ENABLE:
            case ESCAPE:
            case EXCEPT:
            case EXCEPTIONS:
            case EXECUTE:
            case EXIT:
            case EXTERNAL:
            case EXTENDED:
            case EXTENDS:
            case EXTRACT:
            case FALSE:
            case FINAL:
            case FLOAT:
            case FOREIGN:
            case FORCE:
            case FULL:
            case GLOBAL:
            case GROUPING:
            case HASH:
            case HEAP:
            case HOUR:
            case IMMEDIATE:
            case INNER:
            case INDICES:
            case INCLUDING:
            case INDEXTYPE:
            case INDICATOR:
            case INFINITE:
            case INSTANTIABLE:
            case INTEGER:
            case INTERVAL:
            case INVALIDATE:
            case ISOLATION:
            case JAVA:
            case JOIN:
            case KEY:
            case LEVEL:
            case LIKEC:
            case LIKE2:
            case LIKE4:
            case LIMIT:
            case LONG:
            case LOOP:
            case MAP:
            case MEMBER:
            case MERGE:
            case METADATA:
            case MINUTE:
            case MLSLABEL:
            case MODIFY:
            case MOD:
            case MONTH:
            case NAN:
            case NATURAL:
            case NATURALN:
            case NEW:
            case NEXT:
            case NO:
            case NONE:
            case NONEDITIONABLE:
            case NULLIF:
            case NULLS:
            case NUMBER:
            case BFILE_BASE:
            case BLOB_BASE:
            case CLOB_BASE:
            case DATE_BASE:
            case NUMBER_BASE:
            case OBJECT:
            case OFFSET:
            case OID:
            case ONLY:
            case OPAQUE:
            case OPEN:
            case OPERATOR:
            case ORGANIZATION:
            case OTHERS:
            case OUTER:
            case OVERRIDING:
            case PACKAGE:
            case PARTITION:
            case PERCENT:
            case PLS_INTEGER:
            case POSITIVE:
            case POSITIVEN:
            case PRESERVE:
            case PRIMARY:
            case PRIVATE:
            case RANGE:
            case RAW:
            case REAL:
            case RECORD:
            case REFERENCES:
            case REGEXP_LIKE:
            case RELEASE:
            case RELIES_ON:
            case RENAME:
            case RESULT:
            case RETURN:
            case RETURNING:
            case REVERSE:
            case ROLLBACK:
            case ROLLUP:
            case ROW:
            case ROWS:
            case ROWID:
            case ROWNUM:
            case SAVE:
            case SAVEPOINT:
            case SECOND:
            case SELF:
            case SETS:
            case SIBLINGS:
            case SHARDED:
            case SHARING:
            case SMALLINT:
            case SOME:
            case SPACE:
            case SQLCODE:
            case SQLERRM:
            case STATIC:
            case SUBSTITUTABLE:
            case SUCCESSFUL:
            case SYS_REFCURSOR:
            case TEMPORARY:
            case TIES:
            case TIME:
            case TIMESTAMP:
            case TIMEZONE_REGION:
            case TIMEZONE_ABBR:
            case TIMEZONE_MINUTE:
            case TIMEZONE_HOUR:
            case TRANSACTION:
            case TRUE:
            case UNDER:
            case USING:
            case YES:
            case A:
            case VARCHAR:
            case VARCHAR2:
            case DOUBLE:
            case DEC:
            case PRECISION:
            case INT:
            case NUMERIC:
            case SIGNTYPE:
            case NCHAR:
            case NVARCHAR2:
            case STRING:
            case UROWID:
            case VARRAY:
            case VARYING:
            case BFILE:
            case BLOB:
            case CLOB:
            case NCLOB:
            case YEAR:
            case LOCAL:
            case ZONE:
            case CHARACTER:
            case AFTER:
            case BEFORE:
            case OLD:
            case PARENT:
            case GENERATED:
            case SCOPE:
            case INITIALLY:
            case DEFERRABLE:
            case DEFERRED:
            case CC_IF:
            case ANALYZE:
            case ASSOCIATE:
            case AUDIT:
            case COMPOUND:
            case DATABASE:
            case CALL:
            case DISASSOCIATE:
            case EACH:
            case FOLLOWS:
            case LOGOFF:
            case LOGON:
            case NESTED:
            case NOAUDIT:
            case SCHEMA:
            case SERVERERROR:
            case SHUTDOWN:
            case STARTUP:
            case STATEMENT:
            case STATISTICS:
            case SUSPEND:
            case TRUNCATE:
            case WRAPPED:
            case LIBRARY:
            case NAME:
            case STRUCT:
            case CONTEXT:
            case PARAMETERS:
            case LENGTH:
            case TDO:
            case MAXLEN:
            case CHARSETID:
            case CHARSETFORM:
            case ACCESSIBLE:
            case ATTACH:
            case CAST:
            case TREAT:
            case LEFT:
            case RIGHT:
            case BOTH:
            case EMPTY:
            case MULTISET:
            case SUBMULTISET:
            case LEADING:
            case TRAILING:
            case CHAR_CS:
            case NCHAR_CS:
            case DBTIMEZONE:
            case SESSIONTIMEZONE:
            case AUTHENTICATED:
            case LINK:
            case SHARED:
            case DIRECTORY:
            case USER:
            case READ:
            case LATERAL:
            case NOCYCLE:
            case CONNECT_BY_ROOT:
            case IDENTIFIER:
            case QUOTED_LITERAL:
            case 493:
              Datatype();
              break;
            default:
              jj_la1[252] = jj_gen;
              jj_consume_token(-1);
              throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
            }
          }
          if (isKeyword("PATH")) {
            KEYWORD("PATH");
            StringLiteral();
          } else {
            ;
          }
          switch (jj_nt.kind) {
          case _DEFAULT:
            jj_consume_token(_DEFAULT);
            SqlExpression();
            break;
          default:
            jj_la1[253] = jj_gen;
            ;
          }
        } else {
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTXMLPassingClause XMLPassingClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) XMLPassingClause */
  ASTXMLPassingClause jjtn000 = new ASTXMLPassingClause(JJTXMLPASSINGCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      KEYWORD("PASSING");
      switch (jj_nt.kind) {
      case BY:
        jj_consume_token(BY);
        KEYWORD("VALUE");
        break;
      default:
        jj_la1[255] = jj_gen;
        ;
      }
      SqlExpression();
      if (jj_2_97(2)) {
        jj_consume_token(AS);
        ID();
      } else {
        ;
      }
      label_51:
      while (true) {
        switch (jj_nt.kind) {
        case COMMA:
          ;
          break;
        default:
          jj_la1[256] = jj_gen;
          break label_51;
        }
        jj_consume_token(COMMA);
        SqlExpression();
        if (jj_2_98(2)) {
          jj_consume_token(AS);
          ID();
        } else {
          ;
        }
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTXMLExists XMLExists() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) XMLExists */
  ASTXMLExists jjtn000 = new ASTXMLExists(JJTXMLEXISTS);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      KEYWORD("XMLEXISTS");
      jj_consume_token(LPAREN);
      StringLiteral();
      if (isKeyword("PASSING")) {
        XMLPassingClause();
      } else {
        ;
      }
      jj_consume_token(RPAREN);
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTXMLElement XMLElement() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) XMLElement */
  ASTXMLElement jjtn000 = new ASTXMLElement(JJTXMLELEMENT);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      jj_consume_token(LPAREN);
      if (isKeyword("ENTITYESCAPING") || isKeyword("NOENTITYESCAPING")) {
        jj_consume_token(IDENTIFIER);
      } else {
        ;
      }
      if (isKeyword("EVALNAME")) {
        KEYWORD("EVALNAME");
        Expression();
      } else if (jj_2_99(1)) {
        if (isKeyword("NAME")) {
          KEYWORD("NAME");
        } else {
          ;
        }
        ID();
      } else {
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      switch (jj_nt.kind) {
      case COMMA:
        jj_consume_token(COMMA);
        if (isKeyword("XMLATTRIBUTES")) {
          XMLAttributesClause();
        } else {
          switch (jj_nt.kind) {
          case LPAREN:
          case PLUSSIGN:
          case MINUSSIGN:
          case STAR:
          case 26:
          case 29:
          case 30:
          case 32:
          case 33:
          case 34:
          case 35:
          case 36:
          case 37:
          case 38:
          case 39:
          case 40:
          case 41:
          case 42:
          case 43:
          case 44:
          case DEFINER:
          case CURRENT_USER:
          case SERIALLY_REUSABLE:
          case RESTRICT_REFERENCES:
          case EXCEPTION_INIT:
          case AUTONOMOUS_TRANSACTION:
          case LANGUAGE:
          case INLINE:
          case ALTER:
          case AND:
          case ANY:
          case ASC:
          case AT:
          case CASE:
          case CHECK:
          case CLUSTER:
          case COMPRESS:
          case CREATE:
          case DESC:
          case DROP:
          case EXCLUSIVE:
          case FETCH:
          case GOTO:
          case HAVING:
          case INDEX:
          case INSERT:
          case INTERSECT:
          case IS:
          case LIKE:
          case LOCK:
          case MINUS:
          case MODE:
          case NOT:
          case NULL:
          case OPTION:
          case OR:
          case SHARE:
          case SQL:
          case SUBTYPE:
          case THEN:
          case TO:
          case TYPE:
          case UPDATE:
          case WITH:
          case ADD:
          case AGGREGATE:
          case APPLY:
          case ARRAY:
          case ATTRIBUTE:
          case AUTHID:
          case BINARY_INTEGER:
          case BODY:
          case BOOLEAN:
          case BULK:
          case BYTE:
          case CASCADE:
          case CHAR:
          case CHAR_BASE:
          case CLOSE:
          case COALESCE:
          case COLLECT:
          case COLUMN:
          case COMMIT:
          case CONSTANT:
          case CONSTRAINT:
          case CONSTRUCTOR:
          case CONTINUE:
          case CONVERT:
          case CROSS:
          case CUBE:
          case CURRENT:
          case CURRVAL:
          case DATA:
          case DATE:
          case DAY:
          case DECIMAL:
          case DEFINITION:
          case DELETE:
          case DISABLE:
          case DO:
          case DUPLICATED:
          case EDITIONABLE:
          case ELEMENT:
          case ELSIF:
          case ENABLE:
          case ESCAPE:
          case EXCEPT:
          case EXCEPTIONS:
          case EXECUTE:
          case EXIT:
          case EXTERNAL:
          case EXTENDED:
          case EXTENDS:
          case EXTRACT:
          case FALSE:
          case FINAL:
          case FLOAT:
          case FORALL:
          case FOREIGN:
          case FORCE:
          case FULL:
          case GLOBAL:
          case GROUPING:
          case HASH:
          case HEAP:
          case HOUR:
          case IMMEDIATE:
          case INNER:
          case INDICES:
          case INCLUDING:
          case INDEXTYPE:
          case INDICATOR:
          case INFINITE:
          case INSTANTIABLE:
          case INTEGER:
          case INTERFACE:
          case INTERVAL:
          case INVALIDATE:
          case ISOLATION:
          case JAVA:
          case JOIN:
          case KEY:
          case LEVEL:
          case LIKEC:
          case LIKE2:
          case LIKE4:
          case LIMIT:
          case LIMITED:
          case LONG:
          case LOOP:
          case MAP:
          case MEMBER:
          case MERGE:
          case METADATA:
          case MINUTE:
          case MLSLABEL:
          case MODIFY:
          case MOD:
          case MONTH:
          case NAN:
          case NATURAL:
          case NATURALN:
          case NEW:
          case NEW_DOT:
          case NEXT:
          case NEXTVAL:
          case NO:
          case NOCOPY:
          case NONE:
          case NONEDITIONABLE:
          case NULLIF:
          case NULLS:
          case NUMBER:
          case BFILE_BASE:
          case BLOB_BASE:
          case CLOB_BASE:
          case DATE_BASE:
          case NUMBER_BASE:
          case OBJECT:
          case OCIROWID:
          case OFFSET:
          case OID:
          case ONLY:
          case OPAQUE:
          case OPEN:
          case OPERATOR:
          case ORGANIZATION:
          case OTHERS:
          case OUT:
          case OUTER:
          case OVERRIDING:
          case PACKAGE:
          case PARTITION:
          case PCTFREE:
          case PERCENT:
          case PLS_INTEGER:
          case POSITIVE:
          case POSITIVEN:
          case PRESERVE:
          case PRIOR:
          case PRIMARY:
          case PRIVATE:
          case RAISE:
          case RANGE:
          case RAW:
          case REAL:
          case RECORD:
          case REFERENCES:
          case REGEXP_LIKE:
          case RELEASE:
          case RELIES_ON:
          case RENAME:
          case RESULT:
          case RETURN:
          case RETURNING:
          case REVERSE:
          case ROLLBACK:
          case ROLLUP:
          case ROW:
          case ROWS:
          case ROWID:
          case ROWNUM:
          case ROWTYPE:
          case SAVE:
          case SAVEPOINT:
          case SECOND:
          case SELF:
          case SEPARATE:
          case SETS:
          case SIBLINGS:
          case SHARDED:
          case SHARING:
          case SMALLINT:
          case SOME:
          case SPACE:
          case SQLCODE:
          case SQLERRM:
          case STATIC:
          case SUBSTITUTABLE:
          case SUCCESSFUL:
          case SYNONYM:
          case SYS_REFCURSOR:
          case TEMPORARY:
          case TIES:
          case TIME:
          case TIMESTAMP:
          case TIMEZONE_REGION:
          case TIMEZONE_ABBR:
          case TIMEZONE_MINUTE:
          case TIMEZONE_HOUR:
          case TRANSACTION:
          case TRIGGER:
          case TRUE:
          case UI:
          case UNDER:
          case USING:
          case WHILE:
          case YES:
          case A:
          case VARCHAR:
          case VARCHAR2:
          case DOUBLE:
          case DEC:
          case PRECISION:
          case INT:
          case NUMERIC:
          case SIGNTYPE:
          case NCHAR:
          case NVARCHAR2:
          case STRING:
          case UROWID:
          case VARRAY:
          case VARYING:
          case BFILE:
          case BLOB:
          case CLOB:
          case NCLOB:
          case YEAR:
          case LOCAL:
          case ZONE:
          case CHARACTER:
          case AFTER:
          case BEFORE:
          case OLD:
          case PARENT:
          case GENERATED:
          case SCOPE:
          case INITIALLY:
          case DEFERRABLE:
          case DEFERRED:
          case CC_IF:
          case ANALYZE:
          case ASSOCIATE:
          case AUDIT:
          case COMPOUND:
          case DATABASE:
          case CALL:
          case DISASSOCIATE:
          case EACH:
          case FOLLOWS:
          case LOGOFF:
          case LOGON:
          case NESTED:
          case NOAUDIT:
          case SCHEMA:
          case SERVERERROR:
          case SHUTDOWN:
          case STARTUP:
          case STATEMENT:
          case STATISTICS:
          case SUSPEND:
          case TRUNCATE:
          case WRAPPED:
          case LIBRARY:
          case NAME:
          case STRUCT:
          case CONTEXT:
          case PARAMETERS:
          case LENGTH:
          case TDO:
          case MAXLEN:
          case CHARSETID:
          case CHARSETFORM:
          case ACCESSIBLE:
          case ATTACH:
          case CAST:
          case TREAT:
          case LEFT:
          case RIGHT:
          case BOTH:
          case EMPTY:
          case MULTISET:
          case SUBMULTISET:
          case LEADING:
          case TRAILING:
          case CHAR_CS:
          case NCHAR_CS:
          case DBTIMEZONE:
          case SESSIONTIMEZONE:
          case AUTHENTICATED:
          case LINK:
          case SHARED:
          case DIRECTORY:
          case USER:
          case READ:
          case LATERAL:
          case NOCYCLE:
          case CONNECT_BY_ROOT:
          case IDENTIFIER:
          case UNSIGNED_NUMERIC_LITERAL:
          case CHARACTER_LITERAL:
          case QUOTED_LITERAL:
          case JAVA_INTERFACE_CLASS:
          case STRING_LITERAL:
          case 493:
            Expression();
            switch (jj_nt.kind) {
            case 26:
            case 29:
            case 30:
            case 32:
            case 33:
            case 34:
            case 35:
            case 36:
            case 37:
            case 38:
            case 39:
            case 40:
            case 41:
            case 42:
            case 43:
            case 44:
            case DEFINER:
            case CURRENT_USER:
            case SERIALLY_REUSABLE:
            case RESTRICT_REFERENCES:
            case EXCEPTION_INIT:
            case AUTONOMOUS_TRANSACTION:
            case LANGUAGE:
            case INLINE:
            case ALTER:
            case AND:
            case ANY:
            case AS:
            case ASC:
            case AT:
            case CHECK:
            case CLUSTER:
            case COMPRESS:
            case CREATE:
            case DESC:
            case DROP:
            case EXCLUSIVE:
            case FETCH:
            case GOTO:
            case HAVING:
            case INDEX:
            case INSERT:
            case INTERSECT:
            case IS:
            case LIKE:
            case LOCK:
            case MINUS:
            case MODE:
            case NOT:
            case NULL:
            case OPTION:
            case OR:
            case SHARE:
            case SUBTYPE:
            case THEN:
            case TO:
            case TYPE:
            case UPDATE:
            case ADD:
            case AGGREGATE:
            case APPLY:
            case ARRAY:
            case ATTRIBUTE:
            case AUTHID:
            case BINARY_INTEGER:
            case BODY:
            case BOOLEAN:
            case BULK:
            case BYTE:
            case CASCADE:
            case CHAR:
            case CHAR_BASE:
            case CLOSE:
            case COALESCE:
            case COLLECT:
            case COLUMN:
            case COMMIT:
            case CONSTANT:
            case CONSTRAINT:
            case CONSTRUCTOR:
            case CONTINUE:
            case CONVERT:
            case CROSS:
            case CUBE:
            case CURRENT:
            case CURRVAL:
            case DATA:
            case DATE:
            case DAY:
            case DECIMAL:
            case DEFINITION:
            case DELETE:
            case DISABLE:
            case DO:
            case DUPLICATED:
            case EDITIONABLE:
            case ELEMENT:
            case ELSIF:
            case ENABLE:
            case ESCAPE:
            case EXCEPT:
            case EXCEPTIONS:
            case EXECUTE:
            case EXIT:
            case EXTERNAL:
            case EXTENDED:
            case EXTENDS:
            case EXTRACT:
            case FALSE:
            case FINAL:
            case FLOAT:
            case FORALL:
            case FOREIGN:
            case FORCE:
            case FULL:
            case GLOBAL:
            case GROUPING:
            case HASH:
            case HEAP:
            case HOUR:
            case IMMEDIATE:
            case INNER:
            case INDICES:
            case INCLUDING:
            case INDEXTYPE:
            case INDICATOR:
            case INFINITE:
            case INSTANTIABLE:
            case INTEGER:
            case INTERFACE:
            case INTERVAL:
            case INVALIDATE:
            case ISOLATION:
            case JAVA:
            case JOIN:
            case KEY:
            case LEVEL:
            case LIKEC:
            case LIKE2:
            case LIKE4:
            case LIMIT:
            case LIMITED:
            case LONG:
            case LOOP:
            case MAP:
            case MEMBER:
            case MERGE:
            case METADATA:
            case MINUTE:
            case MLSLABEL:
            case MODIFY:
            case MOD:
            case MONTH:
            case NAN:
            case NATURAL:
            case NATURALN:
            case NEW:
            case NEXT:
            case NEXTVAL:
            case NO:
            case NOCOPY:
            case NONE:
            case NONEDITIONABLE:
            case NULLIF:
            case NULLS:
            case NUMBER:
            case BFILE_BASE:
            case BLOB_BASE:
            case CLOB_BASE:
            case DATE_BASE:
            case NUMBER_BASE:
            case OBJECT:
            case OCIROWID:
            case OFFSET:
            case OID:
            case ONLY:
            case OPAQUE:
            case OPEN:
            case OPERATOR:
            case ORGANIZATION:
            case OTHERS:
            case OUT:
            case OUTER:
            case OVERRIDING:
            case PACKAGE:
            case PARTITION:
            case PCTFREE:
            case PERCENT:
            case PLS_INTEGER:
            case POSITIVE:
            case POSITIVEN:
            case PRESERVE:
            case PRIOR:
            case PRIMARY:
            case PRIVATE:
            case RAISE:
            case RANGE:
            case RAW:
            case REAL:
            case RECORD:
            case REFERENCES:
            case REGEXP_LIKE:
            case RELEASE:
            case RELIES_ON:
            case RENAME:
            case RESULT:
            case RETURN:
            case RETURNING:
            case REVERSE:
            case ROLLBACK:
            case ROLLUP:
            case ROW:
            case ROWS:
            case ROWID:
            case ROWNUM:
            case ROWTYPE:
            case SAVE:
            case SAVEPOINT:
            case SECOND:
            case SELF:
            case SEPARATE:
            case SETS:
            case SIBLINGS:
            case SHARDED:
            case SHARING:
            case SMALLINT:
            case SOME:
            case SPACE:
            case SQLCODE:
            case SQLERRM:
            case STATIC:
            case SUBSTITUTABLE:
            case SUCCESSFUL:
            case SYNONYM:
            case SYS_REFCURSOR:
            case TEMPORARY:
            case TIES:
            case TIME:
            case TIMESTAMP:
            case TIMEZONE_REGION:
            case TIMEZONE_ABBR:
            case TIMEZONE_MINUTE:
            case TIMEZONE_HOUR:
            case TRANSACTION:
            case TRIGGER:
            case TRUE:
            case UI:
            case UNDER:
            case USING:
            case WHILE:
            case YES:
            case A:
            case VARCHAR:
            case VARCHAR2:
            case DOUBLE:
            case DEC:
            case PRECISION:
            case INT:
            case NUMERIC:
            case SIGNTYPE:
            case NCHAR:
            case NVARCHAR2:
            case STRING:
            case UROWID:
            case VARRAY:
            case VARYING:
            case BFILE:
            case BLOB:
            case CLOB:
            case NCLOB:
            case YEAR:
            case LOCAL:
            case ZONE:
            case CHARACTER:
            case AFTER:
            case BEFORE:
            case OLD:
            case PARENT:
            case GENERATED:
            case SCOPE:
            case INITIALLY:
            case DEFERRABLE:
            case DEFERRED:
            case ANALYZE:
            case ASSOCIATE:
            case AUDIT:
            case COMPOUND:
            case DATABASE:
            case CALL:
            case DISASSOCIATE:
            case EACH:
            case FOLLOWS:
            case LOGOFF:
            case LOGON:
            case NESTED:
            case NOAUDIT:
            case SCHEMA:
            case SERVERERROR:
            case SHUTDOWN:
            case STARTUP:
            case STATEMENT:
            case STATISTICS:
            case SUSPEND:
            case TRUNCATE:
            case WRAPPED:
            case LIBRARY:
            case NAME:
            case STRUCT:
            case CONTEXT:
            case PARAMETERS:
            case LENGTH:
            case TDO:
            case MAXLEN:
            case CHARSETID:
            case CHARSETFORM:
            case ACCESSIBLE:
            case ATTACH:
            case CAST:
            case TREAT:
            case LEFT:
            case RIGHT:
            case BOTH:
            case EMPTY:
            case MULTISET:
            case SUBMULTISET:
            case LEADING:
            case TRAILING:
            case CHAR_CS:
            case NCHAR_CS:
            case DBTIMEZONE:
            case SESSIONTIMEZONE:
            case AUTHENTICATED:
            case LINK:
            case SHARED:
            case DIRECTORY:
            case USER:
            case READ:
            case LATERAL:
            case NOCYCLE:
            case CONNECT_BY_ROOT:
            case IDENTIFIER:
            case QUOTED_LITERAL:
            case JAVA_INTERFACE_CLASS:
            case 493:
              switch (jj_nt.kind) {
              case AS:
                jj_consume_token(AS);
                break;
              default:
                jj_la1[257] = jj_gen;
                ;
              }
              ColumnAlias();
              break;
            default:
              jj_la1[258] = jj_gen;
              ;
            }
            break;
          default:
            jj_la1[259] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
        }
        break;
      default:
        jj_la1[260] = jj_gen;
        ;
      }
      label_52:
      while (true) {
        switch (jj_nt.kind) {
        case COMMA:
          ;
          break;
        default:
          jj_la1[261] = jj_gen;
          break label_52;
        }
        jj_consume_token(COMMA);
        Expression();
        switch (jj_nt.kind) {
        case 26:
        case 29:
        case 30:
        case 32:
        case 33:
        case 34:
        case 35:
        case 36:
        case 37:
        case 38:
        case 39:
        case 40:
        case 41:
        case 42:
        case 43:
        case 44:
        case DEFINER:
        case CURRENT_USER:
        case SERIALLY_REUSABLE:
        case RESTRICT_REFERENCES:
        case EXCEPTION_INIT:
        case AUTONOMOUS_TRANSACTION:
        case LANGUAGE:
        case INLINE:
        case ALTER:
        case AND:
        case ANY:
        case AS:
        case ASC:
        case AT:
        case CHECK:
        case CLUSTER:
        case COMPRESS:
        case CREATE:
        case DESC:
        case DROP:
        case EXCLUSIVE:
        case FETCH:
        case GOTO:
        case HAVING:
        case INDEX:
        case INSERT:
        case INTERSECT:
        case IS:
        case LIKE:
        case LOCK:
        case MINUS:
        case MODE:
        case NOT:
        case NULL:
        case OPTION:
        case OR:
        case SHARE:
        case SUBTYPE:
        case THEN:
        case TO:
        case TYPE:
        case UPDATE:
        case ADD:
        case AGGREGATE:
        case APPLY:
        case ARRAY:
        case ATTRIBUTE:
        case AUTHID:
        case BINARY_INTEGER:
        case BODY:
        case BOOLEAN:
        case BULK:
        case BYTE:
        case CASCADE:
        case CHAR:
        case CHAR_BASE:
        case CLOSE:
        case COALESCE:
        case COLLECT:
        case COLUMN:
        case COMMIT:
        case CONSTANT:
        case CONSTRAINT:
        case CONSTRUCTOR:
        case CONTINUE:
        case CONVERT:
        case CROSS:
        case CUBE:
        case CURRENT:
        case CURRVAL:
        case DATA:
        case DATE:
        case DAY:
        case DECIMAL:
        case DEFINITION:
        case DELETE:
        case DISABLE:
        case DO:
        case DUPLICATED:
        case EDITIONABLE:
        case ELEMENT:
        case ELSIF:
        case ENABLE:
        case ESCAPE:
        case EXCEPT:
        case EXCEPTIONS:
        case EXECUTE:
        case EXIT:
        case EXTERNAL:
        case EXTENDED:
        case EXTENDS:
        case EXTRACT:
        case FALSE:
        case FINAL:
        case FLOAT:
        case FORALL:
        case FOREIGN:
        case FORCE:
        case FULL:
        case GLOBAL:
        case GROUPING:
        case HASH:
        case HEAP:
        case HOUR:
        case IMMEDIATE:
        case INNER:
        case INDICES:
        case INCLUDING:
        case INDEXTYPE:
        case INDICATOR:
        case INFINITE:
        case INSTANTIABLE:
        case INTEGER:
        case INTERFACE:
        case INTERVAL:
        case INVALIDATE:
        case ISOLATION:
        case JAVA:
        case JOIN:
        case KEY:
        case LEVEL:
        case LIKEC:
        case LIKE2:
        case LIKE4:
        case LIMIT:
        case LIMITED:
        case LONG:
        case LOOP:
        case MAP:
        case MEMBER:
        case MERGE:
        case METADATA:
        case MINUTE:
        case MLSLABEL:
        case MODIFY:
        case MOD:
        case MONTH:
        case NAN:
        case NATURAL:
        case NATURALN:
        case NEW:
        case NEXT:
        case NEXTVAL:
        case NO:
        case NOCOPY:
        case NONE:
        case NONEDITIONABLE:
        case NULLIF:
        case NULLS:
        case NUMBER:
        case BFILE_BASE:
        case BLOB_BASE:
        case CLOB_BASE:
        case DATE_BASE:
        case NUMBER_BASE:
        case OBJECT:
        case OCIROWID:
        case OFFSET:
        case OID:
        case ONLY:
        case OPAQUE:
        case OPEN:
        case OPERATOR:
        case ORGANIZATION:
        case OTHERS:
        case OUT:
        case OUTER:
        case OVERRIDING:
        case PACKAGE:
        case PARTITION:
        case PCTFREE:
        case PERCENT:
        case PLS_INTEGER:
        case POSITIVE:
        case POSITIVEN:
        case PRESERVE:
        case PRIOR:
        case PRIMARY:
        case PRIVATE:
        case RAISE:
        case RANGE:
        case RAW:
        case REAL:
        case RECORD:
        case REFERENCES:
        case REGEXP_LIKE:
        case RELEASE:
        case RELIES_ON:
        case RENAME:
        case RESULT:
        case RETURN:
        case RETURNING:
        case REVERSE:
        case ROLLBACK:
        case ROLLUP:
        case ROW:
        case ROWS:
        case ROWID:
        case ROWNUM:
        case ROWTYPE:
        case SAVE:
        case SAVEPOINT:
        case SECOND:
        case SELF:
        case SEPARATE:
        case SETS:
        case SIBLINGS:
        case SHARDED:
        case SHARING:
        case SMALLINT:
        case SOME:
        case SPACE:
        case SQLCODE:
        case SQLERRM:
        case STATIC:
        case SUBSTITUTABLE:
        case SUCCESSFUL:
        case SYNONYM:
        case SYS_REFCURSOR:
        case TEMPORARY:
        case TIES:
        case TIME:
        case TIMESTAMP:
        case TIMEZONE_REGION:
        case TIMEZONE_ABBR:
        case TIMEZONE_MINUTE:
        case TIMEZONE_HOUR:
        case TRANSACTION:
        case TRIGGER:
        case TRUE:
        case UI:
        case UNDER:
        case USING:
        case WHILE:
        case YES:
        case A:
        case VARCHAR:
        case VARCHAR2:
        case DOUBLE:
        case DEC:
        case PRECISION:
        case INT:
        case NUMERIC:
        case SIGNTYPE:
        case NCHAR:
        case NVARCHAR2:
        case STRING:
        case UROWID:
        case VARRAY:
        case VARYING:
        case BFILE:
        case BLOB:
        case CLOB:
        case NCLOB:
        case YEAR:
        case LOCAL:
        case ZONE:
        case CHARACTER:
        case AFTER:
        case BEFORE:
        case OLD:
        case PARENT:
        case GENERATED:
        case SCOPE:
        case INITIALLY:
        case DEFERRABLE:
        case DEFERRED:
        case ANALYZE:
        case ASSOCIATE:
        case AUDIT:
        case COMPOUND:
        case DATABASE:
        case CALL:
        case DISASSOCIATE:
        case EACH:
        case FOLLOWS:
        case LOGOFF:
        case LOGON:
        case NESTED:
        case NOAUDIT:
        case SCHEMA:
        case SERVERERROR:
        case SHUTDOWN:
        case STARTUP:
        case STATEMENT:
        case STATISTICS:
        case SUSPEND:
        case TRUNCATE:
        case WRAPPED:
        case LIBRARY:
        case NAME:
        case STRUCT:
        case CONTEXT:
        case PARAMETERS:
        case LENGTH:
        case TDO:
        case MAXLEN:
        case CHARSETID:
        case CHARSETFORM:
        case ACCESSIBLE:
        case ATTACH:
        case CAST:
        case TREAT:
        case LEFT:
        case RIGHT:
        case BOTH:
        case EMPTY:
        case MULTISET:
        case SUBMULTISET:
        case LEADING:
        case TRAILING:
        case CHAR_CS:
        case NCHAR_CS:
        case DBTIMEZONE:
        case SESSIONTIMEZONE:
        case AUTHENTICATED:
        case LINK:
        case SHARED:
        case DIRECTORY:
        case USER:
        case READ:
        case LATERAL:
        case NOCYCLE:
        case CONNECT_BY_ROOT:
        case IDENTIFIER:
        case QUOTED_LITERAL:
        case JAVA_INTERFACE_CLASS:
        case 493:
          switch (jj_nt.kind) {
          case AS:
            jj_consume_token(AS);
            break;
          default:
            jj_la1[262] = jj_gen;
            ;
          }
          ColumnAlias();
          break;
        default:
          jj_la1[263] = jj_gen;
          ;
        }
      }
      jj_consume_token(RPAREN);
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTXMLAttributesClause XMLAttributesClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) XMLAttributesClause */
  ASTXMLAttributesClause jjtn000 = new ASTXMLAttributesClause(JJTXMLATTRIBUTESCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      KEYWORD("XMLATTRIBUTES");
      jj_consume_token(LPAREN);
      if (isKeyword("ENTITYESCAPING") || isKeyword("NOENTITYESCAPING")) {
        jj_consume_token(IDENTIFIER);
      } else {
        ;
      }
      if (isKeyword("SCHEMACHECK") || isKeyword("NOSCHEMACHECK")) {
        jj_consume_token(IDENTIFIER);
      } else {
        ;
      }
      Expression();
      if (jj_2_101(1)) {
        switch (jj_nt.kind) {
        case AS:
          jj_consume_token(AS);
          break;
        default:
          jj_la1[264] = jj_gen;
          ;
        }
        if (isKeyword("EVALNAME")) {
          KEYWORD("EVALNAME");
          Expression();
        } else if (jj_2_100(2)) {
          ColumnAlias();
        } else {
          switch (jj_nt.kind) {
          case LPAREN:
          case PLUSSIGN:
          case MINUSSIGN:
          case STAR:
          case 26:
          case 29:
          case 30:
          case 32:
          case 33:
          case 34:
          case 35:
          case 36:
          case 37:
          case 38:
          case 39:
          case 40:
          case 41:
          case 42:
          case 43:
          case 44:
          case DEFINER:
          case CURRENT_USER:
          case SERIALLY_REUSABLE:
          case RESTRICT_REFERENCES:
          case EXCEPTION_INIT:
          case AUTONOMOUS_TRANSACTION:
          case LANGUAGE:
          case INLINE:
          case ALTER:
          case AND:
          case ANY:
          case ASC:
          case AT:
          case CASE:
          case CHECK:
          case CLUSTER:
          case COMPRESS:
          case CREATE:
          case DESC:
          case DROP:
          case EXCLUSIVE:
          case FETCH:
          case GOTO:
          case HAVING:
          case INDEX:
          case INSERT:
          case INTERSECT:
          case IS:
          case LIKE:
          case LOCK:
          case MINUS:
          case MODE:
          case NOT:
          case NULL:
          case OPTION:
          case OR:
          case SHARE:
          case SQL:
          case SUBTYPE:
          case THEN:
          case TO:
          case TYPE:
          case UPDATE:
          case WITH:
          case ADD:
          case AGGREGATE:
          case APPLY:
          case ARRAY:
          case ATTRIBUTE:
          case AUTHID:
          case BINARY_INTEGER:
          case BODY:
          case BOOLEAN:
          case BULK:
          case BYTE:
          case CASCADE:
          case CHAR:
          case CHAR_BASE:
          case CLOSE:
          case COALESCE:
          case COLLECT:
          case COLUMN:
          case COMMIT:
          case CONSTANT:
          case CONSTRAINT:
          case CONSTRUCTOR:
          case CONTINUE:
          case CONVERT:
          case CROSS:
          case CUBE:
          case CURRENT:
          case CURRVAL:
          case DATA:
          case DATE:
          case DAY:
          case DECIMAL:
          case DEFINITION:
          case DELETE:
          case DISABLE:
          case DO:
          case DUPLICATED:
          case EDITIONABLE:
          case ELEMENT:
          case ELSIF:
          case ENABLE:
          case ESCAPE:
          case EXCEPT:
          case EXCEPTIONS:
          case EXECUTE:
          case EXIT:
          case EXTERNAL:
          case EXTENDED:
          case EXTENDS:
          case EXTRACT:
          case FALSE:
          case FINAL:
          case FLOAT:
          case FORALL:
          case FOREIGN:
          case FORCE:
          case FULL:
          case GLOBAL:
          case GROUPING:
          case HASH:
          case HEAP:
          case HOUR:
          case IMMEDIATE:
          case INNER:
          case INDICES:
          case INCLUDING:
          case INDEXTYPE:
          case INDICATOR:
          case INFINITE:
          case INSTANTIABLE:
          case INTEGER:
          case INTERFACE:
          case INTERVAL:
          case INVALIDATE:
          case ISOLATION:
          case JAVA:
          case JOIN:
          case KEY:
          case LEVEL:
          case LIKEC:
          case LIKE2:
          case LIKE4:
          case LIMIT:
          case LIMITED:
          case LONG:
          case LOOP:
          case MAP:
          case MEMBER:
          case MERGE:
          case METADATA:
          case MINUTE:
          case MLSLABEL:
          case MODIFY:
          case MOD:
          case MONTH:
          case NAN:
          case NATURAL:
          case NATURALN:
          case NEW:
          case NEW_DOT:
          case NEXT:
          case NEXTVAL:
          case NO:
          case NOCOPY:
          case NONE:
          case NONEDITIONABLE:
          case NULLIF:
          case NULLS:
          case NUMBER:
          case BFILE_BASE:
          case BLOB_BASE:
          case CLOB_BASE:
          case DATE_BASE:
          case NUMBER_BASE:
          case OBJECT:
          case OCIROWID:
          case OFFSET:
          case OID:
          case ONLY:
          case OPAQUE:
          case OPEN:
          case OPERATOR:
          case ORGANIZATION:
          case OTHERS:
          case OUT:
          case OUTER:
          case OVERRIDING:
          case PACKAGE:
          case PARTITION:
          case PCTFREE:
          case PERCENT:
          case PLS_INTEGER:
          case POSITIVE:
          case POSITIVEN:
          case PRESERVE:
          case PRIOR:
          case PRIMARY:
          case PRIVATE:
          case RAISE:
          case RANGE:
          case RAW:
          case REAL:
          case RECORD:
          case REFERENCES:
          case REGEXP_LIKE:
          case RELEASE:
          case RELIES_ON:
          case RENAME:
          case RESULT:
          case RETURN:
          case RETURNING:
          case REVERSE:
          case ROLLBACK:
          case ROLLUP:
          case ROW:
          case ROWS:
          case ROWID:
          case ROWNUM:
          case ROWTYPE:
          case SAVE:
          case SAVEPOINT:
          case SECOND:
          case SELF:
          case SEPARATE:
          case SETS:
          case SIBLINGS:
          case SHARDED:
          case SHARING:
          case SMALLINT:
          case SOME:
          case SPACE:
          case SQLCODE:
          case SQLERRM:
          case STATIC:
          case SUBSTITUTABLE:
          case SUCCESSFUL:
          case SYNONYM:
          case SYS_REFCURSOR:
          case TEMPORARY:
          case TIES:
          case TIME:
          case TIMESTAMP:
          case TIMEZONE_REGION:
          case TIMEZONE_ABBR:
          case TIMEZONE_MINUTE:
          case TIMEZONE_HOUR:
          case TRANSACTION:
          case TRIGGER:
          case TRUE:
          case UI:
          case UNDER:
          case USING:
          case WHILE:
          case YES:
          case A:
          case VARCHAR:
          case VARCHAR2:
          case DOUBLE:
          case DEC:
          case PRECISION:
          case INT:
          case NUMERIC:
          case SIGNTYPE:
          case NCHAR:
          case NVARCHAR2:
          case STRING:
          case UROWID:
          case VARRAY:
          case VARYING:
          case BFILE:
          case BLOB:
          case CLOB:
          case NCLOB:
          case YEAR:
          case LOCAL:
          case ZONE:
          case CHARACTER:
          case AFTER:
          case BEFORE:
          case OLD:
          case PARENT:
          case GENERATED:
          case SCOPE:
          case INITIALLY:
          case DEFERRABLE:
          case DEFERRED:
          case CC_IF:
          case ANALYZE:
          case ASSOCIATE:
          case AUDIT:
          case COMPOUND:
          case DATABASE:
          case CALL:
          case DISASSOCIATE:
          case EACH:
          case FOLLOWS:
          case LOGOFF:
          case LOGON:
          case NESTED:
          case NOAUDIT:
          case SCHEMA:
          case SERVERERROR:
          case SHUTDOWN:
          case STARTUP:
          case STATEMENT:
          case STATISTICS:
          case SUSPEND:
          case TRUNCATE:
          case WRAPPED:
          case LIBRARY:
          case NAME:
          case STRUCT:
          case CONTEXT:
          case PARAMETERS:
          case LENGTH:
          case TDO:
          case MAXLEN:
          case CHARSETID:
          case CHARSETFORM:
          case ACCESSIBLE:
          case ATTACH:
          case CAST:
          case TREAT:
          case LEFT:
          case RIGHT:
          case BOTH:
          case EMPTY:
          case MULTISET:
          case SUBMULTISET:
          case LEADING:
          case TRAILING:
          case CHAR_CS:
          case NCHAR_CS:
          case DBTIMEZONE:
          case SESSIONTIMEZONE:
          case AUTHENTICATED:
          case LINK:
          case SHARED:
          case DIRECTORY:
          case USER:
          case READ:
          case LATERAL:
          case NOCYCLE:
          case CONNECT_BY_ROOT:
          case IDENTIFIER:
          case UNSIGNED_NUMERIC_LITERAL:
          case CHARACTER_LITERAL:
          case QUOTED_LITERAL:
          case JAVA_INTERFACE_CLASS:
          case STRING_LITERAL:
          case 493:
            Expression();
            break;
          default:
            jj_la1[265] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
        }
      } else {
        ;
      }
      label_53:
      while (true) {
        switch (jj_nt.kind) {
        case COMMA:
          ;
          break;
        default:
          jj_la1[266] = jj_gen;
          break label_53;
        }
        jj_consume_token(COMMA);
        Expression();
        if (jj_2_103(1)) {
          switch (jj_nt.kind) {
          case AS:
            jj_consume_token(AS);
            break;
          default:
            jj_la1[267] = jj_gen;
            ;
          }
          if (isKeyword("EVALNAME")) {
            KEYWORD("EVALNAME");
            Expression();
          } else if (jj_2_102(2)) {
            ColumnAlias();
          } else {
            switch (jj_nt.kind) {
            case LPAREN:
            case PLUSSIGN:
            case MINUSSIGN:
            case STAR:
            case 26:
            case 29:
            case 30:
            case 32:
            case 33:
            case 34:
            case 35:
            case 36:
            case 37:
            case 38:
            case 39:
            case 40:
            case 41:
            case 42:
            case 43:
            case 44:
            case DEFINER:
            case CURRENT_USER:
            case SERIALLY_REUSABLE:
            case RESTRICT_REFERENCES:
            case EXCEPTION_INIT:
            case AUTONOMOUS_TRANSACTION:
            case LANGUAGE:
            case INLINE:
            case ALTER:
            case AND:
            case ANY:
            case ASC:
            case AT:
            case CASE:
            case CHECK:
            case CLUSTER:
            case COMPRESS:
            case CREATE:
            case DESC:
            case DROP:
            case EXCLUSIVE:
            case FETCH:
            case GOTO:
            case HAVING:
            case INDEX:
            case INSERT:
            case INTERSECT:
            case IS:
            case LIKE:
            case LOCK:
            case MINUS:
            case MODE:
            case NOT:
            case NULL:
            case OPTION:
            case OR:
            case SHARE:
            case SQL:
            case SUBTYPE:
            case THEN:
            case TO:
            case TYPE:
            case UPDATE:
            case WITH:
            case ADD:
            case AGGREGATE:
            case APPLY:
            case ARRAY:
            case ATTRIBUTE:
            case AUTHID:
            case BINARY_INTEGER:
            case BODY:
            case BOOLEAN:
            case BULK:
            case BYTE:
            case CASCADE:
            case CHAR:
            case CHAR_BASE:
            case CLOSE:
            case COALESCE:
            case COLLECT:
            case COLUMN:
            case COMMIT:
            case CONSTANT:
            case CONSTRAINT:
            case CONSTRUCTOR:
            case CONTINUE:
            case CONVERT:
            case CROSS:
            case CUBE:
            case CURRENT:
            case CURRVAL:
            case DATA:
            case DATE:
            case DAY:
            case DECIMAL:
            case DEFINITION:
            case DELETE:
            case DISABLE:
            case DO:
            case DUPLICATED:
            case EDITIONABLE:
            case ELEMENT:
            case ELSIF:
            case ENABLE:
            case ESCAPE:
            case EXCEPT:
            case EXCEPTIONS:
            case EXECUTE:
            case EXIT:
            case EXTERNAL:
            case EXTENDED:
            case EXTENDS:
            case EXTRACT:
            case FALSE:
            case FINAL:
            case FLOAT:
            case FORALL:
            case FOREIGN:
            case FORCE:
            case FULL:
            case GLOBAL:
            case GROUPING:
            case HASH:
            case HEAP:
            case HOUR:
            case IMMEDIATE:
            case INNER:
            case INDICES:
            case INCLUDING:
            case INDEXTYPE:
            case INDICATOR:
            case INFINITE:
            case INSTANTIABLE:
            case INTEGER:
            case INTERFACE:
            case INTERVAL:
            case INVALIDATE:
            case ISOLATION:
            case JAVA:
            case JOIN:
            case KEY:
            case LEVEL:
            case LIKEC:
            case LIKE2:
            case LIKE4:
            case LIMIT:
            case LIMITED:
            case LONG:
            case LOOP:
            case MAP:
            case MEMBER:
            case MERGE:
            case METADATA:
            case MINUTE:
            case MLSLABEL:
            case MODIFY:
            case MOD:
            case MONTH:
            case NAN:
            case NATURAL:
            case NATURALN:
            case NEW:
            case NEW_DOT:
            case NEXT:
            case NEXTVAL:
            case NO:
            case NOCOPY:
            case NONE:
            case NONEDITIONABLE:
            case NULLIF:
            case NULLS:
            case NUMBER:
            case BFILE_BASE:
            case BLOB_BASE:
            case CLOB_BASE:
            case DATE_BASE:
            case NUMBER_BASE:
            case OBJECT:
            case OCIROWID:
            case OFFSET:
            case OID:
            case ONLY:
            case OPAQUE:
            case OPEN:
            case OPERATOR:
            case ORGANIZATION:
            case OTHERS:
            case OUT:
            case OUTER:
            case OVERRIDING:
            case PACKAGE:
            case PARTITION:
            case PCTFREE:
            case PERCENT:
            case PLS_INTEGER:
            case POSITIVE:
            case POSITIVEN:
            case PRESERVE:
            case PRIOR:
            case PRIMARY:
            case PRIVATE:
            case RAISE:
            case RANGE:
            case RAW:
            case REAL:
            case RECORD:
            case REFERENCES:
            case REGEXP_LIKE:
            case RELEASE:
            case RELIES_ON:
            case RENAME:
            case RESULT:
            case RETURN:
            case RETURNING:
            case REVERSE:
            case ROLLBACK:
            case ROLLUP:
            case ROW:
            case ROWS:
            case ROWID:
            case ROWNUM:
            case ROWTYPE:
            case SAVE:
            case SAVEPOINT:
            case SECOND:
            case SELF:
            case SEPARATE:
            case SETS:
            case SIBLINGS:
            case SHARDED:
            case SHARING:
            case SMALLINT:
            case SOME:
            case SPACE:
            case SQLCODE:
            case SQLERRM:
            case STATIC:
            case SUBSTITUTABLE:
            case SUCCESSFUL:
            case SYNONYM:
            case SYS_REFCURSOR:
            case TEMPORARY:
            case TIES:
            case TIME:
            case TIMESTAMP:
            case TIMEZONE_REGION:
            case TIMEZONE_ABBR:
            case TIMEZONE_MINUTE:
            case TIMEZONE_HOUR:
            case TRANSACTION:
            case TRIGGER:
            case TRUE:
            case UI:
            case UNDER:
            case USING:
            case WHILE:
            case YES:
            case A:
            case VARCHAR:
            case VARCHAR2:
            case DOUBLE:
            case DEC:
            case PRECISION:
            case INT:
            case NUMERIC:
            case SIGNTYPE:
            case NCHAR:
            case NVARCHAR2:
            case STRING:
            case UROWID:
            case VARRAY:
            case VARYING:
            case BFILE:
            case BLOB:
            case CLOB:
            case NCLOB:
            case YEAR:
            case LOCAL:
            case ZONE:
            case CHARACTER:
            case AFTER:
            case BEFORE:
            case OLD:
            case PARENT:
            case GENERATED:
            case SCOPE:
            case INITIALLY:
            case DEFERRABLE:
            case DEFERRED:
            case CC_IF:
            case ANALYZE:
            case ASSOCIATE:
            case AUDIT:
            case COMPOUND:
            case DATABASE:
            case CALL:
            case DISASSOCIATE:
            case EACH:
            case FOLLOWS:
            case LOGOFF:
            case LOGON:
            case NESTED:
            case NOAUDIT:
            case SCHEMA:
            case SERVERERROR:
            case SHUTDOWN:
            case STARTUP:
            case STATEMENT:
            case STATISTICS:
            case SUSPEND:
            case TRUNCATE:
            case WRAPPED:
            case LIBRARY:
            case NAME:
            case STRUCT:
            case CONTEXT:
            case PARAMETERS:
            case LENGTH:
            case TDO:
            case MAXLEN:
            case CHARSETID:
            case CHARSETFORM:
            case ACCESSIBLE:
            case ATTACH:
            case CAST:
            case TREAT:
            case LEFT:
            case RIGHT:
            case BOTH:
            case EMPTY:
            case MULTISET:
            case SUBMULTISET:
            case LEADING:
            case TRAILING:
            case CHAR_CS:
            case NCHAR_CS:
            case DBTIMEZONE:
            case SESSIONTIMEZONE:
            case AUTHENTICATED:
            case LINK:
            case SHARED:
            case DIRECTORY:
            case USER:
            case READ:
            case LATERAL:
            case NOCYCLE:
            case CONNECT_BY_ROOT:
            case IDENTIFIER:
            case UNSIGNED_NUMERIC_LITERAL:
            case CHARACTER_LITERAL:
            case QUOTED_LITERAL:
            case JAVA_INTERFACE_CLASS:
            case STRING_LITERAL:
            case 493:
              Expression();
              break;
            default:
              jj_la1[268] = jj_gen;
              jj_consume_token(-1);
              throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
            }
          }
        } else {
          ;
        }
      }
      jj_consume_token(RPAREN);
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * See https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/Analytic-Functions.html
 */
  final public ASTAnalyticClause AnalyticClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) AnalyticClause */
  ASTAnalyticClause jjtn000 = new ASTAnalyticClause(JJTANALYTICCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      jj_consume_token(32);
      jj_consume_token(LPAREN);
      switch (jj_nt.kind) {
      case PARTITION:
        QueryPartitionClause();
        break;
      default:
        jj_la1[269] = jj_gen;
        ;
      }
      switch (jj_nt.kind) {
      case ORDER:
        OrderByClause();
        switch (jj_nt.kind) {
        case RANGE:
        case ROWS:
          WindowingClause();
          break;
        default:
          jj_la1[270] = jj_gen;
          ;
        }
        break;
      default:
        jj_la1[271] = jj_gen;
        ;
      }
      jj_consume_token(RPAREN);
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * See https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/Analytic-Functions.html
 */
  final public ASTWindowingClause WindowingClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) WindowingClause */
  ASTWindowingClause jjtn000 = new ASTWindowingClause(JJTWINDOWINGCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      switch (jj_nt.kind) {
      case ROWS:
        jj_consume_token(ROWS);
        break;
      case RANGE:
        jj_consume_token(RANGE);
        break;
      default:
        jj_la1[272] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      switch (jj_nt.kind) {
      case BETWEEN:
        jj_consume_token(BETWEEN);
        if (jj_2_104(3)) {
          jj_consume_token(33);
          jj_consume_token(34);
        } else if (jj_2_105(2)) {
          jj_consume_token(CURRENT);
          jj_consume_token(ROW);
        } else {
          switch (jj_nt.kind) {
          case LPAREN:
          case PLUSSIGN:
          case MINUSSIGN:
          case STAR:
          case 26:
          case 29:
          case 30:
          case 32:
          case 33:
          case 34:
          case 35:
          case 36:
          case 37:
          case 38:
          case 39:
          case 40:
          case 41:
          case 42:
          case 43:
          case 44:
          case DEFINER:
          case CURRENT_USER:
          case SERIALLY_REUSABLE:
          case RESTRICT_REFERENCES:
          case EXCEPTION_INIT:
          case AUTONOMOUS_TRANSACTION:
          case LANGUAGE:
          case INLINE:
          case ALTER:
          case AND:
          case ANY:
          case ASC:
          case AT:
          case CASE:
          case CHECK:
          case CLUSTER:
          case COMPRESS:
          case CREATE:
          case DESC:
          case DROP:
          case EXCLUSIVE:
          case FETCH:
          case GOTO:
          case HAVING:
          case INDEX:
          case INSERT:
          case INTERSECT:
          case IS:
          case LIKE:
          case LOCK:
          case MINUS:
          case MODE:
          case NOT:
          case NULL:
          case OPTION:
          case OR:
          case SHARE:
          case SQL:
          case SUBTYPE:
          case THEN:
          case TO:
          case TYPE:
          case UPDATE:
          case WITH:
          case ADD:
          case AGGREGATE:
          case APPLY:
          case ARRAY:
          case ATTRIBUTE:
          case AUTHID:
          case BINARY_INTEGER:
          case BODY:
          case BOOLEAN:
          case BULK:
          case BYTE:
          case CASCADE:
          case CHAR:
          case CHAR_BASE:
          case CLOSE:
          case COALESCE:
          case COLLECT:
          case COLUMN:
          case COMMIT:
          case CONSTANT:
          case CONSTRAINT:
          case CONSTRUCTOR:
          case CONTINUE:
          case CONVERT:
          case CROSS:
          case CUBE:
          case CURRENT:
          case CURRVAL:
          case DATA:
          case DATE:
          case DAY:
          case DECIMAL:
          case DEFINITION:
          case DELETE:
          case DISABLE:
          case DO:
          case DUPLICATED:
          case EDITIONABLE:
          case ELEMENT:
          case ELSIF:
          case ENABLE:
          case ESCAPE:
          case EXCEPT:
          case EXCEPTIONS:
          case EXECUTE:
          case EXIT:
          case EXTERNAL:
          case EXTENDED:
          case EXTENDS:
          case EXTRACT:
          case FALSE:
          case FINAL:
          case FLOAT:
          case FORALL:
          case FOREIGN:
          case FORCE:
          case FULL:
          case GLOBAL:
          case GROUPING:
          case HASH:
          case HEAP:
          case HOUR:
          case IMMEDIATE:
          case INNER:
          case INDICES:
          case INCLUDING:
          case INDEXTYPE:
          case INDICATOR:
          case INFINITE:
          case INSTANTIABLE:
          case INTEGER:
          case INTERFACE:
          case INTERVAL:
          case INVALIDATE:
          case ISOLATION:
          case JAVA:
          case JOIN:
          case KEY:
          case LEVEL:
          case LIKEC:
          case LIKE2:
          case LIKE4:
          case LIMIT:
          case LIMITED:
          case LONG:
          case LOOP:
          case MAP:
          case MEMBER:
          case MERGE:
          case METADATA:
          case MINUTE:
          case MLSLABEL:
          case MODIFY:
          case MOD:
          case MONTH:
          case NAN:
          case NATURAL:
          case NATURALN:
          case NEW:
          case NEW_DOT:
          case NEXT:
          case NEXTVAL:
          case NO:
          case NOCOPY:
          case NONE:
          case NONEDITIONABLE:
          case NULLIF:
          case NULLS:
          case NUMBER:
          case BFILE_BASE:
          case BLOB_BASE:
          case CLOB_BASE:
          case DATE_BASE:
          case NUMBER_BASE:
          case OBJECT:
          case OCIROWID:
          case OFFSET:
          case OID:
          case ONLY:
          case OPAQUE:
          case OPEN:
          case OPERATOR:
          case ORGANIZATION:
          case OTHERS:
          case OUT:
          case OUTER:
          case OVERRIDING:
          case PACKAGE:
          case PARTITION:
          case PCTFREE:
          case PERCENT:
          case PLS_INTEGER:
          case POSITIVE:
          case POSITIVEN:
          case PRESERVE:
          case PRIOR:
          case PRIMARY:
          case PRIVATE:
          case RAISE:
          case RANGE:
          case RAW:
          case REAL:
          case RECORD:
          case REFERENCES:
          case REGEXP_LIKE:
          case RELEASE:
          case RELIES_ON:
          case RENAME:
          case RESULT:
          case RETURN:
          case RETURNING:
          case REVERSE:
          case ROLLBACK:
          case ROLLUP:
          case ROW:
          case ROWS:
          case ROWID:
          case ROWNUM:
          case ROWTYPE:
          case SAVE:
          case SAVEPOINT:
          case SECOND:
          case SELF:
          case SEPARATE:
          case SETS:
          case SIBLINGS:
          case SHARDED:
          case SHARING:
          case SMALLINT:
          case SOME:
          case SPACE:
          case SQLCODE:
          case SQLERRM:
          case STATIC:
          case SUBSTITUTABLE:
          case SUCCESSFUL:
          case SYNONYM:
          case SYS_REFCURSOR:
          case TEMPORARY:
          case TIES:
          case TIME:
          case TIMESTAMP:
          case TIMEZONE_REGION:
          case TIMEZONE_ABBR:
          case TIMEZONE_MINUTE:
          case TIMEZONE_HOUR:
          case TRANSACTION:
          case TRIGGER:
          case TRUE:
          case UI:
          case UNDER:
          case USING:
          case WHILE:
          case YES:
          case A:
          case VARCHAR:
          case VARCHAR2:
          case DOUBLE:
          case DEC:
          case PRECISION:
          case INT:
          case NUMERIC:
          case SIGNTYPE:
          case NCHAR:
          case NVARCHAR2:
          case STRING:
          case UROWID:
          case VARRAY:
          case VARYING:
          case BFILE:
          case BLOB:
          case CLOB:
          case NCLOB:
          case YEAR:
          case LOCAL:
          case ZONE:
          case CHARACTER:
          case AFTER:
          case BEFORE:
          case OLD:
          case PARENT:
          case GENERATED:
          case SCOPE:
          case INITIALLY:
          case DEFERRABLE:
          case DEFERRED:
          case ANALYZE:
          case ASSOCIATE:
          case AUDIT:
          case COMPOUND:
          case DATABASE:
          case CALL:
          case DISASSOCIATE:
          case EACH:
          case FOLLOWS:
          case LOGOFF:
          case LOGON:
          case NESTED:
          case NOAUDIT:
          case SCHEMA:
          case SERVERERROR:
          case SHUTDOWN:
          case STARTUP:
          case STATEMENT:
          case STATISTICS:
          case SUSPEND:
          case TRUNCATE:
          case WRAPPED:
          case LIBRARY:
          case NAME:
          case STRUCT:
          case CONTEXT:
          case PARAMETERS:
          case LENGTH:
          case TDO:
          case MAXLEN:
          case CHARSETID:
          case CHARSETFORM:
          case ACCESSIBLE:
          case ATTACH:
          case CAST:
          case TREAT:
          case LEFT:
          case RIGHT:
          case BOTH:
          case EMPTY:
          case MULTISET:
          case SUBMULTISET:
          case LEADING:
          case TRAILING:
          case CHAR_CS:
          case NCHAR_CS:
          case DBTIMEZONE:
          case SESSIONTIMEZONE:
          case AUTHENTICATED:
          case LINK:
          case SHARED:
          case DIRECTORY:
          case USER:
          case READ:
          case LATERAL:
          case NOCYCLE:
          case CONNECT_BY_ROOT:
          case IDENTIFIER:
          case UNSIGNED_NUMERIC_LITERAL:
          case CHARACTER_LITERAL:
          case QUOTED_LITERAL:
          case JAVA_INTERFACE_CLASS:
          case STRING_LITERAL:
          case 493:
            SqlExpression();
            switch (jj_nt.kind) {
            case 34:
              jj_consume_token(34);
              break;
            case 35:
              jj_consume_token(35);
              break;
            default:
              jj_la1[273] = jj_gen;
              jj_consume_token(-1);
              throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
            }
            break;
          default:
            jj_la1[274] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
        }
        jj_consume_token(AND);
        if (jj_2_106(3)) {
          jj_consume_token(33);
          jj_consume_token(35);
        } else if (jj_2_107(2)) {
          jj_consume_token(CURRENT);
          jj_consume_token(ROW);
        } else {
          switch (jj_nt.kind) {
          case LPAREN:
          case PLUSSIGN:
          case MINUSSIGN:
          case STAR:
          case 26:
          case 29:
          case 30:
          case 32:
          case 33:
          case 34:
          case 35:
          case 36:
          case 37:
          case 38:
          case 39:
          case 40:
          case 41:
          case 42:
          case 43:
          case 44:
          case DEFINER:
          case CURRENT_USER:
          case SERIALLY_REUSABLE:
          case RESTRICT_REFERENCES:
          case EXCEPTION_INIT:
          case AUTONOMOUS_TRANSACTION:
          case LANGUAGE:
          case INLINE:
          case ALTER:
          case AND:
          case ANY:
          case ASC:
          case AT:
          case CASE:
          case CHECK:
          case CLUSTER:
          case COMPRESS:
          case CREATE:
          case DESC:
          case DROP:
          case EXCLUSIVE:
          case FETCH:
          case GOTO:
          case HAVING:
          case INDEX:
          case INSERT:
          case INTERSECT:
          case IS:
          case LIKE:
          case LOCK:
          case MINUS:
          case MODE:
          case NOT:
          case NULL:
          case OPTION:
          case OR:
          case SHARE:
          case SQL:
          case SUBTYPE:
          case THEN:
          case TO:
          case TYPE:
          case UPDATE:
          case WITH:
          case ADD:
          case AGGREGATE:
          case APPLY:
          case ARRAY:
          case ATTRIBUTE:
          case AUTHID:
          case BINARY_INTEGER:
          case BODY:
          case BOOLEAN:
          case BULK:
          case BYTE:
          case CASCADE:
          case CHAR:
          case CHAR_BASE:
          case CLOSE:
          case COALESCE:
          case COLLECT:
          case COLUMN:
          case COMMIT:
          case CONSTANT:
          case CONSTRAINT:
          case CONSTRUCTOR:
          case CONTINUE:
          case CONVERT:
          case CROSS:
          case CUBE:
          case CURRENT:
          case CURRVAL:
          case DATA:
          case DATE:
          case DAY:
          case DECIMAL:
          case DEFINITION:
          case DELETE:
          case DISABLE:
          case DO:
          case DUPLICATED:
          case EDITIONABLE:
          case ELEMENT:
          case ELSIF:
          case ENABLE:
          case ESCAPE:
          case EXCEPT:
          case EXCEPTIONS:
          case EXECUTE:
          case EXIT:
          case EXTERNAL:
          case EXTENDED:
          case EXTENDS:
          case EXTRACT:
          case FALSE:
          case FINAL:
          case FLOAT:
          case FORALL:
          case FOREIGN:
          case FORCE:
          case FULL:
          case GLOBAL:
          case GROUPING:
          case HASH:
          case HEAP:
          case HOUR:
          case IMMEDIATE:
          case INNER:
          case INDICES:
          case INCLUDING:
          case INDEXTYPE:
          case INDICATOR:
          case INFINITE:
          case INSTANTIABLE:
          case INTEGER:
          case INTERFACE:
          case INTERVAL:
          case INVALIDATE:
          case ISOLATION:
          case JAVA:
          case JOIN:
          case KEY:
          case LEVEL:
          case LIKEC:
          case LIKE2:
          case LIKE4:
          case LIMIT:
          case LIMITED:
          case LONG:
          case LOOP:
          case MAP:
          case MEMBER:
          case MERGE:
          case METADATA:
          case MINUTE:
          case MLSLABEL:
          case MODIFY:
          case MOD:
          case MONTH:
          case NAN:
          case NATURAL:
          case NATURALN:
          case NEW:
          case NEW_DOT:
          case NEXT:
          case NEXTVAL:
          case NO:
          case NOCOPY:
          case NONE:
          case NONEDITIONABLE:
          case NULLIF:
          case NULLS:
          case NUMBER:
          case BFILE_BASE:
          case BLOB_BASE:
          case CLOB_BASE:
          case DATE_BASE:
          case NUMBER_BASE:
          case OBJECT:
          case OCIROWID:
          case OFFSET:
          case OID:
          case ONLY:
          case OPAQUE:
          case OPEN:
          case OPERATOR:
          case ORGANIZATION:
          case OTHERS:
          case OUT:
          case OUTER:
          case OVERRIDING:
          case PACKAGE:
          case PARTITION:
          case PCTFREE:
          case PERCENT:
          case PLS_INTEGER:
          case POSITIVE:
          case POSITIVEN:
          case PRESERVE:
          case PRIOR:
          case PRIMARY:
          case PRIVATE:
          case RAISE:
          case RANGE:
          case RAW:
          case REAL:
          case RECORD:
          case REFERENCES:
          case REGEXP_LIKE:
          case RELEASE:
          case RELIES_ON:
          case RENAME:
          case RESULT:
          case RETURN:
          case RETURNING:
          case REVERSE:
          case ROLLBACK:
          case ROLLUP:
          case ROW:
          case ROWS:
          case ROWID:
          case ROWNUM:
          case ROWTYPE:
          case SAVE:
          case SAVEPOINT:
          case SECOND:
          case SELF:
          case SEPARATE:
          case SETS:
          case SIBLINGS:
          case SHARDED:
          case SHARING:
          case SMALLINT:
          case SOME:
          case SPACE:
          case SQLCODE:
          case SQLERRM:
          case STATIC:
          case SUBSTITUTABLE:
          case SUCCESSFUL:
          case SYNONYM:
          case SYS_REFCURSOR:
          case TEMPORARY:
          case TIES:
          case TIME:
          case TIMESTAMP:
          case TIMEZONE_REGION:
          case TIMEZONE_ABBR:
          case TIMEZONE_MINUTE:
          case TIMEZONE_HOUR:
          case TRANSACTION:
          case TRIGGER:
          case TRUE:
          case UI:
          case UNDER:
          case USING:
          case WHILE:
          case YES:
          case A:
          case VARCHAR:
          case VARCHAR2:
          case DOUBLE:
          case DEC:
          case PRECISION:
          case INT:
          case NUMERIC:
          case SIGNTYPE:
          case NCHAR:
          case NVARCHAR2:
          case STRING:
          case UROWID:
          case VARRAY:
          case VARYING:
          case BFILE:
          case BLOB:
          case CLOB:
          case NCLOB:
          case YEAR:
          case LOCAL:
          case ZONE:
          case CHARACTER:
          case AFTER:
          case BEFORE:
          case OLD:
          case PARENT:
          case GENERATED:
          case SCOPE:
          case INITIALLY:
          case DEFERRABLE:
          case DEFERRED:
          case ANALYZE:
          case ASSOCIATE:
          case AUDIT:
          case COMPOUND:
          case DATABASE:
          case CALL:
          case DISASSOCIATE:
          case EACH:
          case FOLLOWS:
          case LOGOFF:
          case LOGON:
          case NESTED:
          case NOAUDIT:
          case SCHEMA:
          case SERVERERROR:
          case SHUTDOWN:
          case STARTUP:
          case STATEMENT:
          case STATISTICS:
          case SUSPEND:
          case TRUNCATE:
          case WRAPPED:
          case LIBRARY:
          case NAME:
          case STRUCT:
          case CONTEXT:
          case PARAMETERS:
          case LENGTH:
          case TDO:
          case MAXLEN:
          case CHARSETID:
          case CHARSETFORM:
          case ACCESSIBLE:
          case ATTACH:
          case CAST:
          case TREAT:
          case LEFT:
          case RIGHT:
          case BOTH:
          case EMPTY:
          case MULTISET:
          case SUBMULTISET:
          case LEADING:
          case TRAILING:
          case CHAR_CS:
          case NCHAR_CS:
          case DBTIMEZONE:
          case SESSIONTIMEZONE:
          case AUTHENTICATED:
          case LINK:
          case SHARED:
          case DIRECTORY:
          case USER:
          case READ:
          case LATERAL:
          case NOCYCLE:
          case CONNECT_BY_ROOT:
          case IDENTIFIER:
          case UNSIGNED_NUMERIC_LITERAL:
          case CHARACTER_LITERAL:
          case QUOTED_LITERAL:
          case JAVA_INTERFACE_CLASS:
          case STRING_LITERAL:
          case 493:
            SqlExpression();
            switch (jj_nt.kind) {
            case 34:
              jj_consume_token(34);
              break;
            case 35:
              jj_consume_token(35);
              break;
            default:
              jj_la1[275] = jj_gen;
              jj_consume_token(-1);
              throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
            }
            break;
          default:
            jj_la1[276] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
        }
        break;
      case LPAREN:
      case PLUSSIGN:
      case MINUSSIGN:
      case STAR:
      case 26:
      case 29:
      case 30:
      case 32:
      case 33:
      case 34:
      case 35:
      case 36:
      case 37:
      case 38:
      case 39:
      case 40:
      case 41:
      case 42:
      case 43:
      case 44:
      case DEFINER:
      case CURRENT_USER:
      case SERIALLY_REUSABLE:
      case RESTRICT_REFERENCES:
      case EXCEPTION_INIT:
      case AUTONOMOUS_TRANSACTION:
      case LANGUAGE:
      case INLINE:
      case ALTER:
      case AND:
      case ANY:
      case ASC:
      case AT:
      case CASE:
      case CHECK:
      case CLUSTER:
      case COMPRESS:
      case CREATE:
      case DESC:
      case DROP:
      case EXCLUSIVE:
      case FETCH:
      case GOTO:
      case HAVING:
      case INDEX:
      case INSERT:
      case INTERSECT:
      case IS:
      case LIKE:
      case LOCK:
      case MINUS:
      case MODE:
      case NOT:
      case NULL:
      case OPTION:
      case OR:
      case SHARE:
      case SQL:
      case SUBTYPE:
      case THEN:
      case TO:
      case TYPE:
      case UPDATE:
      case WITH:
      case ADD:
      case AGGREGATE:
      case APPLY:
      case ARRAY:
      case ATTRIBUTE:
      case AUTHID:
      case BINARY_INTEGER:
      case BODY:
      case BOOLEAN:
      case BULK:
      case BYTE:
      case CASCADE:
      case CHAR:
      case CHAR_BASE:
      case CLOSE:
      case COALESCE:
      case COLLECT:
      case COLUMN:
      case COMMIT:
      case CONSTANT:
      case CONSTRAINT:
      case CONSTRUCTOR:
      case CONTINUE:
      case CONVERT:
      case CROSS:
      case CUBE:
      case CURRENT:
      case CURRVAL:
      case DATA:
      case DATE:
      case DAY:
      case DECIMAL:
      case DEFINITION:
      case DELETE:
      case DISABLE:
      case DO:
      case DUPLICATED:
      case EDITIONABLE:
      case ELEMENT:
      case ELSIF:
      case ENABLE:
      case ESCAPE:
      case EXCEPT:
      case EXCEPTIONS:
      case EXECUTE:
      case EXIT:
      case EXTERNAL:
      case EXTENDED:
      case EXTENDS:
      case EXTRACT:
      case FALSE:
      case FINAL:
      case FLOAT:
      case FORALL:
      case FOREIGN:
      case FORCE:
      case FULL:
      case GLOBAL:
      case GROUPING:
      case HASH:
      case HEAP:
      case HOUR:
      case IMMEDIATE:
      case INNER:
      case INDICES:
      case INCLUDING:
      case INDEXTYPE:
      case INDICATOR:
      case INFINITE:
      case INSTANTIABLE:
      case INTEGER:
      case INTERFACE:
      case INTERVAL:
      case INVALIDATE:
      case ISOLATION:
      case JAVA:
      case JOIN:
      case KEY:
      case LEVEL:
      case LIKEC:
      case LIKE2:
      case LIKE4:
      case LIMIT:
      case LIMITED:
      case LONG:
      case LOOP:
      case MAP:
      case MEMBER:
      case MERGE:
      case METADATA:
      case MINUTE:
      case MLSLABEL:
      case MODIFY:
      case MOD:
      case MONTH:
      case NAN:
      case NATURAL:
      case NATURALN:
      case NEW:
      case NEW_DOT:
      case NEXT:
      case NEXTVAL:
      case NO:
      case NOCOPY:
      case NONE:
      case NONEDITIONABLE:
      case NULLIF:
      case NULLS:
      case NUMBER:
      case BFILE_BASE:
      case BLOB_BASE:
      case CLOB_BASE:
      case DATE_BASE:
      case NUMBER_BASE:
      case OBJECT:
      case OCIROWID:
      case OFFSET:
      case OID:
      case ONLY:
      case OPAQUE:
      case OPEN:
      case OPERATOR:
      case ORGANIZATION:
      case OTHERS:
      case OUT:
      case OUTER:
      case OVERRIDING:
      case PACKAGE:
      case PARTITION:
      case PCTFREE:
      case PERCENT:
      case PLS_INTEGER:
      case POSITIVE:
      case POSITIVEN:
      case PRESERVE:
      case PRIOR:
      case PRIMARY:
      case PRIVATE:
      case RAISE:
      case RANGE:
      case RAW:
      case REAL:
      case RECORD:
      case REFERENCES:
      case REGEXP_LIKE:
      case RELEASE:
      case RELIES_ON:
      case RENAME:
      case RESULT:
      case RETURN:
      case RETURNING:
      case REVERSE:
      case ROLLBACK:
      case ROLLUP:
      case ROW:
      case ROWS:
      case ROWID:
      case ROWNUM:
      case ROWTYPE:
      case SAVE:
      case SAVEPOINT:
      case SECOND:
      case SELF:
      case SEPARATE:
      case SETS:
      case SIBLINGS:
      case SHARDED:
      case SHARING:
      case SMALLINT:
      case SOME:
      case SPACE:
      case SQLCODE:
      case SQLERRM:
      case STATIC:
      case SUBSTITUTABLE:
      case SUCCESSFUL:
      case SYNONYM:
      case SYS_REFCURSOR:
      case TEMPORARY:
      case TIES:
      case TIME:
      case TIMESTAMP:
      case TIMEZONE_REGION:
      case TIMEZONE_ABBR:
      case TIMEZONE_MINUTE:
      case TIMEZONE_HOUR:
      case TRANSACTION:
      case TRIGGER:
      case TRUE:
      case UI:
      case UNDER:
      case USING:
      case WHILE:
      case YES:
      case A:
      case VARCHAR:
      case VARCHAR2:
      case DOUBLE:
      case DEC:
      case PRECISION:
      case INT:
      case NUMERIC:
      case SIGNTYPE:
      case NCHAR:
      case NVARCHAR2:
      case STRING:
      case UROWID:
      case VARRAY:
      case VARYING:
      case BFILE:
      case BLOB:
      case CLOB:
      case NCLOB:
      case YEAR:
      case LOCAL:
      case ZONE:
      case CHARACTER:
      case AFTER:
      case BEFORE:
      case OLD:
      case PARENT:
      case GENERATED:
      case SCOPE:
      case INITIALLY:
      case DEFERRABLE:
      case DEFERRED:
      case ANALYZE:
      case ASSOCIATE:
      case AUDIT:
      case COMPOUND:
      case DATABASE:
      case CALL:
      case DISASSOCIATE:
      case EACH:
      case FOLLOWS:
      case LOGOFF:
      case LOGON:
      case NESTED:
      case NOAUDIT:
      case SCHEMA:
      case SERVERERROR:
      case SHUTDOWN:
      case STARTUP:
      case STATEMENT:
      case STATISTICS:
      case SUSPEND:
      case TRUNCATE:
      case WRAPPED:
      case LIBRARY:
      case NAME:
      case STRUCT:
      case CONTEXT:
      case PARAMETERS:
      case LENGTH:
      case TDO:
      case MAXLEN:
      case CHARSETID:
      case CHARSETFORM:
      case ACCESSIBLE:
      case ATTACH:
      case CAST:
      case TREAT:
      case LEFT:
      case RIGHT:
      case BOTH:
      case EMPTY:
      case MULTISET:
      case SUBMULTISET:
      case LEADING:
      case TRAILING:
      case CHAR_CS:
      case NCHAR_CS:
      case DBTIMEZONE:
      case SESSIONTIMEZONE:
      case AUTHENTICATED:
      case LINK:
      case SHARED:
      case DIRECTORY:
      case USER:
      case READ:
      case LATERAL:
      case NOCYCLE:
      case CONNECT_BY_ROOT:
      case IDENTIFIER:
      case UNSIGNED_NUMERIC_LITERAL:
      case CHARACTER_LITERAL:
      case QUOTED_LITERAL:
      case JAVA_INTERFACE_CLASS:
      case STRING_LITERAL:
      case 493:
        if (jj_2_108(3)) {
          jj_consume_token(33);
          jj_consume_token(34);
        } else if (jj_2_109(2)) {
          jj_consume_token(CURRENT);
          jj_consume_token(ROW);
        } else {
          switch (jj_nt.kind) {
          case LPAREN:
          case PLUSSIGN:
          case MINUSSIGN:
          case STAR:
          case 26:
          case 29:
          case 30:
          case 32:
          case 33:
          case 34:
          case 35:
          case 36:
          case 37:
          case 38:
          case 39:
          case 40:
          case 41:
          case 42:
          case 43:
          case 44:
          case DEFINER:
          case CURRENT_USER:
          case SERIALLY_REUSABLE:
          case RESTRICT_REFERENCES:
          case EXCEPTION_INIT:
          case AUTONOMOUS_TRANSACTION:
          case LANGUAGE:
          case INLINE:
          case ALTER:
          case AND:
          case ANY:
          case ASC:
          case AT:
          case CASE:
          case CHECK:
          case CLUSTER:
          case COMPRESS:
          case CREATE:
          case DESC:
          case DROP:
          case EXCLUSIVE:
          case FETCH:
          case GOTO:
          case HAVING:
          case INDEX:
          case INSERT:
          case INTERSECT:
          case IS:
          case LIKE:
          case LOCK:
          case MINUS:
          case MODE:
          case NOT:
          case NULL:
          case OPTION:
          case OR:
          case SHARE:
          case SQL:
          case SUBTYPE:
          case THEN:
          case TO:
          case TYPE:
          case UPDATE:
          case WITH:
          case ADD:
          case AGGREGATE:
          case APPLY:
          case ARRAY:
          case ATTRIBUTE:
          case AUTHID:
          case BINARY_INTEGER:
          case BODY:
          case BOOLEAN:
          case BULK:
          case BYTE:
          case CASCADE:
          case CHAR:
          case CHAR_BASE:
          case CLOSE:
          case COALESCE:
          case COLLECT:
          case COLUMN:
          case COMMIT:
          case CONSTANT:
          case CONSTRAINT:
          case CONSTRUCTOR:
          case CONTINUE:
          case CONVERT:
          case CROSS:
          case CUBE:
          case CURRENT:
          case CURRVAL:
          case DATA:
          case DATE:
          case DAY:
          case DECIMAL:
          case DEFINITION:
          case DELETE:
          case DISABLE:
          case DO:
          case DUPLICATED:
          case EDITIONABLE:
          case ELEMENT:
          case ELSIF:
          case ENABLE:
          case ESCAPE:
          case EXCEPT:
          case EXCEPTIONS:
          case EXECUTE:
          case EXIT:
          case EXTERNAL:
          case EXTENDED:
          case EXTENDS:
          case EXTRACT:
          case FALSE:
          case FINAL:
          case FLOAT:
          case FORALL:
          case FOREIGN:
          case FORCE:
          case FULL:
          case GLOBAL:
          case GROUPING:
          case HASH:
          case HEAP:
          case HOUR:
          case IMMEDIATE:
          case INNER:
          case INDICES:
          case INCLUDING:
          case INDEXTYPE:
          case INDICATOR:
          case INFINITE:
          case INSTANTIABLE:
          case INTEGER:
          case INTERFACE:
          case INTERVAL:
          case INVALIDATE:
          case ISOLATION:
          case JAVA:
          case JOIN:
          case KEY:
          case LEVEL:
          case LIKEC:
          case LIKE2:
          case LIKE4:
          case LIMIT:
          case LIMITED:
          case LONG:
          case LOOP:
          case MAP:
          case MEMBER:
          case MERGE:
          case METADATA:
          case MINUTE:
          case MLSLABEL:
          case MODIFY:
          case MOD:
          case MONTH:
          case NAN:
          case NATURAL:
          case NATURALN:
          case NEW:
          case NEW_DOT:
          case NEXT:
          case NEXTVAL:
          case NO:
          case NOCOPY:
          case NONE:
          case NONEDITIONABLE:
          case NULLIF:
          case NULLS:
          case NUMBER:
          case BFILE_BASE:
          case BLOB_BASE:
          case CLOB_BASE:
          case DATE_BASE:
          case NUMBER_BASE:
          case OBJECT:
          case OCIROWID:
          case OFFSET:
          case OID:
          case ONLY:
          case OPAQUE:
          case OPEN:
          case OPERATOR:
          case ORGANIZATION:
          case OTHERS:
          case OUT:
          case OUTER:
          case OVERRIDING:
          case PACKAGE:
          case PARTITION:
          case PCTFREE:
          case PERCENT:
          case PLS_INTEGER:
          case POSITIVE:
          case POSITIVEN:
          case PRESERVE:
          case PRIOR:
          case PRIMARY:
          case PRIVATE:
          case RAISE:
          case RANGE:
          case RAW:
          case REAL:
          case RECORD:
          case REFERENCES:
          case REGEXP_LIKE:
          case RELEASE:
          case RELIES_ON:
          case RENAME:
          case RESULT:
          case RETURN:
          case RETURNING:
          case REVERSE:
          case ROLLBACK:
          case ROLLUP:
          case ROW:
          case ROWS:
          case ROWID:
          case ROWNUM:
          case ROWTYPE:
          case SAVE:
          case SAVEPOINT:
          case SECOND:
          case SELF:
          case SEPARATE:
          case SETS:
          case SIBLINGS:
          case SHARDED:
          case SHARING:
          case SMALLINT:
          case SOME:
          case SPACE:
          case SQLCODE:
          case SQLERRM:
          case STATIC:
          case SUBSTITUTABLE:
          case SUCCESSFUL:
          case SYNONYM:
          case SYS_REFCURSOR:
          case TEMPORARY:
          case TIES:
          case TIME:
          case TIMESTAMP:
          case TIMEZONE_REGION:
          case TIMEZONE_ABBR:
          case TIMEZONE_MINUTE:
          case TIMEZONE_HOUR:
          case TRANSACTION:
          case TRIGGER:
          case TRUE:
          case UI:
          case UNDER:
          case USING:
          case WHILE:
          case YES:
          case A:
          case VARCHAR:
          case VARCHAR2:
          case DOUBLE:
          case DEC:
          case PRECISION:
          case INT:
          case NUMERIC:
          case SIGNTYPE:
          case NCHAR:
          case NVARCHAR2:
          case STRING:
          case UROWID:
          case VARRAY:
          case VARYING:
          case BFILE:
          case BLOB:
          case CLOB:
          case NCLOB:
          case YEAR:
          case LOCAL:
          case ZONE:
          case CHARACTER:
          case AFTER:
          case BEFORE:
          case OLD:
          case PARENT:
          case GENERATED:
          case SCOPE:
          case INITIALLY:
          case DEFERRABLE:
          case DEFERRED:
          case ANALYZE:
          case ASSOCIATE:
          case AUDIT:
          case COMPOUND:
          case DATABASE:
          case CALL:
          case DISASSOCIATE:
          case EACH:
          case FOLLOWS:
          case LOGOFF:
          case LOGON:
          case NESTED:
          case NOAUDIT:
          case SCHEMA:
          case SERVERERROR:
          case SHUTDOWN:
          case STARTUP:
          case STATEMENT:
          case STATISTICS:
          case SUSPEND:
          case TRUNCATE:
          case WRAPPED:
          case LIBRARY:
          case NAME:
          case STRUCT:
          case CONTEXT:
          case PARAMETERS:
          case LENGTH:
          case TDO:
          case MAXLEN:
          case CHARSETID:
          case CHARSETFORM:
          case ACCESSIBLE:
          case ATTACH:
          case CAST:
          case TREAT:
          case LEFT:
          case RIGHT:
          case BOTH:
          case EMPTY:
          case MULTISET:
          case SUBMULTISET:
          case LEADING:
          case TRAILING:
          case CHAR_CS:
          case NCHAR_CS:
          case DBTIMEZONE:
          case SESSIONTIMEZONE:
          case AUTHENTICATED:
          case LINK:
          case SHARED:
          case DIRECTORY:
          case USER:
          case READ:
          case LATERAL:
          case NOCYCLE:
          case CONNECT_BY_ROOT:
          case IDENTIFIER:
          case UNSIGNED_NUMERIC_LITERAL:
          case CHARACTER_LITERAL:
          case QUOTED_LITERAL:
          case JAVA_INTERFACE_CLASS:
          case STRING_LITERAL:
          case 493:
            SqlExpression();
            jj_consume_token(34);
            break;
          default:
            jj_la1[277] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
        }
        break;
      default:
        jj_la1[278] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * Within Clause is used for the following analytic functions: CUME_DIST, DENSE_RANK, LISTAGG, PERCENT_RANK, PERCENTILE_CONT,
 * PERCENTILE_DISC, RANK.
 *
 * See e.g. https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/LISTAGG.html
 */
  final public ASTWithinClause WithinClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) WithinClause */
  ASTWithinClause jjtn000 = new ASTWithinClause(JJTWITHINCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      jj_consume_token(36);
      jj_consume_token(GROUP);
      jj_consume_token(LPAREN);
      OrderByClause();
      jj_consume_token(RPAREN);
      if (jj_2_110(2)) {
        jj_consume_token(32);
        jj_consume_token(LPAREN);
        QueryPartitionClause();
        jj_consume_token(RPAREN);
      } else {
        ;
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTListaggOverflowClause ListaggOverflowClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) ListaggOverflowClause */
  ASTListaggOverflowClause jjtn000 = new ASTListaggOverflowClause(JJTLISTAGGOVERFLOWCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      jj_consume_token(ON);
      jj_consume_token(37);
      switch (jj_nt.kind) {
      case 38:
        jj_consume_token(38);
        break;
      case TRUNCATE:
        jj_consume_token(TRUNCATE);
        switch (jj_nt.kind) {
        case STRING_LITERAL:
          StringLiteral();
          break;
        default:
          jj_la1[279] = jj_gen;
          ;
        }
        switch (jj_nt.kind) {
        case 39:
        case WITH:
          switch (jj_nt.kind) {
          case WITH:
            jj_consume_token(WITH);
            break;
          case 39:
            jj_consume_token(39);
            break;
          default:
            jj_la1[280] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
          jj_consume_token(40);
          break;
        default:
          jj_la1[281] = jj_gen;
          ;
        }
        break;
      default:
        jj_la1[282] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTColumn Column() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) Column */
  ASTColumn jjtn000 = new ASTColumn(JJTCOLUMN);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));ASTID id;
    try {
      id = ID();
                jjtn000.setImage(id.getImage());
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/SELECT.html#GUID-CFA006CA-6FF1-4972-821E-6996142A51C6__I2126079
 */
  final public ASTHierarchicalQueryClause HierarchicalQueryClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) HierarchicalQueryClause */
  ASTHierarchicalQueryClause jjtn000 = new ASTHierarchicalQueryClause(JJTHIERARCHICALQUERYCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      switch (jj_nt.kind) {
      case CONNECT:
        jj_consume_token(CONNECT);
        jj_consume_token(BY);
        if (jj_2_111(2)) {
          jj_consume_token(NOCYCLE);
        } else {
          ;
        }
        Condition();
        switch (jj_nt.kind) {
        case START:
          jj_consume_token(START);
          jj_consume_token(WITH);
          Condition();
          break;
        default:
          jj_la1[283] = jj_gen;
          ;
        }
        break;
      case START:
        jj_consume_token(START);
        jj_consume_token(WITH);
        Condition();
        jj_consume_token(CONNECT);
        jj_consume_token(BY);
        if (jj_2_112(2)) {
          jj_consume_token(NOCYCLE);
        } else {
          ;
        }
        Condition();
        break;
      default:
        jj_la1[284] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
      {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
    }
    {if (true) throw (Error)jjte000;}
    } finally {
    if (jjtc000) {
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
    }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTFromClause FromClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) FromClause */
  ASTFromClause jjtn000 = new ASTFromClause(JJTFROMCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      jj_consume_token(FROM);
      FromClauseEntry();
      label_54:
      while (true) {
        switch (jj_nt.kind) {
        case COMMA:
          ;
          break;
        default:
          jj_la1[285] = jj_gen;
          break label_54;
        }
        jj_consume_token(COMMA);
        FromClauseEntry();
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public void FromClauseEntry() throws net.sourceforge.pmd.lang.ast.ParseException {
    if (jj_2_114(2147483647)) {
      JoinClause();
    } else if (jj_2_115(2147483647) && (isKeyword("XMLTABLE"))) {
      XMLTable();
      if (jj_2_113(2)) {
        TableAlias();
      } else {
        ;
      }
    } else if (jj_2_116(3)) {
                    ASTJoinClause jjtn001 = new ASTJoinClause(JJTJOINCLAUSE);
                    boolean jjtc001 = true;
                    jjtree.openNodeScope(jjtn001, getToken(1));
      try {
        TableReference();
        label_55:
        while (true) {
          switch (jj_nt.kind) {
          case CROSS:
          case FULL:
          case INNER:
          case JOIN:
          case NATURAL:
          case OUTER:
          case PARTITION:
          case LEFT:
          case RIGHT:
            ;
            break;
          default:
            jj_la1[286] = jj_gen;
            break label_55;
          }
          JoinClausePart();
        }
      } catch (Throwable jjte001) {
                    if (jjtc001) {
                      jjtree.clearNodeScope(jjtn001);
                      jjtc001 = false;
                    } else {
                      jjtree.popNode();
                    }
                    if (jjte001 instanceof RuntimeException) {
                      {if (true) throw (RuntimeException)jjte001;}
                    }
                    if (jjte001 instanceof net.sourceforge.pmd.lang.ast.ParseException) {
                      {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte001;}
                    }
                    {if (true) throw (Error)jjte001;}
      } finally {
                    if (jjtc001) {
                      jjtree.closeNodeScope(jjtn001, jjtree.nodeArity() > 1, getToken(0));
                    }
      }
    } else {
      switch (jj_nt.kind) {
      case LPAREN:
        jj_consume_token(LPAREN);
        JoinClause();
        jj_consume_token(RPAREN);
        break;
      default:
        jj_la1[287] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
    }
  }

/**
 * @see SELECT list
 */
  final public ASTSelectList SelectList() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) SelectList */
  ASTSelectList jjtn000 = new ASTSelectList(JJTSELECTLIST);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      switch (jj_nt.kind) {
      case STAR:
        jj_consume_token(STAR);
        break;
      case LPAREN:
      case PLUSSIGN:
      case MINUSSIGN:
      case 26:
      case 29:
      case 30:
      case 32:
      case 33:
      case 34:
      case 35:
      case 36:
      case 37:
      case 38:
      case 39:
      case 40:
      case 41:
      case 42:
      case 43:
      case 44:
      case DEFINER:
      case CURRENT_USER:
      case SERIALLY_REUSABLE:
      case RESTRICT_REFERENCES:
      case EXCEPTION_INIT:
      case AUTONOMOUS_TRANSACTION:
      case LANGUAGE:
      case INLINE:
      case ALTER:
      case AND:
      case ANY:
      case ASC:
      case AT:
      case CASE:
      case CHECK:
      case CLUSTER:
      case COMPRESS:
      case CREATE:
      case DESC:
      case DROP:
      case EXCLUSIVE:
      case FETCH:
      case GOTO:
      case HAVING:
      case INDEX:
      case INSERT:
      case INTERSECT:
      case IS:
      case LIKE:
      case LOCK:
      case MINUS:
      case MODE:
      case NOT:
      case NULL:
      case OPTION:
      case OR:
      case SHARE:
      case SQL:
      case SUBTYPE:
      case THEN:
      case TO:
      case TYPE:
      case UPDATE:
      case WITH:
      case ADD:
      case AGGREGATE:
      case APPLY:
      case ARRAY:
      case ATTRIBUTE:
      case AUTHID:
      case BINARY_INTEGER:
      case BODY:
      case BOOLEAN:
      case BULK:
      case BYTE:
      case CASCADE:
      case CHAR:
      case CHAR_BASE:
      case CLOSE:
      case COALESCE:
      case COLLECT:
      case COLUMN:
      case COMMIT:
      case CONSTANT:
      case CONSTRAINT:
      case CONSTRUCTOR:
      case CONTINUE:
      case CONVERT:
      case CROSS:
      case CUBE:
      case CURRENT:
      case CURRVAL:
      case DATA:
      case DATE:
      case DAY:
      case DECIMAL:
      case DEFINITION:
      case DELETE:
      case DISABLE:
      case DO:
      case DUPLICATED:
      case EDITIONABLE:
      case ELEMENT:
      case ELSIF:
      case ENABLE:
      case ESCAPE:
      case EXCEPT:
      case EXCEPTIONS:
      case EXECUTE:
      case EXIT:
      case EXTERNAL:
      case EXTENDED:
      case EXTENDS:
      case EXTRACT:
      case FALSE:
      case FINAL:
      case FLOAT:
      case FORALL:
      case FOREIGN:
      case FORCE:
      case FULL:
      case GLOBAL:
      case GROUPING:
      case HASH:
      case HEAP:
      case HOUR:
      case IMMEDIATE:
      case INNER:
      case INDICES:
      case INCLUDING:
      case INDEXTYPE:
      case INDICATOR:
      case INFINITE:
      case INSTANTIABLE:
      case INTEGER:
      case INTERFACE:
      case INTERVAL:
      case INVALIDATE:
      case ISOLATION:
      case JAVA:
      case JOIN:
      case KEY:
      case LEVEL:
      case LIKEC:
      case LIKE2:
      case LIKE4:
      case LIMIT:
      case LIMITED:
      case LONG:
      case LOOP:
      case MAP:
      case MEMBER:
      case MERGE:
      case METADATA:
      case MINUTE:
      case MLSLABEL:
      case MODIFY:
      case MOD:
      case MONTH:
      case NAN:
      case NATURAL:
      case NATURALN:
      case NEW:
      case NEW_DOT:
      case NEXT:
      case NEXTVAL:
      case NO:
      case NOCOPY:
      case NONE:
      case NONEDITIONABLE:
      case NULLIF:
      case NULLS:
      case NUMBER:
      case BFILE_BASE:
      case BLOB_BASE:
      case CLOB_BASE:
      case DATE_BASE:
      case NUMBER_BASE:
      case OBJECT:
      case OCIROWID:
      case OFFSET:
      case OID:
      case ONLY:
      case OPAQUE:
      case OPEN:
      case OPERATOR:
      case ORGANIZATION:
      case OTHERS:
      case OUT:
      case OUTER:
      case OVERRIDING:
      case PACKAGE:
      case PARTITION:
      case PCTFREE:
      case PERCENT:
      case PLS_INTEGER:
      case POSITIVE:
      case POSITIVEN:
      case PRESERVE:
      case PRIOR:
      case PRIMARY:
      case PRIVATE:
      case RAISE:
      case RANGE:
      case RAW:
      case REAL:
      case RECORD:
      case REFERENCES:
      case REGEXP_LIKE:
      case RELEASE:
      case RELIES_ON:
      case RENAME:
      case RESULT:
      case RETURN:
      case RETURNING:
      case REVERSE:
      case ROLLBACK:
      case ROLLUP:
      case ROW:
      case ROWS:
      case ROWID:
      case ROWNUM:
      case ROWTYPE:
      case SAVE:
      case SAVEPOINT:
      case SECOND:
      case SELF:
      case SEPARATE:
      case SETS:
      case SIBLINGS:
      case SHARDED:
      case SHARING:
      case SMALLINT:
      case SOME:
      case SPACE:
      case SQLCODE:
      case SQLERRM:
      case STATIC:
      case SUBSTITUTABLE:
      case SUCCESSFUL:
      case SYNONYM:
      case SYS_REFCURSOR:
      case TEMPORARY:
      case TIES:
      case TIME:
      case TIMESTAMP:
      case TIMEZONE_REGION:
      case TIMEZONE_ABBR:
      case TIMEZONE_MINUTE:
      case TIMEZONE_HOUR:
      case TRANSACTION:
      case TRIGGER:
      case TRUE:
      case UI:
      case UNDER:
      case USING:
      case WHILE:
      case YES:
      case A:
      case VARCHAR:
      case VARCHAR2:
      case DOUBLE:
      case DEC:
      case PRECISION:
      case INT:
      case NUMERIC:
      case SIGNTYPE:
      case NCHAR:
      case NVARCHAR2:
      case STRING:
      case UROWID:
      case VARRAY:
      case VARYING:
      case BFILE:
      case BLOB:
      case CLOB:
      case NCLOB:
      case YEAR:
      case LOCAL:
      case ZONE:
      case CHARACTER:
      case AFTER:
      case BEFORE:
      case OLD:
      case PARENT:
      case GENERATED:
      case SCOPE:
      case INITIALLY:
      case DEFERRABLE:
      case DEFERRED:
      case ANALYZE:
      case ASSOCIATE:
      case AUDIT:
      case COMPOUND:
      case DATABASE:
      case CALL:
      case DISASSOCIATE:
      case EACH:
      case FOLLOWS:
      case LOGOFF:
      case LOGON:
      case NESTED:
      case NOAUDIT:
      case SCHEMA:
      case SERVERERROR:
      case SHUTDOWN:
      case STARTUP:
      case STATEMENT:
      case STATISTICS:
      case SUSPEND:
      case TRUNCATE:
      case WRAPPED:
      case LIBRARY:
      case NAME:
      case STRUCT:
      case CONTEXT:
      case PARAMETERS:
      case LENGTH:
      case TDO:
      case MAXLEN:
      case CHARSETID:
      case CHARSETFORM:
      case ACCESSIBLE:
      case ATTACH:
      case CAST:
      case TREAT:
      case LEFT:
      case RIGHT:
      case BOTH:
      case EMPTY:
      case MULTISET:
      case SUBMULTISET:
      case LEADING:
      case TRAILING:
      case CHAR_CS:
      case NCHAR_CS:
      case DBTIMEZONE:
      case SESSIONTIMEZONE:
      case AUTHENTICATED:
      case LINK:
      case SHARED:
      case DIRECTORY:
      case USER:
      case READ:
      case LATERAL:
      case NOCYCLE:
      case CONNECT_BY_ROOT:
      case IDENTIFIER:
      case UNSIGNED_NUMERIC_LITERAL:
      case CHARACTER_LITERAL:
      case QUOTED_LITERAL:
      case JAVA_INTERFACE_CLASS:
      case STRING_LITERAL:
      case 493:
        SelectListEntry();
        label_56:
        while (true) {
          switch (jj_nt.kind) {
          case COMMA:
            ;
            break;
          default:
            jj_la1[288] = jj_gen;
            break label_56;
          }
          jj_consume_token(COMMA);
          SelectListEntry();
        }
        break;
      default:
        jj_la1[289] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
      {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
    }
    {if (true) throw (Error)jjte000;}
    } finally {
    if (jjtc000) {
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
    }
    }
    throw new Error("Missing return statement in function");
  }

  final public void SelectListEntry() throws net.sourceforge.pmd.lang.ast.ParseException {
    if (jj_2_117(2)) {
      jj_consume_token(CONNECT_BY_ROOT);
    } else {
      ;
    }
    SqlExpression();
    if (jj_2_119(2) && (!(getToken(1).kind == BULK))) {
      if (jj_2_118(2)) {
        jj_consume_token(AS);
      } else {
        ;
      }
      ColumnAlias();
    } else {
      ;
    }
  }

  final public ASTColumnAlias ColumnAlias() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) ColumnAlias */
  ASTColumnAlias jjtn000 = new ASTColumnAlias(JJTCOLUMNALIAS);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));ASTID id;
    try {
      id = ID();
               jjtn000.setImage(id.getImage());
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTTableAlias TableAlias() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) TableAlias */
  ASTTableAlias jjtn000 = new ASTTableAlias(JJTTABLEALIAS);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));ASTID id;
    try {
      id = ID();
               jjtn000.setImage(id.getImage());
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTIntoClause IntoClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) IntoClause */
  ASTIntoClause jjtn000 = new ASTIntoClause(JJTINTOCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      jj_consume_token(INTO);
      VariableName();
      label_57:
      while (true) {
        switch (jj_nt.kind) {
        case COMMA:
          ;
          break;
        default:
          jj_la1[290] = jj_gen;
          break label_57;
        }
        jj_consume_token(COMMA);
        VariableName();
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

// This might also be a associative array dereference...
// see https://github.com/pmd/pmd/issues/3515
  final public ASTVariableName VariableName() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) VariableName */
  ASTVariableName jjtn000 = new ASTVariableName(JJTVARIABLENAME);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));ASTID id; ASTLiteral lit; StringBuilder name = new StringBuilder();
    try {
      id = ID();
                name.append(id.getImage());
      switch (jj_nt.kind) {
      case LPAREN:
        jj_consume_token(LPAREN);
        lit = Literal();
        jj_consume_token(RPAREN);
                                name.append('(').append(lit.getImage()).append(')');
        break;
      default:
        jj_la1[291] = jj_gen;
        ;
      }
      switch (jj_nt.kind) {
      case DOT:
        jj_consume_token(DOT);
        id = ID();
                      name.append('.').append(id.getImage());
        break;
      default:
        jj_la1[292] = jj_gen;
        ;
      }
      switch (jj_nt.kind) {
      case DOT:
        jj_consume_token(DOT);
        id = ID();
                      name.append('.').append(id.getImage());
        break;
      default:
        jj_la1[293] = jj_gen;
        ;
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
        jjtn000.setImage(name.toString());
        {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTBulkCollectIntoClause BulkCollectIntoClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) BulkCollectIntoClause */
  ASTBulkCollectIntoClause jjtn000 = new ASTBulkCollectIntoClause(JJTBULKCOLLECTINTOCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      jj_consume_token(BULK);
      jj_consume_token(COLLECT);
      jj_consume_token(INTO);
      BulkCollectIntoClauseEntry();
      label_58:
      while (true) {
        switch (jj_nt.kind) {
        case COMMA:
          ;
          break;
        default:
          jj_la1[294] = jj_gen;
          break label_58;
        }
        jj_consume_token(COMMA);
        BulkCollectIntoClauseEntry();
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public void BulkCollectIntoClauseEntry() throws net.sourceforge.pmd.lang.ast.ParseException {
    switch (jj_nt.kind) {
    case 26:
    case 29:
    case 30:
    case 32:
    case 33:
    case 34:
    case 35:
    case 36:
    case 37:
    case 38:
    case 39:
    case 40:
    case 41:
    case 42:
    case 43:
    case 44:
    case DEFINER:
    case CURRENT_USER:
    case SERIALLY_REUSABLE:
    case RESTRICT_REFERENCES:
    case EXCEPTION_INIT:
    case AUTONOMOUS_TRANSACTION:
    case LANGUAGE:
    case INLINE:
    case ALTER:
    case AND:
    case ANY:
    case ASC:
    case AT:
    case CHECK:
    case CLUSTER:
    case COMPRESS:
    case CREATE:
    case DESC:
    case DROP:
    case EXCLUSIVE:
    case FETCH:
    case GOTO:
    case HAVING:
    case INDEX:
    case INSERT:
    case INTERSECT:
    case IS:
    case LIKE:
    case LOCK:
    case MINUS:
    case MODE:
    case NOT:
    case NULL:
    case OPTION:
    case OR:
    case SHARE:
    case SUBTYPE:
    case THEN:
    case TO:
    case TYPE:
    case UPDATE:
    case ADD:
    case AGGREGATE:
    case APPLY:
    case ARRAY:
    case ATTRIBUTE:
    case AUTHID:
    case BINARY_INTEGER:
    case BODY:
    case BOOLEAN:
    case BULK:
    case BYTE:
    case CASCADE:
    case CHAR:
    case CHAR_BASE:
    case CLOSE:
    case COALESCE:
    case COLLECT:
    case COLUMN:
    case COMMIT:
    case CONSTANT:
    case CONSTRAINT:
    case CONSTRUCTOR:
    case CONTINUE:
    case CONVERT:
    case CROSS:
    case CUBE:
    case CURRENT:
    case CURRVAL:
    case DATA:
    case DATE:
    case DAY:
    case DECIMAL:
    case DEFINITION:
    case DELETE:
    case DISABLE:
    case DO:
    case DUPLICATED:
    case EDITIONABLE:
    case ELEMENT:
    case ELSIF:
    case ENABLE:
    case ESCAPE:
    case EXCEPT:
    case EXCEPTIONS:
    case EXECUTE:
    case EXIT:
    case EXTERNAL:
    case EXTENDED:
    case EXTENDS:
    case EXTRACT:
    case FALSE:
    case FINAL:
    case FLOAT:
    case FORALL:
    case FOREIGN:
    case FORCE:
    case FULL:
    case GLOBAL:
    case GROUPING:
    case HASH:
    case HEAP:
    case HOUR:
    case IMMEDIATE:
    case INNER:
    case INDICES:
    case INCLUDING:
    case INDEXTYPE:
    case INDICATOR:
    case INFINITE:
    case INSTANTIABLE:
    case INTEGER:
    case INTERFACE:
    case INTERVAL:
    case INVALIDATE:
    case ISOLATION:
    case JAVA:
    case JOIN:
    case KEY:
    case LEVEL:
    case LIKEC:
    case LIKE2:
    case LIKE4:
    case LIMIT:
    case LIMITED:
    case LONG:
    case LOOP:
    case MAP:
    case MEMBER:
    case MERGE:
    case METADATA:
    case MINUTE:
    case MLSLABEL:
    case MODIFY:
    case MOD:
    case MONTH:
    case NAN:
    case NATURAL:
    case NATURALN:
    case NEW:
    case NEXT:
    case NEXTVAL:
    case NO:
    case NOCOPY:
    case NONE:
    case NONEDITIONABLE:
    case NULLIF:
    case NULLS:
    case NUMBER:
    case BFILE_BASE:
    case BLOB_BASE:
    case CLOB_BASE:
    case DATE_BASE:
    case NUMBER_BASE:
    case OBJECT:
    case OCIROWID:
    case OFFSET:
    case OID:
    case ONLY:
    case OPAQUE:
    case OPEN:
    case OPERATOR:
    case ORGANIZATION:
    case OTHERS:
    case OUT:
    case OUTER:
    case OVERRIDING:
    case PACKAGE:
    case PARTITION:
    case PCTFREE:
    case PERCENT:
    case PLS_INTEGER:
    case POSITIVE:
    case POSITIVEN:
    case PRESERVE:
    case PRIOR:
    case PRIMARY:
    case PRIVATE:
    case RAISE:
    case RANGE:
    case RAW:
    case REAL:
    case RECORD:
    case REFERENCES:
    case REGEXP_LIKE:
    case RELEASE:
    case RELIES_ON:
    case RENAME:
    case RESULT:
    case RETURN:
    case RETURNING:
    case REVERSE:
    case ROLLBACK:
    case ROLLUP:
    case ROW:
    case ROWS:
    case ROWID:
    case ROWNUM:
    case ROWTYPE:
    case SAVE:
    case SAVEPOINT:
    case SECOND:
    case SELF:
    case SEPARATE:
    case SETS:
    case SIBLINGS:
    case SHARDED:
    case SHARING:
    case SMALLINT:
    case SOME:
    case SPACE:
    case SQLCODE:
    case SQLERRM:
    case STATIC:
    case SUBSTITUTABLE:
    case SUCCESSFUL:
    case SYNONYM:
    case SYS_REFCURSOR:
    case TEMPORARY:
    case TIES:
    case TIME:
    case TIMESTAMP:
    case TIMEZONE_REGION:
    case TIMEZONE_ABBR:
    case TIMEZONE_MINUTE:
    case TIMEZONE_HOUR:
    case TRANSACTION:
    case TRIGGER:
    case TRUE:
    case UI:
    case UNDER:
    case USING:
    case WHILE:
    case YES:
    case A:
    case VARCHAR:
    case VARCHAR2:
    case DOUBLE:
    case DEC:
    case PRECISION:
    case INT:
    case NUMERIC:
    case SIGNTYPE:
    case NCHAR:
    case NVARCHAR2:
    case STRING:
    case UROWID:
    case VARRAY:
    case VARYING:
    case BFILE:
    case BLOB:
    case CLOB:
    case NCLOB:
    case YEAR:
    case LOCAL:
    case ZONE:
    case CHARACTER:
    case AFTER:
    case BEFORE:
    case OLD:
    case PARENT:
    case GENERATED:
    case SCOPE:
    case INITIALLY:
    case DEFERRABLE:
    case DEFERRED:
    case ANALYZE:
    case ASSOCIATE:
    case AUDIT:
    case COMPOUND:
    case DATABASE:
    case CALL:
    case DISASSOCIATE:
    case EACH:
    case FOLLOWS:
    case LOGOFF:
    case LOGON:
    case NESTED:
    case NOAUDIT:
    case SCHEMA:
    case SERVERERROR:
    case SHUTDOWN:
    case STARTUP:
    case STATEMENT:
    case STATISTICS:
    case SUSPEND:
    case TRUNCATE:
    case WRAPPED:
    case LIBRARY:
    case NAME:
    case STRUCT:
    case CONTEXT:
    case PARAMETERS:
    case LENGTH:
    case TDO:
    case MAXLEN:
    case CHARSETID:
    case CHARSETFORM:
    case ACCESSIBLE:
    case ATTACH:
    case CAST:
    case TREAT:
    case LEFT:
    case RIGHT:
    case BOTH:
    case EMPTY:
    case MULTISET:
    case SUBMULTISET:
    case LEADING:
    case TRAILING:
    case CHAR_CS:
    case NCHAR_CS:
    case DBTIMEZONE:
    case SESSIONTIMEZONE:
    case AUTHENTICATED:
    case LINK:
    case SHARED:
    case DIRECTORY:
    case USER:
    case READ:
    case LATERAL:
    case NOCYCLE:
    case CONNECT_BY_ROOT:
    case IDENTIFIER:
    case QUOTED_LITERAL:
    case JAVA_INTERFACE_CLASS:
    case 493:
      CollectionName();
      break;
    case COLON:
      jj_consume_token(COLON);
      HostArrayName();
      break;
    default:
      jj_la1[295] = jj_gen;
      jj_consume_token(-1);
      throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
    }
  }

  final public ASTCollectionName CollectionName() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) CollectionName */
  ASTCollectionName jjtn000 = new ASTCollectionName(JJTCOLLECTIONNAME);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));ASTID id;
    try {
      id = ID();
               jjtn000.setImage(id.getImage());
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTHostArrayName HostArrayName() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) HostArrayName */
  ASTHostArrayName jjtn000 = new ASTHostArrayName(JJTHOSTARRAYNAME);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));ASTID id;
    try {
      id = ID();
               jjtn000.setImage(id.getImage());
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTTableReference TableReference() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) TableReference */
  ASTTableReference jjtn000 = new ASTTableReference(JJTTABLEREFERENCE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      QueryTableExpression();
      if (jj_2_120(2) && (!getToken(1).getImage().equalsIgnoreCase("LOG"))) {
        TableAlias();
      } else {
        ;
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public void QueryTableExpression() throws net.sourceforge.pmd.lang.ast.ParseException {
    if (jj_2_124(2)) {
      if (jj_2_121(2)) {
        SchemaName();
        jj_consume_token(DOT);
      } else {
        ;
      }
      if (jj_2_122(2)) {
        FunctionCall();
      } else {
        switch (jj_nt.kind) {
        case 26:
        case 29:
        case 30:
        case 32:
        case 33:
        case 34:
        case 35:
        case 36:
        case 37:
        case 38:
        case 39:
        case 40:
        case 41:
        case 42:
        case 43:
        case 44:
        case DEFINER:
        case CURRENT_USER:
        case SERIALLY_REUSABLE:
        case RESTRICT_REFERENCES:
        case EXCEPTION_INIT:
        case AUTONOMOUS_TRANSACTION:
        case LANGUAGE:
        case INLINE:
        case ALTER:
        case AND:
        case ANY:
        case ASC:
        case AT:
        case CHECK:
        case CLUSTER:
        case COMPRESS:
        case CREATE:
        case DESC:
        case DROP:
        case EXCLUSIVE:
        case FETCH:
        case GOTO:
        case HAVING:
        case INDEX:
        case INSERT:
        case INTERSECT:
        case IS:
        case LIKE:
        case LOCK:
        case MINUS:
        case MODE:
        case NOT:
        case NULL:
        case OPTION:
        case OR:
        case SHARE:
        case SUBTYPE:
        case THEN:
        case TO:
        case TYPE:
        case UPDATE:
        case ADD:
        case AGGREGATE:
        case APPLY:
        case ARRAY:
        case ATTRIBUTE:
        case AUTHID:
        case BINARY_INTEGER:
        case BODY:
        case BOOLEAN:
        case BULK:
        case BYTE:
        case CASCADE:
        case CHAR:
        case CHAR_BASE:
        case CLOSE:
        case COALESCE:
        case COLLECT:
        case COLUMN:
        case COMMIT:
        case CONSTANT:
        case CONSTRAINT:
        case CONSTRUCTOR:
        case CONTINUE:
        case CONVERT:
        case CROSS:
        case CUBE:
        case CURRENT:
        case CURRVAL:
        case DATA:
        case DATE:
        case DAY:
        case DECIMAL:
        case DEFINITION:
        case DELETE:
        case DISABLE:
        case DO:
        case DUPLICATED:
        case EDITIONABLE:
        case ELEMENT:
        case ELSIF:
        case ENABLE:
        case ESCAPE:
        case EXCEPT:
        case EXCEPTIONS:
        case EXECUTE:
        case EXIT:
        case EXTERNAL:
        case EXTENDED:
        case EXTENDS:
        case EXTRACT:
        case FALSE:
        case FINAL:
        case FLOAT:
        case FORALL:
        case FOREIGN:
        case FORCE:
        case FULL:
        case GLOBAL:
        case GROUPING:
        case HASH:
        case HEAP:
        case HOUR:
        case IMMEDIATE:
        case INNER:
        case INDICES:
        case INCLUDING:
        case INDEXTYPE:
        case INDICATOR:
        case INFINITE:
        case INSTANTIABLE:
        case INTEGER:
        case INTERFACE:
        case INTERVAL:
        case INVALIDATE:
        case ISOLATION:
        case JAVA:
        case JOIN:
        case KEY:
        case LEVEL:
        case LIKEC:
        case LIKE2:
        case LIKE4:
        case LIMIT:
        case LIMITED:
        case LONG:
        case LOOP:
        case MAP:
        case MEMBER:
        case MERGE:
        case METADATA:
        case MINUTE:
        case MLSLABEL:
        case MODIFY:
        case MOD:
        case MONTH:
        case NAN:
        case NATURAL:
        case NATURALN:
        case NEW:
        case NEXT:
        case NEXTVAL:
        case NO:
        case NOCOPY:
        case NONE:
        case NONEDITIONABLE:
        case NULLIF:
        case NULLS:
        case NUMBER:
        case BFILE_BASE:
        case BLOB_BASE:
        case CLOB_BASE:
        case DATE_BASE:
        case NUMBER_BASE:
        case OBJECT:
        case OCIROWID:
        case OFFSET:
        case OID:
        case ONLY:
        case OPAQUE:
        case OPEN:
        case OPERATOR:
        case ORGANIZATION:
        case OTHERS:
        case OUT:
        case OUTER:
        case OVERRIDING:
        case PACKAGE:
        case PARTITION:
        case PCTFREE:
        case PERCENT:
        case PLS_INTEGER:
        case POSITIVE:
        case POSITIVEN:
        case PRESERVE:
        case PRIOR:
        case PRIMARY:
        case PRIVATE:
        case RAISE:
        case RANGE:
        case RAW:
        case REAL:
        case RECORD:
        case REFERENCES:
        case REGEXP_LIKE:
        case RELEASE:
        case RELIES_ON:
        case RENAME:
        case RESULT:
        case RETURN:
        case RETURNING:
        case REVERSE:
        case ROLLBACK:
        case ROLLUP:
        case ROW:
        case ROWS:
        case ROWID:
        case ROWNUM:
        case ROWTYPE:
        case SAVE:
        case SAVEPOINT:
        case SECOND:
        case SELF:
        case SEPARATE:
        case SETS:
        case SIBLINGS:
        case SHARDED:
        case SHARING:
        case SMALLINT:
        case SOME:
        case SPACE:
        case SQLCODE:
        case SQLERRM:
        case STATIC:
        case SUBSTITUTABLE:
        case SUCCESSFUL:
        case SYNONYM:
        case SYS_REFCURSOR:
        case TEMPORARY:
        case TIES:
        case TIME:
        case TIMESTAMP:
        case TIMEZONE_REGION:
        case TIMEZONE_ABBR:
        case TIMEZONE_MINUTE:
        case TIMEZONE_HOUR:
        case TRANSACTION:
        case TRIGGER:
        case TRUE:
        case UI:
        case UNDER:
        case USING:
        case WHILE:
        case YES:
        case A:
        case VARCHAR:
        case VARCHAR2:
        case DOUBLE:
        case DEC:
        case PRECISION:
        case INT:
        case NUMERIC:
        case SIGNTYPE:
        case NCHAR:
        case NVARCHAR2:
        case STRING:
        case UROWID:
        case VARRAY:
        case VARYING:
        case BFILE:
        case BLOB:
        case CLOB:
        case NCLOB:
        case YEAR:
        case LOCAL:
        case ZONE:
        case CHARACTER:
        case AFTER:
        case BEFORE:
        case OLD:
        case PARENT:
        case GENERATED:
        case SCOPE:
        case INITIALLY:
        case DEFERRABLE:
        case DEFERRED:
        case ANALYZE:
        case ASSOCIATE:
        case AUDIT:
        case COMPOUND:
        case DATABASE:
        case CALL:
        case DISASSOCIATE:
        case EACH:
        case FOLLOWS:
        case LOGOFF:
        case LOGON:
        case NESTED:
        case NOAUDIT:
        case SCHEMA:
        case SERVERERROR:
        case SHUTDOWN:
        case STARTUP:
        case STATEMENT:
        case STATISTICS:
        case SUSPEND:
        case TRUNCATE:
        case WRAPPED:
        case LIBRARY:
        case NAME:
        case STRUCT:
        case CONTEXT:
        case PARAMETERS:
        case LENGTH:
        case TDO:
        case MAXLEN:
        case CHARSETID:
        case CHARSETFORM:
        case ACCESSIBLE:
        case ATTACH:
        case CAST:
        case TREAT:
        case LEFT:
        case RIGHT:
        case BOTH:
        case EMPTY:
        case MULTISET:
        case SUBMULTISET:
        case LEADING:
        case TRAILING:
        case CHAR_CS:
        case NCHAR_CS:
        case DBTIMEZONE:
        case SESSIONTIMEZONE:
        case AUTHENTICATED:
        case LINK:
        case SHARED:
        case DIRECTORY:
        case USER:
        case READ:
        case LATERAL:
        case NOCYCLE:
        case CONNECT_BY_ROOT:
        case IDENTIFIER:
        case QUOTED_LITERAL:
        case JAVA_INTERFACE_CLASS:
        case 493:
          TableName();
          break;
        default:
          jj_la1[296] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
      }
    } else {
      switch (jj_nt.kind) {
      case TABLE:
        TableCollectionExpression();
        break;
      default:
        jj_la1[300] = jj_gen;
        if (jj_2_125(5)) {
          jj_consume_token(LPAREN);
          if (jj_2_123(2)) {
            SchemaName();
            jj_consume_token(DOT);
          } else {
            ;
          }
          TableName();
          switch (jj_nt.kind) {
          case 26:
          case 29:
          case 30:
          case 32:
          case 33:
          case 34:
          case 35:
          case 36:
          case 37:
          case 38:
          case 39:
          case 40:
          case 41:
          case 42:
          case 43:
          case 44:
          case DEFINER:
          case CURRENT_USER:
          case SERIALLY_REUSABLE:
          case RESTRICT_REFERENCES:
          case EXCEPTION_INIT:
          case AUTONOMOUS_TRANSACTION:
          case LANGUAGE:
          case INLINE:
          case ALTER:
          case AND:
          case ANY:
          case ASC:
          case AT:
          case CHECK:
          case CLUSTER:
          case COMPRESS:
          case CREATE:
          case DESC:
          case DROP:
          case EXCLUSIVE:
          case FETCH:
          case GOTO:
          case HAVING:
          case INDEX:
          case INSERT:
          case INTERSECT:
          case IS:
          case LIKE:
          case LOCK:
          case MINUS:
          case MODE:
          case NOT:
          case NULL:
          case OPTION:
          case OR:
          case SHARE:
          case SUBTYPE:
          case THEN:
          case TO:
          case TYPE:
          case UPDATE:
          case ADD:
          case AGGREGATE:
          case APPLY:
          case ARRAY:
          case ATTRIBUTE:
          case AUTHID:
          case BINARY_INTEGER:
          case BODY:
          case BOOLEAN:
          case BULK:
          case BYTE:
          case CASCADE:
          case CHAR:
          case CHAR_BASE:
          case CLOSE:
          case COALESCE:
          case COLLECT:
          case COLUMN:
          case COMMIT:
          case CONSTANT:
          case CONSTRAINT:
          case CONSTRUCTOR:
          case CONTINUE:
          case CONVERT:
          case CROSS:
          case CUBE:
          case CURRENT:
          case CURRVAL:
          case DATA:
          case DATE:
          case DAY:
          case DECIMAL:
          case DEFINITION:
          case DELETE:
          case DISABLE:
          case DO:
          case DUPLICATED:
          case EDITIONABLE:
          case ELEMENT:
          case ELSIF:
          case ENABLE:
          case ESCAPE:
          case EXCEPT:
          case EXCEPTIONS:
          case EXECUTE:
          case EXIT:
          case EXTERNAL:
          case EXTENDED:
          case EXTENDS:
          case EXTRACT:
          case FALSE:
          case FINAL:
          case FLOAT:
          case FORALL:
          case FOREIGN:
          case FORCE:
          case FULL:
          case GLOBAL:
          case GROUPING:
          case HASH:
          case HEAP:
          case HOUR:
          case IMMEDIATE:
          case INNER:
          case INDICES:
          case INCLUDING:
          case INDEXTYPE:
          case INDICATOR:
          case INFINITE:
          case INSTANTIABLE:
          case INTEGER:
          case INTERFACE:
          case INTERVAL:
          case INVALIDATE:
          case ISOLATION:
          case JAVA:
          case JOIN:
          case KEY:
          case LEVEL:
          case LIKEC:
          case LIKE2:
          case LIKE4:
          case LIMIT:
          case LIMITED:
          case LONG:
          case LOOP:
          case MAP:
          case MEMBER:
          case MERGE:
          case METADATA:
          case MINUTE:
          case MLSLABEL:
          case MODIFY:
          case MOD:
          case MONTH:
          case NAN:
          case NATURAL:
          case NATURALN:
          case NEW:
          case NEXT:
          case NEXTVAL:
          case NO:
          case NOCOPY:
          case NONE:
          case NONEDITIONABLE:
          case NULLIF:
          case NULLS:
          case NUMBER:
          case BFILE_BASE:
          case BLOB_BASE:
          case CLOB_BASE:
          case DATE_BASE:
          case NUMBER_BASE:
          case OBJECT:
          case OCIROWID:
          case OFFSET:
          case OID:
          case ONLY:
          case OPAQUE:
          case OPEN:
          case OPERATOR:
          case ORGANIZATION:
          case OTHERS:
          case OUT:
          case OUTER:
          case OVERRIDING:
          case PACKAGE:
          case PARTITION:
          case PCTFREE:
          case PERCENT:
          case PLS_INTEGER:
          case POSITIVE:
          case POSITIVEN:
          case PRESERVE:
          case PRIOR:
          case PRIMARY:
          case PRIVATE:
          case RAISE:
          case RANGE:
          case RAW:
          case REAL:
          case RECORD:
          case REFERENCES:
          case REGEXP_LIKE:
          case RELEASE:
          case RELIES_ON:
          case RENAME:
          case RESULT:
          case RETURN:
          case RETURNING:
          case REVERSE:
          case ROLLBACK:
          case ROLLUP:
          case ROW:
          case ROWS:
          case ROWID:
          case ROWNUM:
          case ROWTYPE:
          case SAVE:
          case SAVEPOINT:
          case SECOND:
          case SELF:
          case SEPARATE:
          case SETS:
          case SIBLINGS:
          case SHARDED:
          case SHARING:
          case SMALLINT:
          case SOME:
          case SPACE:
          case SQLCODE:
          case SQLERRM:
          case STATIC:
          case SUBSTITUTABLE:
          case SUCCESSFUL:
          case SYNONYM:
          case SYS_REFCURSOR:
          case TEMPORARY:
          case TIES:
          case TIME:
          case TIMESTAMP:
          case TIMEZONE_REGION:
          case TIMEZONE_ABBR:
          case TIMEZONE_MINUTE:
          case TIMEZONE_HOUR:
          case TRANSACTION:
          case TRIGGER:
          case TRUE:
          case UI:
          case UNDER:
          case USING:
          case WHILE:
          case YES:
          case A:
          case VARCHAR:
          case VARCHAR2:
          case DOUBLE:
          case DEC:
          case PRECISION:
          case INT:
          case NUMERIC:
          case SIGNTYPE:
          case NCHAR:
          case NVARCHAR2:
          case STRING:
          case UROWID:
          case VARRAY:
          case VARYING:
          case BFILE:
          case BLOB:
          case CLOB:
          case NCLOB:
          case YEAR:
          case LOCAL:
          case ZONE:
          case CHARACTER:
          case AFTER:
          case BEFORE:
          case OLD:
          case PARENT:
          case GENERATED:
          case SCOPE:
          case INITIALLY:
          case DEFERRABLE:
          case DEFERRED:
          case ANALYZE:
          case ASSOCIATE:
          case AUDIT:
          case COMPOUND:
          case DATABASE:
          case CALL:
          case DISASSOCIATE:
          case EACH:
          case FOLLOWS:
          case LOGOFF:
          case LOGON:
          case NESTED:
          case NOAUDIT:
          case SCHEMA:
          case SERVERERROR:
          case SHUTDOWN:
          case STARTUP:
          case STATEMENT:
          case STATISTICS:
          case SUSPEND:
          case TRUNCATE:
          case WRAPPED:
          case LIBRARY:
          case NAME:
          case STRUCT:
          case CONTEXT:
          case PARAMETERS:
          case LENGTH:
          case TDO:
          case MAXLEN:
          case CHARSETID:
          case CHARSETFORM:
          case ACCESSIBLE:
          case ATTACH:
          case CAST:
          case TREAT:
          case LEFT:
          case RIGHT:
          case BOTH:
          case EMPTY:
          case MULTISET:
          case SUBMULTISET:
          case LEADING:
          case TRAILING:
          case CHAR_CS:
          case NCHAR_CS:
          case DBTIMEZONE:
          case SESSIONTIMEZONE:
          case AUTHENTICATED:
          case LINK:
          case SHARED:
          case DIRECTORY:
          case USER:
          case READ:
          case LATERAL:
          case NOCYCLE:
          case CONNECT_BY_ROOT:
          case IDENTIFIER:
          case QUOTED_LITERAL:
          case JAVA_INTERFACE_CLASS:
          case 493:
            TableAlias();
            break;
          default:
            jj_la1[297] = jj_gen;
            ;
          }
          jj_consume_token(RPAREN);
        } else if (jj_2_126(5)) {
          switch (jj_nt.kind) {
          case LATERAL:
            jj_consume_token(LATERAL);
            break;
          default:
            jj_la1[298] = jj_gen;
            ;
          }
          jj_consume_token(LPAREN);
          Subquery();
          switch (jj_nt.kind) {
          case WITH:
            SubqueryRestrictionClause();
            break;
          default:
            jj_la1[299] = jj_gen;
            ;
          }
          jj_consume_token(RPAREN);
        } else {
          switch (jj_nt.kind) {
          case LPAREN:
            jj_consume_token(LPAREN);
            JoinClause();
            jj_consume_token(RPAREN);
            break;
          default:
            jj_la1[301] = jj_gen;
            jj_consume_token(-1);
            throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
          }
        }
      }
    }
  }

  final public ASTSubqueryRestrictionClause SubqueryRestrictionClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) SubqueryRestrictionClause */
  ASTSubqueryRestrictionClause jjtn000 = new ASTSubqueryRestrictionClause(JJTSUBQUERYRESTRICTIONCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      jj_consume_token(WITH);
      switch (jj_nt.kind) {
      case READ:
        jj_consume_token(READ);
        jj_consume_token(ONLY);
        break;
      case CHECK:
        jj_consume_token(CHECK);
        jj_consume_token(OPTION);
        break;
      default:
        jj_la1[302] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      switch (jj_nt.kind) {
      case CONSTRAINT:
        jj_consume_token(CONSTRAINT);
        ID();
        break;
      default:
        jj_la1[303] = jj_gen;
        ;
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTTableCollectionExpression TableCollectionExpression() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) TableCollectionExpression */
  ASTTableCollectionExpression jjtn000 = new ASTTableCollectionExpression(JJTTABLECOLLECTIONEXPRESSION);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      jj_consume_token(TABLE);
      jj_consume_token(LPAREN);
      if (jj_2_127(3)) {
        Subquery();
      } else {
        switch (jj_nt.kind) {
        case LPAREN:
        case PLUSSIGN:
        case MINUSSIGN:
        case STAR:
        case 26:
        case 29:
        case 30:
        case 32:
        case 33:
        case 34:
        case 35:
        case 36:
        case 37:
        case 38:
        case 39:
        case 40:
        case 41:
        case 42:
        case 43:
        case 44:
        case DEFINER:
        case CURRENT_USER:
        case SERIALLY_REUSABLE:
        case RESTRICT_REFERENCES:
        case EXCEPTION_INIT:
        case AUTONOMOUS_TRANSACTION:
        case LANGUAGE:
        case INLINE:
        case ALTER:
        case AND:
        case ANY:
        case ASC:
        case AT:
        case CASE:
        case CHECK:
        case CLUSTER:
        case COMPRESS:
        case CREATE:
        case DESC:
        case DROP:
        case EXCLUSIVE:
        case FETCH:
        case GOTO:
        case HAVING:
        case INDEX:
        case INSERT:
        case INTERSECT:
        case IS:
        case LIKE:
        case LOCK:
        case MINUS:
        case MODE:
        case NOT:
        case NULL:
        case OPTION:
        case OR:
        case SHARE:
        case SQL:
        case SUBTYPE:
        case THEN:
        case TO:
        case TYPE:
        case UPDATE:
        case WITH:
        case ADD:
        case AGGREGATE:
        case APPLY:
        case ARRAY:
        case ATTRIBUTE:
        case AUTHID:
        case BINARY_INTEGER:
        case BODY:
        case BOOLEAN:
        case BULK:
        case BYTE:
        case CASCADE:
        case CHAR:
        case CHAR_BASE:
        case CLOSE:
        case COALESCE:
        case COLLECT:
        case COLUMN:
        case COMMIT:
        case CONSTANT:
        case CONSTRAINT:
        case CONSTRUCTOR:
        case CONTINUE:
        case CONVERT:
        case CROSS:
        case CUBE:
        case CURRENT:
        case CURRVAL:
        case DATA:
        case DATE:
        case DAY:
        case DECIMAL:
        case DEFINITION:
        case DELETE:
        case DISABLE:
        case DO:
        case DUPLICATED:
        case EDITIONABLE:
        case ELEMENT:
        case ELSIF:
        case ENABLE:
        case ESCAPE:
        case EXCEPT:
        case EXCEPTIONS:
        case EXECUTE:
        case EXIT:
        case EXTERNAL:
        case EXTENDED:
        case EXTENDS:
        case EXTRACT:
        case FALSE:
        case FINAL:
        case FLOAT:
        case FORALL:
        case FOREIGN:
        case FORCE:
        case FULL:
        case GLOBAL:
        case GROUPING:
        case HASH:
        case HEAP:
        case HOUR:
        case IMMEDIATE:
        case INNER:
        case INDICES:
        case INCLUDING:
        case INDEXTYPE:
        case INDICATOR:
        case INFINITE:
        case INSTANTIABLE:
        case INTEGER:
        case INTERFACE:
        case INTERVAL:
        case INVALIDATE:
        case ISOLATION:
        case JAVA:
        case JOIN:
        case KEY:
        case LEVEL:
        case LIKEC:
        case LIKE2:
        case LIKE4:
        case LIMIT:
        case LIMITED:
        case LONG:
        case LOOP:
        case MAP:
        case MEMBER:
        case MERGE:
        case METADATA:
        case MINUTE:
        case MLSLABEL:
        case MODIFY:
        case MOD:
        case MONTH:
        case NAN:
        case NATURAL:
        case NATURALN:
        case NEW:
        case NEW_DOT:
        case NEXT:
        case NEXTVAL:
        case NO:
        case NOCOPY:
        case NONE:
        case NONEDITIONABLE:
        case NULLIF:
        case NULLS:
        case NUMBER:
        case BFILE_BASE:
        case BLOB_BASE:
        case CLOB_BASE:
        case DATE_BASE:
        case NUMBER_BASE:
        case OBJECT:
        case OCIROWID:
        case OFFSET:
        case OID:
        case ONLY:
        case OPAQUE:
        case OPEN:
        case OPERATOR:
        case ORGANIZATION:
        case OTHERS:
        case OUT:
        case OUTER:
        case OVERRIDING:
        case PACKAGE:
        case PARTITION:
        case PCTFREE:
        case PERCENT:
        case PLS_INTEGER:
        case POSITIVE:
        case POSITIVEN:
        case PRESERVE:
        case PRIOR:
        case PRIMARY:
        case PRIVATE:
        case RAISE:
        case RANGE:
        case RAW:
        case REAL:
        case RECORD:
        case REFERENCES:
        case REGEXP_LIKE:
        case RELEASE:
        case RELIES_ON:
        case RENAME:
        case RESULT:
        case RETURN:
        case RETURNING:
        case REVERSE:
        case ROLLBACK:
        case ROLLUP:
        case ROW:
        case ROWS:
        case ROWID:
        case ROWNUM:
        case ROWTYPE:
        case SAVE:
        case SAVEPOINT:
        case SECOND:
        case SELF:
        case SEPARATE:
        case SETS:
        case SIBLINGS:
        case SHARDED:
        case SHARING:
        case SMALLINT:
        case SOME:
        case SPACE:
        case SQLCODE:
        case SQLERRM:
        case STATIC:
        case SUBSTITUTABLE:
        case SUCCESSFUL:
        case SYNONYM:
        case SYS_REFCURSOR:
        case TEMPORARY:
        case TIES:
        case TIME:
        case TIMESTAMP:
        case TIMEZONE_REGION:
        case TIMEZONE_ABBR:
        case TIMEZONE_MINUTE:
        case TIMEZONE_HOUR:
        case TRANSACTION:
        case TRIGGER:
        case TRUE:
        case UI:
        case UNDER:
        case USING:
        case WHILE:
        case YES:
        case A:
        case VARCHAR:
        case VARCHAR2:
        case DOUBLE:
        case DEC:
        case PRECISION:
        case INT:
        case NUMERIC:
        case SIGNTYPE:
        case NCHAR:
        case NVARCHAR2:
        case STRING:
        case UROWID:
        case VARRAY:
        case VARYING:
        case BFILE:
        case BLOB:
        case CLOB:
        case NCLOB:
        case YEAR:
        case LOCAL:
        case ZONE:
        case CHARACTER:
        case AFTER:
        case BEFORE:
        case OLD:
        case PARENT:
        case GENERATED:
        case SCOPE:
        case INITIALLY:
        case DEFERRABLE:
        case DEFERRED:
        case CC_IF:
        case ANALYZE:
        case ASSOCIATE:
        case AUDIT:
        case COMPOUND:
        case DATABASE:
        case CALL:
        case DISASSOCIATE:
        case EACH:
        case FOLLOWS:
        case LOGOFF:
        case LOGON:
        case NESTED:
        case NOAUDIT:
        case SCHEMA:
        case SERVERERROR:
        case SHUTDOWN:
        case STARTUP:
        case STATEMENT:
        case STATISTICS:
        case SUSPEND:
        case TRUNCATE:
        case WRAPPED:
        case LIBRARY:
        case NAME:
        case STRUCT:
        case CONTEXT:
        case PARAMETERS:
        case LENGTH:
        case TDO:
        case MAXLEN:
        case CHARSETID:
        case CHARSETFORM:
        case ACCESSIBLE:
        case ATTACH:
        case CAST:
        case TREAT:
        case LEFT:
        case RIGHT:
        case BOTH:
        case EMPTY:
        case MULTISET:
        case SUBMULTISET:
        case LEADING:
        case TRAILING:
        case CHAR_CS:
        case NCHAR_CS:
        case DBTIMEZONE:
        case SESSIONTIMEZONE:
        case AUTHENTICATED:
        case LINK:
        case SHARED:
        case DIRECTORY:
        case USER:
        case READ:
        case LATERAL:
        case NOCYCLE:
        case CONNECT_BY_ROOT:
        case IDENTIFIER:
        case UNSIGNED_NUMERIC_LITERAL:
        case CHARACTER_LITERAL:
        case QUOTED_LITERAL:
        case JAVA_INTERFACE_CLASS:
        case STRING_LITERAL:
        case 493:
          Expression();
          break;
        default:
          jj_la1[304] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
      }
      jj_consume_token(RPAREN);
      switch (jj_nt.kind) {
      case LPAREN:
        jj_consume_token(LPAREN);
        jj_consume_token(PLUSSIGN);
        jj_consume_token(RPAREN);
        break;
      default:
        jj_la1[305] = jj_gen;
        ;
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * Special production, used in joins. The table reference might have
 * a table alias, but this should not match any following NATURAL, CROSS, etc.
 * keywords, although these are allowed as alias names since these are
 * not reserved words.
 */
  final public ASTTableReference TableReferenceInJoin() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) TableReference */
  ASTTableReference jjtn000 = new ASTTableReference(JJTTABLEREFERENCE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      QueryTableExpression();
      if (jj_2_128(1) && (// ON / USING might follow a table reference inside a inner cross join
                 getToken(1).kind != ON
              && getToken(1).kind != USING
      
              // PARTITION might follow a table reference inside a outer join
              // or it might precede a outer join
              && getToken(1).kind != PARTITION
      
              // join clauses can be repeated
              && getToken(1).kind != INNER
              && getToken(1).kind != JOIN
              && getToken(1).kind != CROSS
              && getToken(1).kind != NATURAL
              && getToken(1).kind != FULL
              && getToken(1).kind != LEFT
              && getToken(1).kind != RIGHT
              && getToken(1).kind != OUTER)) {
        TableAlias();
      } else {
        ;
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTSchemaName SchemaName() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) SchemaName */
  ASTSchemaName jjtn000 = new ASTSchemaName(JJTSCHEMANAME);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));ASTID id;
    try {
      id = ID();
               jjtn000.setImage(id.getImage());
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTTableName TableName() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) TableName */
  ASTTableName jjtn000 = new ASTTableName(JJTTABLENAME);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));ASTID id;
    try {
      id = ID();
               jjtn000.setImage(id.getImage());
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * @see SELECT
 */
  final public ASTJoinClause JoinClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) JoinClause */
  ASTJoinClause jjtn000 = new ASTJoinClause(JJTJOINCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      TableReferenceInJoin();
      label_59:
      while (true) {
        JoinClausePart();
        switch (jj_nt.kind) {
        case CROSS:
        case FULL:
        case INNER:
        case JOIN:
        case NATURAL:
        case OUTER:
        case PARTITION:
        case LEFT:
        case RIGHT:
          ;
          break;
        default:
          jj_la1[306] = jj_gen;
          break label_59;
        }
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public void JoinClausePart() throws net.sourceforge.pmd.lang.ast.ParseException {
    if (jj_2_129(2)) {
      InnerCrossJoinClause();
    } else if (jj_2_130(2)) {
      OuterJoinClause();
    } else if (jj_2_131(2)) {
      CrossOuterApplyClause();
    } else {
      jj_consume_token(-1);
      throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
    }
  }

  final public ASTInnerCrossJoinClause InnerCrossJoinClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) InnerCrossJoinClause */
  ASTInnerCrossJoinClause jjtn000 = new ASTInnerCrossJoinClause(JJTINNERCROSSJOINCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      switch (jj_nt.kind) {
      case INNER:
      case JOIN:
        switch (jj_nt.kind) {
        case INNER:
          jj_consume_token(INNER);
          break;
        default:
          jj_la1[307] = jj_gen;
          ;
        }
        jj_consume_token(JOIN);
        TableReferenceInJoin();
        switch (jj_nt.kind) {
        case ON:
          jj_consume_token(ON);
          ConditionalOrExpression();
          break;
        case USING:
          jj_consume_token(USING);
          jj_consume_token(LPAREN);
          Column();
          label_60:
          while (true) {
            switch (jj_nt.kind) {
            case COMMA:
              ;
              break;
            default:
              jj_la1[308] = jj_gen;
              break label_60;
            }
            jj_consume_token(COMMA);
            Column();
          }
          jj_consume_token(RPAREN);
          break;
        default:
          jj_la1[309] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        break;
      case CROSS:
      case NATURAL:
        switch (jj_nt.kind) {
        case CROSS:
          jj_consume_token(CROSS);
               jjtn000.setCross(true);
          break;
        case NATURAL:
          jj_consume_token(NATURAL);
                 jjtn000.setNatural(true);
          switch (jj_nt.kind) {
          case INNER:
            jj_consume_token(INNER);
            break;
          default:
            jj_la1[310] = jj_gen;
            ;
          }
          break;
        default:
          jj_la1[311] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        jj_consume_token(JOIN);
        TableReferenceInJoin();
        break;
      default:
        jj_la1[312] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
    jjtree.closeNodeScope(jjtn000, true, getToken(0));
    jjtc000 = false;
    {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
      {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
    }
    {if (true) throw (Error)jjte000;}
    } finally {
    if (jjtc000) {
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
    }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTOuterJoinClause OuterJoinClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) OuterJoinClause */
  ASTOuterJoinClause jjtn000 = new ASTOuterJoinClause(JJTOUTERJOINCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      switch (jj_nt.kind) {
      case PARTITION:
        QueryPartitionClause();
        break;
      default:
        jj_la1[313] = jj_gen;
        ;
      }
      switch (jj_nt.kind) {
      case NATURAL:
        jj_consume_token(NATURAL);
                  jjtn000.setNatural(true);
        break;
      default:
        jj_la1[314] = jj_gen;
        ;
      }
      OuterJoinType();
      jj_consume_token(JOIN);
      TableReferenceInJoin();
      if (jj_2_132(2)) {
        QueryPartitionClause();
      } else {
        ;
      }
      switch (jj_nt.kind) {
      case ON:
      case USING:
        switch (jj_nt.kind) {
        case ON:
          jj_consume_token(ON);
          ConditionalOrExpression();
          break;
        case USING:
          jj_consume_token(USING);
          jj_consume_token(LPAREN);
          Column();
          label_61:
          while (true) {
            switch (jj_nt.kind) {
            case COMMA:
              ;
              break;
            default:
              jj_la1[315] = jj_gen;
              break label_61;
            }
            jj_consume_token(COMMA);
            Column();
          }
          jj_consume_token(RPAREN);
          break;
        default:
          jj_la1[316] = jj_gen;
          jj_consume_token(-1);
          throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
        }
        break;
      default:
        jj_la1[317] = jj_gen;
        ;
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * @see Query Partition Clause
 */
  final public ASTQueryPartitionClause QueryPartitionClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) QueryPartitionClause */
  ASTQueryPartitionClause jjtn000 = new ASTQueryPartitionClause(JJTQUERYPARTITIONCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      jj_consume_token(PARTITION);
      jj_consume_token(BY);
      if (jj_2_134(3)) {
        Expression();
        label_62:
        while (true) {
          if (jj_2_133(2)) {
            ;
          } else {
            break label_62;
          }
          jj_consume_token(COMMA);
          Expression();
        }
      } else if (jj_2_135(3)) {
        jj_consume_token(LPAREN);
        Expression();
        label_63:
        while (true) {
          switch (jj_nt.kind) {
          case COMMA:
            ;
            break;
          default:
            jj_la1[318] = jj_gen;
            break label_63;
          }
          jj_consume_token(COMMA);
          Expression();
        }
        jj_consume_token(RPAREN);
      } else {
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTOuterJoinType OuterJoinType() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) OuterJoinType */
  ASTOuterJoinType jjtn000 = new ASTOuterJoinType(JJTOUTERJOINTYPE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      switch (jj_nt.kind) {
      case FULL:
        jj_consume_token(FULL);
            jjtn000.setType(ASTOuterJoinType.Type.FULL);
        break;
      case LEFT:
        jj_consume_token(LEFT);
            jjtn000.setType(ASTOuterJoinType.Type.LEFT);
        break;
      case RIGHT:
        jj_consume_token(RIGHT);
             jjtn000.setType(ASTOuterJoinType.Type.RIGHT);
        break;
      default:
        jj_la1[319] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      switch (jj_nt.kind) {
      case OUTER:
        jj_consume_token(OUTER);
        break;
      default:
        jj_la1[320] = jj_gen;
        ;
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } finally {
   if (jjtc000) {
     jjtree.closeNodeScope(jjtn000, true, getToken(0));
   }
    }
    throw new Error("Missing return statement in function");
  }

  final public ASTCrossOuterApplyClause CrossOuterApplyClause() throws net.sourceforge.pmd.lang.ast.ParseException {
 /*@bgen(jjtree) CrossOuterApplyClause */
  ASTCrossOuterApplyClause jjtn000 = new ASTCrossOuterApplyClause(JJTCROSSOUTERAPPLYCLAUSE);
  boolean jjtc000 = true;
  jjtree.openNodeScope(jjtn000, getToken(1));
    try {
      switch (jj_nt.kind) {
      case CROSS:
        jj_consume_token(CROSS);
        break;
      case OUTER:
        jj_consume_token(OUTER);
        break;
      default:
        jj_la1[321] = jj_gen;
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      jj_consume_token(APPLY);
      if (jj_2_136(2)) {
        TableReferenceInJoin();
      } else if (jj_2_137(2)) {
        ID();
      } else {
        jj_consume_token(-1);
        throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown");
      }
      jjtree.closeNodeScope(jjtn000, true, getToken(0));
      jjtc000 = false;
      {if (true) return jjtn000;}
    } 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 net.sourceforge.pmd.lang.ast.ParseException) {
        {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;}
      }
      {if (true) throw (Error)jjte000;}
    } finally {
      if (jjtc000) {
        jjtree.closeNodeScope(jjtn000, true, getToken(0));
      }
    }
    throw new Error("Missing return statement in function");
  }

/**
 * 2011-05-15 - SRT - Added to cope with wrapped objects
  A wrapped function looks like this (always terminated by one or more equals signs "="):-

  
  "  CREATE OR REPLACE FUNCTION "TESTUSER"."GET_DATE_STRING"
/ ** Return SYSDATE formatted using the provided template.
 *
 *
 *  @param p_date_format normal TO_CHARE/TO_DATE date template
 *  @return formatted datestring
 *  @see http://www.oracle-base.com/articles/10g/WrapAndDBMS_DDL_10gR2.php#dbms_ddl
 * /
wrapped
a000000
369
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
8
89 b6
/SBrhM8+1iUO4QAih+qD2SK8kSowg8eZgcfLCNL+XlquYvSuoVah8JbRPpdHDLHn479SdFLw
v04omzJ0zOfHdMAzuHQlw+fAsr2ym9YI8I521pRTbnFVAHOOUw4JqPkIyj7wj4VwyL17nhYb
3qPVuL6SvhZTmEBnRtaErHpzaDuIpqZ0G4s=
  "
  
*/ final public void WrappedObject() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) WrappedObject */ ASTWrappedObject jjtn000 = new ASTWrappedObject(JJTWRAPPEDOBJECT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(WRAPPED); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken nextToken; nextToken = getToken(1); //ReadAhead while ( null != nextToken && nextToken.kind!=EOF ) { nextToken = getNextToken(); //Execute manual readahead nextToken = getToken(1); //ReadAhead 1 net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken } {if (true) return;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } } // ============================================================================ // S T A T E M E N T S // ============================================================================ /** * 2006-05-24 - Matthias Hendler - added MERGE, EXECUTE choice and LOOKAHEAD at <LOOP> */ final public ASTUnlabelledStatement UnlabelledStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) UnlabelledStatement */ ASTUnlabelledStatement jjtn000 = new ASTUnlabelledStatement(JJTUNLABELLEDSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { if (jj_2_139(2147483647)) { if (jj_2_138(2147483647)) { SelectIntoStatement(); jj_consume_token(SEMICOLON); } else { switch (jj_nt.kind) { case SELECT: case WITH: SelectStatement(); jj_consume_token(SEMICOLON); break; default: jj_la1[322] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } } else { switch (jj_nt.kind) { case UPDATE: UpdateStatement(); jj_consume_token(SEMICOLON); break; case DELETE: DeleteStatement(); jj_consume_token(SEMICOLON); break; case INSERT: InsertStatement(); jj_consume_token(SEMICOLON); break; default: jj_la1[324] = jj_gen; if (jj_2_140(2)) { MergeStatement(); jj_consume_token(SEMICOLON); } else if (jj_2_141(2147483647)) { SqlStatement(null,";"); switch (jj_nt.kind) { case SEMICOLON: jj_consume_token(SEMICOLON); break; default: jj_la1[323] = jj_gen; ; } } else if (jj_2_142(3)) { ContinueStatement(); jj_consume_token(SEMICOLON); } else { switch (jj_nt.kind) { case CASE: CaseStatement(); jj_consume_token(SEMICOLON); break; case IF: IfStatement(); jj_consume_token(SEMICOLON); break; default: jj_la1[325] = jj_gen; if (jj_2_143(2147483647)) { CursorForLoopStatement(); jj_consume_token(SEMICOLON); } else { switch (jj_nt.kind) { case FOR: ForStatement(); jj_consume_token(SEMICOLON); break; case FORALL: ForAllStatement(); jj_consume_token(SEMICOLON); break; case LOOP: LoopStatement(); jj_consume_token(SEMICOLON); break; case WHILE: WhileStatement(); jj_consume_token(SEMICOLON); break; case GOTO: GotoStatement(); jj_consume_token(SEMICOLON); break; case RETURN: ReturnStatement(); jj_consume_token(SEMICOLON); break; case EXIT: ExitStatement(); jj_consume_token(SEMICOLON); break; case RAISE: RaiseStatement(); jj_consume_token(SEMICOLON); break; case CLOSE: CloseStatement(); jj_consume_token(SEMICOLON); break; case OPEN: OpenStatement(); jj_consume_token(SEMICOLON); break; case FETCH: FetchStatement(); jj_consume_token(SEMICOLON); break; case BEGIN: case DECLARE: Block(); jj_consume_token(SEMICOLON); break; default: jj_la1[326] = jj_gen; if (jj_2_144(2)) { EmbeddedSqlStatement(); jj_consume_token(SEMICOLON); } else { switch (jj_nt.kind) { case PIPE: PipelineStatement(); jj_consume_token(SEMICOLON); break; case CC_IF: case CC_ERROR: ConditionalCompilationStatement(); break; case PRAGMA: InlinePragma(); jj_consume_token(SEMICOLON); break; case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: Expression(); jj_consume_token(SEMICOLON); break; default: jj_la1[327] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } } } } } } } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTStatement Statement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) Statement */ ASTStatement jjtn000 = new ASTStatement(JJTSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case 48: LabelledStatement(); break; case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case BEGIN: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DECLARE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case FOR: case GOTO: case HAVING: case IF: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SELECT: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PIPE: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRAGMA: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SET: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case CC_ERROR: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: UnlabelledStatement(); break; default: jj_la1[328] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /* LabelledStatement created solely to conform with PMD Java AST (for PMD DataFlow Analysis - DFA) N.B. equivalent Java AST* class is ASTLabeledStatement (single "l" rather than double "ll") */ final public ASTLabelledStatement LabelledStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) LabelledStatement */ ASTLabelledStatement jjtn000 = new ASTLabelledStatement(JJTLABELLEDSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; try { label_64: while (true) { simpleNode = Label(); switch (jj_nt.kind) { case 48: ; break; default: jj_la1[329] = jj_gen; break label_64; } } UnlabelledStatement(); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage( simpleNode.getImage() ) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTCaseStatement CaseStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) CaseStatement */ ASTCaseStatement jjtn000 = new ASTCaseStatement(JJTCASESTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(CASE); switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: Expression(); break; default: jj_la1[330] = jj_gen; ; } label_65: while (true) { switch (jj_nt.kind) { case WHEN: ; break; default: jj_la1[331] = jj_gen; break label_65; } CaseWhenClause(); } switch (jj_nt.kind) { case ELSE: ElseClause(); break; default: jj_la1[332] = jj_gen; ; } jj_consume_token(END); jj_consume_token(CASE); switch (jj_nt.kind) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; default: jj_la1[333] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTCaseWhenClause CaseWhenClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) CaseWhenClause */ ASTCaseWhenClause jjtn000 = new ASTCaseWhenClause(JJTCASEWHENCLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(WHEN); Expression(); jj_consume_token(THEN); label_66: while (true) { Statement(); switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case 48: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case BEGIN: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DECLARE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case FOR: case GOTO: case HAVING: case IF: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SELECT: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PIPE: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRAGMA: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SET: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case CC_ERROR: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: ; break; default: jj_la1[334] = jj_gen; break label_66; } } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTElseClause ElseClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ElseClause */ ASTElseClause jjtn000 = new ASTElseClause(JJTELSECLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(ELSE); label_67: while (true) { Statement(); switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case 48: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case BEGIN: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DECLARE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case FOR: case GOTO: case HAVING: case IF: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SELECT: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PIPE: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRAGMA: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SET: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case CC_ERROR: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: ; break; default: jj_la1[335] = jj_gen; break label_67; } } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTElsifClause ElsifClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ElsifClause */ ASTElsifClause jjtn000 = new ASTElsifClause(JJTELSIFCLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(ELSIF); Expression(); jj_consume_token(THEN); label_68: while (true) { Statement(); if (jj_2_145(1) && (!(getToken(1).kind == ELSIF))) { ; } else { break label_68; } } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTLoopStatement LoopStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) LoopStatement */ ASTLoopStatement jjtn000 = new ASTLoopStatement(JJTLOOPSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(LOOP); label_69: while (true) { Statement(); switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case 48: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case BEGIN: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DECLARE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case FOR: case GOTO: case HAVING: case IF: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SELECT: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PIPE: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRAGMA: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SET: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case CC_ERROR: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: ; break; default: jj_la1[336] = jj_gen; break label_69; } } jj_consume_token(END); jj_consume_token(LOOP); switch (jj_nt.kind) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; default: jj_la1[337] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTCursorForLoopStatement CursorForLoopStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) CursorForLoopStatement */ ASTCursorForLoopStatement jjtn000 = new ASTCursorForLoopStatement(JJTCURSORFORLOOPSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(FOR); ForIndex(); jj_consume_token(IN); jj_consume_token(LPAREN); SelectStatement(); jj_consume_token(RPAREN); jj_consume_token(LOOP); label_70: while (true) { Statement(); switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case 48: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case BEGIN: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DECLARE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case FOR: case GOTO: case HAVING: case IF: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SELECT: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PIPE: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRAGMA: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SET: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case CC_ERROR: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: ; break; default: jj_la1[338] = jj_gen; break label_70; } } jj_consume_token(END); jj_consume_token(LOOP); switch (jj_nt.kind) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; default: jj_la1[339] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * https://docs.oracle.com/en/database/oracle/oracle-database/23/sqlrf/INSERT.html#GUID-903F8043-0254-4EE9-ACC1-CB8AC0AF3423 */ final public ASTInsertStatement InsertStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) InsertStatement */ ASTInsertStatement jjtn000 = new ASTInsertStatement(JJTINSERTSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(INSERT); switch (jj_nt.kind) { case INTO: SingleTableInsert(); break; case ALL: case WHEN: case IDENTIFIER: MultiTableInsert(); break; default: jj_la1[340] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTSingleTableInsert SingleTableInsert() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) SingleTableInsert */ ASTSingleTableInsert jjtn000 = new ASTSingleTableInsert(JJTSINGLETABLEINSERT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { InsertIntoClause(); switch (jj_nt.kind) { case VALUES: ValuesClause(); switch (jj_nt.kind) { case RETURN: case RETURNING: ReturningClause(); break; default: jj_la1[341] = jj_gen; ; } break; case LPAREN: case SELECT: case WITH: Subquery(); break; default: jj_la1[342] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case 26: ErrorLoggingClause(); break; default: jj_la1[343] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTInsertIntoClause InsertIntoClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) InsertIntoClause */ ASTInsertIntoClause jjtn000 = new ASTInsertIntoClause(JJTINSERTINTOCLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(INTO); DMLTableExpressionClause(); if (jj_2_146(2) && (!getToken(1).getImage().equalsIgnoreCase("LOG"))) { TableAlias(); } else { ; } if (jj_2_149(2)) { jj_consume_token(LPAREN); if (jj_2_147(2)) { TableName(); jj_consume_token(DOT); } else { ; } Column(); label_71: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[344] = jj_gen; break label_71; } jj_consume_token(COMMA); if (jj_2_148(2)) { TableName(); jj_consume_token(DOT); } else { ; } Column(); } jj_consume_token(RPAREN); } else { ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTValuesClause ValuesClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ValuesClause */ ASTValuesClause jjtn000 = new ASTValuesClause(JJTVALUESCLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(VALUES); switch (jj_nt.kind) { case LPAREN: jj_consume_token(LPAREN); switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: Expression(); break; case _DEFAULT: jj_consume_token(_DEFAULT); break; default: jj_la1[345] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } label_72: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[346] = jj_gen; break label_72; } jj_consume_token(COMMA); switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: Expression(); break; case _DEFAULT: jj_consume_token(_DEFAULT); break; default: jj_la1[347] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } jj_consume_token(RPAREN); break; case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case LANGUAGE: case INLINE: case AT: case SUBTYPE: case TYPE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BODY: case BULK: case BYTE: case CASCADE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case DATA: case DAY: case DEFINITION: case DISABLE: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NEW: case NEXT: case NO: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case OBJECT: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PERCENT: case PRESERVE: case PRIMARY: case PRIVATE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRUE: case UNDER: case USING: case YES: case A: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case 493: Name(); break; default: jj_la1[348] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTMultiTableInsert MultiTableInsert() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) MultiTableInsert */ ASTMultiTableInsert jjtn000 = new ASTMultiTableInsert(JJTMULTITABLEINSERT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { if (jj_2_150(2)) { jj_consume_token(ALL); label_73: while (true) { InsertIntoClause(); switch (jj_nt.kind) { case VALUES: ValuesClause(); break; default: jj_la1[349] = jj_gen; ; } switch (jj_nt.kind) { case 26: ErrorLoggingClause(); break; default: jj_la1[350] = jj_gen; ; } switch (jj_nt.kind) { case INTO: ; break; default: jj_la1[351] = jj_gen; break label_73; } } } else { switch (jj_nt.kind) { case ALL: case WHEN: case IDENTIFIER: ConditionalInsertClause(); break; default: jj_la1[352] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } Subquery(); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTConditionalInsertClause ConditionalInsertClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ConditionalInsertClause */ ASTConditionalInsertClause jjtn000 = new ASTConditionalInsertClause(JJTCONDITIONALINSERTCLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case ALL: case IDENTIFIER: switch (jj_nt.kind) { case ALL: jj_consume_token(ALL); break; case IDENTIFIER: KEYWORD("FIRST"); break; default: jj_la1[353] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[354] = jj_gen; ; } label_74: while (true) { jj_consume_token(WHEN); Condition(); jj_consume_token(THEN); label_75: while (true) { InsertIntoClause(); switch (jj_nt.kind) { case VALUES: ValuesClause(); break; default: jj_la1[355] = jj_gen; ; } switch (jj_nt.kind) { case 26: ErrorLoggingClause(); break; default: jj_la1[356] = jj_gen; ; } switch (jj_nt.kind) { case INTO: ; break; default: jj_la1[357] = jj_gen; break label_75; } } switch (jj_nt.kind) { case WHEN: ; break; default: jj_la1[358] = jj_gen; break label_74; } } switch (jj_nt.kind) { case ELSE: jj_consume_token(ELSE); label_76: while (true) { InsertIntoClause(); switch (jj_nt.kind) { case VALUES: ValuesClause(); break; default: jj_la1[359] = jj_gen; ; } switch (jj_nt.kind) { case 26: ErrorLoggingClause(); break; default: jj_la1[360] = jj_gen; ; } switch (jj_nt.kind) { case INTO: ; break; default: jj_la1[361] = jj_gen; break label_76; } } break; default: jj_la1[362] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/SELECT.html#GUID-CFA006CA-6FF1-4972-821E-6996142A51C6 */ final public ASTSelectStatement SelectStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) SelectStatement */ ASTSelectStatement jjtn000 = new ASTSelectStatement(JJTSELECTSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case WITH: WithClause(); break; default: jj_la1[363] = jj_gen; ; } AbstractSelectStatement(jjtn000); SelectList(); switch (jj_nt.kind) { case INTO: case BULK: switch (jj_nt.kind) { case INTO: IntoClause(); break; case BULK: BulkCollectIntoClause(); break; default: jj_la1[364] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[365] = jj_gen; ; } RestOfStatement(); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTWithClause WithClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) WithClause */ ASTWithClause jjtn000 = new ASTWithClause(JJTWITHCLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(WITH); label_77: while (true) { switch (jj_nt.kind) { case FUNCTION: case PROCEDURE: ; break; default: jj_la1[366] = jj_gen; break label_77; } MethodDeclarator(); } switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case LANGUAGE: case INLINE: case AT: case SUBTYPE: case TYPE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BODY: case BULK: case BYTE: case CASCADE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case DATA: case DAY: case DEFINITION: case DISABLE: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NEW: case NEXT: case NO: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case OBJECT: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PERCENT: case PRESERVE: case PRIMARY: case PRIVATE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRUE: case UNDER: case USING: case YES: case A: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case 493: SubqueryFactoringClause(); label_78: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[367] = jj_gen; break label_78; } jj_consume_token(COMMA); SubqueryFactoringClause(); } break; default: jj_la1[368] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public void SubqueryFactoringClause() throws net.sourceforge.pmd.lang.ast.ParseException { Name(); jj_consume_token(AS); jj_consume_token(LPAREN); Subquery(); jj_consume_token(RPAREN); } final public ASTUpdateStatement UpdateStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) UpdateStatement */ ASTUpdateStatement jjtn000 = new ASTUpdateStatement(JJTUPDATESTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(UPDATE); DMLTableExpressionClause(); if (jj_2_151(2)) { TableAlias(); } else { ; } UpdateSetClause(); switch (jj_nt.kind) { case WHERE: WhereClause(); break; default: jj_la1[369] = jj_gen; ; } switch (jj_nt.kind) { case RETURN: case RETURNING: ReturningClause(); break; default: jj_la1[370] = jj_gen; ; } switch (jj_nt.kind) { case 26: ErrorLoggingClause(); break; default: jj_la1[371] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTDMLTableExpressionClause DMLTableExpressionClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) DMLTableExpressionClause */ ASTDMLTableExpressionClause jjtn000 = new ASTDMLTableExpressionClause(JJTDMLTABLEEXPRESSIONCLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case TABLE: TableCollectionExpression(); break; default: jj_la1[376] = jj_gen; if (jj_2_153(2)) { if (jj_2_152(2)) { SchemaName(); jj_consume_token(DOT); } else { ; } TableName(); switch (jj_nt.kind) { case AROBASE: case 41: case PARTITION: switch (jj_nt.kind) { case AROBASE: jj_consume_token(AROBASE); ID(); break; case 41: case PARTITION: PartitionExtensionClause(); break; default: jj_la1[372] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[373] = jj_gen; ; } } else { switch (jj_nt.kind) { case LPAREN: case LATERAL: switch (jj_nt.kind) { case LATERAL: jj_consume_token(LATERAL); break; default: jj_la1[374] = jj_gen; ; } jj_consume_token(LPAREN); Subquery(); switch (jj_nt.kind) { case WITH: SubqueryRestrictionClause(); break; default: jj_la1[375] = jj_gen; ; } jj_consume_token(RPAREN); break; default: jj_la1[377] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/UPDATE.html#GUID-027A462D-379D-4E35-8611-410F3AC8FDA5__CHDBBDEI */ final public ASTPartitionExtensionClause PartitionExtensionClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) PartitionExtensionClause */ ASTPartitionExtensionClause jjtn000 = new ASTPartitionExtensionClause(JJTPARTITIONEXTENSIONCLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case PARTITION: jj_consume_token(PARTITION); break; case 41: jj_consume_token(41); break; default: jj_la1[378] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case LPAREN: jj_consume_token(LPAREN); ID(); jj_consume_token(RPAREN); break; case FOR: jj_consume_token(FOR); jj_consume_token(LPAREN); label_79: while (true) { ID(); switch (jj_nt.kind) { case COMMA: jj_consume_token(COMMA); break; default: jj_la1[379] = jj_gen; ; } switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: ; break; default: jj_la1[380] = jj_gen; break label_79; } } jj_consume_token(RPAREN); break; default: jj_la1[381] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/UPDATE.html#GUID-027A462D-379D-4E35-8611-410F3AC8FDA5__I2126876 */ final public ASTUpdateSetClause UpdateSetClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) UpdateSetClause */ ASTUpdateSetClause jjtn000 = new ASTUpdateSetClause(JJTUPDATESETCLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(SET); switch (jj_nt.kind) { case ROW: jj_consume_token(ROW); jj_consume_token(ASSIGN); Name(); break; default: jj_la1[389] = jj_gen; if (isKeyword("VALUE")) { KEYWORD("VALUE"); jj_consume_token(LPAREN); TableAlias(); jj_consume_token(RPAREN); jj_consume_token(ASSIGN); switch (jj_nt.kind) { case LPAREN: jj_consume_token(LPAREN); Subquery(); jj_consume_token(RPAREN); break; case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: Expression(); break; default: jj_la1[382] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } else { switch (jj_nt.kind) { case LPAREN: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: label_80: while (true) { switch (jj_nt.kind) { case LPAREN: jj_consume_token(LPAREN); label_81: while (true) { if (jj_2_154(2)) { TableName(); jj_consume_token(DOT); } else { ; } Column(); switch (jj_nt.kind) { case COMMA: jj_consume_token(COMMA); break; default: jj_la1[383] = jj_gen; ; } switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: ; break; default: jj_la1[384] = jj_gen; break label_81; } } jj_consume_token(RPAREN); jj_consume_token(ASSIGN); jj_consume_token(LPAREN); Subquery(); jj_consume_token(RPAREN); break; case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: if (jj_2_155(2)) { TableName(); jj_consume_token(DOT); } else { ; } Column(); jj_consume_token(ASSIGN); if (jj_2_156(2)) { jj_consume_token(LPAREN); Subquery(); jj_consume_token(RPAREN); } else { switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: Expression(); break; case _DEFAULT: jj_consume_token(_DEFAULT); break; default: jj_la1[385] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } break; default: jj_la1[386] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case COMMA: jj_consume_token(COMMA); break; default: jj_la1[387] = jj_gen; ; } switch (jj_nt.kind) { case LPAREN: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: ; break; default: jj_la1[388] = jj_gen; break label_80; } } break; default: jj_la1[390] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * https://docs.oracle.com/en/database/oracle/oracle-database/23/sqlrf/UPDATE.html#GUID-027A462D-379D-4E35-8611-410F3AC8FDA5__I2126358 * https://docs.oracle.com/en/database/oracle/oracle-database/23/sqlrf/DELETE.html#GUID-156845A5-B626-412B-9F95-8869B988ABD7__I2122564 */ final public ASTReturningClause ReturningClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ReturningClause */ ASTReturningClause jjtn000 = new ASTReturningClause(JJTRETURNINGCLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case RETURN: jj_consume_token(RETURN); break; case RETURNING: jj_consume_token(RETURNING); break; default: jj_la1[391] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } label_82: while (true) { Expression(); switch (jj_nt.kind) { case COMMA: jj_consume_token(COMMA); break; default: jj_la1[392] = jj_gen; ; } switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: ; break; default: jj_la1[393] = jj_gen; break label_82; } } jj_consume_token(INTO); label_83: while (true) { Name(); switch (jj_nt.kind) { case COMMA: jj_consume_token(COMMA); break; default: jj_la1[394] = jj_gen; ; } switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case LANGUAGE: case INLINE: case AT: case SUBTYPE: case TYPE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BODY: case BULK: case BYTE: case CASCADE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case DATA: case DAY: case DEFINITION: case DISABLE: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NEW: case NEXT: case NO: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case OBJECT: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PERCENT: case PRESERVE: case PRIMARY: case PRIVATE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRUE: case UNDER: case USING: case YES: case A: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case 493: ; break; default: jj_la1[395] = jj_gen; break label_83; } } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * https://docs.oracle.com/en/database/oracle/oracle-database/23/sqlrf/INSERT.html#GUID-903F8043-0254-4EE9-ACC1-CB8AC0AF3423__BGBDIGAH * https://docs.oracle.com/en/database/oracle/oracle-database/23/sqlrf/UPDATE.html#GUID-027A462D-379D-4E35-8611-410F3AC8FDA5__BCEEAAGC * https://docs.oracle.com/en/database/oracle/oracle-database/23/sqlrf/DELETE.html#GUID-156845A5-B626-412B-9F95-8869B988ABD7__CEGCHDJF */ final public ASTErrorLoggingClause ErrorLoggingClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ErrorLoggingClause */ ASTErrorLoggingClause jjtn000 = new ASTErrorLoggingClause(JJTERRORLOGGINGCLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(26); jj_consume_token(42); switch (jj_nt.kind) { case INTO: jj_consume_token(INTO); if (jj_2_157(2)) { SchemaName(); jj_consume_token(DOT); } else { ; } TableName(); break; default: jj_la1[396] = jj_gen; ; } switch (jj_nt.kind) { case LPAREN: jj_consume_token(LPAREN); SqlExpression(); jj_consume_token(RPAREN); break; default: jj_la1[397] = jj_gen; ; } switch (jj_nt.kind) { case 43: jj_consume_token(43); jj_consume_token(LIMIT); switch (jj_nt.kind) { case UNSIGNED_NUMERIC_LITERAL: NumericLiteral(); break; case 44: jj_consume_token(44); break; default: jj_la1[398] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[399] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * https://docs.oracle.com/en/database/oracle/oracle-database/23/sqlrf/DELETE.html#GUID-156845A5-B626-412B-9F95-8869B988ABD7 */ final public ASTDeleteStatement DeleteStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) DeleteStatement */ ASTDeleteStatement jjtn000 = new ASTDeleteStatement(JJTDELETESTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(DELETE); switch (jj_nt.kind) { case FROM: jj_consume_token(FROM); break; default: jj_la1[400] = jj_gen; ; } if (jj_2_158(2)) { jj_consume_token(ONLY); jj_consume_token(LPAREN); TableReference(); jj_consume_token(RPAREN); } else { switch (jj_nt.kind) { case LPAREN: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case TABLE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: TableReference(); break; default: jj_la1[401] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } switch (jj_nt.kind) { case WHERE: WhereClause(); break; default: jj_la1[402] = jj_gen; ; } switch (jj_nt.kind) { case RETURN: case RETURNING: ReturningClause(); break; default: jj_la1[403] = jj_gen; ; } switch (jj_nt.kind) { case 26: ErrorLoggingClause(); break; default: jj_la1[404] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/MERGE.html#GUID-5692CCB7-24D9-4C0E-81A7-A22436DC968F * https://docs.oracle.com/en/database/oracle/oracle-database/23/sqlrf/MERGE.html#GUID-5692CCB7-24D9-4C0E-81A7-A22436DC968F */ final public ASTMergeStatement MergeStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) MergeStatement */ ASTMergeStatement jjtn000 = new ASTMergeStatement(JJTMERGESTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(MERGE); jj_consume_token(INTO); if (jj_2_159(2)) { SchemaName(); jj_consume_token(DOT); } else { ; } TableName(); if (jj_2_160(1) && (getToken(1).kind != USING)) { TableAlias(); } else { ; } jj_consume_token(USING); if (jj_2_162(3)) { jj_consume_token(LPAREN); ValuesClause(); jj_consume_token(RPAREN); } else { switch (jj_nt.kind) { case LPAREN: jj_consume_token(LPAREN); Subquery(); jj_consume_token(RPAREN); switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: TableAlias(); break; default: jj_la1[405] = jj_gen; ; } break; case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: if (jj_2_161(2)) { SchemaName(); jj_consume_token(DOT); } else { ; } TableName(); switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: TableAlias(); break; default: jj_la1[406] = jj_gen; ; } break; default: jj_la1[407] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } jj_consume_token(ON); jj_consume_token(LPAREN); Condition(); jj_consume_token(RPAREN); label_84: while (true) { switch (jj_nt.kind) { case WHEN: ; break; default: jj_la1[408] = jj_gen; break label_84; } jj_consume_token(WHEN); switch (jj_nt.kind) { case IDENTIFIER: KEYWORD("MATCHED"); MergeUpdateClause(); break; case NOT: jj_consume_token(NOT); KEYWORD("MATCHED"); MergeInsertClause(); break; default: jj_la1[409] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } switch (jj_nt.kind) { case 26: ErrorLoggingClause(); break; default: jj_la1[410] = jj_gen; ; } switch (jj_nt.kind) { case RETURN: case RETURNING: ReturningClause(); break; default: jj_la1[411] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * @deprecated MergeUpdateClausePrefix is no longer used as MergeStatement is simplified, * but kept for not breaking interface. */ //@Deprecated final public void MergeUpdateClausePrefix() throws net.sourceforge.pmd.lang.ast.ParseException { jj_consume_token(WHEN); KEYWORD("MATCHED"); } final public ASTMergeUpdateClause MergeUpdateClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) MergeUpdateClause */ ASTMergeUpdateClause jjtn000 = new ASTMergeUpdateClause(JJTMERGEUPDATECLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(THEN); jj_consume_token(UPDATE); jj_consume_token(SET); if (jj_2_163(2)) { TableName(); jj_consume_token(DOT); } else { ; } Column(); jj_consume_token(ASSIGN); if (jj_2_164(2)) { jj_consume_token(LPAREN); Subquery(); jj_consume_token(RPAREN); } else { switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: Expression(); break; case _DEFAULT: jj_consume_token(_DEFAULT); break; default: jj_la1[412] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } label_85: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[413] = jj_gen; break label_85; } jj_consume_token(COMMA); if (jj_2_165(2)) { TableName(); jj_consume_token(DOT); } else { ; } Column(); jj_consume_token(ASSIGN); if (jj_2_166(2)) { jj_consume_token(LPAREN); Subquery(); jj_consume_token(RPAREN); } else { switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: Expression(); break; case _DEFAULT: jj_consume_token(_DEFAULT); break; default: jj_la1[414] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } } switch (jj_nt.kind) { case WHERE: WhereClause(); break; default: jj_la1[415] = jj_gen; ; } switch (jj_nt.kind) { case DELETE: jj_consume_token(DELETE); WhereClause(); break; default: jj_la1[416] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTMergeInsertClause MergeInsertClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) MergeInsertClause */ ASTMergeInsertClause jjtn000 = new ASTMergeInsertClause(JJTMERGEINSERTCLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(THEN); jj_consume_token(INSERT); switch (jj_nt.kind) { case LPAREN: jj_consume_token(LPAREN); ColumnPath(); label_86: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[417] = jj_gen; break label_86; } jj_consume_token(COMMA); ColumnPath(); } jj_consume_token(RPAREN); break; default: jj_la1[418] = jj_gen; ; } ValuesClause(); switch (jj_nt.kind) { case WHERE: WhereClause(); break; default: jj_la1[419] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** Scope rule: the loop index only exists within the Loop */ final public ASTForStatement ForStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ForStatement */ ASTForStatement jjtn000 = new ASTForStatement(JJTFORSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(FOR); ForIndex(); jj_consume_token(IN); switch (jj_nt.kind) { case REVERSE: jj_consume_token(REVERSE); break; default: jj_la1[420] = jj_gen; ; } Expression(); switch (jj_nt.kind) { case 45: jj_consume_token(45); Expression(); break; default: jj_la1[421] = jj_gen; ; } jj_consume_token(LOOP); label_87: while (true) { Statement(); switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case 48: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case BEGIN: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DECLARE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case FOR: case GOTO: case HAVING: case IF: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SELECT: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PIPE: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRAGMA: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SET: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case CC_ERROR: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: ; break; default: jj_la1[422] = jj_gen; break label_87; } } jj_consume_token(END); jj_consume_token(LOOP); switch (jj_nt.kind) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; default: jj_la1[423] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTWhileStatement WhileStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) WhileStatement */ ASTWhileStatement jjtn000 = new ASTWhileStatement(JJTWHILESTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(WHILE); Expression(); jj_consume_token(LOOP); label_88: while (true) { Statement(); switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case 48: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case BEGIN: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DECLARE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case FOR: case GOTO: case HAVING: case IF: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SELECT: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PIPE: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRAGMA: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SET: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case CC_ERROR: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: ; break; default: jj_la1[424] = jj_gen; break label_88; } } jj_consume_token(END); jj_consume_token(LOOP); switch (jj_nt.kind) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; default: jj_la1[425] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTIfStatement IfStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) IfStatement */ ASTIfStatement jjtn000 = new ASTIfStatement(JJTIFSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(IF); Expression(); jj_consume_token(THEN); label_89: while (true) { Statement(); if (jj_2_167(1) && (!(getToken(1).kind == ELSIF))) { ; } else { break label_89; } } label_90: while (true) { switch (jj_nt.kind) { case ELSIF: ; break; default: jj_la1[426] = jj_gen; break label_90; } ElsifClause(); jjtn000.setHasElse(); } switch (jj_nt.kind) { case ELSE: ElseClause(); jjtn000.setHasElse(); break; default: jj_la1[427] = jj_gen; ; } jj_consume_token(END); jj_consume_token(IF); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** Scope rule: the loop index only exists within the statement */ /** ForIndex is declared implicitly, unlike most variables or constants. */ final public ASTForIndex ForIndex() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ForIndex */ ASTForIndex jjtn000 = new ASTForIndex(JJTFORINDEX); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null ; try { simpleNode = ID(); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(simpleNode.getImage()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** ForAllIndex is declared implicitly, unlike most variables or constants. */ final public ASTForAllIndex ForAllIndex() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ForAllIndex */ ASTForAllIndex jjtn000 = new ASTForAllIndex(JJTFORALLINDEX); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; try { simpleNode = ID(); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(simpleNode.getImage()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTForAllStatement ForAllStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ForAllStatement */ ASTForAllStatement jjtn000 = new ASTForAllStatement(JJTFORALLSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(FORALL); ForAllIndex(); jj_consume_token(IN); switch (jj_nt.kind) { case VALUES: case INDICES: switch (jj_nt.kind) { case INDICES: jj_consume_token(INDICES); break; case VALUES: jj_consume_token(VALUES); break; default: jj_la1[428] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jj_consume_token(OF); Expression(); break; case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: Expression(); switch (jj_nt.kind) { case 45: jj_consume_token(45); Expression(); break; default: jj_la1[429] = jj_gen; ; } break; default: jj_la1[430] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case SAVE: jj_consume_token(SAVE); jj_consume_token(EXCEPTIONS); break; default: jj_la1[431] = jj_gen; ; } SqlStatement(null,";"); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTGotoStatement GotoStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) GotoStatement */ ASTGotoStatement jjtn000 = new ASTGotoStatement(JJTGOTOSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode label = null; try { jj_consume_token(GOTO); label = QualifiedName(); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(label.getImage()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTReturnStatement ReturnStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ReturnStatement */ ASTReturnStatement jjtn000 = new ASTReturnStatement(JJTRETURNSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(RETURN); switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: Expression(); break; default: jj_la1[432] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTContinueStatement ContinueStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ContinueStatement */ ASTContinueStatement jjtn000 = new ASTContinueStatement(JJTCONTINUESTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode label = null; try { jj_consume_token(CONTINUE); switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case LANGUAGE: case INLINE: case AT: case SUBTYPE: case TYPE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BODY: case BULK: case BYTE: case CASCADE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case DATA: case DAY: case DEFINITION: case DISABLE: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NEW: case NEXT: case NO: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case OBJECT: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PERCENT: case PRESERVE: case PRIMARY: case PRIVATE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRUE: case UNDER: case USING: case YES: case A: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case 493: label = UnqualifiedID(); break; default: jj_la1[433] = jj_gen; ; } switch (jj_nt.kind) { case WHEN: jj_consume_token(WHEN); Expression(); break; default: jj_la1[434] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; if (null != label) { jjtn000.setImage(label.getImage()) ; } {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTExitStatement ExitStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ExitStatement */ ASTExitStatement jjtn000 = new ASTExitStatement(JJTEXITSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode label = null; try { jj_consume_token(EXIT); switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case LANGUAGE: case INLINE: case AT: case SUBTYPE: case TYPE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BODY: case BULK: case BYTE: case CASCADE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case DATA: case DAY: case DEFINITION: case DISABLE: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NEW: case NEXT: case NO: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case OBJECT: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PERCENT: case PRESERVE: case PRIMARY: case PRIVATE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRUE: case UNDER: case USING: case YES: case A: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case 493: label = UnqualifiedID(); break; default: jj_la1[435] = jj_gen; ; } switch (jj_nt.kind) { case WHEN: jj_consume_token(WHEN); Expression(); break; default: jj_la1[436] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; if (null != label) { jjtn000.setImage(label.getImage()) ; } {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTRaiseStatement RaiseStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) RaiseStatement */ ASTRaiseStatement jjtn000 = new ASTRaiseStatement(JJTRAISESTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode exception = null ; try { jj_consume_token(RAISE); switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case LANGUAGE: case INLINE: case AT: case SUBTYPE: case TYPE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BODY: case BULK: case BYTE: case CASCADE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case DATA: case DAY: case DEFINITION: case DISABLE: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NEW: case NEXT: case NO: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case OBJECT: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PERCENT: case PRESERVE: case PRIMARY: case PRIVATE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRUE: case UNDER: case USING: case YES: case A: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case 493: exception = QualifiedName(); break; default: jj_la1[437] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; if (null != exception) { jjtn000.setImage(exception.getImage()) ; } {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTCloseStatement CloseStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) CloseStatement */ ASTCloseStatement jjtn000 = new ASTCloseStatement(JJTCLOSESTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode cursor = null ; try { jj_consume_token(CLOSE); cursor = QualifiedName(); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(cursor.getImage()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /* * See https://docs.oracle.com/en/database/oracle/oracle-database/18/lnpls/OPEN-statement.html#GUID-FB5A9CC3-655F-4AF4-8105-14CB39F2FEA8 * and https://docs.oracle.com/en/database/oracle/oracle-database/18/lnpls/OPEN-FOR-statement.html#GUID-EB7AF439-FDD3-4461-9E3F-B621E8ABFB96 */ final public ASTOpenStatement OpenStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) OpenStatement */ ASTOpenStatement jjtn000 = new ASTOpenStatement(JJTOPENSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(OPEN); switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: Expression(); break; default: jj_la1[438] = jj_gen; ; } switch (jj_nt.kind) { case FOR: jj_consume_token(FOR); switch (jj_nt.kind) { case SELECT: case WITH: SelectStatement(); break; case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: Expression(); break; default: jj_la1[439] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case USING: UsingClause(); break; default: jj_la1[440] = jj_gen; ; } break; default: jj_la1[441] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /* * See https://docs.oracle.com/en/database/oracle/oracle-database/18/lnpls/FETCH-statement.html#GUID-75BC6E63-841A-4103-9B96-8AC97F5C28BB */ final public ASTFetchStatement FetchStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) FetchStatement */ ASTFetchStatement jjtn000 = new ASTFetchStatement(JJTFETCHSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(FETCH); QualifiedName(); switch (jj_nt.kind) { case BULK: jj_consume_token(BULK); jj_consume_token(COLLECT); jjtn000.setBulkCollect(true); break; default: jj_la1[442] = jj_gen; ; } jj_consume_token(INTO); Expression(); label_91: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[443] = jj_gen; break label_91; } jj_consume_token(COMMA); Expression(); } switch (jj_nt.kind) { case LIMIT: jj_consume_token(LIMIT); Expression(); jjtn000.setLimit(true); break; default: jj_la1[444] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * Execute Immediate: https://docs.oracle.com/en/database/oracle/oracle-database/18/lnpls/EXECUTE-IMMEDIATE-statement.html#GUID-C3245A95-B85B-4280-A01F-12307B108DC8 */ final public ASTEmbeddedSqlStatement EmbeddedSqlStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) EmbeddedSqlStatement */ ASTEmbeddedSqlStatement jjtn000 = new ASTEmbeddedSqlStatement(JJTEMBEDDEDSQLSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(EXECUTE); jj_consume_token(IMMEDIATE); StringExpression(); switch (jj_nt.kind) { case INTO: case BULK: case RETURN: case RETURNING: case USING: switch (jj_nt.kind) { case INTO: IntoClause(); switch (jj_nt.kind) { case USING: UsingClause(); break; default: jj_la1[445] = jj_gen; ; } break; case BULK: BulkCollectIntoClause(); switch (jj_nt.kind) { case USING: UsingClause(); break; default: jj_la1[446] = jj_gen; ; } break; case USING: UsingClause(); switch (jj_nt.kind) { case RETURN: case RETURNING: DynamicReturnClause(); break; default: jj_la1[447] = jj_gen; ; } break; case RETURN: case RETURNING: DynamicReturnClause(); break; default: jj_la1[448] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[449] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * https://docs.oracle.com/en/database/oracle/oracle-database/18/lnpls/RETURNING-INTO-clause.html#GUID-38F735B9-1100-45AF-AE71-18FB74A899BE */ final public ASTDynamicReturnClause DynamicReturnClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) DynamicReturnClause */ ASTDynamicReturnClause jjtn000 = new ASTDynamicReturnClause(JJTDYNAMICRETURNCLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case RETURN: jj_consume_token(RETURN); break; case RETURNING: jj_consume_token(RETURNING); break; default: jj_la1[450] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case INTO: IntoClause(); break; case BULK: BulkCollectIntoClause(); break; default: jj_la1[451] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public void UsingClause() throws net.sourceforge.pmd.lang.ast.ParseException { jj_consume_token(USING); switch (jj_nt.kind) { case IN: case OUT: switch (jj_nt.kind) { case IN: jj_consume_token(IN); switch (jj_nt.kind) { case OUT: jj_consume_token(OUT); break; default: jj_la1[452] = jj_gen; ; } break; case OUT: jj_consume_token(OUT); break; default: jj_la1[453] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[454] = jj_gen; ; } Expression(); label_92: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[455] = jj_gen; break label_92; } jj_consume_token(COMMA); switch (jj_nt.kind) { case IN: case OUT: switch (jj_nt.kind) { case IN: jj_consume_token(IN); switch (jj_nt.kind) { case OUT: jj_consume_token(OUT); break; default: jj_la1[456] = jj_gen; ; } break; case OUT: jj_consume_token(OUT); break; default: jj_la1[457] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[458] = jj_gen; ; } Expression(); } } final public ASTPipelineStatement PipelineStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) PipelineStatement */ ASTPipelineStatement jjtn000 = new ASTPipelineStatement(JJTPIPELINESTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(PIPE); jj_consume_token(ROW); Expression(); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTConditionalCompilationStatement ConditionalCompilationStatement() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ConditionalCompilationStatement */ ASTConditionalCompilationStatement jjtn000 = new ASTConditionalCompilationStatement(JJTCONDITIONALCOMPILATIONSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case CC_IF: jj_consume_token(CC_IF); ConditionalOrExpression(); jj_consume_token(CC_THEN); label_93: while (true) { switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case 48: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case BEGIN: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DECLARE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case FOR: case GOTO: case HAVING: case IF: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SELECT: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PIPE: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRAGMA: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SET: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case CC_ERROR: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: ; break; default: jj_la1[459] = jj_gen; break label_93; } Statement(); } label_94: while (true) { switch (jj_nt.kind) { case CC_ELSIF: ; break; default: jj_la1[460] = jj_gen; break label_94; } jj_consume_token(CC_ELSIF); ConditionalOrExpression(); jj_consume_token(CC_THEN); label_95: while (true) { Statement(); switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case 48: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case BEGIN: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DECLARE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case FOR: case GOTO: case HAVING: case IF: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SELECT: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PIPE: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRAGMA: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SET: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case CC_ERROR: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: ; break; default: jj_la1[461] = jj_gen; break label_95; } } } label_96: while (true) { switch (jj_nt.kind) { case CC_ELSE: ; break; default: jj_la1[462] = jj_gen; break label_96; } jj_consume_token(CC_ELSE); label_97: while (true) { Statement(); switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case 48: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case BEGIN: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DECLARE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case FOR: case GOTO: case HAVING: case IF: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SELECT: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PIPE: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRAGMA: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SET: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case CC_ERROR: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: ; break; default: jj_la1[463] = jj_gen; break label_97; } } } jj_consume_token(CC_END); break; case CC_ERROR: jj_consume_token(CC_ERROR); Expression(); jj_consume_token(CC_END); break; default: jj_la1[464] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * https://docs.oracle.com/en/database/oracle/oracle-database/23/lnpls/block.html#GUID-9ACEB9ED-567E-4E1A-A16A-B8B35214FC9D__CJACIHEC */ final public ASTSubTypeDefinition SubTypeDefinition() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) SubTypeDefinition */ ASTSubTypeDefinition jjtn000 = new ASTSubTypeDefinition(JJTSUBTYPEDEFINITION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken start, subtype_name=null, constraint=null, base_type=null; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken collection = null, collection2 = null; PLSQLNode name = null; PLSQLNode startElement = null, endElement = null; PLSQLNode baseType = null, returnType = null, indexBy = null ; int lastField = 0; try { switch (jj_nt.kind) { case SUBTYPE: jj_consume_token(SUBTYPE); name = QualifiedID(); jj_consume_token(IS); Datatype(); switch (jj_nt.kind) { case LPAREN: case RANGE: switch (jj_nt.kind) { case LPAREN: jj_consume_token(LPAREN); jj_consume_token(IDENTIFIER); jj_consume_token(RPAREN); break; case RANGE: jj_consume_token(RANGE); UnaryExpression(true); jj_consume_token(45); UnaryExpression(true); break; default: jj_la1[465] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[466] = jj_gen; ; } switch (jj_nt.kind) { case NOT: jj_consume_token(NOT); jj_consume_token(NULL); break; default: jj_la1[467] = jj_gen; ; } break; case TYPE: jj_consume_token(TYPE); name = QualifiedID(); switch (jj_nt.kind) { case IS: jj_consume_token(IS); break; case AS: jj_consume_token(AS); break; default: jj_la1[468] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } if (jj_2_168(2)) { jj_consume_token(NEW); switch (jj_nt.kind) { case CHAR_BASE: jj_consume_token(CHAR_BASE); break; case DATE_BASE: jj_consume_token(DATE_BASE); break; case CLOB_BASE: jj_consume_token(CLOB_BASE); break; case BLOB_BASE: jj_consume_token(BLOB_BASE); break; case BFILE_BASE: jj_consume_token(BFILE_BASE); break; case NUMBER_BASE: jj_consume_token(NUMBER_BASE); break; default: jj_la1[469] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } else { switch (jj_nt.kind) { case OBJECT: jj_consume_token(OBJECT); jj_consume_token(LPAREN); FieldDeclaration(); label_98: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[470] = jj_gen; break label_98; } jj_consume_token(COMMA); FieldDeclaration(); } jj_consume_token(RPAREN); break; case RECORD: jj_consume_token(RECORD); jj_consume_token(LPAREN); FieldDeclaration(); label_99: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[471] = jj_gen; break label_99; } jj_consume_token(COMMA); FieldDeclaration(); } jj_consume_token(RPAREN); break; case TABLE: case VARRAY: case VARYING: switch (jj_nt.kind) { case TABLE: jj_consume_token(TABLE); break; case VARRAY: jj_consume_token(VARRAY); break; case VARYING: jj_consume_token(VARYING); jj_consume_token(ARRAY); break; default: jj_la1[472] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case LPAREN: jj_consume_token(LPAREN); NumericLiteral(); jj_consume_token(RPAREN); break; default: jj_la1[473] = jj_gen; ; } jj_consume_token(OF); Datatype(); switch (jj_nt.kind) { case NOT: jj_consume_token(NOT); jj_consume_token(NULL); break; default: jj_la1[474] = jj_gen; ; } switch (jj_nt.kind) { case INDEX: jj_consume_token(INDEX); jj_consume_token(BY); Datatype(); break; default: jj_la1[475] = jj_gen; ; } break; case 29: jj_consume_token(29); jj_consume_token(CURSOR); switch (jj_nt.kind) { case RETURN: jj_consume_token(RETURN); Datatype(); break; default: jj_la1[476] = jj_gen; ; } break; case LPAREN: jj_consume_token(LPAREN); Expression(); label_100: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[477] = jj_gen; break label_100; } jj_consume_token(COMMA); Expression(); } jj_consume_token(RPAREN); break; case 26: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case LANGUAGE: case INLINE: case AT: case SUBTYPE: case TYPE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DISABLE: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NO: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIMARY: case PRIVATE: case RANGE: case RAW: case REAL: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRUE: case UNDER: case USING: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case 493: Datatype(); break; default: jj_la1[478] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } break; default: jj_la1[479] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jj_consume_token(SEMICOLON); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(name.getImage()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTFieldDeclaration FieldDeclaration() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) FieldDeclaration */ ASTFieldDeclaration jjtn000 = new ASTFieldDeclaration(JJTFIELDDECLARATION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode name; PLSQLNode dataType; PLSQLNode defaultValue = null; try { name = ID(); Datatype(); switch (jj_nt.kind) { case NOT: case NULL: switch (jj_nt.kind) { case NOT: jj_consume_token(NOT); break; default: jj_la1[480] = jj_gen; ; } jj_consume_token(NULL); break; default: jj_la1[481] = jj_gen; ; } switch (jj_nt.kind) { case COLON: case _DEFAULT: switch (jj_nt.kind) { case COLON: jj_consume_token(COLON); jj_consume_token(ASSIGN); break; case _DEFAULT: jj_consume_token(_DEFAULT); break; default: jj_la1[482] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } Expression(); break; default: jj_la1[483] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(name.getImage()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTCollectionTypeDefinition CollectionTypeDefinition() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) CollectionTypeDefinition */ ASTCollectionTypeDefinition jjtn000 = new ASTCollectionTypeDefinition(JJTCOLLECTIONTYPEDEFINITION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken t = null ; try { t = jj_consume_token(IDENTIFIER); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(t.getImage()) ; {if (true) return jjtn000 ;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTCollectionDeclaration CollectionDeclaration() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) CollectionDeclaration */ ASTCollectionDeclaration jjtn000 = new ASTCollectionDeclaration(JJTCOLLECTIONDECLARATION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken t = null ; try { t = jj_consume_token(IDENTIFIER); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(t.getImage()) ; {if (true) return jjtn000 ;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTObjectDeclaration ObjectDeclaration() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ObjectDeclaration */ ASTObjectDeclaration jjtn000 = new ASTObjectDeclaration(JJTOBJECTDECLARATION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken t = null ; try { t = jj_consume_token(IDENTIFIER); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(t.getImage()) ; {if (true) return jjtn000 ;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** Java stored procedure, external function*/ final public ASTCallSpecTail CallSpecTail() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) CallSpecTail */ ASTCallSpecTail jjtn000 = new ASTCallSpecTail(JJTCALLSPECTAIL); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case EXTERNAL: jj_consume_token(EXTERNAL); break; case LANGUAGE: jj_consume_token(LANGUAGE); switch (jj_nt.kind) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; case JAVA: jj_consume_token(JAVA); break; default: jj_la1[484] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[485] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } label_101: while (true) { switch (jj_nt.kind) { case WITH: case LIBRARY: case NAME: case PARAMETERS: ; break; default: jj_la1[486] = jj_gen; break label_101; } switch (jj_nt.kind) { case LIBRARY: jj_consume_token(LIBRARY); switch (jj_nt.kind) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; case QUOTED_LITERAL: jj_consume_token(QUOTED_LITERAL); break; case STRING_LITERAL: StringLiteral(); break; default: jj_la1[487] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case DOT: jj_consume_token(DOT); switch (jj_nt.kind) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; case QUOTED_LITERAL: jj_consume_token(QUOTED_LITERAL); break; case STRING_LITERAL: StringLiteral(); break; default: jj_la1[488] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[489] = jj_gen; ; } break; case NAME: jj_consume_token(NAME); switch (jj_nt.kind) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; case QUOTED_LITERAL: jj_consume_token(QUOTED_LITERAL); break; case STRING_LITERAL: StringLiteral(); break; default: jj_la1[490] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; case WITH: jj_consume_token(WITH); jj_consume_token(CONTEXT); break; case PARAMETERS: jj_consume_token(PARAMETERS); SkipPastNextOccurrence(")"); break; default: jj_la1[491] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * Cursor (common part of specification and body) * * See https://docs.oracle.com/en/database/oracle/oracle-database/18/lnpls/explicit-cursor-declaration-and-definition.html#GUID-38C5DBA3-9DEC-4AF2-9B5E-7B721D11A77C */ final public ASTCursorUnit CursorUnit() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) CursorUnit */ ASTCursorUnit jjtn000 = new ASTCursorUnit(JJTCURSORUNIT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null ; try { jj_consume_token(CURSOR); simpleNode = ID(); switch (jj_nt.kind) { case LPAREN: FormalParameters(); break; default: jj_la1[492] = jj_gen; ; } switch (jj_nt.kind) { case RETURN: jj_consume_token(RETURN); Datatype(); break; default: jj_la1[493] = jj_gen; ; } switch (jj_nt.kind) { case IS: jj_consume_token(IS); SelectStatement(); break; default: jj_la1[494] = jj_gen; ; } jj_consume_token(SEMICOLON); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(simpleNode.getImage()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * This is in plsql actually called CursorDeclaration * or CursorDefinition. */ final public ASTCursorSpecification CursorSpecification() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) CursorSpecification */ ASTCursorSpecification jjtn000 = new ASTCursorSpecification(JJTCURSORSPECIFICATION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { CursorUnit(); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTExpression Expression() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) Expression */ ASTExpression jjtn000 = new ASTExpression(JJTEXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder() ; try { if (jj_2_169(2147483647)) { simpleNode = Assignment(); } else { switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: simpleNode = ConditionalOrExpression(); break; case CC_IF: simpleNode = CompilationExpression(); break; default: jj_la1[495] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } sb.append(simpleNode.getImage()); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * https://docs.oracle.com/en/database/oracle/oracle-database/23/lnpls/implicit-cursor-attribute.html */ final public ASTImplicitCursorAttribute ImplicitCursorAttribute() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ImplicitCursorAttribute */ ASTImplicitCursorAttribute jjtn000 = new ASTImplicitCursorAttribute(JJTIMPLICITCURSORATTRIBUTE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(SQL); jj_consume_token(REM); if (isKeyword("isopen")) { KEYWORD("ISOPEN"); } else if (isKeyword("found")) { KEYWORD("FOUND"); } else if (isKeyword("notfound")) { KEYWORD("NOTFOUND"); } else if (isKeyword("rowcount")) { KEYWORD("ROWCOUNT"); } else if (isKeyword("bulk_rowcount")) { KEYWORD("BULK_ROWCOUNT"); jj_consume_token(LPAREN); PrimaryExpression(); jj_consume_token(RPAREN); } else if (isKeyword("bulk_exceptions")) { KEYWORD("BULK_EXCEPTIONS"); switch (jj_nt.kind) { case DOT: jj_consume_token(DOT); jj_consume_token(40); break; case LPAREN: jj_consume_token(LPAREN); PrimaryExpression(); jj_consume_token(RPAREN); jj_consume_token(DOT); if (isKeyword("error_index")) { KEYWORD("ERROR_INDEX"); } else if (isKeyword("error_code")) { KEYWORD("ERROR_CODE"); } else { jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[496] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } else { jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTCompilationExpression CompilationExpression() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) CompilationExpression */ ASTCompilationExpression jjtn000 = new ASTCompilationExpression(JJTCOMPILATIONEXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder() ; try { jj_consume_token(CC_IF); sb.append(" "); sb.append(token.getImage()) ; simpleNode = ConditionalOrExpression(); sb.append(" "); sb.append(simpleNode.getImage()); jj_consume_token(CC_THEN); sb.append(" "); sb.append(token.getImage()); simpleNode = Expression(); sb.append(" "); sb.append(simpleNode.getImage()); label_102: while (true) { switch (jj_nt.kind) { case CC_ELSIF: ; break; default: jj_la1[497] = jj_gen; break label_102; } jj_consume_token(CC_ELSIF); sb.append(" "); sb.append(token.getImage()); simpleNode = ConditionalOrExpression(); sb.append(" "); sb.append(simpleNode.getImage()); jj_consume_token(CC_THEN); sb.append(" "); sb.append(token.getImage()); simpleNode = Expression(); sb.append(" "); sb.append(simpleNode.getImage()); } label_103: while (true) { switch (jj_nt.kind) { case CC_ELSE: ; break; default: jj_la1[498] = jj_gen; break label_103; } jj_consume_token(CC_ELSE); sb.append(" "); sb.append(token.getImage()); simpleNode = Expression(); sb.append(" "); sb.append(simpleNode.getImage()); } jj_consume_token(CC_END); sb.append(" "); sb.append(token.getImage()); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTAssignment Assignment() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) Assignment */ ASTAssignment jjtn000 = new ASTAssignment(JJTASSIGNMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder() ; try { simpleNode = PrimaryExpression(); sb.append(simpleNode.getImage()); jj_consume_token(COLON); jj_consume_token(ASSIGN); sb.append(" := "); simpleNode = Expression(); sb.append(simpleNode.getImage()); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTCaseExpression CaseExpression() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) CaseExpression */ ASTCaseExpression jjtn000 = new ASTCaseExpression(JJTCASEEXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(CASE); switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: Expression(); label_104: while (true) { jj_consume_token(WHEN); Expression(); jj_consume_token(THEN); Expression(); switch (jj_nt.kind) { case WHEN: ; break; default: jj_la1[499] = jj_gen; break label_104; } } break; case WHEN: label_105: while (true) { jj_consume_token(WHEN); Condition(); jj_consume_token(THEN); Expression(); switch (jj_nt.kind) { case WHEN: ; break; default: jj_la1[500] = jj_gen; break label_105; } } break; default: jj_la1[501] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case ELSE: jj_consume_token(ELSE); Expression(); break; default: jj_la1[502] = jj_gen; ; } jj_consume_token(END); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /* LIKE ( Expression ) [ */ final public ASTLikeExpression LikeExpression() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) LikeExpression */ ASTLikeExpression jjtn000 = new ASTLikeExpression(JJTLIKEEXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken thisToken; PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder() ; try { simpleNode = PrimaryExpression(); sb.append(" "); sb.append(simpleNode.getImage()); thisToken = jj_consume_token(LIKE); sb.append(thisToken.getImage()); simpleNode = StringExpression(); sb.append(" "); sb.append(simpleNode.getImage()); switch (jj_nt.kind) { case ESCAPE: jj_consume_token(ESCAPE); sb.append(" ESCAPE "); switch (jj_nt.kind) { case CHARACTER_LITERAL: jj_consume_token(CHARACTER_LITERAL); sb.append(" "); sb.append(token.getImage()); break; case STRING_LITERAL: simpleNode = StringLiteral(); sb.append(" "); sb.append(simpleNode.getImage()); break; default: jj_la1[503] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[504] = jj_gen; ; } label_106: while (true) { switch (jj_nt.kind) { case DOT: ; break; default: jj_la1[505] = jj_gen; break label_106; } jj_consume_token(DOT); simpleNode = Expression(); sb.append("."); sb.append(simpleNode.getImage()); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/TRIM.html */ final public ASTTrimExpression TrimExpression() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) TrimExpression */ ASTTrimExpression jjtn000 = new ASTTrimExpression(JJTTRIMEXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder() ; try { jj_consume_token(LPAREN); sb.append("("); switch (jj_nt.kind) { case BOTH: case LEADING: case TRAILING: switch (jj_nt.kind) { case LEADING: jj_consume_token(LEADING); break; case TRAILING: jj_consume_token(TRAILING); break; case BOTH: jj_consume_token(BOTH); break; default: jj_la1[506] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } sb.append(" "); sb.append(token.getImage()); break; default: jj_la1[507] = jj_gen; ; } if (jj_2_170(2147483647)) { simpleNode = StringExpression(); sb.append(" "); sb.append(simpleNode.getImage()); } else { ; } switch (jj_nt.kind) { case FROM: jj_consume_token(FROM); sb.append(" ").append(token.getImage()); break; default: jj_la1[508] = jj_gen; ; } simpleNode = StringExpression(); sb.append(" "); sb.append(simpleNode.getImage()); jj_consume_token(RPAREN); sb.append(")"); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /* TREAT ( Expression AS datatype) CAST ( Expression AS datatype) */ final public ASTObjectExpression ObjectExpression() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ObjectExpression */ ASTObjectExpression jjtn000 = new ASTObjectExpression(JJTOBJECTEXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken thisToken; PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder() ; try { switch (jj_nt.kind) { case CAST: thisToken = jj_consume_token(CAST); break; case TREAT: thisToken = jj_consume_token(TREAT); break; default: jj_la1[509] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } sb.append(thisToken.getImage()); jj_consume_token(LPAREN); sb.append("("); simpleNode = Expression(); sb.append(" "); sb.append(simpleNode.getImage()); switch (jj_nt.kind) { case AT: jj_consume_token(AT); jj_consume_token(TIME); jj_consume_token(ZONE); simpleNode = PrimaryExpression(); sb.append(" AT TIME ZONE "); sb.append(simpleNode.getImage()); break; default: jj_la1[510] = jj_gen; ; } jj_consume_token(AS); sb.append(" AS "); simpleNode = Datatype(); sb.append(" "); sb.append(simpleNode.getImage()); jj_consume_token(RPAREN); sb.append(")"); label_107: while (true) { switch (jj_nt.kind) { case DOT: ; break; default: jj_la1[511] = jj_gen; break label_107; } jj_consume_token(DOT); Expression(); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTConditionalOrExpression ConditionalOrExpression() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) #ConditionalOrExpression(> 1) */ ASTConditionalOrExpression jjtn000 = new ASTConditionalOrExpression(JJTCONDITIONALOREXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder() ; try { simpleNode = ConditionalAndExpression(); sb.append(simpleNode.getImage()); label_108: while (true) { switch (jj_nt.kind) { case OR: ; break; default: jj_la1[512] = jj_gen; break label_108; } jj_consume_token(OR); sb.append(" OR "); simpleNode = ConditionalAndExpression(); sb.append(simpleNode.getImage()); } jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTConditionalAndExpression ConditionalAndExpression() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) #ConditionalAndExpression(> 1) */ ASTConditionalAndExpression jjtn000 = new ASTConditionalAndExpression(JJTCONDITIONALANDEXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder() ; try { simpleNode = EqualityExpression(); sb.append(simpleNode.getImage()); label_109: while (true) { switch (jj_nt.kind) { case AND: ; break; default: jj_la1[513] = jj_gen; break label_109; } jj_consume_token(AND); sb.append(" AND "); simpleNode = EqualityExpression(); sb.append(simpleNode.getImage()); } jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTEqualityExpression EqualityExpression() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) #EqualityExpression(> 1) */ ASTEqualityExpression jjtn000 = new ASTEqualityExpression(JJTEQUALITYEXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder() ; try { simpleNode = RelationalExpression(); sb.append(simpleNode.getImage()); label_110: while (true) { switch (jj_nt.kind) { case ASSIGN: case BANG: case IS: ; break; default: jj_la1[514] = jj_gen; break label_110; } switch (jj_nt.kind) { case ASSIGN: jj_consume_token(ASSIGN); sb.append(" = "); break; case BANG: jj_consume_token(BANG); jj_consume_token(ASSIGN); sb.append(" != "); break; case IS: jj_consume_token(IS); sb.append(" IS "); break; default: jj_la1[515] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } simpleNode = RelationalExpression(); sb.append(simpleNode.getImage()); } jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * Relational operators: https://docs.oracle.com/en/database/oracle/oracle-database/18/lnpls/plsql-language-fundamentals.html#GUID-2EB964C8-9B36-4009-A45F-B340F44EE2A2 */ final public ASTRelationalExpression RelationalExpression() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) #RelationalExpression(> 1) */ ASTRelationalExpression jjtn000 = new ASTRelationalExpression(JJTRELATIONALEXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder() ; try { simpleNode = AdditiveExpression(); sb.append(simpleNode.getImage()); label_111: while (true) { switch (jj_nt.kind) { case LT: case BANG: case TILDE: case XOR: case 31: case BETWEEN: case IN: case LIKE: case NOT: case MEMBER: case MULTISET: case SUBMULTISET: ; break; default: jj_la1[516] = jj_gen; break label_111; } switch (jj_nt.kind) { case LT: case BANG: case TILDE: case XOR: case 31: if (jj_2_171(2)) { jj_consume_token(LT); jj_consume_token(31); sb.append(" <> "); } else if (jj_2_172(2)) { jj_consume_token(LT); jj_consume_token(ASSIGN); sb.append(" <= "); } else if (jj_2_173(2)) { jj_consume_token(31); jj_consume_token(ASSIGN); sb.append(" >= "); } else { switch (jj_nt.kind) { case LT: jj_consume_token(LT); sb.append(" < "); break; case 31: jj_consume_token(31); sb.append(" > "); break; case BANG: jj_consume_token(BANG); jj_consume_token(ASSIGN); sb.append(" != "); break; case TILDE: jj_consume_token(TILDE); jj_consume_token(ASSIGN); sb.append(" ~= "); break; case XOR: jj_consume_token(XOR); jj_consume_token(ASSIGN); sb.append(" ^= "); break; default: jj_la1[517] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } sb.append(" "); break; case BETWEEN: case IN: case LIKE: case NOT: case MEMBER: case SUBMULTISET: switch (jj_nt.kind) { case NOT: jj_consume_token(NOT); sb.append(" NOT "); break; default: jj_la1[518] = jj_gen; ; } switch (jj_nt.kind) { case IN: jj_consume_token(IN); sb.append(" IN "); break; case BETWEEN: jj_consume_token(BETWEEN); sb.append(" BETWEEN "); break; case LIKE: jj_consume_token(LIKE); sb.append(" LIKE "); break; case MEMBER: case SUBMULTISET: switch (jj_nt.kind) { case MEMBER: jj_consume_token(MEMBER); sb.append(" MEMBER "); break; case SUBMULTISET: jj_consume_token(SUBMULTISET); sb.append(" SUBMULTISET "); break; default: jj_la1[519] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case OF: jj_consume_token(OF); sb.append(" OF "); break; default: jj_la1[520] = jj_gen; ; } break; default: jj_la1[521] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; case MULTISET: jj_consume_token(MULTISET); sb.append (" MULTISET " ); switch (jj_nt.kind) { case EXCEPT: jj_consume_token(EXCEPT); sb.append (" EXCEPT " ); break; case INTERSECT: jj_consume_token(INTERSECT); sb.append (" INTERSECT " ); break; case UNION: jj_consume_token(UNION); sb.append (" UNION " ); break; default: jj_la1[522] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case ALL: case DISTINCT: switch (jj_nt.kind) { case DISTINCT: jj_consume_token(DISTINCT); sb.append (" DISTINCT " ); break; case ALL: jj_consume_token(ALL); sb.append (" ALL " ); break; default: jj_la1[523] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[524] = jj_gen; ; } break; default: jj_la1[525] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } AdditiveExpression(); sb.append(simpleNode.getImage()); switch (jj_nt.kind) { case ESCAPE: jj_consume_token(ESCAPE); sb.append(" ESCAPE "); switch (jj_nt.kind) { case CHARACTER_LITERAL: jj_consume_token(CHARACTER_LITERAL); sb.append(" "); sb.append(token.getImage()); break; case STRING_LITERAL: simpleNode = StringLiteral(); sb.append(" "); sb.append(simpleNode.getImage()); break; default: jj_la1[526] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[527] = jj_gen; ; } } jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTAdditiveExpression AdditiveExpression() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) #AdditiveExpression(> 1) */ ASTAdditiveExpression jjtn000 = new ASTAdditiveExpression(JJTADDITIVEEXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder() ; try { simpleNode = MultiplicativeExpression(); sb.append(simpleNode.getImage()); label_112: while (true) { switch (jj_nt.kind) { case PLUSSIGN: case MINUSSIGN: case 46: ; break; default: jj_la1[528] = jj_gen; break label_112; } switch (jj_nt.kind) { case PLUSSIGN: jj_consume_token(PLUSSIGN); sb.append(" + "); break; case MINUSSIGN: jj_consume_token(MINUSSIGN); sb.append(" - "); break; case 46: jj_consume_token(46); sb.append(" || "); break; default: jj_la1[529] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } simpleNode = MultiplicativeExpression(); sb.append(simpleNode.getImage()); } jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTStringExpression StringExpression() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) StringExpression */ ASTStringExpression jjtn000 = new ASTStringExpression(JJTSTRINGEXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder() ; try { simpleNode = PrimaryExpression(); sb.append(simpleNode.getImage()); label_113: while (true) { switch (jj_nt.kind) { case 46: ; break; default: jj_la1[530] = jj_gen; break label_113; } jj_consume_token(46); sb.append(" || "); simpleNode = PrimaryExpression(); sb.append(simpleNode.getImage()); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTMultiplicativeExpression MultiplicativeExpression() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) #MultiplicativeExpression(> 1) */ ASTMultiplicativeExpression jjtn000 = new ASTMultiplicativeExpression(JJTMULTIPLICATIVEEXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder() ; try { simpleNode = UnaryExpression(true); sb.append(simpleNode.getImage()); label_114: while (true) { if (jj_2_174(2147483647) && (getToken(1).specialToken == null || getToken(1).specialToken.kind != EOL)) { ; } else { break label_114; } switch (jj_nt.kind) { case 47: jj_consume_token(47); sb.append(" ** "); break; case STAR: jj_consume_token(STAR); sb.append(" * "); break; case SLASH: jj_consume_token(SLASH); sb.append(" / "); break; case MOD: jj_consume_token(MOD); sb.append(" MOD "); break; default: jj_la1[531] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } simpleNode = UnaryExpression(true); sb.append(simpleNode.getImage()); } jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTUnaryExpression UnaryExpression(boolean isUnarySign) throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) #UnaryExpression(> 1) */ ASTUnaryExpression jjtn000 = new ASTUnaryExpression(JJTUNARYEXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder() ; try { switch (jj_nt.kind) { case PLUSSIGN: case MINUSSIGN: case PRIOR: switch (jj_nt.kind) { case PLUSSIGN: jj_consume_token(PLUSSIGN); sb.append(isUnarySign ? " +" : " + "); break; case MINUSSIGN: jj_consume_token(MINUSSIGN); sb.append(isUnarySign ? " -" : " - "); break; case PRIOR: jj_consume_token(PRIOR); sb.append(" PRIOR "); break; default: jj_la1[532] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } simpleNode = UnaryExpression(false); sb.append(simpleNode.getImage()); break; case LPAREN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: simpleNode = UnaryExpressionNotPlusMinus(); sb.append(simpleNode.getImage()); break; default: jj_la1[533] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTExtractExpression ExtractExpression() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ExtractExpression */ ASTExtractExpression jjtn000 = new ASTExtractExpression(JJTEXTRACTEXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { if (jj_2_175(4)) { ExtractDatetime(); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } else if (jj_2_176(3)) { ExtractXml(jjtn000); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } else { jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * See https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/EXTRACT-datetime.html#GUID-36E52BF8-945D-437D-9A3C-6860CABD210E */ final public void ExtractDatetime() throws net.sourceforge.pmd.lang.ast.ParseException { jj_consume_token(EXTRACT); jj_consume_token(LPAREN); switch (jj_nt.kind) { case MONTH: jj_consume_token(MONTH); break; case YEAR: jj_consume_token(YEAR); break; case DAY: jj_consume_token(DAY); break; case HOUR: jj_consume_token(HOUR); break; case MINUTE: jj_consume_token(MINUTE); break; case SECOND: jj_consume_token(SECOND); break; case TIMEZONE_HOUR: jj_consume_token(TIMEZONE_HOUR); break; case TIMEZONE_MINUTE: jj_consume_token(TIMEZONE_MINUTE); break; case TIMEZONE_REGION: jj_consume_token(TIMEZONE_REGION); break; case TIMEZONE_ABBR: jj_consume_token(TIMEZONE_ABBR); break; default: jj_la1[534] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jj_consume_token(FROM); if (jj_2_177(2147483647)) { FunctionCall(); } else if (jj_2_178(2147483647)) { DateTimeLiteral(); } else if (jj_2_179(2147483647)) { Name(); } else { jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jj_consume_token(RPAREN); } /** * See https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/EXTRACT-XML.html#GUID-593295AA-4F46-4D75-B8DC-E7BCEDB1D4D7 */ final public void ExtractXml(ASTExtractExpression extractExpr) throws net.sourceforge.pmd.lang.ast.ParseException { extractExpr.setXml(); jj_consume_token(EXTRACT); jj_consume_token(LPAREN); Argument(); jj_consume_token(COMMA); StringLiteral(); switch (jj_nt.kind) { case COMMA: jj_consume_token(COMMA); StringLiteral(); break; default: jj_la1[535] = jj_gen; ; } jj_consume_token(RPAREN); } final public ASTUnaryExpressionNotPlusMinus UnaryExpressionNotPlusMinus() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) #UnaryExpressionNotPlusMinus(> 1) */ ASTUnaryExpressionNotPlusMinus jjtn000 = new ASTUnaryExpressionNotPlusMinus(JJTUNARYEXPRESSIONNOTPLUSMINUS); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder() ; try { switch (jj_nt.kind) { case NOT: jj_consume_token(NOT); sb.append(" NOT "); simpleNode = UnaryExpression(false); break; default: jj_la1[536] = jj_gen; if (jj_2_180(2)) { simpleNode = ExtractExpression(); } else if (jj_2_181(2)) { simpleNode = IsNullCondition(); } else { switch (jj_nt.kind) { case SQL: simpleNode = ImplicitCursorAttribute(); break; default: jj_la1[537] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } } sb.append(simpleNode.getImage()); jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTIsNullCondition IsNullCondition() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) #IsNullCondition(> 1) */ ASTIsNullCondition jjtn000 = new ASTIsNullCondition(JJTISNULLCONDITION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; PLSQLNode name = null; StringBuilder sb = new StringBuilder(); try { if (jj_2_182(2147483647)) { ASTName jjtn001 = new ASTName(JJTNAME); boolean jjtc001 = true; jjtree.openNodeScope(jjtn001, getToken(1)); try { name = PrimaryExpression(); } catch (Throwable jjte001) { if (jjtc001) { jjtree.clearNodeScope(jjtn001); jjtc001 = false; } else { jjtree.popNode(); } if (jjte001 instanceof RuntimeException) { {if (true) throw (RuntimeException)jjte001;} } if (jjte001 instanceof net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte001;} } {if (true) throw (Error)jjte001;} } finally { if (jjtc001) { jjtree.closeNodeScope(jjtn001, true, getToken(0)); } } sb.append(name.getImage()); jj_consume_token(IS); sb.append(" IS"); switch (jj_nt.kind) { case NOT: jj_consume_token(NOT); sb.append(" NOT"); break; default: jj_la1[538] = jj_gen; ; } jj_consume_token(NULL); sb.append(" NULL"); } else { switch (jj_nt.kind) { case LPAREN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: simpleNode = IsOfTypeCondition(); sb.append(simpleNode.getImage()); break; default: jj_la1[539] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTIsOfTypeCondition IsOfTypeCondition() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) #IsOfTypeCondition(> 1) */ ASTIsOfTypeCondition jjtn000 = new ASTIsOfTypeCondition(JJTISOFTYPECONDITION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; PLSQLNode name = null; StringBuilder sb = new StringBuilder(); try { if (jj_2_183(2147483647)) { name = Name(); sb.append(name.getImage()); jj_consume_token(IS); sb.append(" IS"); switch (jj_nt.kind) { case NOT: jj_consume_token(NOT); sb.append(" NOT"); break; default: jj_la1[540] = jj_gen; ; } jj_consume_token(OF); sb.append(" OF"); switch (jj_nt.kind) { case TYPE: jj_consume_token(TYPE); break; default: jj_la1[541] = jj_gen; ; } jj_consume_token(LPAREN); switch (jj_nt.kind) { case ONLY: jj_consume_token(ONLY); break; default: jj_la1[542] = jj_gen; ; } Name(); label_115: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[543] = jj_gen; break label_115; } jj_consume_token(COMMA); switch (jj_nt.kind) { case ONLY: jj_consume_token(ONLY); break; default: jj_la1[544] = jj_gen; ; } Name(); } jj_consume_token(RPAREN); } else if (jj_2_184(2147483647)) { simpleNode = PrimaryExpression(); sb.append(simpleNode.getImage()); jj_consume_token(IS); sb.append(" IS"); switch (jj_nt.kind) { case NOT: jj_consume_token(NOT); sb.append(" NOT"); break; default: jj_la1[545] = jj_gen; ; } jj_consume_token(OF); sb.append(" OF"); switch (jj_nt.kind) { case TYPE: jj_consume_token(TYPE); break; default: jj_la1[546] = jj_gen; ; } jj_consume_token(LPAREN); switch (jj_nt.kind) { case ONLY: jj_consume_token(ONLY); break; default: jj_la1[547] = jj_gen; ; } Name(); label_116: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[548] = jj_gen; break label_116; } jj_consume_token(COMMA); switch (jj_nt.kind) { case ONLY: jj_consume_token(ONLY); break; default: jj_la1[549] = jj_gen; ; } Name(); } jj_consume_token(RPAREN); } else { switch (jj_nt.kind) { case LPAREN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: simpleNode = PrimaryExpression(); sb.append(simpleNode.getImage()); break; default: jj_la1[550] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * 2006-05-23 - Matthias Hendler - Added lookahead otherwise warning encountered. * Warning arised while adding methode triggerUnit(). * 2011-04-27 - SRT - Add optional NEW Keyword to cope with Object Type constructors */ final public ASTPrimaryExpression PrimaryExpression() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) #PrimaryExpression(> 1) */ ASTPrimaryExpression jjtn000 = new ASTPrimaryExpression(JJTPRIMARYEXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken thisToken ; PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder() ; try { switch (jj_nt.kind) { case NEW_DOT: jj_consume_token(NEW_DOT); simpleNode = QualifiedID(); sb.append(" NEW."); sb.append(simpleNode.getImage()); break; case LPAREN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: if (jj_2_185(2147483647)) { jj_consume_token(NEW); sb.append(" NEW "); simpleNode = PrimaryPrefix(); sb.append(simpleNode.getImage()); } else { switch (jj_nt.kind) { case LPAREN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: simpleNode = PrimaryPrefix(); sb.append(simpleNode.getImage()); break; default: jj_la1[551] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } label_117: while (true) { if (jj_2_186(2)) { ; } else { break label_117; } simpleNode = PrimarySuffix(); sb.append(simpleNode.getImage()); } break; default: jj_la1[552] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, jjtree.nodeArity() > 1, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTPrimaryPrefix PrimaryPrefix() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) PrimaryPrefix */ ASTPrimaryPrefix jjtn000 = new ASTPrimaryPrefix(JJTPRIMARYPREFIX); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder() ; try { if (jj_2_187(2147483647)) { simpleNode = OuterJoinExpression(); sb.append(simpleNode.getImage()); } else if (jj_2_188(2147483647)) { simpleNode = FunctionCall(); switch (jj_nt.kind) { case 32: AnalyticClause(); break; default: jj_la1[553] = jj_gen; ; } switch (jj_nt.kind) { case 36: WithinClause(); break; default: jj_la1[554] = jj_gen; ; } sb.append(simpleNode.getImage()); } else if (jj_2_189(2147483647)) { simpleNode = MultiSetCondition(); } else if (jj_2_190(2147483647)) { simpleNode = CaseExpression(); sb.append(simpleNode.getImage()) ; } else if (jj_2_191(2147483647)) { simpleNode = ObjectExpression(); sb.append(simpleNode.getImage()) ; } else if (jj_2_192(2147483647)) { simpleNode = Literal(); sb.append(simpleNode.getImage()) ; } else if (jj_2_193(2147483647)) { simpleNode = SimpleExpression(); sb.append(simpleNode.getImage()); } else { switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case LANGUAGE: case INLINE: case AT: case SUBTYPE: case TYPE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BODY: case BULK: case BYTE: case CASCADE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case DATA: case DAY: case DEFINITION: case DISABLE: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NEW: case NEXT: case NO: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case OBJECT: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PERCENT: case PRESERVE: case PRIMARY: case PRIVATE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRUE: case UNDER: case USING: case YES: case A: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case 493: simpleNode = Name(); sb.append(simpleNode.getImage()) ; break; default: jj_la1[556] = jj_gen; if (jj_2_194(2147483647)) { jj_consume_token(LPAREN); SelectStatement(); jj_consume_token(RPAREN); } else if (jj_2_195(2147483647)) { jj_consume_token(WITH); sb.append("WITH ..."); Skip2NextTerminator(null,";"); } else if (jj_2_196(2147483647)) { jj_consume_token(LPAREN); sb.append("(WITH ..."); Skip2NextTerminator("(",")"); jj_consume_token(RPAREN); } else { switch (jj_nt.kind) { case LPAREN: jj_consume_token(LPAREN); sb.append("("); simpleNode = Expression(); sb.append(simpleNode.getImage()); label_118: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[555] = jj_gen; break label_118; } jj_consume_token(COMMA); sb.append(", "); simpleNode = Expression(); sb.append(simpleNode.getImage()); } jj_consume_token(RPAREN); sb.append(")"); break; default: jj_la1[557] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } } } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTPrimarySuffix PrimarySuffix() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) PrimarySuffix */ ASTPrimarySuffix jjtn000 = new ASTPrimarySuffix(JJTPRIMARYSUFFIX); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode suffixNode = null ; PLSQLNode arguments = null; StringBuilder sb = new StringBuilder() ; try { switch (jj_nt.kind) { case DOT: jj_consume_token(DOT); sb.append("."); suffixNode = QualifiedID(); sb.append(suffixNode.getImage()) ; break; case AROBASE: jj_consume_token(AROBASE); sb.append("@"); suffixNode = QualifiedID(); sb.append(suffixNode.getImage()) ; break; case AT: jj_consume_token(AT); sb.append(" "); sb.append(token.getImage().toUpperCase()); switch (jj_nt.kind) { case LOCAL: jj_consume_token(LOCAL); sb.append(" "); sb.append(token.getImage().toUpperCase()); break; case TIME: jj_consume_token(TIME); jj_consume_token(ZONE); sb.append(" TIME ZONE"); switch (jj_nt.kind) { case DBTIMEZONE: jj_consume_token(DBTIMEZONE); sb.append(" "); sb.append(token.getImage().toUpperCase()); break; case SESSIONTIMEZONE: jj_consume_token(SESSIONTIMEZONE); sb.append(" "); sb.append(token.getImage().toUpperCase()); break; case STRING_LITERAL: suffixNode = StringLiteral(); sb.append(" "); sb.append(suffixNode.getImage()); break; case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: suffixNode = Expression(); sb.append(" "); sb.append(suffixNode.getImage()); break; default: jj_la1[558] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[559] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; case LPAREN: arguments = Arguments(); sb.append("Arguments") ; break; default: jj_la1[560] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()); {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTLiteral Literal() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) Literal */ ASTLiteral jjtn000 = new ASTLiteral(JJTLITERAL); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken t = null ; try { switch (jj_nt.kind) { case UNSIGNED_NUMERIC_LITERAL: simpleNode = NumericLiteral(); break; case CHARACTER_LITERAL: t = jj_consume_token(CHARACTER_LITERAL); break; case STRING_LITERAL: // {literal = token.getImage(); } simpleNode = StringLiteral(); break; case FALSE: case TRUE: simpleNode = BooleanLiteral(); break; case NULL: simpleNode = NullLiteral(); break; case DATE: case INTERVAL: case TIMESTAMP: simpleNode = DateTimeLiteral(); break; default: jj_la1[561] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; if (null != simpleNode) { jjtn000.setImage( simpleNode.getImage() ) ; } else if (null != t) { jjtn000.setImage( t.getImage() ) ; } {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTStringLiteral StringLiteral() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) StringLiteral */ ASTStringLiteral jjtn000 = new ASTStringLiteral(JJTSTRINGLITERAL); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(STRING_LITERAL); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(token.getImage()); {if (true) return jjtn000 ;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTBooleanLiteral BooleanLiteral() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) BooleanLiteral */ ASTBooleanLiteral jjtn000 = new ASTBooleanLiteral(JJTBOOLEANLITERAL); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case TRUE: jj_consume_token(TRUE); break; case FALSE: jj_consume_token(FALSE); break; default: jj_la1[562] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(token.getImage()) ; {if (true) return jjtn000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTNullLiteral NullLiteral() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) NullLiteral */ ASTNullLiteral jjtn000 = new ASTNullLiteral(JJTNULLLITERAL); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(NULL); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(token.getImage()) ; {if (true) return jjtn000 ;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTMultiSetCondition MultiSetCondition() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) MultiSetCondition */ ASTMultiSetCondition jjtn000 = new ASTMultiSetCondition(JJTMULTISETCONDITION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case A: jj_consume_token(A); jj_consume_token(SET); break; case EMPTY: jj_consume_token(EMPTY); break; default: jj_la1[563] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** Recognizes a numeric literal. * This may look like token, but it isn't. Not atomic enough. * E.g. "+1" would be valid literal, which make parsing of "i+1" impossible * (here, we have tokens "i", "+" and "1") */ final public ASTNumericLiteral NumericLiteral() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) NumericLiteral */ ASTNumericLiteral jjtn000 = new ASTNumericLiteral(JJTNUMERICLITERAL); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken t = null ; try { //Essentially unchanged, as it previouly returned a net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken t = jj_consume_token(UNSIGNED_NUMERIC_LITERAL); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(t.getImage()) ; {if (true) return jjtn000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** This cannot be a token because these are valid labels '<< next_msg >>", '<<"OUTER LOOP">>' */ final public ASTLabel Label() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) Label */ ASTLabel jjtn000 = new ASTLabel(JJTLABEL); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; try { jj_consume_token(48); simpleNode = UnqualifiedID(); jj_consume_token(49); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage( simpleNode.getImage() ) ; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTName Name() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) Name */ ASTName jjtn000 = new ASTName(JJTNAME); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder(); try { simpleNode = UnqualifiedID(); sb.append(simpleNode.getImage()) ; label_119: while (true) { if (jj_2_197(2)) { ; } else { break label_119; } switch (jj_nt.kind) { case DOT: jj_consume_token(DOT); sb.append(".") ; break; case REM: jj_consume_token(REM); sb.append("%") ; break; default: jj_la1[564] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } //QualifiedID() simpleNode = QualifiedID(); sb.append(simpleNode.getImage()) ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()) ; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTQualifiedName QualifiedName() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) QualifiedName */ ASTQualifiedName jjtn000 = new ASTQualifiedName(JJTQUALIFIEDNAME); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; StringBuilder sb = new StringBuilder(); try { simpleNode = UnqualifiedID(); sb.append(simpleNode.getImage()) ; label_120: while (true) { switch (jj_nt.kind) { case DOT: ; break; default: jj_la1[565] = jj_gen; break label_120; } jj_consume_token(DOT); simpleNode = QualifiedID(); sb.append(".") ; sb.append(simpleNode.getImage()) ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTArguments Arguments() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) Arguments */ ASTArguments jjtn000 = new ASTArguments(JJTARGUMENTS); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(LPAREN); switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALL: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DISTINCT: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UNIQUE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: switch (jj_nt.kind) { case ALL: case DISTINCT: case UNIQUE: switch (jj_nt.kind) { case ALL: jj_consume_token(ALL); break; case DISTINCT: jj_consume_token(DISTINCT); break; case UNIQUE: jj_consume_token(UNIQUE); break; default: jj_la1[566] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[567] = jj_gen; ; } switch (jj_nt.kind) { case STAR: jj_consume_token(STAR); break; case LPAREN: case PLUSSIGN: case MINUSSIGN: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: ArgumentList(); break; default: jj_la1[568] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[569] = jj_gen; ; } switch (jj_nt.kind) { case ON: ListaggOverflowClause(); break; default: jj_la1[570] = jj_gen; ; } jj_consume_token(RPAREN); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTArgumentList ArgumentList() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ArgumentList */ ASTArgumentList jjtn000 = new ASTArgumentList(JJTARGUMENTLIST); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { Argument(); label_121: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[571] = jj_gen; break label_121; } jj_consume_token(COMMA); Argument(); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTArgument Argument() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) Argument */ ASTArgument jjtn000 = new ASTArgument(JJTARGUMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; try { if (jj_2_198(2)) { simpleNode = UnqualifiedID(); switch (jj_nt.kind) { case 50: jj_consume_token(50); break; case AS: jj_consume_token(AS); break; default: jj_la1[572] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } else { ; } Expression(); switch (jj_nt.kind) { case _DEFAULT: jj_consume_token(_DEFAULT); Expression(); jj_consume_token(ON); KEYWORD("CONVERSION"); jj_consume_token(38); break; default: jj_la1[573] = jj_gen; ; } switch (jj_nt.kind) { case USING: jj_consume_token(USING); switch (jj_nt.kind) { case CHAR_CS: jj_consume_token(CHAR_CS); break; case NCHAR_CS: jj_consume_token(NCHAR_CS); break; default: jj_la1[574] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[575] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; if (null != simpleNode) { jjtn000.setImage(simpleNode.getImage()) ; } {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } // ============================================================================ // D E C L A R A T I O N S // ============================================================================ final public ASTVariableOrConstantDeclaration VariableOrConstantDeclaration() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) VariableOrConstantDeclaration */ ASTVariableOrConstantDeclaration jjtn000 = new ASTVariableOrConstantDeclaration(JJTVARIABLEORCONSTANTDECLARATION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { VariableOrConstantDeclarator(); jj_consume_token(SEMICOLON); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTDatatypeDeclaration DatatypeDeclaration() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) DatatypeDeclaration */ ASTDatatypeDeclaration jjtn000 = new ASTDatatypeDeclaration(JJTDATATYPEDECLARATION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken t ; try { t = jj_consume_token(IDENTIFIER); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(t.getImage()) ; {if (true) return jjtn000 ;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTPragma Pragma() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) Pragma */ ASTPragma jjtn000 = new ASTPragma(JJTPRAGMA); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(PRAGMA); switch (jj_nt.kind) { case SERIALLY_REUSABLE: jj_consume_token(SERIALLY_REUSABLE); break; case AUTONOMOUS_TRANSACTION: jj_consume_token(AUTONOMOUS_TRANSACTION); break; case TIMESTAMP: jj_consume_token(TIMESTAMP); jj_consume_token(LPAREN); StringLiteral(); jj_consume_token(RPAREN); break; case RESTRICT_REFERENCES: jj_consume_token(RESTRICT_REFERENCES); jj_consume_token(LPAREN); ID(); label_122: while (true) { jj_consume_token(COMMA); switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: ID(); break; case STRING_LITERAL: StringLiteral(); break; default: jj_la1[576] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[577] = jj_gen; break label_122; } } jj_consume_token(RPAREN); break; case EXCEPTION_INIT: jj_consume_token(EXCEPTION_INIT); jj_consume_token(LPAREN); jj_consume_token(IDENTIFIER); jj_consume_token(COMMA); switch (jj_nt.kind) { case PLUSSIGN: case MINUSSIGN: switch (jj_nt.kind) { case PLUSSIGN: jj_consume_token(PLUSSIGN); break; case MINUSSIGN: jj_consume_token(MINUSSIGN); break; default: jj_la1[578] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[579] = jj_gen; ; } NumericLiteral(); jj_consume_token(RPAREN); break; case INTERFACE: jj_consume_token(INTERFACE); jj_consume_token(LPAREN); jj_consume_token(IDENTIFIER); jj_consume_token(COMMA); ID(); switch (jj_nt.kind) { case COMMA: jj_consume_token(COMMA); NumericLiteral(); break; default: jj_la1[580] = jj_gen; ; } jj_consume_token(RPAREN); break; case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case LANGUAGE: case INLINE: case AT: case SUBTYPE: case TYPE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BODY: case BULK: case BYTE: case CASCADE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case DATA: case DAY: case DEFINITION: case DISABLE: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NEW: case NEXT: case NO: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case OBJECT: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PERCENT: case PRESERVE: case PRIMARY: case PRIVATE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRUE: case UNDER: case USING: case YES: case A: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case 493: QualifiedName(); jj_consume_token(LPAREN); ReadPastNextOccurrence(")"); break; default: jj_la1[581] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jj_consume_token(SEMICOLON); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTInlinePragma InlinePragma() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) InlinePragma */ ASTInlinePragma jjtn000 = new ASTInlinePragma(JJTINLINEPRAGMA); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(PRAGMA); jj_consume_token(INLINE); jj_consume_token(LPAREN); QualifiedName(); jj_consume_token(COMMA); StringLiteral(); jj_consume_token(RPAREN); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTExceptionDeclaration ExceptionDeclaration() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ExceptionDeclaration */ ASTExceptionDeclaration jjtn000 = new ASTExceptionDeclaration(JJTEXCEPTIONDECLARATION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; try { simpleNode = ID(); jj_consume_token(EXCEPTION); jj_consume_token(SEMICOLON); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(simpleNode.getImage()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTParallelClause ParallelClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ParallelClause */ ASTParallelClause jjtn000 = new ASTParallelClause(JJTPARALLELCLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(LPAREN); jj_consume_token(PARTITION); ID(); jj_consume_token(BY); switch (jj_nt.kind) { case ANY: jj_consume_token(ANY); break; case HASH: case RANGE: switch (jj_nt.kind) { case HASH: jj_consume_token(HASH); break; case RANGE: jj_consume_token(RANGE); break; default: jj_la1[582] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jj_consume_token(LPAREN); ID(); label_123: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[583] = jj_gen; break label_123; } jj_consume_token(COMMA); ID(); } jj_consume_token(RPAREN); break; default: jj_la1[584] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jj_consume_token(RPAREN); switch (jj_nt.kind) { case CLUSTER: case ORDER: switch (jj_nt.kind) { case ORDER: jj_consume_token(ORDER); break; case CLUSTER: jj_consume_token(CLUSTER); break; default: jj_la1[585] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jj_consume_token(BY); jj_consume_token(LPAREN); ID(); label_124: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[586] = jj_gen; break label_124; } jj_consume_token(COMMA); ID(); } jj_consume_token(RPAREN); break; default: jj_la1[587] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTAccessibleByClause AccessibleByClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) AccessibleByClause */ ASTAccessibleByClause jjtn000 = new ASTAccessibleByClause(JJTACCESSIBLEBYCLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(ACCESSIBLE); jj_consume_token(BY); jj_consume_token(LPAREN); switch (jj_nt.kind) { case FUNCTION: case PROCEDURE: case TYPE: case PACKAGE: case TRIGGER: switch (jj_nt.kind) { case FUNCTION: jj_consume_token(FUNCTION); break; case PROCEDURE: jj_consume_token(PROCEDURE); break; case PACKAGE: jj_consume_token(PACKAGE); break; case TRIGGER: jj_consume_token(TRIGGER); break; case TYPE: jj_consume_token(TYPE); break; default: jj_la1[588] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[589] = jj_gen; ; } QualifiedName(); label_125: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[590] = jj_gen; break label_125; } jj_consume_token(COMMA); switch (jj_nt.kind) { case FUNCTION: case PROCEDURE: case TYPE: case PACKAGE: case TRIGGER: switch (jj_nt.kind) { case FUNCTION: jj_consume_token(FUNCTION); break; case PROCEDURE: jj_consume_token(PROCEDURE); break; case PACKAGE: jj_consume_token(PACKAGE); break; case TRIGGER: jj_consume_token(TRIGGER); break; case TYPE: jj_consume_token(TYPE); break; default: jj_la1[591] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[592] = jj_gen; ; } QualifiedName(); } jj_consume_token(RPAREN); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } // Copyright (C) 2002 Albert Tumanov /** * 2006-05-10 - Matthias Hendler - merged SIV and sourceforge sources */ // SRT * final public ASTTable Table() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) Table */ ASTTable jjtn000 = new ASTTable(JJTTABLE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(CREATE); switch (jj_nt.kind) { case DUPLICATED: case GLOBAL: case PRIVATE: case SHARDED: switch (jj_nt.kind) { case GLOBAL: case PRIVATE: switch (jj_nt.kind) { case GLOBAL: jj_consume_token(GLOBAL); break; case PRIVATE: jj_consume_token(PRIVATE); break; default: jj_la1[593] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jj_consume_token(TEMPORARY); break; case SHARDED: jj_consume_token(SHARDED); break; case DUPLICATED: jj_consume_token(DUPLICATED); break; default: jj_la1[594] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[595] = jj_gen; ; } jj_consume_token(TABLE); ObjectNameDeclaration(); switch (jj_nt.kind) { case SHARING: jj_consume_token(SHARING); jj_consume_token(ASSIGN); switch (jj_nt.kind) { case METADATA: jj_consume_token(METADATA); break; case DATA: jj_consume_token(DATA); break; case EXTENDED: jj_consume_token(EXTENDED); jj_consume_token(DATA); break; case NONE: jj_consume_token(NONE); break; default: jj_la1[596] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[597] = jj_gen; ; } switch (jj_nt.kind) { case OF: jj_consume_token(OF); Datatype(); switch (jj_nt.kind) { case NOT: case SUBSTITUTABLE: switch (jj_nt.kind) { case NOT: jj_consume_token(NOT); break; default: jj_la1[598] = jj_gen; ; } jj_consume_token(SUBSTITUTABLE); jj_consume_token(AT); jj_consume_token(ALL); KEYWORD("LEVELS"); break; default: jj_la1[599] = jj_gen; ; } break; default: jj_la1[606] = jj_gen; switch (jj_nt.kind) { case LPAREN: jj_consume_token(LPAREN); if (jj_2_199(2)) { OutOfLineConstraint(); } else { switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: TableColumn(); break; default: jj_la1[600] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } label_126: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[601] = jj_gen; break label_126; } jj_consume_token(COMMA); if (jj_2_200(2)) { OutOfLineConstraint(); } else { switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: TableColumn(); break; default: jj_la1[602] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } } jj_consume_token(RPAREN); break; default: jj_la1[603] = jj_gen; ; } if (jj_2_201(4)) { jj_consume_token(ON); jj_consume_token(COMMIT); switch (jj_nt.kind) { case DROP: jj_consume_token(DROP); break; case PRESERVE: jj_consume_token(PRESERVE); break; default: jj_la1[604] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jj_consume_token(DEFINITION); } else { ; } if (jj_2_202(4)) { jj_consume_token(ON); jj_consume_token(COMMIT); switch (jj_nt.kind) { case DELETE: jj_consume_token(DELETE); break; case PRESERVE: jj_consume_token(PRESERVE); break; default: jj_la1[605] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jj_consume_token(ROWS); } else { ; } } Skip2NextOccurrence(";"); switch (jj_nt.kind) { case SEMICOLON: jj_consume_token(SEMICOLON); break; default: jj_la1[607] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTTableColumn TableColumn() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) TableColumn */ ASTTableColumn jjtn000 = new ASTTableColumn(JJTTABLECOLUMN); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { ID(); Datatype(); switch (jj_nt.kind) { case _DEFAULT: case GENERATED: switch (jj_nt.kind) { case _DEFAULT: jj_consume_token(_DEFAULT); switch (jj_nt.kind) { case ON: jj_consume_token(ON); jj_consume_token(NULL); break; default: jj_la1[608] = jj_gen; ; } if (jj_2_203(2147483647)) { FunctionCall(); } else { switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: UnaryExpression(true); break; default: jj_la1[609] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } break; default: jj_la1[613] = jj_gen; if (jj_2_204(2)) { jj_consume_token(GENERATED); switch (jj_nt.kind) { case BY: case IDENTIFIER: switch (jj_nt.kind) { case BY: jj_consume_token(BY); jj_consume_token(_DEFAULT); switch (jj_nt.kind) { case ON: jj_consume_token(ON); jj_consume_token(NULL); break; default: jj_la1[610] = jj_gen; ; } break; case IDENTIFIER: KEYWORD("ALWAYS"); break; default: jj_la1[611] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[612] = jj_gen; ; } jj_consume_token(AS); KEYWORD("IDENTITY"); } else { jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } break; default: jj_la1[614] = jj_gen; ; } label_127: while (true) { switch (jj_nt.kind) { case CHECK: case NOT: case NULL: case UNIQUE: case WITH: case CONSTRAINT: case PRIMARY: case REFERENCES: case SCOPE: ; break; default: jj_la1[615] = jj_gen; break label_127; } InlineConstraint(); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTInlineConstraint InlineConstraint() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) InlineConstraint */ ASTInlineConstraint jjtn000 = new ASTInlineConstraint(JJTINLINECONSTRAINT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case CONSTRAINT: jj_consume_token(CONSTRAINT); ID(); break; default: jj_la1[616] = jj_gen; ; } switch (jj_nt.kind) { case NOT: case NULL: switch (jj_nt.kind) { case NOT: jj_consume_token(NOT); break; default: jj_la1[617] = jj_gen; ; } jj_consume_token(NULL); break; case UNIQUE: jj_consume_token(UNIQUE); jjtn000.setType(ConstraintType.UNIQUE); break; case PRIMARY: jj_consume_token(PRIMARY); jjtn000.setType(ConstraintType.PRIMARY); jj_consume_token(KEY); break; case CHECK: jj_consume_token(CHECK); jjtn000.setType(ConstraintType.CHECK); jj_consume_token(LPAREN); Condition(); jj_consume_token(RPAREN); break; case WITH: jj_consume_token(WITH); jj_consume_token(ROWID); break; case SCOPE: jj_consume_token(SCOPE); jj_consume_token(IS); if (jj_2_205(2)) { TableName(); jj_consume_token(DOT); } else { ; } Column(); break; case REFERENCES: ReferencesClause(); break; default: jj_la1[618] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } label_128: while (true) { switch (jj_nt.kind) { case DISABLE: case ENABLE: case USING: case INITIALLY: case DEFERRABLE: ; break; default: jj_la1[619] = jj_gen; break label_128; } ConstraintState(); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTOutOfLineConstraint OutOfLineConstraint() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) OutOfLineConstraint */ ASTOutOfLineConstraint jjtn000 = new ASTOutOfLineConstraint(JJTOUTOFLINECONSTRAINT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case CONSTRAINT: jj_consume_token(CONSTRAINT); ID(); break; default: jj_la1[620] = jj_gen; ; } switch (jj_nt.kind) { case UNIQUE: jj_consume_token(UNIQUE); jjtn000.setType(ConstraintType.UNIQUE); jj_consume_token(LPAREN); ID(); label_129: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[621] = jj_gen; break label_129; } jj_consume_token(COMMA); ID(); } jj_consume_token(RPAREN); break; case PRIMARY: jj_consume_token(PRIMARY); jjtn000.setType(ConstraintType.PRIMARY); jj_consume_token(KEY); jj_consume_token(LPAREN); ID(); label_130: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[622] = jj_gen; break label_130; } jj_consume_token(COMMA); ID(); } jj_consume_token(RPAREN); break; case FOREIGN: jj_consume_token(FOREIGN); jjtn000.setType(ConstraintType.FOREIGN); jj_consume_token(KEY); jj_consume_token(LPAREN); ID(); label_131: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[623] = jj_gen; break label_131; } jj_consume_token(COMMA); ID(); } jj_consume_token(RPAREN); ReferencesClause(); break; case CHECK: jj_consume_token(CHECK); jjtn000.setType(ConstraintType.CHECK); jj_consume_token(LPAREN); Condition(); jj_consume_token(RPAREN); break; default: jj_la1[624] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } label_132: while (true) { switch (jj_nt.kind) { case DISABLE: case ENABLE: case USING: case INITIALLY: case DEFERRABLE: ; break; default: jj_la1[625] = jj_gen; break label_132; } ConstraintState(); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public void ConstraintState() throws net.sourceforge.pmd.lang.ast.ParseException { switch (jj_nt.kind) { case USING: jj_consume_token(USING); jj_consume_token(INDEX); if (jj_2_206(2)) { jj_consume_token(IDENTIFIER); } else if (jj_2_207(2)) { jj_consume_token(LPAREN); jj_consume_token(CREATE); jj_consume_token(UNIQUE); jj_consume_token(INDEX); jj_consume_token(IDENTIFIER); jj_consume_token(ON); TableName(); jj_consume_token(LPAREN); Column(); label_133: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[626] = jj_gen; break label_133; } jj_consume_token(COMMA); Column(); } jj_consume_token(RPAREN); jj_consume_token(RPAREN); } else { label_134: while (true) { switch (jj_nt.kind) { case PCTFREE: case IDENTIFIER: ; break; default: jj_la1[627] = jj_gen; break label_134; } switch (jj_nt.kind) { case PCTFREE: jj_consume_token(PCTFREE); NumericLiteral(); break; case IDENTIFIER: jj_consume_token(IDENTIFIER); switch (jj_nt.kind) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; default: jj_la1[628] = jj_gen; Skip2NextTerminator("(",")"); } break; default: jj_la1[629] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } } break; case INITIALLY: jj_consume_token(INITIALLY); switch (jj_nt.kind) { case IMMEDIATE: jj_consume_token(IMMEDIATE); break; case DEFERRED: jj_consume_token(DEFERRED); break; default: jj_la1[630] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; case DEFERRABLE: jj_consume_token(DEFERRABLE); break; case ENABLE: jj_consume_token(ENABLE); break; case DISABLE: jj_consume_token(DISABLE); break; default: jj_la1[631] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } final public ASTReferencesClause ReferencesClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ReferencesClause */ ASTReferencesClause jjtn000 = new ASTReferencesClause(JJTREFERENCESCLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(REFERENCES); ObjectNameDeclaration(); switch (jj_nt.kind) { case LPAREN: jj_consume_token(LPAREN); ID(); label_135: while (true) { if (jj_2_208(2)) { ; } else { break label_135; } jj_consume_token(COMMA); ID(); } jj_consume_token(RPAREN); break; default: jj_la1[632] = jj_gen; ; } switch (jj_nt.kind) { case ON: jj_consume_token(ON); jj_consume_token(DELETE); switch (jj_nt.kind) { case CASCADE: jj_consume_token(CASCADE); break; case SET: jj_consume_token(SET); jj_consume_token(NULL); break; default: jj_la1[633] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[634] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTView View() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) View */ ASTView jjtn000 = new ASTView(JJTVIEW); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; try { jj_consume_token(CREATE); switch (jj_nt.kind) { case OR: jj_consume_token(OR); KEYWORD("REPLACE"); break; default: jj_la1[635] = jj_gen; ; } switch (jj_nt.kind) { case FORCE: case NO: switch (jj_nt.kind) { case NO: jj_consume_token(NO); break; default: jj_la1[636] = jj_gen; ; } jj_consume_token(FORCE); break; default: jj_la1[637] = jj_gen; ; } jj_consume_token(VIEW); simpleNode = ObjectNameDeclaration(); switch (jj_nt.kind) { case LPAREN: jj_consume_token(LPAREN); ViewColumn(); label_136: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[638] = jj_gen; break label_136; } jj_consume_token(COMMA); ViewColumn(); } jj_consume_token(RPAREN); break; default: jj_la1[639] = jj_gen; ; } jj_consume_token(AS); Subquery(); switch (jj_nt.kind) { case WITH: SubqueryRestrictionClause(); break; default: jj_la1[640] = jj_gen; ; } switch (jj_nt.kind) { case SEMICOLON: jj_consume_token(SEMICOLON); break; case SLASH: jj_consume_token(SLASH); break; default: jj_la1[641] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(simpleNode.getImage()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTSynonym Synonym() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) Synonym */ ASTSynonym jjtn000 = new ASTSynonym(JJTSYNONYM); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; try { jj_consume_token(CREATE); switch (jj_nt.kind) { case OR: jj_consume_token(OR); KEYWORD("REPLACE"); break; default: jj_la1[642] = jj_gen; ; } switch (jj_nt.kind) { case PUBLIC: jj_consume_token(PUBLIC); break; default: jj_la1[643] = jj_gen; ; } jj_consume_token(SYNONYM); simpleNode = ObjectNameDeclaration(); jj_consume_token(FOR); ObjectNameDeclaration(); switch (jj_nt.kind) { case SEMICOLON: jj_consume_token(SEMICOLON); break; case SLASH: jj_consume_token(SLASH); break; default: jj_la1[644] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(simpleNode.getImage()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTDirectory Directory() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) Directory */ ASTDirectory jjtn000 = new ASTDirectory(JJTDIRECTORY); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; try { jj_consume_token(CREATE); switch (jj_nt.kind) { case OR: jj_consume_token(OR); KEYWORD("REPLACE"); break; default: jj_la1[645] = jj_gen; ; } jj_consume_token(DIRECTORY); simpleNode = ObjectNameDeclaration(); jj_consume_token(AS); StringLiteral(); switch (jj_nt.kind) { case SEMICOLON: jj_consume_token(SEMICOLON); break; case SLASH: jj_consume_token(SLASH); break; default: jj_la1[646] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(simpleNode.getImage()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTDatabaseLink DatabaseLink() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) DatabaseLink */ ASTDatabaseLink jjtn000 = new ASTDatabaseLink(JJTDATABASELINK); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; try { jj_consume_token(CREATE); switch (jj_nt.kind) { case SHARED: jj_consume_token(SHARED); break; default: jj_la1[647] = jj_gen; ; } switch (jj_nt.kind) { case PUBLIC: jj_consume_token(PUBLIC); break; default: jj_la1[648] = jj_gen; ; } jj_consume_token(DATABASE); jj_consume_token(LINK); simpleNode = ObjectNameDeclaration(); switch (jj_nt.kind) { case CONNECT: jj_consume_token(CONNECT); jj_consume_token(TO); switch (jj_nt.kind) { case CURRENT_USER: jj_consume_token(CURRENT_USER); break; case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case LANGUAGE: case INLINE: case AT: case SUBTYPE: case TYPE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BODY: case BULK: case BYTE: case CASCADE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case DATA: case DAY: case DEFINITION: case DISABLE: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NEW: case NEXT: case NO: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case OBJECT: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PERCENT: case PRESERVE: case PRIMARY: case PRIVATE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRUE: case UNDER: case USING: case YES: case A: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case 493: UnqualifiedID(); jj_consume_token(IDENTIFIED); jj_consume_token(BY); UnqualifiedID(); jj_consume_token(AUTHENTICATED); jj_consume_token(BY); UnqualifiedID(); jj_consume_token(IDENTIFIED); jj_consume_token(BY); UnqualifiedID(); break; default: jj_la1[649] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case LANGUAGE: case INLINE: case AT: case SUBTYPE: case TYPE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BODY: case BULK: case BYTE: case CASCADE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case DATA: case DAY: case DEFINITION: case DISABLE: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NEW: case NEXT: case NO: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case OBJECT: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PERCENT: case PRESERVE: case PRIMARY: case PRIVATE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRUE: case UNDER: case USING: case YES: case A: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case 493: UnqualifiedID(); jj_consume_token(IDENTIFIED); jj_consume_token(BY); UnqualifiedID(); break; default: jj_la1[650] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case USING: jj_consume_token(USING); StringLiteral(); break; default: jj_la1[651] = jj_gen; ; } switch (jj_nt.kind) { case SEMICOLON: jj_consume_token(SEMICOLON); break; case SLASH: jj_consume_token(SLASH); break; default: jj_la1[652] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(simpleNode.getImage()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTViewColumn ViewColumn() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ViewColumn */ ASTViewColumn jjtn000 = new ASTViewColumn(JJTVIEWCOLUMN); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { ID(); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/COMMENT.html#GUID-65F447C4-6914-4823-9691-F15D52DB74D7 */ final public ASTComment Comment() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) Comment */ ASTComment jjtn000 = new ASTComment(JJTCOMMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { if (isKeyword("COMMENT")) { } else { jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } KEYWORD("COMMENT"); jjtn000.setImage(token.getImage()); jj_consume_token(ON); switch (jj_nt.kind) { case TABLE: case INDEXTYPE: case OPERATOR: switch (jj_nt.kind) { case TABLE: jj_consume_token(TABLE); break; case OPERATOR: jj_consume_token(OPERATOR); break; case INDEXTYPE: jj_consume_token(INDEXTYPE); break; default: jj_la1[653] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } if (jj_2_209(2)) { ID(); jj_consume_token(DOT); } else { ; } ID(); break; case COLUMN: jj_consume_token(COLUMN); if (jj_2_210(2147483647)) { ID(); jj_consume_token(DOT); } else { ; } ID(); jj_consume_token(DOT); ID(); break; default: jj_la1[654] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jj_consume_token(IS); StringLiteral(); switch (jj_nt.kind) { case SEMICOLON: jj_consume_token(SEMICOLON); break; case SLASH: jj_consume_token(SLASH); break; default: jj_la1[655] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTTypeMethod TypeMethod() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) TypeMethod */ ASTTypeMethod jjtn000 = new ASTTypeMethod(JJTTYPEMETHOD); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { getToken(1); //System.err.println("typeMethod: Result of getToken(1) is \"" + starttoken.getImage() + "\"" ); label_137: while (true) { switch (jj_nt.kind) { case NOT: case FINAL: case INSTANTIABLE: case OVERRIDING: ; break; default: jj_la1[656] = jj_gen; break label_137; } switch (jj_nt.kind) { case NOT: jj_consume_token(NOT); break; default: jj_la1[657] = jj_gen; ; } switch (jj_nt.kind) { case OVERRIDING: jj_consume_token(OVERRIDING); break; case INSTANTIABLE: jj_consume_token(INSTANTIABLE); break; case FINAL: jj_consume_token(FINAL); break; default: jj_la1[658] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } switch (jj_nt.kind) { case ORDER: case MAP: switch (jj_nt.kind) { case MAP: jj_consume_token(MAP); break; case ORDER: jj_consume_token(ORDER); break; default: jj_la1[659] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[660] = jj_gen; ; } switch (jj_nt.kind) { case CONSTRUCTOR: jj_consume_token(CONSTRUCTOR); break; case MEMBER: jj_consume_token(MEMBER); break; case STATIC: jj_consume_token(STATIC); break; default: jj_la1[661] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } MethodDeclarator(); switch (jj_nt.kind) { case DETERMINISTIC: jj_consume_token(DETERMINISTIC); break; default: jj_la1[662] = jj_gen; ; } switch (jj_nt.kind) { case PARALLEL_ENABLE: jj_consume_token(PARALLEL_ENABLE); break; default: jj_la1[663] = jj_gen; ; } switch (jj_nt.kind) { case PIPELINED: jj_consume_token(PIPELINED); break; default: jj_la1[664] = jj_gen; ; } switch (jj_nt.kind) { case RESULT_CACHE: jj_consume_token(RESULT_CACHE); break; default: jj_la1[665] = jj_gen; ; } switch (jj_nt.kind) { case AS: case IS: switch (jj_nt.kind) { case IS: jj_consume_token(IS); break; case AS: jj_consume_token(AS); break; default: jj_la1[666] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case LANGUAGE: case EXTERNAL: CallSpecTail(); switch (jj_nt.kind) { case SEMICOLON: jj_consume_token(SEMICOLON); break; default: jj_la1[667] = jj_gen; ; } break; case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case BEGIN: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case CURSOR: case DESC: case DROP: case EXCLUSIVE: case FETCH: case FUNCTION: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case ORDER: case PROCEDURE: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRAGMA: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case CURSOR: case DESC: case DROP: case EXCLUSIVE: case FETCH: case FUNCTION: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case ORDER: case PROCEDURE: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRAGMA: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: DeclarativeSection(); break; default: jj_la1[668] = jj_gen; ; } jj_consume_token(BEGIN); label_138: while (true) { switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case 48: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case BEGIN: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DECLARE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case FOR: case GOTO: case HAVING: case IF: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SELECT: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PIPE: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRAGMA: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SET: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case CC_ERROR: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: ; break; default: jj_la1[669] = jj_gen; break label_138; } Statement(); } switch (jj_nt.kind) { case EXCEPTION: jj_consume_token(EXCEPTION); label_139: while (true) { ExceptionHandler(); switch (jj_nt.kind) { case WHEN: ; break; default: jj_la1[670] = jj_gen; break label_139; } } break; default: jj_la1[671] = jj_gen; ; } jj_consume_token(END); switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: ID(); break; default: jj_la1[672] = jj_gen; ; } jj_consume_token(SEMICOLON); break; default: jj_la1[673] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[674] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTTypeSpecification TypeSpecification() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) TypeSpecification */ ASTTypeSpecification jjtn000 = new ASTTypeSpecification(JJTTYPESPECIFICATION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; try { switch (jj_nt.kind) { case CREATE: jj_consume_token(CREATE); switch (jj_nt.kind) { case OR: jj_consume_token(OR); KEYWORD("REPLACE"); break; default: jj_la1[675] = jj_gen; ; } switch (jj_nt.kind) { case EDITIONABLE: case NONEDITIONABLE: switch (jj_nt.kind) { case EDITIONABLE: jj_consume_token(EDITIONABLE); break; case NONEDITIONABLE: jj_consume_token(NONEDITIONABLE); break; default: jj_la1[676] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[677] = jj_gen; ; } break; default: jj_la1[678] = jj_gen; ; } jj_consume_token(TYPE); simpleNode = ObjectNameDeclaration(); switch (jj_nt.kind) { case FORCE: jj_consume_token(FORCE); break; default: jj_la1[679] = jj_gen; ; } if (jj_2_211(2)) { jj_consume_token(OID); jj_consume_token(STRING_LITERAL); } else { ; } label_140: while (true) { if (jj_2_212(2)) { ; } else { break label_140; } switch (jj_nt.kind) { case AUTHID: jj_consume_token(AUTHID); switch (jj_nt.kind) { case CURRENT_USER: jj_consume_token(CURRENT_USER); break; case DEFINER: jj_consume_token(DEFINER); break; default: jj_la1[680] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; case ACCESSIBLE: AccessibleByClause(); break; default: jj_la1[681] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } switch (jj_nt.kind) { case AS: case IS: case UNDER: switch (jj_nt.kind) { case UNDER: jj_consume_token(UNDER); ObjectNameDeclaration(); break; default: jj_la1[688] = jj_gen; if (jj_2_213(2)) { switch (jj_nt.kind) { case IS: jj_consume_token(IS); break; case AS: jj_consume_token(AS); break; default: jj_la1[682] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jj_consume_token(OBJECT); } else if (jj_2_214(2)) { switch (jj_nt.kind) { case IS: jj_consume_token(IS); break; case AS: jj_consume_token(AS); break; default: jj_la1[683] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jj_consume_token(OPAQUE); jj_consume_token(VARYING); jj_consume_token(LPAREN); jj_consume_token(STAR); jj_consume_token(RPAREN); jj_consume_token(USING); jj_consume_token(LIBRARY); switch (jj_nt.kind) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; case QUOTED_LITERAL: jj_consume_token(QUOTED_LITERAL); break; case STRING_LITERAL: StringLiteral(); break; default: jj_la1[684] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case DOT: jj_consume_token(DOT); switch (jj_nt.kind) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; case QUOTED_LITERAL: jj_consume_token(QUOTED_LITERAL); break; case STRING_LITERAL: StringLiteral(); break; default: jj_la1[685] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[686] = jj_gen; ; } } else if (jj_2_215(2)) { switch (jj_nt.kind) { case IS: jj_consume_token(IS); break; case AS: jj_consume_token(AS); break; default: jj_la1[687] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } CollectionTypeName(); jj_consume_token(OF); Datatype(); } else { jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } break; default: jj_la1[689] = jj_gen; ; } if (jj_2_216(8)) { jj_consume_token(EXTERNAL); jj_consume_token(IDENTIFIER); jj_consume_token(IDENTIFIER); jj_consume_token(LANGUAGE); jj_consume_token(JAVA); jj_consume_token(USING); jj_consume_token(IDENTIFIER); } else { ; } switch (jj_nt.kind) { case WRAPPED: WrappedObject(); break; default: jj_la1[690] = jj_gen; ; } switch (jj_nt.kind) { case LPAREN: jj_consume_token(LPAREN); label_141: while (true) { switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case ORDER: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRAGMA: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: ; break; default: jj_la1[691] = jj_gen; break label_141; } if (jj_2_217(2)) { TypeMethod(); } else { switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: AttributeDeclaration(); break; case PRAGMA: PragmaClause(); break; default: jj_la1[692] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } } label_142: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[693] = jj_gen; break label_142; } jj_consume_token(COMMA); switch (jj_nt.kind) { case NOT: case ORDER: case CONSTRUCTOR: case FINAL: case INSTANTIABLE: case MAP: case MEMBER: case OVERRIDING: case STATIC: TypeMethod(); break; default: jj_la1[694] = jj_gen; if (jj_2_218(2)) { AttributeDeclaration(); } else { switch (jj_nt.kind) { case PRAGMA: PragmaClause(); break; default: jj_la1[695] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } } } jj_consume_token(RPAREN); break; default: jj_la1[696] = jj_gen; ; } label_143: while (true) { switch (jj_nt.kind) { case NOT: case NULL: case FINAL: case INSTANTIABLE: ; break; default: jj_la1[697] = jj_gen; break label_143; } switch (jj_nt.kind) { case NOT: jj_consume_token(NOT); break; default: jj_la1[698] = jj_gen; ; } switch (jj_nt.kind) { case FINAL: jj_consume_token(FINAL); break; case INSTANTIABLE: jj_consume_token(INSTANTIABLE); break; case NULL: jj_consume_token(NULL); break; default: jj_la1[699] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } label_144: while (true) { switch (jj_nt.kind) { case ALTER: ; break; default: jj_la1[700] = jj_gen; break label_144; } AlterTypeSpec(); } switch (jj_nt.kind) { case SEMICOLON: case SLASH: switch (jj_nt.kind) { case SEMICOLON: jj_consume_token(SEMICOLON); break; case SLASH: jj_consume_token(SLASH); break; default: jj_la1[701] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } label_145: while (true) { switch (jj_nt.kind) { case ALTER: ; break; default: jj_la1[702] = jj_gen; break label_145; } AlterTypeSpec(); switch (jj_nt.kind) { case SLASH: jj_consume_token(SLASH); break; case SEMICOLON: jj_consume_token(SEMICOLON); break; default: jj_la1[703] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } break; default: jj_la1[704] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(simpleNode.getImage()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTAlterTypeSpec AlterTypeSpec() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) AlterTypeSpec */ ASTAlterTypeSpec jjtn000 = new ASTAlterTypeSpec(JJTALTERTYPESPEC); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; try { jj_consume_token(ALTER); jj_consume_token(TYPE); simpleNode = QualifiedName(); label_146: while (true) { switch (jj_nt.kind) { case COMMA: case DROP: case ADD: case MODIFY: ; break; default: jj_la1[705] = jj_gen; break label_146; } switch (jj_nt.kind) { case COMMA: case ADD: case MODIFY: switch (jj_nt.kind) { case COMMA: jj_consume_token(COMMA); break; default: jj_la1[706] = jj_gen; ; } switch (jj_nt.kind) { case ADD: jj_consume_token(ADD); break; case MODIFY: jj_consume_token(MODIFY); break; default: jj_la1[707] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } label_147: while (true) { switch (jj_nt.kind) { case NOT: case ORDER: case CONSTRUCTOR: case FINAL: case INSTANTIABLE: case MAP: case MEMBER: case OVERRIDING: case STATIC: TypeMethod(); break; case ATTRIBUTE: jj_consume_token(ATTRIBUTE); label_148: while (true) { switch (jj_nt.kind) { case LPAREN: ; break; default: jj_la1[708] = jj_gen; break label_148; } jj_consume_token(LPAREN); } AttributeDeclaration(); label_149: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[709] = jj_gen; break label_149; } jj_consume_token(COMMA); AttributeDeclaration(); } label_150: while (true) { switch (jj_nt.kind) { case RPAREN: ; break; default: jj_la1[710] = jj_gen; break label_150; } jj_consume_token(RPAREN); } break; case LIMIT: jj_consume_token(LIMIT); NumericLiteral(); break; case ELEMENT: jj_consume_token(ELEMENT); jj_consume_token(TYPE); Datatype(); break; default: jj_la1[711] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case NOT: case ORDER: case ATTRIBUTE: case CONSTRUCTOR: case ELEMENT: case FINAL: case INSTANTIABLE: case LIMIT: case MAP: case MEMBER: case OVERRIDING: case STATIC: ; break; default: jj_la1[712] = jj_gen; break label_147; } } break; case DROP: jj_consume_token(DROP); label_151: while (true) { switch (jj_nt.kind) { case ATTRIBUTE: jj_consume_token(ATTRIBUTE); label_152: while (true) { switch (jj_nt.kind) { case LPAREN: ; break; default: jj_la1[713] = jj_gen; break label_152; } jj_consume_token(LPAREN); } Attribute(); label_153: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[714] = jj_gen; break label_153; } jj_consume_token(COMMA); Attribute(); } label_154: while (true) { switch (jj_nt.kind) { case RPAREN: ; break; default: jj_la1[715] = jj_gen; break label_154; } jj_consume_token(RPAREN); } break; case NOT: case ORDER: case CONSTRUCTOR: case FINAL: case INSTANTIABLE: case MAP: case MEMBER: case OVERRIDING: case STATIC: TypeMethod(); break; default: jj_la1[716] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case NOT: case ORDER: case ATTRIBUTE: case CONSTRUCTOR: case FINAL: case INSTANTIABLE: case MAP: case MEMBER: case OVERRIDING: case STATIC: ; break; default: jj_la1[717] = jj_gen; break label_151; } } break; default: jj_la1[718] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } switch (jj_nt.kind) { case IDENTIFIER: KEYWORD("REPLACE"); label_155: while (true) { if (jj_2_219(2)) { ; } else { break label_155; } switch (jj_nt.kind) { case AUTHID: jj_consume_token(AUTHID); switch (jj_nt.kind) { case CURRENT_USER: jj_consume_token(CURRENT_USER); break; case DEFINER: jj_consume_token(DEFINER); break; default: jj_la1[719] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; case ACCESSIBLE: AccessibleByClause(); break; default: jj_la1[720] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } switch (jj_nt.kind) { case IS: jj_consume_token(IS); break; case AS: jj_consume_token(AS); break; default: jj_la1[721] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jj_consume_token(OBJECT); jj_consume_token(LPAREN); if (jj_2_220(2)) { TypeMethod(); } else { switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: AttributeDeclaration(); break; default: jj_la1[722] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } label_156: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[723] = jj_gen; break label_156; } jj_consume_token(COMMA); if (jj_2_221(2)) { TypeMethod(); } else { switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: AttributeDeclaration(); break; default: jj_la1[724] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } } jj_consume_token(RPAREN); break; default: jj_la1[725] = jj_gen; ; } label_157: while (true) { switch (jj_nt.kind) { case NOT: case NULL: case FINAL: case INSTANTIABLE: ; break; default: jj_la1[726] = jj_gen; break label_157; } switch (jj_nt.kind) { case NOT: jj_consume_token(NOT); break; default: jj_la1[727] = jj_gen; ; } switch (jj_nt.kind) { case FINAL: jj_consume_token(FINAL); break; case INSTANTIABLE: jj_consume_token(INSTANTIABLE); break; case NULL: jj_consume_token(NULL); break; default: jj_la1[728] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } switch (jj_nt.kind) { case CASCADE: case INVALIDATE: switch (jj_nt.kind) { case INVALIDATE: jj_consume_token(INVALIDATE); break; case CASCADE: jj_consume_token(CASCADE); label_158: while (true) { switch (jj_nt.kind) { case NOT: case CONVERT: case INCLUDING: ; break; default: jj_la1[729] = jj_gen; break label_158; } switch (jj_nt.kind) { case NOT: case INCLUDING: switch (jj_nt.kind) { case NOT: jj_consume_token(NOT); break; default: jj_la1[730] = jj_gen; ; } jj_consume_token(INCLUDING); jj_consume_token(TABLE); jj_consume_token(DATA); break; case CONVERT: jj_consume_token(CONVERT); jj_consume_token(TO); jj_consume_token(SUBSTITUTABLE); break; default: jj_la1[731] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } switch (jj_nt.kind) { case EXCEPTIONS: case FORCE: switch (jj_nt.kind) { case FORCE: jj_consume_token(FORCE); break; default: jj_la1[732] = jj_gen; ; } jj_consume_token(EXCEPTIONS); jj_consume_token(INTO); QualifiedName(); break; default: jj_la1[733] = jj_gen; ; } break; default: jj_la1[734] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[735] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(simpleNode.getImage()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /* ASTTypeBody TypeBody() : { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken name=null; } { [ [ ]] (LOOKAHEAD(2) ID()".")? name=ID() ( ( WrappedObject() ) | ( ( | ) [ DeclarativeSection() ] //SRT 20110524 Allow PLDOc in Type Bodies [ (Statement())* [ (ExceptionHandler())+] ] [ID()] ";" ) ) } */ /** * Method **/ final public ASTAttributeDeclaration AttributeDeclaration() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) AttributeDeclaration */ ASTAttributeDeclaration jjtn000 = new ASTAttributeDeclaration(JJTATTRIBUTEDECLARATION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; try { simpleNode = ID(); Datatype(); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(simpleNode.getImage()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTAttribute Attribute() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) Attribute */ ASTAttribute jjtn000 = new ASTAttribute(JJTATTRIBUTE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null; try { simpleNode = ID(); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(simpleNode.getImage()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /* This was quick cut from PRAGMA */ final public ASTPragmaClause PragmaClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) PragmaClause */ ASTPragmaClause jjtn000 = new ASTPragmaClause(JJTPRAGMACLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(PRAGMA); switch (jj_nt.kind) { case SERIALLY_REUSABLE: jj_consume_token(SERIALLY_REUSABLE); break; case AUTONOMOUS_TRANSACTION: jj_consume_token(AUTONOMOUS_TRANSACTION); break; case RESTRICT_REFERENCES: jj_consume_token(RESTRICT_REFERENCES); jj_consume_token(LPAREN); ID(); label_159: while (true) { jj_consume_token(COMMA); switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: ID(); break; case STRING_LITERAL: StringLiteral(); break; default: jj_la1[736] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[737] = jj_gen; break label_159; } } jj_consume_token(RPAREN); break; case EXCEPTION_INIT: jj_consume_token(EXCEPTION_INIT); jj_consume_token(LPAREN); jj_consume_token(IDENTIFIER); jj_consume_token(COMMA); switch (jj_nt.kind) { case PLUSSIGN: case MINUSSIGN: switch (jj_nt.kind) { case PLUSSIGN: jj_consume_token(PLUSSIGN); break; case MINUSSIGN: jj_consume_token(MINUSSIGN); break; default: jj_la1[738] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[739] = jj_gen; ; } NumericLiteral(); jj_consume_token(RPAREN); break; case INTERFACE: jj_consume_token(INTERFACE); jj_consume_token(LPAREN); jj_consume_token(IDENTIFIER); jj_consume_token(COMMA); jj_consume_token(IDENTIFIER); jj_consume_token(COMMA); NumericLiteral(); jj_consume_token(RPAREN); break; default: jj_la1[740] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * Trigger * Triggers are always outside of a package. * * 2006-05-17 - Matthias Hendler - added */ /* 11g Trigger Syntax create_trigger : CREATE [OR REPLACE] TRIGGER [schema.]trigger ( simple_dml_trigger | compound_dml_trigger | non_dml_trigger ) [ FOLLOWS ( [schema.]trigger) ( , [schema.]trigger)* ] [ ENABLE | DISABLE ] ( WHEN ( trigger_condition ) trigger_body simple_dml_trigger : (BEFORE |AFTER | INSTEAD OF) dml_event_clause [ referencing_clause ] [ FOR EACH ROW ] compound_dml_trigger : FOR dml_event_clause [ referencing_clause ] non_dml_trigger : (BEFORE> | ) (DDLEvent | database_event) ( OR (DDLEvent | database_event))* ON (DATABASE | [schema.]SCHEMA trigger_body : (plsql_block | compound_trigger_block | CALL routine_clause) dml_event_clause: ( DELETE | INSERT | UPDATE [ OF column (, column ) ] ) ON ( (schema.table | NESTED TABLE nested_table_column OF [schema.]view ) referencing_clause: REFERENCING (OLD AS old_alias | NEW AS new_alias | PARENT AS parent_alias )* compound_trigger_block : COMPOUND TRIGGER declare_section (timing_point_section)+ END [trigger_name] ; timing_point_section: ( BEFORE STATEMENT IS tps_body END BEFORE STATEMENT |BEFORE EACH ROW IS tps_body END BEFORE EACH ROW |AFTER STATEMENT IS tps_body END AFTER STATEMENT |AFTER EACH ROW IS tps_body END AFTER EACH ROW ) tps_body: (statement)+ (EXCEPTION exception_handler )* */ final public ASTTriggerUnit TriggerUnit() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) TriggerUnit */ ASTTriggerUnit jjtn000 = new ASTTriggerUnit(JJTTRIGGERUNIT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));PLSQLNode simpleNode = null ; try { switch (jj_nt.kind) { case CREATE: jj_consume_token(CREATE); switch (jj_nt.kind) { case OR: jj_consume_token(OR); KEYWORD("REPLACE"); break; default: jj_la1[741] = jj_gen; ; } switch (jj_nt.kind) { case EDITIONABLE: case NONEDITIONABLE: switch (jj_nt.kind) { case EDITIONABLE: jj_consume_token(EDITIONABLE); break; case NONEDITIONABLE: jj_consume_token(NONEDITIONABLE); break; default: jj_la1[742] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[743] = jj_gen; ; } break; default: jj_la1[744] = jj_gen; ; } jj_consume_token(TRIGGER); simpleNode = ObjectNameDeclaration(); switch (jj_nt.kind) { case BEFORE: jj_consume_token(BEFORE); break; case AFTER: jj_consume_token(AFTER); break; case INSTEADOF: jj_consume_token(INSTEADOF); break; case FOR: jj_consume_token(FOR); break; default: jj_la1[745] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case INSERT: case UPDATE: case DELETE: switch (jj_nt.kind) { case DELETE: jj_consume_token(DELETE); break; case INSERT: jj_consume_token(INSERT); break; case UPDATE: jj_consume_token(UPDATE); break; default: jj_la1[746] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } if (jj_2_222(6)) { jj_consume_token(OF); ID(); label_160: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[747] = jj_gen; break label_160; } jj_consume_token(COMMA); ID(); } } else { ; } break; default: jj_la1[748] = jj_gen; if (jj_2_223(1)) { NonDMLEvent(); } else { jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } label_161: while (true) { switch (jj_nt.kind) { case OR: ; break; default: jj_la1[749] = jj_gen; break label_161; } jj_consume_token(OR); switch (jj_nt.kind) { case INSERT: case UPDATE: case DELETE: switch (jj_nt.kind) { case DELETE: jj_consume_token(DELETE); break; case INSERT: jj_consume_token(INSERT); break; case UPDATE: jj_consume_token(UPDATE); break; default: jj_la1[750] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } if (jj_2_224(6)) { jj_consume_token(OF); ID(); label_162: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[751] = jj_gen; break label_162; } jj_consume_token(COMMA); ID(); } } else { ; } break; default: jj_la1[752] = jj_gen; if (jj_2_225(1)) { NonDMLEvent(); } else { jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } } jj_consume_token(ON); switch (jj_nt.kind) { case DATABASE: jj_consume_token(DATABASE); break; default: jj_la1[753] = jj_gen; if (jj_2_228(2)) { jj_consume_token(NESTED); jj_consume_token(TABLE); ID(); jj_consume_token(OF); if (jj_2_226(2)) { ID(); jj_consume_token(DOT); } else { ; } ID(); } else { switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: if (jj_2_227(2)) { ID(); jj_consume_token(DOT); } else { ; } ID(); break; default: jj_la1[754] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } } if (isKeyword("REFERENCING")) { KEYWORD("REFERENCING"); label_163: while (true) { switch (jj_nt.kind) { case NEW: case OLD: case PARENT: ; break; default: jj_la1[755] = jj_gen; break label_163; } switch (jj_nt.kind) { case OLD: jj_consume_token(OLD); break; case NEW: jj_consume_token(NEW); break; case PARENT: jj_consume_token(PARENT); break; default: jj_la1[756] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jj_consume_token(AS); ID(); } } else { ; } switch (jj_nt.kind) { case FOREACHROW: jj_consume_token(FOREACHROW); break; default: jj_la1[757] = jj_gen; ; } switch (jj_nt.kind) { case REVERSE: case FORWARD: case CROSSEDITION: switch (jj_nt.kind) { case REVERSE: case FORWARD: switch (jj_nt.kind) { case FORWARD: jj_consume_token(FORWARD); break; case REVERSE: jj_consume_token(REVERSE); break; default: jj_la1[758] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[759] = jj_gen; ; } jj_consume_token(CROSSEDITION); break; default: jj_la1[760] = jj_gen; ; } switch (jj_nt.kind) { case FOLLOWS: case PRECEDES: switch (jj_nt.kind) { case FOLLOWS: jj_consume_token(FOLLOWS); break; case PRECEDES: jj_consume_token(PRECEDES); break; default: jj_la1[761] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } if (jj_2_229(2)) { ID(); jj_consume_token(DOT); } else { ; } ID(); label_164: while (true) { switch (jj_nt.kind) { case COMMA: ; break; default: jj_la1[762] = jj_gen; break label_164; } jj_consume_token(COMMA); if (jj_2_230(2)) { ID(); jj_consume_token(DOT); } else { ; } ID(); } break; default: jj_la1[763] = jj_gen; ; } switch (jj_nt.kind) { case DISABLE: case ENABLE: switch (jj_nt.kind) { case ENABLE: jj_consume_token(ENABLE); break; case DISABLE: jj_consume_token(DISABLE); break; default: jj_la1[764] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } break; default: jj_la1[765] = jj_gen; ; } switch (jj_nt.kind) { case WHEN: jj_consume_token(WHEN); jj_consume_token(LPAREN); ConditionalOrExpression(); jj_consume_token(RPAREN); break; default: jj_la1[766] = jj_gen; ; } switch (jj_nt.kind) { case CALL: jj_consume_token(CALL); PrimaryExpression(); jj_consume_token(SEMICOLON); break; case COMPOUND: CompoundTriggerBlock(); break; case BEGIN: case DECLARE: Block(); jj_consume_token(SEMICOLON); break; default: jj_la1[767] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(simpleNode.getImage()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * https://docs.oracle.com/en/database/oracle/oracle-database/23/lnpls/CREATE-TRIGGER-statement.html#GUID-AF9E33F1-64D1-4382-A6A4-EC33C36F237B__GUID-2CD49225-7507-458B-8BDF-21C56AFC3527 * * Note: The DeclarativeSection (declare_section) before BEGIN is not documented, but might be valid. See #4270 */ final public ASTTriggerTimingPointSection TriggerTimingPointSection() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) TriggerTimingPointSection */ ASTTriggerTimingPointSection jjtn000 = new ASTTriggerTimingPointSection(JJTTRIGGERTIMINGPOINTSECTION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1));StringBuilder sb = new StringBuilder(); try { switch (jj_nt.kind) { case BEFORE: jj_consume_token(BEFORE); break; case AFTER: jj_consume_token(AFTER); break; case INSTEADOF: jj_consume_token(INSTEADOF); break; default: jj_la1[768] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } sb.append(token.getImage()) ; switch (jj_nt.kind) { case STATEMENT: jj_consume_token(STATEMENT); break; case EACH: jj_consume_token(EACH); jj_consume_token(ROW); break; default: jj_la1[769] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } sb.append(" "); sb.append(token.getImage()) ; jj_consume_token(IS); switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case CURSOR: case DESC: case DROP: case EXCLUSIVE: case FETCH: case FUNCTION: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case ORDER: case PROCEDURE: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRAGMA: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: DeclarativeSection(); break; default: jj_la1[770] = jj_gen; ; } jj_consume_token(BEGIN); label_165: while (true) { Statement(); switch (jj_nt.kind) { case LPAREN: case PLUSSIGN: case MINUSSIGN: case STAR: case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case 48: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case BEGIN: case CASE: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DECLARE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case FOR: case GOTO: case HAVING: case IF: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SELECT: case SHARE: case SQL: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case WITH: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEW_DOT: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PIPE: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRAGMA: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SET: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case CC_ERROR: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case UNSIGNED_NUMERIC_LITERAL: case CHARACTER_LITERAL: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case STRING_LITERAL: case 493: ; break; default: jj_la1[771] = jj_gen; break label_165; } } switch (jj_nt.kind) { case EXCEPTION: jj_consume_token(EXCEPTION); label_166: while (true) { ExceptionHandler(); switch (jj_nt.kind) { case WHEN: ; break; default: jj_la1[772] = jj_gen; break label_166; } } break; default: jj_la1[773] = jj_gen; ; } jj_consume_token(END); switch (jj_nt.kind) { case BEFORE: jj_consume_token(BEFORE); break; case AFTER: jj_consume_token(AFTER); break; case INSTEADOF: jj_consume_token(INSTEADOF); break; default: jj_la1[774] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } switch (jj_nt.kind) { case STATEMENT: jj_consume_token(STATEMENT); break; case EACH: jj_consume_token(EACH); jj_consume_token(ROW); break; default: jj_la1[775] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jj_consume_token(SEMICOLON); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(sb.toString()) ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * https://docs.oracle.com/en/database/oracle/oracle-database/23/lnpls/CREATE-TRIGGER-statement.html#GUID-AF9E33F1-64D1-4382-A6A4-EC33C36F237B__CJACFCDJ */ final public ASTCompoundTriggerBlock CompoundTriggerBlock() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) CompoundTriggerBlock */ ASTCompoundTriggerBlock jjtn000 = new ASTCompoundTriggerBlock(JJTCOMPOUNDTRIGGERBLOCK); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(COMPOUND); jj_consume_token(TRIGGER); switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case CURSOR: case DESC: case DROP: case EXCLUSIVE: case FETCH: case FUNCTION: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case ORDER: case PROCEDURE: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRAGMA: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case CC_IF: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: DeclarativeSection(); break; default: jj_la1[776] = jj_gen; ; } label_167: while (true) { TriggerTimingPointSection(); switch (jj_nt.kind) { case AFTER: case BEFORE: case INSTEADOF: ; break; default: jj_la1[777] = jj_gen; break label_167; } } jj_consume_token(END); switch (jj_nt.kind) { case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: ID(); break; default: jj_la1[778] = jj_gen; ; } jj_consume_token(SEMICOLON); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /* non_dml_trigger : (BEFORE> | ) (DDLEvent | database_event) ( OR (DDLEvent | database_event))* ON (DATABASE | [schema.]SCHEMA */ final public ASTNonDMLTrigger NonDMLTrigger() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) NonDMLTrigger */ ASTNonDMLTrigger jjtn000 = new ASTNonDMLTrigger(JJTNONDMLTRIGGER); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case BEFORE: jj_consume_token(BEFORE); break; case AFTER: jj_consume_token(AFTER); break; default: jj_la1[779] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } if (jj_2_231(1)) { DDLEvent(); } else { switch (jj_nt.kind) { case LOGOFF: case LOGON: case SERVERERROR: case SHUTDOWN: case STARTUP: case SUSPEND: DatabaseEvent(); break; default: jj_la1[780] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } label_168: while (true) { switch (jj_nt.kind) { case OR: ; break; default: jj_la1[781] = jj_gen; break label_168; } jj_consume_token(OR); if (jj_2_232(1)) { DDLEvent(); } else { switch (jj_nt.kind) { case LOGOFF: case LOGON: case SERVERERROR: case SHUTDOWN: case STARTUP: case SUSPEND: DatabaseEvent(); break; default: jj_la1[782] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } } jj_consume_token(ON); switch (jj_nt.kind) { case DATABASE: jj_consume_token(DATABASE); break; case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case SERIALLY_REUSABLE: case RESTRICT_REFERENCES: case EXCEPTION_INIT: case AUTONOMOUS_TRANSACTION: case LANGUAGE: case INLINE: case ALTER: case AND: case ANY: case ASC: case AT: case CHECK: case CLUSTER: case COMPRESS: case CREATE: case DESC: case DROP: case EXCLUSIVE: case FETCH: case GOTO: case HAVING: case INDEX: case INSERT: case INTERSECT: case IS: case LIKE: case LOCK: case MINUS: case MODE: case NOT: case NULL: case OPTION: case OR: case SHARE: case SUBTYPE: case THEN: case TO: case TYPE: case UPDATE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BINARY_INTEGER: case BODY: case BOOLEAN: case BULK: case BYTE: case CASCADE: case CHAR: case CHAR_BASE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTANT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case CURRVAL: case DATA: case DATE: case DAY: case DECIMAL: case DEFINITION: case DELETE: case DISABLE: case DO: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ELSIF: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FLOAT: case FORALL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTEGER: case INTERFACE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case LIMITED: case LONG: case LOOP: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MOD: case MONTH: case NAN: case NATURAL: case NATURALN: case NEW: case NEXT: case NEXTVAL: case NO: case NOCOPY: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case NUMBER: case BFILE_BASE: case BLOB_BASE: case CLOB_BASE: case DATE_BASE: case NUMBER_BASE: case OBJECT: case OCIROWID: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUT: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PCTFREE: case PERCENT: case PLS_INTEGER: case POSITIVE: case POSITIVEN: case PRESERVE: case PRIOR: case PRIMARY: case PRIVATE: case RAISE: case RANGE: case RAW: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case ROWTYPE: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SEPARATE: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SMALLINT: case SOME: case SPACE: case SQLCODE: case SQLERRM: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYNONYM: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRIGGER: case TRUE: case UI: case UNDER: case USING: case WHILE: case YES: case A: case VARCHAR: case VARCHAR2: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case SIGNTYPE: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case IDENTIFIER: case QUOTED_LITERAL: case JAVA_INTERFACE_CLASS: case 493: if (jj_2_233(2)) { ID(); jj_consume_token(DOT); } else { ; } jj_consume_token(SCHEMA); break; default: jj_la1[783] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/Types-of-SQL-Statements.html#GUID-FD9A8CB4-6B9A-44E5-B114-EFB8DA76FC88 */ final public ASTDDLEvent DDLEvent() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) DDLEvent */ ASTDDLEvent jjtn000 = new ASTDDLEvent(JJTDDLEVENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case ALTER: jj_consume_token(ALTER); break; case ANALYZE: jj_consume_token(ANALYZE); break; case ASSOCIATE: jj_consume_token(ASSOCIATE); jj_consume_token(STATISTICS); break; case AUDIT: jj_consume_token(AUDIT); break; default: jj_la1[784] = jj_gen; if (isKeyword("COMMENT")) { KEYWORD("COMMENT"); } else { switch (jj_nt.kind) { case CREATE: jj_consume_token(CREATE); break; case DISASSOCIATE: jj_consume_token(DISASSOCIATE); jj_consume_token(STATISTICS); break; case DROP: jj_consume_token(DROP); break; case GRANT: jj_consume_token(GRANT); break; case NOAUDIT: jj_consume_token(NOAUDIT); break; case RENAME: jj_consume_token(RENAME); break; case REVOKE: jj_consume_token(REVOKE); break; case TRUNCATE: jj_consume_token(TRUNCATE); break; default: jj_la1[785] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(token.getImage()) ; jjtn000.value = token ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTDatabaseEvent DatabaseEvent() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) DatabaseEvent */ ASTDatabaseEvent jjtn000 = new ASTDatabaseEvent(JJTDATABASEEVENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case STARTUP: jj_consume_token(STARTUP); break; case SHUTDOWN: jj_consume_token(SHUTDOWN); break; case LOGON: jj_consume_token(LOGON); break; case LOGOFF: jj_consume_token(LOGOFF); break; case SERVERERROR: jj_consume_token(SERVERERROR); break; case SUSPEND: jj_consume_token(SUSPEND); break; default: jj_la1[786] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(token.getImage()) ; jjtn000.value = token ; {if (true) return jjtn000 ;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTNonDMLEvent NonDMLEvent() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) NonDMLEvent */ ASTNonDMLEvent jjtn000 = new ASTNonDMLEvent(JJTNONDMLEVENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { if (jj_2_234(1)) { DDLEvent(); } else { switch (jj_nt.kind) { case LOGOFF: case LOGON: case SERVERERROR: case SHUTDOWN: case STARTUP: case SUSPEND: DatabaseEvent(); break; default: jj_la1[787] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /* When DBMS_METADATA.GET_DDL returns a trigger, it can come in 2 DDL statements. The first is the CREATE OR REPLACE TRIGER statement; the second is an ALTER TRIGGER statement, enabling or disabling the trigger. Unlike the ALTER TYPE, it does not seem to alter the structure of the object. */ final public void AlterTrigger() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) AlterTrigger */ ASTAlterTrigger jjtn000 = new ASTAlterTrigger(JJTALTERTRIGGER); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(ALTER); jj_consume_token(TRIGGER); Skip2NextTerminator(null,";"); jj_consume_token(SEMICOLON); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } } /** * PL/SQL Reserved words * * https://docs.oracle.com/en/database/oracle/oracle-database/18/lnpls/plsql-reserved-words-keywords.html * https://docs.oracle.com/en/database/oracle/oracle-database/23/lnpls/plsql-language-fundamentals.html#GUID-53E09662-5AD4-4530-8C6B-FF3F7C7430D5 * * Note: This production is not used, it is just here for reference of collecting all reserved words. * Reserved words _cannot_ be used a identifiers. */ final public void RESERVED_WORD() throws net.sourceforge.pmd.lang.ast.ParseException { switch (jj_nt.kind) { case ALL: jj_consume_token(ALL); break; case ALTER: jj_consume_token(ALTER); break; case AND: jj_consume_token(AND); break; case ANY: jj_consume_token(ANY); break; case AS: jj_consume_token(AS); break; case ASC: jj_consume_token(ASC); break; case AT: jj_consume_token(AT); break; case BEGIN: jj_consume_token(BEGIN); break; case BETWEEN: jj_consume_token(BETWEEN); break; case BY: jj_consume_token(BY); break; case CASE: jj_consume_token(CASE); break; case CHECK: jj_consume_token(CHECK); break; case CLUSTERS: jj_consume_token(CLUSTERS); break; case CLUSTER: jj_consume_token(CLUSTER); break; case COLAUTH: jj_consume_token(COLAUTH); break; case COLUMNS: jj_consume_token(COLUMNS); break; case COMPRESS: jj_consume_token(COMPRESS); break; case CONNECT: jj_consume_token(CONNECT); break; case CRASH: jj_consume_token(CRASH); break; case CREATE: jj_consume_token(CREATE); break; case CURSOR: jj_consume_token(CURSOR); break; case DECLARE: jj_consume_token(DECLARE); break; case _DEFAULT: jj_consume_token(_DEFAULT); break; case DESC: jj_consume_token(DESC); break; case DISTINCT: jj_consume_token(DISTINCT); break; case DROP: jj_consume_token(DROP); break; case ELSE: jj_consume_token(ELSE); break; case END: jj_consume_token(END); break; case EXCEPTION: jj_consume_token(EXCEPTION); break; case EXCLUSIVE: jj_consume_token(EXCLUSIVE); break; case FETCH: jj_consume_token(FETCH); break; case FOR: jj_consume_token(FOR); break; case FROM: jj_consume_token(FROM); break; case FUNCTION: jj_consume_token(FUNCTION); break; case GOTO: jj_consume_token(GOTO); break; case GRANT: jj_consume_token(GRANT); break; case GROUP: jj_consume_token(GROUP); break; case HAVING: jj_consume_token(HAVING); break; case IDENTIFIED: jj_consume_token(IDENTIFIED); break; case IF: jj_consume_token(IF); break; case IN: jj_consume_token(IN); break; case INDEX: jj_consume_token(INDEX); break; case INDEXES: jj_consume_token(INDEXES); break; case INSERT: jj_consume_token(INSERT); break; case INTERSECT: jj_consume_token(INTERSECT); break; case INTO: jj_consume_token(INTO); break; case IS: jj_consume_token(IS); break; case LIKE: jj_consume_token(LIKE); break; case LOCK: jj_consume_token(LOCK); break; case MINUS: jj_consume_token(MINUS); break; case MODE: jj_consume_token(MODE); break; case NOCOMPRESS: jj_consume_token(NOCOMPRESS); break; case NOT: jj_consume_token(NOT); break; case NOWAIT: jj_consume_token(NOWAIT); break; case NULL: jj_consume_token(NULL); break; case OF: jj_consume_token(OF); break; case ON: jj_consume_token(ON); break; case OPTION: jj_consume_token(OPTION); break; case OR: jj_consume_token(OR); break; case ORDER: jj_consume_token(ORDER); break; case OVERLAPS: jj_consume_token(OVERLAPS); break; case PROCEDURE: jj_consume_token(PROCEDURE); break; case PUBLIC: jj_consume_token(PUBLIC); break; case RESOURCE: jj_consume_token(RESOURCE); break; case REVOKE: jj_consume_token(REVOKE); break; case SELECT: jj_consume_token(SELECT); break; case SHARE: jj_consume_token(SHARE); break; case SIZE: jj_consume_token(SIZE); break; case SQL: jj_consume_token(SQL); break; case START: jj_consume_token(START); break; case SUBTYPE: jj_consume_token(SUBTYPE); break; case TABAUTH: jj_consume_token(TABAUTH); break; case TABLE: jj_consume_token(TABLE); break; case THEN: jj_consume_token(THEN); break; case TO: jj_consume_token(TO); break; case TYPE: jj_consume_token(TYPE); break; case UNION: jj_consume_token(UNION); break; case UNIQUE: jj_consume_token(UNIQUE); break; case UPDATE: jj_consume_token(UPDATE); break; case VALUES: jj_consume_token(VALUES); break; case VIEW: jj_consume_token(VIEW); break; case VIEWS: jj_consume_token(VIEWS); break; case WHEN: jj_consume_token(WHEN); break; case WHERE: jj_consume_token(WHERE); break; case WITH: jj_consume_token(WITH); break; default: jj_la1[788] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } final public void KEYWORD(String id) throws net.sourceforge.pmd.lang.ast.ParseException { if (!isKeyword(id)) { {if (true) throw new net.sourceforge.pmd.lang.ast.ParseException("Encountered \u005c"" + getToken(1).getImage() + "\u005c" " + "Was expecting: \u005c"" + id + "\u005c"").withLocation(token);} } jj_consume_token(IDENTIFIER); } /** * PL/SQL Keywords. They can be used as ordinary identifiers, but it is not recommended. * * https://docs.oracle.com/en/database/oracle/oracle-database/23/lnpls/plsql-language-fundamentals.html#GUID-53E09662-5AD4-4530-8C6B-FF3F7C7430D5 * * @deprecated This is only used to generate a node class */ // @Deprecated final public ASTKEYWORD_UNRESERVED KEYWORD_UNRESERVED() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) KEYWORD_UNRESERVED */ ASTKEYWORD_UNRESERVED jjtn000 = new ASTKEYWORD_UNRESERVED(JJTKEYWORD_UNRESERVED); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { KEYWORD_NOT_RESERVED(); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final private void KEYWORD_NOT_RESERVED() throws net.sourceforge.pmd.lang.ast.ParseException { switch (jj_nt.kind) { case 29: jj_consume_token(29); break; case 30: jj_consume_token(30); break; case 493: jj_consume_token(493); break; case 32: jj_consume_token(32); break; case 33: jj_consume_token(33); break; case 34: jj_consume_token(34); break; case 35: jj_consume_token(35); break; case 36: jj_consume_token(36); break; case 37: jj_consume_token(37); break; case 38: jj_consume_token(38); break; case 39: jj_consume_token(39); break; case 40: jj_consume_token(40); break; case 41: jj_consume_token(41); break; case 26: jj_consume_token(26); break; case 42: jj_consume_token(42); break; case 43: jj_consume_token(43); break; case 44: jj_consume_token(44); break; case FALSE: jj_consume_token(FALSE); break; case TRUE: jj_consume_token(TRUE); break; case A: jj_consume_token(A); break; case ADD: jj_consume_token(ADD); break; case AFTER: jj_consume_token(AFTER); break; case AGGREGATE: jj_consume_token(AGGREGATE); break; case ANALYZE: jj_consume_token(ANALYZE); break; case APPLY: jj_consume_token(APPLY); break; case ARRAY: jj_consume_token(ARRAY); break; case ASSOCIATE: jj_consume_token(ASSOCIATE); break; case AT: jj_consume_token(AT); break; case ATTACH: jj_consume_token(ATTACH); break; case ATTRIBUTE: jj_consume_token(ATTRIBUTE); break; case AUDIT: jj_consume_token(AUDIT); break; case AUTHENTICATED: jj_consume_token(AUTHENTICATED); break; case AUTHID: jj_consume_token(AUTHID); break; case BEFORE: jj_consume_token(BEFORE); break; case BFILE: jj_consume_token(BFILE); break; case BLOB: jj_consume_token(BLOB); break; case BODY: jj_consume_token(BODY); break; case BOTH: jj_consume_token(BOTH); break; case BULK: jj_consume_token(BULK); break; case BYTE: jj_consume_token(BYTE); break; case CALL: jj_consume_token(CALL); break; case CASCADE: jj_consume_token(CASCADE); break; case CAST: jj_consume_token(CAST); break; case CHAR_CS: jj_consume_token(CHAR_CS); break; case CHARACTER: jj_consume_token(CHARACTER); break; case CHARSETFORM: jj_consume_token(CHARSETFORM); break; case CHARSETID: jj_consume_token(CHARSETID); break; case CLOB: jj_consume_token(CLOB); break; case CLOSE: jj_consume_token(CLOSE); break; case COALESCE: jj_consume_token(COALESCE); break; case COLLECT: jj_consume_token(COLLECT); break; case COLUMN: jj_consume_token(COLUMN); break; case COMMIT: jj_consume_token(COMMIT); break; case COMPOUND: jj_consume_token(COMPOUND); break; case CONNECT_BY_ROOT: jj_consume_token(CONNECT_BY_ROOT); break; case CONSTRAINT: jj_consume_token(CONSTRAINT); break; case CONSTRUCTOR: jj_consume_token(CONSTRUCTOR); break; case CONTEXT: jj_consume_token(CONTEXT); break; case CONTINUE: jj_consume_token(CONTINUE); break; case CONVERT: jj_consume_token(CONVERT); break; case CROSS: jj_consume_token(CROSS); break; case CUBE: jj_consume_token(CUBE); break; case CURRENT: jj_consume_token(CURRENT); break; case CURRENT_USER: jj_consume_token(CURRENT_USER); break; case DATA: jj_consume_token(DATA); break; case DATABASE: jj_consume_token(DATABASE); break; case DAY: jj_consume_token(DAY); break; case DBTIMEZONE: jj_consume_token(DBTIMEZONE); break; case DEC: jj_consume_token(DEC); break; case DEFERRABLE: jj_consume_token(DEFERRABLE); break; case DEFERRED: jj_consume_token(DEFERRED); break; case DEFINER: jj_consume_token(DEFINER); break; case DEFINITION: jj_consume_token(DEFINITION); break; case DIRECTORY: jj_consume_token(DIRECTORY); break; case DISABLE: jj_consume_token(DISABLE); break; case DISASSOCIATE: jj_consume_token(DISASSOCIATE); break; case DOUBLE: jj_consume_token(DOUBLE); break; case DUPLICATED: jj_consume_token(DUPLICATED); break; case EACH: jj_consume_token(EACH); break; case ELEMENT: jj_consume_token(ELEMENT); break; case EMPTY: jj_consume_token(EMPTY); break; case ENABLE: jj_consume_token(ENABLE); break; case ESCAPE: jj_consume_token(ESCAPE); break; case EXCEPT: jj_consume_token(EXCEPT); break; case EXCEPTIONS: jj_consume_token(EXCEPTIONS); break; case EXIT: jj_consume_token(EXIT); break; case EXECUTE: jj_consume_token(EXECUTE); break; case EXTENDED: jj_consume_token(EXTENDED); break; case EXTENDS: jj_consume_token(EXTENDS); break; case EXTERNAL: jj_consume_token(EXTERNAL); break; case EXTRACT: jj_consume_token(EXTRACT); break; case FINAL: jj_consume_token(FINAL); break; case FOLLOWS: jj_consume_token(FOLLOWS); break; case FORCE: jj_consume_token(FORCE); break; case FOREIGN: jj_consume_token(FOREIGN); break; case FULL: jj_consume_token(FULL); break; case GENERATED: jj_consume_token(GENERATED); break; case GLOBAL: jj_consume_token(GLOBAL); break; case GROUPING: jj_consume_token(GROUPING); break; case HASH: jj_consume_token(HASH); break; case HEAP: jj_consume_token(HEAP); break; case HOUR: jj_consume_token(HOUR); break; case IMMEDIATE: jj_consume_token(IMMEDIATE); break; case INCLUDING: jj_consume_token(INCLUDING); break; case INDEXTYPE: jj_consume_token(INDEXTYPE); break; case INDICATOR: jj_consume_token(INDICATOR); break; case INDICES: jj_consume_token(INDICES); break; case INFINITE: jj_consume_token(INFINITE); break; case INITIALLY: jj_consume_token(INITIALLY); break; case INNER: jj_consume_token(INNER); break; case INSTANTIABLE: jj_consume_token(INSTANTIABLE); break; case INT: jj_consume_token(INT); break; case INTERVAL: jj_consume_token(INTERVAL); break; case INVALIDATE: jj_consume_token(INVALIDATE); break; case ISOLATION: jj_consume_token(ISOLATION); break; case JAVA: jj_consume_token(JAVA); break; case JOIN: jj_consume_token(JOIN); break; case KEY: jj_consume_token(KEY); break; case LANGUAGE: jj_consume_token(LANGUAGE); break; case LATERAL: jj_consume_token(LATERAL); break; case LEADING: jj_consume_token(LEADING); break; case LEFT: jj_consume_token(LEFT); break; case LENGTH: jj_consume_token(LENGTH); break; case LEVEL: jj_consume_token(LEVEL); break; case LIBRARY: jj_consume_token(LIBRARY); break; case LIKE2: jj_consume_token(LIKE2); break; case LIKE4: jj_consume_token(LIKE4); break; case LIKEC: jj_consume_token(LIKEC); break; case LIMIT: jj_consume_token(LIMIT); break; case LINK: jj_consume_token(LINK); break; case LOCAL: jj_consume_token(LOCAL); break; case LOGOFF: jj_consume_token(LOGOFF); break; case LOGON: jj_consume_token(LOGON); break; case MAP: jj_consume_token(MAP); break; case MAXLEN: jj_consume_token(MAXLEN); break; case MEMBER: jj_consume_token(MEMBER); break; case MERGE: jj_consume_token(MERGE); break; case METADATA: jj_consume_token(METADATA); break; case MINUTE: jj_consume_token(MINUTE); break; case MLSLABEL: jj_consume_token(MLSLABEL); break; case MODIFY: jj_consume_token(MODIFY); break; case MONTH: jj_consume_token(MONTH); break; case MULTISET: jj_consume_token(MULTISET); break; case NAME: jj_consume_token(NAME); break; case NAN: jj_consume_token(NAN); break; case NATURAL: jj_consume_token(NATURAL); break; case NCHAR: jj_consume_token(NCHAR); break; case NCHAR_CS: jj_consume_token(NCHAR_CS); break; case NCLOB: jj_consume_token(NCLOB); break; case NESTED: jj_consume_token(NESTED); break; case NEW: jj_consume_token(NEW); break; case NEXT: jj_consume_token(NEXT); break; case NO: jj_consume_token(NO); break; case NOAUDIT: jj_consume_token(NOAUDIT); break; case NOCYCLE: jj_consume_token(NOCYCLE); break; case NONE: jj_consume_token(NONE); break; case NULLS: jj_consume_token(NULLS); break; case NUMERIC: jj_consume_token(NUMERIC); break; case NVARCHAR2: jj_consume_token(NVARCHAR2); break; case OBJECT: jj_consume_token(OBJECT); break; case OFFSET: jj_consume_token(OFFSET); break; case OID: jj_consume_token(OID); break; case OLD: jj_consume_token(OLD); break; case ONLY: jj_consume_token(ONLY); break; case OPAQUE: jj_consume_token(OPAQUE); break; case OPEN: jj_consume_token(OPEN); break; case OPERATOR: jj_consume_token(OPERATOR); break; case ORGANIZATION: jj_consume_token(ORGANIZATION); break; case OTHERS: jj_consume_token(OTHERS); break; case OUTER: jj_consume_token(OUTER); break; case OVERRIDING: jj_consume_token(OVERRIDING); break; case PACKAGE: jj_consume_token(PACKAGE); break; case PARAMETERS: jj_consume_token(PARAMETERS); break; case PARENT: jj_consume_token(PARENT); break; case PARTITION: jj_consume_token(PARTITION); break; case PERCENT: jj_consume_token(PERCENT); break; case PRECISION: jj_consume_token(PRECISION); break; case PRESERVE: jj_consume_token(PRESERVE); break; case PRIMARY: jj_consume_token(PRIMARY); break; case PRIVATE: jj_consume_token(PRIVATE); break; case RANGE: jj_consume_token(RANGE); break; case READ: jj_consume_token(READ); break; case REAL: jj_consume_token(REAL); break; case RECORD: jj_consume_token(RECORD); break; case REFERENCES: jj_consume_token(REFERENCES); break; case REGEXP_LIKE: jj_consume_token(REGEXP_LIKE); break; case RELIES_ON: jj_consume_token(RELIES_ON); break; case RESULT: jj_consume_token(RESULT); break; case RETURN: jj_consume_token(RETURN); break; case RETURNING: jj_consume_token(RETURNING); break; case REVERSE: jj_consume_token(REVERSE); break; case RIGHT: jj_consume_token(RIGHT); break; case ROLLBACK: jj_consume_token(ROLLBACK); break; case ROLLUP: jj_consume_token(ROLLUP); break; case ROW: jj_consume_token(ROW); break; case ROWID: jj_consume_token(ROWID); break; case ROWNUM: jj_consume_token(ROWNUM); break; case ROWS: jj_consume_token(ROWS); break; case SAVE: jj_consume_token(SAVE); break; case SAVEPOINT: jj_consume_token(SAVEPOINT); break; case SCHEMA: jj_consume_token(SCHEMA); break; case SCOPE: jj_consume_token(SCOPE); break; case SECOND: jj_consume_token(SECOND); break; case SELF: jj_consume_token(SELF); break; case SERVERERROR: jj_consume_token(SERVERERROR); break; case SESSIONTIMEZONE: jj_consume_token(SESSIONTIMEZONE); break; case SETS: jj_consume_token(SETS); break; case SHARDED: jj_consume_token(SHARDED); break; case SHARED: jj_consume_token(SHARED); break; case SHARING: jj_consume_token(SHARING); break; case SHUTDOWN: jj_consume_token(SHUTDOWN); break; case SIBLINGS: jj_consume_token(SIBLINGS); break; case SOME: jj_consume_token(SOME); break; case SPACE: jj_consume_token(SPACE); break; case STARTUP: jj_consume_token(STARTUP); break; case STATEMENT: jj_consume_token(STATEMENT); break; case STATIC: jj_consume_token(STATIC); break; case STATISTICS: jj_consume_token(STATISTICS); break; case STRING: jj_consume_token(STRING); break; case STRUCT: jj_consume_token(STRUCT); break; case SUBMULTISET: jj_consume_token(SUBMULTISET); break; case SUBSTITUTABLE: jj_consume_token(SUBSTITUTABLE); break; case SUBTYPE: jj_consume_token(SUBTYPE); break; case SUCCESSFUL: jj_consume_token(SUCCESSFUL); break; case SUSPEND: jj_consume_token(SUSPEND); break; case TDO: jj_consume_token(TDO); break; case TEMPORARY: jj_consume_token(TEMPORARY); break; case TIES: jj_consume_token(TIES); break; case TIME: jj_consume_token(TIME); break; case TIMESTAMP: jj_consume_token(TIMESTAMP); break; case TIMEZONE_ABBR: jj_consume_token(TIMEZONE_ABBR); break; case TIMEZONE_HOUR: jj_consume_token(TIMEZONE_HOUR); break; case TIMEZONE_MINUTE: jj_consume_token(TIMEZONE_MINUTE); break; case TIMEZONE_REGION: jj_consume_token(TIMEZONE_REGION); break; case TRAILING: jj_consume_token(TRAILING); break; case TRANSACTION: jj_consume_token(TRANSACTION); break; case TREAT: jj_consume_token(TREAT); break; case TRUNCATE: jj_consume_token(TRUNCATE); break; case UNDER: jj_consume_token(UNDER); break; case UROWID: jj_consume_token(UROWID); break; case USER: jj_consume_token(USER); break; case USING: jj_consume_token(USING); break; case VARRAY: jj_consume_token(VARRAY); break; case VARYING: jj_consume_token(VARYING); break; case YEAR: jj_consume_token(YEAR); break; case YES: jj_consume_token(YES); break; case ZONE: jj_consume_token(ZONE); break; case WRAPPED: jj_consume_token(WRAPPED); break; case SYS_REFCURSOR: jj_consume_token(SYS_REFCURSOR); break; case EDITIONABLE: jj_consume_token(EDITIONABLE); break; case NONEDITIONABLE: jj_consume_token(NONEDITIONABLE); break; case ACCESSIBLE: jj_consume_token(ACCESSIBLE); break; case NULLIF: jj_consume_token(NULLIF); break; case RENAME: jj_consume_token(RENAME); break; case RELEASE: jj_consume_token(RELEASE); break; case INLINE: jj_consume_token(INLINE); break; default: jj_la1[789] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } //SRT 2011-04-17 - END */ /** * 2006-05-20 - Matthias Hendler - added <OLD> and <PARENT> */ final public ASTID ID() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) ID */ ASTID jjtn000 = new ASTID(JJTID); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; case QUOTED_LITERAL: jj_consume_token(QUOTED_LITERAL); break; case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case LANGUAGE: case INLINE: case AT: case SUBTYPE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BODY: case BULK: case BYTE: case CASCADE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case DATA: case DAY: case DEFINITION: case DISABLE: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MONTH: case NAN: case NATURAL: case NEW: case NEXT: case NO: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case OBJECT: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PERCENT: case PRESERVE: case PRIMARY: case PRIVATE: case RANGE: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SOME: case SPACE: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRUE: case UNDER: case USING: case YES: case A: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case 493: KEYWORD_NOT_RESERVED(); break; case SERIALLY_REUSABLE: jj_consume_token(SERIALLY_REUSABLE); break; case RESTRICT_REFERENCES: jj_consume_token(RESTRICT_REFERENCES); break; case EXCEPTION_INIT: jj_consume_token(EXCEPTION_INIT); break; case AUTONOMOUS_TRANSACTION: jj_consume_token(AUTONOMOUS_TRANSACTION); break; case ALTER: jj_consume_token(ALTER); break; case AND: jj_consume_token(AND); break; case ANY: jj_consume_token(ANY); break; case ASC: jj_consume_token(ASC); break; case BINARY_INTEGER: jj_consume_token(BINARY_INTEGER); break; case BOOLEAN: jj_consume_token(BOOLEAN); break; case CHAR: jj_consume_token(CHAR); break; case CHAR_BASE: jj_consume_token(CHAR_BASE); break; case CHECK: jj_consume_token(CHECK); break; case CLUSTER: jj_consume_token(CLUSTER); break; case COMPRESS: jj_consume_token(COMPRESS); break; case CONSTANT: jj_consume_token(CONSTANT); break; case CREATE: jj_consume_token(CREATE); break; case CURRVAL: jj_consume_token(CURRVAL); break; case DATE: jj_consume_token(DATE); break; case DECIMAL: jj_consume_token(DECIMAL); break; case DELETE: jj_consume_token(DELETE); break; case DESC: jj_consume_token(DESC); break; case DO: jj_consume_token(DO); break; case DROP: jj_consume_token(DROP); break; case ELSIF: jj_consume_token(ELSIF); break; case EXCLUSIVE: jj_consume_token(EXCLUSIVE); break; case FETCH: jj_consume_token(FETCH); break; case FLOAT: jj_consume_token(FLOAT); break; case FORALL: jj_consume_token(FORALL); break; case GOTO: jj_consume_token(GOTO); break; case HAVING: jj_consume_token(HAVING); break; case INDEX: jj_consume_token(INDEX); break; case INSERT: jj_consume_token(INSERT); break; case INTEGER: jj_consume_token(INTEGER); break; case INTERFACE: jj_consume_token(INTERFACE); break; case INTERSECT: jj_consume_token(INTERSECT); break; case IS: jj_consume_token(IS); break; case LIKE: jj_consume_token(LIKE); break; case LIMITED: jj_consume_token(LIMITED); break; case LOCK: jj_consume_token(LOCK); break; case LONG: jj_consume_token(LONG); break; case LOOP: jj_consume_token(LOOP); break; case MINUS: jj_consume_token(MINUS); break; case MOD: jj_consume_token(MOD); break; case MODE: jj_consume_token(MODE); break; case NATURALN: jj_consume_token(NATURALN); break; case NEXTVAL: jj_consume_token(NEXTVAL); break; case NOCOPY: jj_consume_token(NOCOPY); break; case NOT: jj_consume_token(NOT); break; case NULL: jj_consume_token(NULL); break; case NUMBER: jj_consume_token(NUMBER); break; case NUMBER_BASE: jj_consume_token(NUMBER_BASE); break; case OCIROWID: jj_consume_token(OCIROWID); break; case BFILE_BASE: jj_consume_token(BFILE_BASE); break; case BLOB_BASE: jj_consume_token(BLOB_BASE); break; case CLOB_BASE: jj_consume_token(CLOB_BASE); break; case DATE_BASE: jj_consume_token(DATE_BASE); break; case OPTION: jj_consume_token(OPTION); break; case OR: jj_consume_token(OR); break; case OUT: jj_consume_token(OUT); break; case PCTFREE: jj_consume_token(PCTFREE); break; case PLS_INTEGER: jj_consume_token(PLS_INTEGER); break; case POSITIVE: jj_consume_token(POSITIVE); break; case POSITIVEN: jj_consume_token(POSITIVEN); break; case PRIOR: jj_consume_token(PRIOR); break; case RAISE: jj_consume_token(RAISE); break; case RAW: jj_consume_token(RAW); break; case ROWTYPE: jj_consume_token(ROWTYPE); break; case SEPARATE: jj_consume_token(SEPARATE); break; case SHARE: jj_consume_token(SHARE); break; case SMALLINT: jj_consume_token(SMALLINT); break; case SQLCODE: jj_consume_token(SQLCODE); break; case SQLERRM: jj_consume_token(SQLERRM); break; case SYNONYM: jj_consume_token(SYNONYM); break; case THEN: jj_consume_token(THEN); break; case TO: jj_consume_token(TO); break; case TRIGGER: jj_consume_token(TRIGGER); break; case TYPE: jj_consume_token(TYPE); break; case UI: jj_consume_token(UI); break; case UPDATE: jj_consume_token(UPDATE); break; case VARCHAR: jj_consume_token(VARCHAR); break; case VARCHAR2: jj_consume_token(VARCHAR2); break; case SIGNTYPE: jj_consume_token(SIGNTYPE); break; case WHILE: jj_consume_token(WHILE); break; case JAVA_INTERFACE_CLASS: jj_consume_token(JAVA_INTERFACE_CLASS); break; default: jj_la1[790] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(token.getText().toString()) ; jjtn000.value = token ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * 2006-05-20 - Matthias Hendler - added <OLD>, <NEW>, <LOOP>, <INT> */ final public ASTUnqualifiedID UnqualifiedID() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) UnqualifiedID */ ASTUnqualifiedID jjtn000 = new ASTUnqualifiedID(JJTUNQUALIFIEDID); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; case QUOTED_LITERAL: jj_consume_token(QUOTED_LITERAL); break; case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case LANGUAGE: case INLINE: case AT: case SUBTYPE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BODY: case BULK: case BYTE: case CASCADE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case DATA: case DAY: case DEFINITION: case DISABLE: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MONTH: case NAN: case NATURAL: case NEW: case NEXT: case NO: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case OBJECT: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PERCENT: case PRESERVE: case PRIMARY: case PRIVATE: case RANGE: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SOME: case SPACE: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRUE: case UNDER: case USING: case YES: case A: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case 493: KEYWORD_NOT_RESERVED(); break; case MOD: jj_consume_token(MOD); break; case RAW: jj_consume_token(RAW); break; case SQLCODE: jj_consume_token(SQLCODE); break; case SQLERRM: jj_consume_token(SQLERRM); break; case TYPE: jj_consume_token(TYPE); break; case LOOP: jj_consume_token(LOOP); break; default: jj_la1[791] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(token.getText().toString()) ; jjtn000.value = token ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * 2006-05-20 - Matthias Hendler - added <LIMIT> */ final public ASTQualifiedID QualifiedID() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) QualifiedID */ ASTQualifiedID jjtn000 = new ASTQualifiedID(JJTQUALIFIEDID); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; case QUOTED_LITERAL: jj_consume_token(QUOTED_LITERAL); break; case 26: case 29: case 30: case 32: case 33: case 34: case 35: case 36: case 37: case 38: case 39: case 40: case 41: case 42: case 43: case 44: case DEFINER: case CURRENT_USER: case LANGUAGE: case INLINE: case AT: case SUBTYPE: case ADD: case AGGREGATE: case APPLY: case ARRAY: case ATTRIBUTE: case AUTHID: case BODY: case BULK: case BYTE: case CASCADE: case CLOSE: case COALESCE: case COLLECT: case COLUMN: case COMMIT: case CONSTRAINT: case CONSTRUCTOR: case CONTINUE: case CONVERT: case CROSS: case CUBE: case CURRENT: case DATA: case DAY: case DEFINITION: case DISABLE: case DUPLICATED: case EDITIONABLE: case ELEMENT: case ENABLE: case ESCAPE: case EXCEPT: case EXCEPTIONS: case EXECUTE: case EXIT: case EXTERNAL: case EXTENDED: case EXTENDS: case EXTRACT: case FALSE: case FINAL: case FOREIGN: case FORCE: case FULL: case GLOBAL: case GROUPING: case HASH: case HEAP: case HOUR: case IMMEDIATE: case INNER: case INDICES: case INCLUDING: case INDEXTYPE: case INDICATOR: case INFINITE: case INSTANTIABLE: case INTERVAL: case INVALIDATE: case ISOLATION: case JAVA: case JOIN: case KEY: case LEVEL: case LIKEC: case LIKE2: case LIKE4: case LIMIT: case MAP: case MEMBER: case MERGE: case METADATA: case MINUTE: case MLSLABEL: case MODIFY: case MONTH: case NAN: case NATURAL: case NEW: case NEXT: case NO: case NONE: case NONEDITIONABLE: case NULLIF: case NULLS: case OBJECT: case OFFSET: case OID: case ONLY: case OPAQUE: case OPEN: case OPERATOR: case ORGANIZATION: case OTHERS: case OUTER: case OVERRIDING: case PACKAGE: case PARTITION: case PERCENT: case PRESERVE: case PRIMARY: case PRIVATE: case RANGE: case REAL: case RECORD: case REFERENCES: case REGEXP_LIKE: case RELEASE: case RELIES_ON: case RENAME: case RESULT: case RETURN: case RETURNING: case REVERSE: case ROLLBACK: case ROLLUP: case ROW: case ROWS: case ROWID: case ROWNUM: case SAVE: case SAVEPOINT: case SECOND: case SELF: case SETS: case SIBLINGS: case SHARDED: case SHARING: case SOME: case SPACE: case STATIC: case SUBSTITUTABLE: case SUCCESSFUL: case SYS_REFCURSOR: case TEMPORARY: case TIES: case TIME: case TIMESTAMP: case TIMEZONE_REGION: case TIMEZONE_ABBR: case TIMEZONE_MINUTE: case TIMEZONE_HOUR: case TRANSACTION: case TRUE: case UNDER: case USING: case YES: case A: case DOUBLE: case DEC: case PRECISION: case INT: case NUMERIC: case NCHAR: case NVARCHAR2: case STRING: case UROWID: case VARRAY: case VARYING: case BFILE: case BLOB: case CLOB: case NCLOB: case YEAR: case LOCAL: case ZONE: case CHARACTER: case AFTER: case BEFORE: case OLD: case PARENT: case GENERATED: case SCOPE: case INITIALLY: case DEFERRABLE: case DEFERRED: case ANALYZE: case ASSOCIATE: case AUDIT: case COMPOUND: case DATABASE: case CALL: case DISASSOCIATE: case EACH: case FOLLOWS: case LOGOFF: case LOGON: case NESTED: case NOAUDIT: case SCHEMA: case SERVERERROR: case SHUTDOWN: case STARTUP: case STATEMENT: case STATISTICS: case SUSPEND: case TRUNCATE: case WRAPPED: case LIBRARY: case NAME: case STRUCT: case CONTEXT: case PARAMETERS: case LENGTH: case TDO: case MAXLEN: case CHARSETID: case CHARSETFORM: case ACCESSIBLE: case ATTACH: case CAST: case TREAT: case LEFT: case RIGHT: case BOTH: case EMPTY: case MULTISET: case SUBMULTISET: case LEADING: case TRAILING: case CHAR_CS: case NCHAR_CS: case DBTIMEZONE: case SESSIONTIMEZONE: case AUTHENTICATED: case LINK: case SHARED: case DIRECTORY: case USER: case READ: case LATERAL: case NOCYCLE: case CONNECT_BY_ROOT: case 493: KEYWORD_NOT_RESERVED(); break; case SERIALLY_REUSABLE: jj_consume_token(SERIALLY_REUSABLE); break; case RESTRICT_REFERENCES: jj_consume_token(RESTRICT_REFERENCES); break; case EXCEPTION_INIT: jj_consume_token(EXCEPTION_INIT); break; case AUTONOMOUS_TRANSACTION: jj_consume_token(AUTONOMOUS_TRANSACTION); break; case BINARY_INTEGER: jj_consume_token(BINARY_INTEGER); break; case BOOLEAN: jj_consume_token(BOOLEAN); break; case CHAR: jj_consume_token(CHAR); break; case CHAR_BASE: jj_consume_token(CHAR_BASE); break; case CONSTANT: jj_consume_token(CONSTANT); break; case CURRVAL: jj_consume_token(CURRVAL); break; case DATE: jj_consume_token(DATE); break; case DECIMAL: jj_consume_token(DECIMAL); break; case DELETE: jj_consume_token(DELETE); break; case DO: jj_consume_token(DO); break; case ELSIF: jj_consume_token(ELSIF); break; case EXISTS: jj_consume_token(EXISTS); break; case FLOAT: jj_consume_token(FLOAT); break; case FORALL: jj_consume_token(FORALL); break; case INTEGER: jj_consume_token(INTEGER); break; case INTERFACE: jj_consume_token(INTERFACE); break; case LONG: jj_consume_token(LONG); break; case LOOP: jj_consume_token(LOOP); break; case MOD: jj_consume_token(MOD); break; case NATURALN: jj_consume_token(NATURALN); break; case NEXTVAL: jj_consume_token(NEXTVAL); break; case NOCOPY: jj_consume_token(NOCOPY); break; case NUMBER: jj_consume_token(NUMBER); break; case BFILE_BASE: jj_consume_token(BFILE_BASE); break; case BLOB_BASE: jj_consume_token(BLOB_BASE); break; case CLOB_BASE: jj_consume_token(CLOB_BASE); break; case DATE_BASE: jj_consume_token(DATE_BASE); break; case NUMBER_BASE: jj_consume_token(NUMBER_BASE); break; case OCIROWID: jj_consume_token(OCIROWID); break; case OUT: jj_consume_token(OUT); break; case PLS_INTEGER: jj_consume_token(PLS_INTEGER); break; case POSITIVE: jj_consume_token(POSITIVE); break; case POSITIVEN: jj_consume_token(POSITIVEN); break; case PRAGMA: jj_consume_token(PRAGMA); break; case PRIOR: jj_consume_token(PRIOR); break; case RAISE: jj_consume_token(RAISE); break; case RAW: jj_consume_token(RAW); break; case ROWTYPE: jj_consume_token(ROWTYPE); break; case SEPARATE: jj_consume_token(SEPARATE); break; case SMALLINT: jj_consume_token(SMALLINT); break; case SQLCODE: jj_consume_token(SQLCODE); break; case SQLERRM: jj_consume_token(SQLERRM); break; case SYNONYM: jj_consume_token(SYNONYM); break; case TRIGGER: jj_consume_token(TRIGGER); break; case TYPE: jj_consume_token(TYPE); break; case UI: jj_consume_token(UI); break; case VARCHAR: jj_consume_token(VARCHAR); break; case VARCHAR2: jj_consume_token(VARCHAR2); break; case SIGNTYPE: jj_consume_token(SIGNTYPE); break; case WHILE: jj_consume_token(WHILE); break; default: jj_la1[792] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(token.getText().toString()) ; jjtn000.value = token ; {if (true) return jjtn000 ;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTTypeKeyword TypeKeyword() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) TypeKeyword */ ASTTypeKeyword jjtn000 = new ASTTypeKeyword(JJTTYPEKEYWORD); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { switch (jj_nt.kind) { case BFILE_BASE: jj_consume_token(BFILE_BASE); break; case BLOB_BASE: jj_consume_token(BLOB_BASE); break; case CLOB_BASE: jj_consume_token(CLOB_BASE); break; case DATE_BASE: jj_consume_token(DATE_BASE); break; case NUMBER_BASE: jj_consume_token(NUMBER_BASE); break; case BOOLEAN: jj_consume_token(BOOLEAN); break; case DATE: jj_consume_token(DATE); break; case NUMBER: jj_consume_token(NUMBER); break; case FLOAT: jj_consume_token(FLOAT); break; case REAL: jj_consume_token(REAL); break; case INTEGER: jj_consume_token(INTEGER); break; case INT: jj_consume_token(INT); break; case SMALLINT: jj_consume_token(SMALLINT); break; case DECIMAL: jj_consume_token(DECIMAL); break; case NUMERIC: jj_consume_token(NUMERIC); break; case DEC: jj_consume_token(DEC); break; case BINARY_INTEGER: jj_consume_token(BINARY_INTEGER); break; case NATURAL: jj_consume_token(NATURAL); break; case NATURALN: jj_consume_token(NATURALN); break; case POSITIVE: jj_consume_token(POSITIVE); break; case POSITIVEN: jj_consume_token(POSITIVEN); break; case SIGNTYPE: jj_consume_token(SIGNTYPE); break; case VARCHAR2: jj_consume_token(VARCHAR2); break; case VARCHAR: jj_consume_token(VARCHAR); break; case STRING: jj_consume_token(STRING); break; case LONG: jj_consume_token(LONG); break; case RAW: jj_consume_token(RAW); break; case ROWID: jj_consume_token(ROWID); break; case CHAR: jj_consume_token(CHAR); break; case CHARACTER: jj_consume_token(CHARACTER); break; case MLSLABEL: jj_consume_token(MLSLABEL); break; case BLOB: jj_consume_token(BLOB); break; case CLOB: jj_consume_token(CLOB); break; case BFILE: jj_consume_token(BFILE); break; case NCHAR: jj_consume_token(NCHAR); break; case NVARCHAR2: jj_consume_token(NVARCHAR2); break; case NCLOB: jj_consume_token(NCLOB); break; case PLS_INTEGER: jj_consume_token(PLS_INTEGER); break; case TIME: jj_consume_token(TIME); break; case TIMESTAMP: jj_consume_token(TIMESTAMP); break; case UROWID: jj_consume_token(UROWID); break; case ARRAY: jj_consume_token(ARRAY); break; case AUTHID: jj_consume_token(AUTHID); break; case ACCESSIBLE: jj_consume_token(ACCESSIBLE); jj_consume_token(CHAR_BASE); break; case CURRVAL: jj_consume_token(CURRVAL); break; case HOUR: jj_consume_token(HOUR); break; case INTERVAL: jj_consume_token(INTERVAL); break; case MONTH: jj_consume_token(MONTH); break; case OCIROWID: jj_consume_token(OCIROWID); break; case RECORD: jj_consume_token(RECORD); break; case 29: jj_consume_token(29); break; case ROW: jj_consume_token(ROW); break; case ROWNUM: jj_consume_token(ROWNUM); break; case ROWTYPE: jj_consume_token(ROWTYPE); break; case SECOND: jj_consume_token(SECOND); break; case SET: jj_consume_token(SET); break; case TABLE: jj_consume_token(TABLE); break; case TIMEZONE_REGION: jj_consume_token(TIMEZONE_REGION); break; case TIMEZONE_ABBR: jj_consume_token(TIMEZONE_ABBR); break; case TIMEZONE_MINUTE: jj_consume_token(TIMEZONE_MINUTE); break; case TIMEZONE_HOUR: jj_consume_token(TIMEZONE_HOUR); break; case DOUBLE: jj_consume_token(DOUBLE); break; case PRECISION: jj_consume_token(PRECISION); break; case VARRAY: jj_consume_token(VARRAY); break; case YEAR: jj_consume_token(YEAR); break; case LOCAL: jj_consume_token(LOCAL); break; case WITH: jj_consume_token(WITH); break; case ZONE: jj_consume_token(ZONE); break; case JAVA_INTERFACE_CLASS: jj_consume_token(JAVA_INTERFACE_CLASS); break; default: jj_la1[793] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(token.getImage()) ; jjtn000.value = token ; {if (true) return jjtn000 ;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } final public ASTJavaInterfaceClass JavaInterfaceClass() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) JavaInterfaceClass */ ASTJavaInterfaceClass jjtn000 = new ASTJavaInterfaceClass(JJTJAVAINTERFACECLASS); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { jj_consume_token(JAVA_INTERFACE_CLASS); jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; jjtn000.setImage(token.getImage()) ; jjtn000.value = token ; {if (true) return jjtn000 ;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } /** * https://docs.oracle.com/en/database/oracle/oracle-database/23/lnpls/SQL_MACRO-clause.html#LNPLS-GUID-292C3A17-2A4B-4EFB-AD38-68DF6380E5F7 */ final public ASTSqlMacroClause SqlMacroClause() throws net.sourceforge.pmd.lang.ast.ParseException { /*@bgen(jjtree) SqlMacroClause */ ASTSqlMacroClause jjtn000 = new ASTSqlMacroClause(JJTSQLMACROCLAUSE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000, getToken(1)); try { if (isKeyword("SQL_MACRO")) { } else { jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } KEYWORD("SQL_MACRO"); switch (jj_nt.kind) { case LPAREN: jj_consume_token(LPAREN); switch (jj_nt.kind) { case TYPE: jj_consume_token(TYPE); jj_consume_token(50); break; default: jj_la1[794] = jj_gen; ; } if (isKeyword("SCALAR")) { KEYWORD("SCALAR"); } else { switch (jj_nt.kind) { case TABLE: jj_consume_token(TABLE); break; default: jj_la1[795] = jj_gen; jj_consume_token(-1); throw net.sourceforge.pmd.util.AssertionUtil.shouldNotReachHere("consumetoken(-1) should have thrown"); } } jjtn000.setType(token.getImage()); jj_consume_token(RPAREN); break; default: jj_la1[796] = jj_gen; ; } jjtree.closeNodeScope(jjtn000, true, getToken(0)); jjtc000 = false; {if (true) return jjtn000;} } 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 net.sourceforge.pmd.lang.ast.ParseException) { {if (true) throw (net.sourceforge.pmd.lang.ast.ParseException)jjte000;} } {if (true) throw (Error)jjte000;} } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true, getToken(0)); } } throw new Error("Missing return statement in function"); } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } 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); } } private boolean jj_2_75(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_75(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(74, xla); } } private boolean jj_2_76(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_76(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(75, xla); } } private boolean jj_2_77(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_77(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(76, xla); } } private boolean jj_2_78(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_78(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(77, xla); } } private boolean jj_2_79(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_79(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(78, xla); } } private boolean jj_2_80(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_80(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(79, xla); } } private boolean jj_2_81(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_81(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(80, xla); } } private boolean jj_2_82(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_82(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(81, xla); } } private boolean jj_2_83(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_83(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(82, xla); } } private boolean jj_2_84(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_84(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(83, xla); } } private boolean jj_2_85(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_85(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(84, xla); } } private boolean jj_2_86(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_86(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(85, xla); } } private boolean jj_2_87(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_87(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(86, xla); } } private boolean jj_2_88(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_88(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(87, xla); } } private boolean jj_2_89(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_89(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(88, xla); } } private boolean jj_2_90(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_90(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(89, xla); } } private boolean jj_2_91(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_91(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(90, xla); } } private boolean jj_2_92(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_92(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(91, xla); } } private boolean jj_2_93(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_93(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(92, xla); } } private boolean jj_2_94(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_94(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(93, xla); } } private boolean jj_2_95(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_95(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(94, xla); } } private boolean jj_2_96(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_96(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(95, xla); } } private boolean jj_2_97(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_97(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(96, xla); } } private boolean jj_2_98(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_98(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(97, xla); } } private boolean jj_2_99(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_99(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(98, xla); } } private boolean jj_2_100(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_100(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(99, xla); } } private boolean jj_2_101(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_101(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(100, xla); } } private boolean jj_2_102(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_102(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(101, xla); } } private boolean jj_2_103(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_103(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(102, xla); } } private boolean jj_2_104(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_104(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(103, xla); } } private boolean jj_2_105(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_105(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(104, xla); } } private boolean jj_2_106(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_106(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(105, xla); } } private boolean jj_2_107(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_107(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(106, xla); } } private boolean jj_2_108(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_108(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(107, xla); } } private boolean jj_2_109(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_109(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(108, xla); } } private boolean jj_2_110(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_110(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(109, xla); } } private boolean jj_2_111(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_111(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(110, xla); } } private boolean jj_2_112(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_112(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(111, xla); } } private boolean jj_2_113(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_113(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(112, xla); } } private boolean jj_2_114(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_114(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(113, xla); } } private boolean jj_2_115(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_115(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(114, xla); } } private boolean jj_2_116(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_116(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(115, xla); } } private boolean jj_2_117(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_117(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(116, xla); } } private boolean jj_2_118(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_118(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(117, xla); } } private boolean jj_2_119(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_119(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(118, xla); } } private boolean jj_2_120(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_120(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(119, xla); } } private boolean jj_2_121(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_121(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(120, xla); } } private boolean jj_2_122(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_122(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(121, xla); } } private boolean jj_2_123(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_123(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(122, xla); } } private boolean jj_2_124(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_124(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(123, xla); } } private boolean jj_2_125(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_125(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(124, xla); } } private boolean jj_2_126(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_126(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(125, xla); } } private boolean jj_2_127(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_127(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(126, xla); } } private boolean jj_2_128(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_128(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(127, xla); } } private boolean jj_2_129(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_129(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(128, xla); } } private boolean jj_2_130(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_130(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(129, xla); } } private boolean jj_2_131(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_131(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(130, xla); } } private boolean jj_2_132(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_132(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(131, xla); } } private boolean jj_2_133(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_133(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(132, xla); } } private boolean jj_2_134(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_134(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(133, xla); } } private boolean jj_2_135(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_135(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(134, xla); } } private boolean jj_2_136(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_136(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(135, xla); } } private boolean jj_2_137(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_137(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(136, xla); } } private boolean jj_2_138(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_138(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(137, xla); } } private boolean jj_2_139(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_139(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(138, xla); } } private boolean jj_2_140(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_140(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(139, xla); } } private boolean jj_2_141(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_141(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(140, xla); } } private boolean jj_2_142(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_142(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(141, xla); } } private boolean jj_2_143(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_143(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(142, xla); } } private boolean jj_2_144(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_144(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(143, xla); } } private boolean jj_2_145(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_145(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(144, xla); } } private boolean jj_2_146(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_146(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(145, xla); } } private boolean jj_2_147(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_147(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(146, xla); } } private boolean jj_2_148(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_148(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(147, xla); } } private boolean jj_2_149(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_149(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(148, xla); } } private boolean jj_2_150(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_150(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(149, xla); } } private boolean jj_2_151(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_151(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(150, xla); } } private boolean jj_2_152(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_152(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(151, xla); } } private boolean jj_2_153(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_153(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(152, xla); } } private boolean jj_2_154(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_154(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(153, xla); } } private boolean jj_2_155(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_155(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(154, xla); } } private boolean jj_2_156(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_156(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(155, xla); } } private boolean jj_2_157(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_157(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(156, xla); } } private boolean jj_2_158(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_158(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(157, xla); } } private boolean jj_2_159(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_159(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(158, xla); } } private boolean jj_2_160(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_160(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(159, xla); } } private boolean jj_2_161(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_161(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(160, xla); } } private boolean jj_2_162(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_162(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(161, xla); } } private boolean jj_2_163(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_163(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(162, xla); } } private boolean jj_2_164(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_164(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(163, xla); } } private boolean jj_2_165(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_165(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(164, xla); } } private boolean jj_2_166(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_166(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(165, xla); } } private boolean jj_2_167(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_167(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(166, xla); } } private boolean jj_2_168(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_168(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(167, xla); } } private boolean jj_2_169(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_169(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(168, xla); } } private boolean jj_2_170(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_170(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(169, xla); } } private boolean jj_2_171(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_171(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(170, xla); } } private boolean jj_2_172(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_172(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(171, xla); } } private boolean jj_2_173(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_173(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(172, xla); } } private boolean jj_2_174(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_174(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(173, xla); } } private boolean jj_2_175(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_175(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(174, xla); } } private boolean jj_2_176(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_176(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(175, xla); } } private boolean jj_2_177(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_177(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(176, xla); } } private boolean jj_2_178(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_178(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(177, xla); } } private boolean jj_2_179(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_179(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(178, xla); } } private boolean jj_2_180(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_180(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(179, xla); } } private boolean jj_2_181(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_181(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(180, xla); } } private boolean jj_2_182(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_182(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(181, xla); } } private boolean jj_2_183(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_183(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(182, xla); } } private boolean jj_2_184(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_184(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(183, xla); } } private boolean jj_2_185(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_185(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(184, xla); } } private boolean jj_2_186(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_186(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(185, xla); } } private boolean jj_2_187(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_187(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(186, xla); } } private boolean jj_2_188(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_188(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(187, xla); } } private boolean jj_2_189(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_189(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(188, xla); } } private boolean jj_2_190(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_190(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(189, xla); } } private boolean jj_2_191(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_191(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(190, xla); } } private boolean jj_2_192(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_192(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(191, xla); } } private boolean jj_2_193(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_193(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(192, xla); } } private boolean jj_2_194(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_194(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(193, xla); } } private boolean jj_2_195(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_195(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(194, xla); } } private boolean jj_2_196(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_196(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(195, xla); } } private boolean jj_2_197(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_197(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(196, xla); } } private boolean jj_2_198(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_198(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(197, xla); } } private boolean jj_2_199(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_199(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(198, xla); } } private boolean jj_2_200(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_200(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(199, xla); } } private boolean jj_2_201(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_201(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(200, xla); } } private boolean jj_2_202(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_202(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(201, xla); } } private boolean jj_2_203(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_203(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(202, xla); } } private boolean jj_2_204(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_204(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(203, xla); } } private boolean jj_2_205(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_205(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(204, xla); } } private boolean jj_2_206(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_206(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(205, xla); } } private boolean jj_2_207(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_207(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(206, xla); } } private boolean jj_2_208(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_208(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(207, xla); } } private boolean jj_2_209(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_209(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(208, xla); } } private boolean jj_2_210(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_210(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(209, xla); } } private boolean jj_2_211(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_211(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(210, xla); } } private boolean jj_2_212(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_212(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(211, xla); } } private boolean jj_2_213(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_213(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(212, xla); } } private boolean jj_2_214(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_214(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(213, xla); } } private boolean jj_2_215(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_215(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(214, xla); } } private boolean jj_2_216(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_216(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(215, xla); } } private boolean jj_2_217(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_217(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(216, xla); } } private boolean jj_2_218(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_218(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(217, xla); } } private boolean jj_2_219(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_219(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(218, xla); } } private boolean jj_2_220(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_220(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(219, xla); } } private boolean jj_2_221(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_221(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(220, xla); } } private boolean jj_2_222(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_222(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(221, xla); } } private boolean jj_2_223(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_223(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(222, xla); } } private boolean jj_2_224(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_224(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(223, xla); } } private boolean jj_2_225(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_225(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(224, xla); } } private boolean jj_2_226(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_226(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(225, xla); } } private boolean jj_2_227(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_227(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(226, xla); } } private boolean jj_2_228(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_228(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(227, xla); } } private boolean jj_2_229(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_229(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(228, xla); } } private boolean jj_2_230(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_230(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(229, xla); } } private boolean jj_2_231(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_231(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(230, xla); } } private boolean jj_2_232(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_232(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(231, xla); } } private boolean jj_2_233(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_233(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(232, xla); } } private boolean jj_2_234(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_234(); } catch(LookaheadSuccess ls) { return true; } finally { jj_save(233, xla); } } private boolean jj_3R_1090() { if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3R_584() { if (jj_scan_token(WITH)) return true; if (jj_scan_token(CONTEXT)) return true; return false; } private boolean jj_3R_583() { if (jj_scan_token(NAME)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(469)) { jj_scanpos = xsp; if (jj_scan_token(477)) { jj_scanpos = xsp; if (jj_3R_1024()) return true; } } return false; } private boolean jj_3R_409() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_582()) { jj_scanpos = xsp; if (jj_3R_583()) { jj_scanpos = xsp; if (jj_3R_584()) { jj_scanpos = xsp; if (jj_3R_585()) return true; } } } return false; } private boolean jj_3R_582() { if (jj_scan_token(LIBRARY)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(469)) { jj_scanpos = xsp; if (jj_scan_token(477)) { jj_scanpos = xsp; if (jj_3R_1023()) return true; } } return false; } private boolean jj_3R_408() { if (jj_scan_token(LANGUAGE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(469)) { jj_scanpos = xsp; if (jj_scan_token(233)) return true; } return false; } private boolean jj_3R_982() { if (jj_scan_token(VARYING)) return true; if (jj_scan_token(ARRAY)) return true; return false; } private boolean jj_3R_197() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(204)) { jj_scanpos = xsp; if (jj_3R_408()) return true; } while (true) { xsp = jj_scanpos; if (jj_3R_409()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_948() { if (jj_3R_443()) return true; return false; } private boolean jj_3R_947() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3R_946() { if (jj_scan_token(29)) return true; if (jj_scan_token(CURSOR)) return true; return false; } private boolean jj_3R_945() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(143)) { jj_scanpos = xsp; if (jj_scan_token(371)) { jj_scanpos = xsp; if (jj_3R_982()) return true; } } xsp = jj_scanpos; if (jj_3R_1090()) jj_scanpos = xsp; if (jj_scan_token(OF)) return true; return false; } private boolean jj_3R_944() { if (jj_scan_token(RECORD)) return true; if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3R_943() { if (jj_scan_token(OBJECT)) return true; if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3_168() { if (jj_scan_token(NEW)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(169)) { jj_scanpos = xsp; if (jj_scan_token(270)) { jj_scanpos = xsp; if (jj_scan_token(269)) { jj_scanpos = xsp; if (jj_scan_token(268)) { jj_scanpos = xsp; if (jj_scan_token(267)) { jj_scanpos = xsp; if (jj_scan_token(271)) return true; } } } } } return false; } private boolean jj_3R_1049() { if (jj_scan_token(NOT)) return true; return false; } private boolean jj_3R_1089() { if (jj_scan_token(RANGE)) return true; return false; } private boolean jj_3R_1065() { if (jj_3R_269()) return true; return false; } private boolean jj_3R_1088() { if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3R_1048() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1088()) { jj_scanpos = xsp; if (jj_3R_1089()) return true; } return false; } private boolean jj_3R_690() { if (jj_scan_token(TYPE)) return true; if (jj_3R_194()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(117)) { jj_scanpos = xsp; if (jj_scan_token(75)) return true; } xsp = jj_scanpos; if (jj_3_168()) { jj_scanpos = xsp; if (jj_3R_943()) { jj_scanpos = xsp; if (jj_3R_944()) { jj_scanpos = xsp; if (jj_3R_945()) { jj_scanpos = xsp; if (jj_3R_946()) { jj_scanpos = xsp; if (jj_3R_947()) { jj_scanpos = xsp; if (jj_3R_948()) return true; } } } } } } return false; } private boolean jj_3R_689() { if (jj_scan_token(SUBTYPE)) return true; if (jj_3R_194()) return true; if (jj_scan_token(IS)) return true; if (jj_3R_443()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1048()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_1049()) jj_scanpos = xsp; return false; } private boolean jj_3R_1104() { if (jj_3R_269()) return true; return false; } private boolean jj_3R_577() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_689()) { jj_scanpos = xsp; if (jj_3R_690()) return true; } if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_1067() { if (jj_scan_token(CC_ELSE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_1104()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_1104()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_1066() { if (jj_scan_token(CC_ELSIF)) return true; if (jj_3R_591()) return true; return false; } private boolean jj_3R_886() { if (jj_scan_token(CC_ERROR)) return true; if (jj_3R_213()) return true; if (jj_scan_token(CC_END)) return true; return false; } private boolean jj_3R_885() { if (jj_scan_token(CC_IF)) return true; if (jj_3R_591()) return true; if (jj_scan_token(CC_THEN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_1065()) { jj_scanpos = xsp; break; } } while (true) { xsp = jj_scanpos; if (jj_3R_1066()) { jj_scanpos = xsp; break; } } while (true) { xsp = jj_scanpos; if (jj_3R_1067()) { jj_scanpos = xsp; break; } } if (jj_scan_token(CC_END)) return true; return false; } private boolean jj_3R_836() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_885()) { jj_scanpos = xsp; if (jj_3R_886()) return true; } return false; } private boolean jj_3R_1016() { if (jj_scan_token(LIMIT)) return true; return false; } private boolean jj_3R_835() { if (jj_scan_token(PIPE)) return true; if (jj_scan_token(ROW)) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3R_1138() { if (jj_scan_token(IN)) return true; return false; } private boolean jj_3R_1124() { if (jj_3R_623()) return true; return false; } private boolean jj_3R_1122() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1138()) { jj_scanpos = xsp; if (jj_scan_token(282)) return true; } return false; } private boolean jj_3R_1102() { if (jj_scan_token(USING)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1122()) jj_scanpos = xsp; if (jj_3R_213()) return true; return false; } private boolean jj_3R_1060() { if (jj_3R_1102()) return true; return false; } private boolean jj_3R_1123() { if (jj_3R_622()) return true; return false; } private boolean jj_3R_1014() { if (jj_scan_token(BULK)) return true; if (jj_scan_token(COLLECT)) return true; return false; } private boolean jj_3R_1103() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(312)) { jj_scanpos = xsp; if (jj_scan_token(313)) return true; } xsp = jj_scanpos; if (jj_3R_1123()) { jj_scanpos = xsp; if (jj_3R_1124()) return true; } return false; } private boolean jj_3R_1015() { if (jj_scan_token(COMMA)) return true; return false; } private boolean jj_3R_1064() { if (jj_3R_1103()) return true; return false; } private boolean jj_3R_1063() { if (jj_3R_1102()) return true; return false; } private boolean jj_3R_1062() { if (jj_3R_623()) return true; return false; } private boolean jj_3R_1061() { if (jj_3R_622()) return true; return false; } private boolean jj_3R_1017() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1061()) { jj_scanpos = xsp; if (jj_3R_1062()) { jj_scanpos = xsp; if (jj_3R_1063()) { jj_scanpos = xsp; if (jj_3R_1064()) return true; } } } return false; } private boolean jj_3R_1059() { if (jj_3R_213()) return true; return false; } private boolean jj_3R_268() { if (jj_scan_token(EXECUTE)) return true; if (jj_scan_token(IMMEDIATE)) return true; if (jj_3R_273()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1017()) jj_scanpos = xsp; return false; } private boolean jj_3R_834() { if (jj_scan_token(FETCH)) return true; if (jj_3R_662()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1014()) jj_scanpos = xsp; if (jj_scan_token(INTO)) return true; if (jj_3R_213()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_1015()) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; if (jj_3R_1016()) jj_scanpos = xsp; return false; } private boolean jj_3R_996() { if (jj_scan_token(WHEN)) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3R_1058() { if (jj_3R_306()) return true; return false; } private boolean jj_3R_467() { if (jj_scan_token(WHEN)) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3R_998() { if (jj_3R_213()) return true; return false; } private boolean jj_3R_999() { if (jj_scan_token(FOR)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1058()) { jj_scanpos = xsp; if (jj_3R_1059()) return true; } xsp = jj_scanpos; if (jj_3R_1060()) jj_scanpos = xsp; return false; } private boolean jj_3R_833() { if (jj_scan_token(OPEN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_998()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_999()) jj_scanpos = xsp; return false; } private boolean jj_3R_997() { if (jj_3R_662()) return true; return false; } private boolean jj_3R_832() { if (jj_scan_token(CLOSE)) return true; if (jj_3R_662()) return true; return false; } private boolean jj_3R_995() { if (jj_3R_290()) return true; return false; } private boolean jj_3R_831() { if (jj_scan_token(RAISE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_997()) jj_scanpos = xsp; return false; } private boolean jj_3R_466() { if (jj_3R_290()) return true; return false; } private boolean jj_3R_1057() { if (jj_scan_token(45)) return true; return false; } private boolean jj_3R_830() { if (jj_scan_token(EXIT)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_995()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_996()) jj_scanpos = xsp; return false; } private boolean jj_3R_994() { if (jj_3R_213()) return true; return false; } private boolean jj_3R_267() { if (jj_scan_token(CONTINUE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_466()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_467()) jj_scanpos = xsp; return false; } private boolean jj_3R_1012() { if (jj_scan_token(SAVE)) return true; return false; } private boolean jj_3R_1011() { if (jj_3R_213()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1057()) jj_scanpos = xsp; return false; } private boolean jj_3R_1010() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(222)) { jj_scanpos = xsp; if (jj_scan_token(150)) return true; } if (jj_scan_token(OF)) return true; return false; } private boolean jj_3R_829() { if (jj_scan_token(RETURN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_994()) jj_scanpos = xsp; return false; } private boolean jj_3R_828() { if (jj_scan_token(GOTO)) return true; if (jj_3R_662()) return true; return false; } private boolean jj_3R_825() { if (jj_scan_token(FORALL)) return true; if (jj_3R_992()) return true; if (jj_scan_token(IN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1010()) { jj_scanpos = xsp; if (jj_3R_1011()) return true; } xsp = jj_scanpos; if (jj_3R_1012()) jj_scanpos = xsp; if (jj_3R_820()) return true; return false; } private boolean jj_3R_1009() { if (jj_scan_token(45)) return true; return false; } private boolean jj_3_167() { if (jj_3R_269()) return true; return false; } private boolean jj_3R_1013() { if (jj_3R_269()) return true; return false; } private boolean jj_3R_992() { if (jj_3R_198()) return true; return false; } private boolean jj_3_166() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_202()) return true; return false; } private boolean jj_3R_991() { if (jj_3R_198()) return true; return false; } private boolean jj_3_164() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_202()) return true; return false; } private boolean jj_3_160() { if (jj_3R_198()) return true; return false; } private boolean jj_3R_1008() { if (jj_3R_1046()) return true; return false; } private boolean jj_3R_1007() { if (jj_3R_1056()) return true; return false; } private boolean jj_3R_822() { if (jj_scan_token(IF)) return true; if (jj_3R_213()) return true; if (jj_scan_token(THEN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3_167()) return true; while (true) { xsp = jj_scanpos; if (jj_3_167()) { jj_scanpos = xsp; break; } } while (true) { xsp = jj_scanpos; if (jj_3R_1007()) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; if (jj_3R_1008()) jj_scanpos = xsp; if (jj_scan_token(END)) return true; return false; } private boolean jj_3R_1004() { if (jj_3R_249()) return true; return false; } private boolean jj_3R_827() { if (jj_scan_token(WHILE)) return true; if (jj_3R_213()) return true; if (jj_scan_token(LOOP)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_1013()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_1013()) { jj_scanpos = xsp; break; } } if (jj_scan_token(END)) return true; return false; } private boolean jj_3R_824() { if (jj_scan_token(FOR)) return true; if (jj_3R_991()) return true; if (jj_scan_token(IN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(314)) jj_scanpos = xsp; if (jj_3R_213()) return true; xsp = jj_scanpos; if (jj_3R_1009()) jj_scanpos = xsp; if (jj_scan_token(LOOP)) return true; return false; } private boolean jj_3_165() { if (jj_3R_208()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_985() { if (jj_3R_251()) return true; return false; } private boolean jj_3_163() { if (jj_3R_208()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3_159() { if (jj_3R_207()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3_161() { if (jj_3R_207()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_1006() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_161()) jj_scanpos = xsp; if (jj_3R_208()) return true; return false; } private boolean jj_3R_1005() { if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3_162() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_272()) return true; return false; } private boolean jj_3R_263() { if (jj_scan_token(MERGE)) return true; if (jj_scan_token(INTO)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_159()) jj_scanpos = xsp; if (jj_3R_208()) return true; xsp = jj_scanpos; if (jj_3R_1004()) jj_scanpos = xsp; if (jj_scan_token(USING)) return true; xsp = jj_scanpos; if (jj_3_162()) { jj_scanpos = xsp; if (jj_3R_1005()) { jj_scanpos = xsp; if (jj_3R_1006()) return true; } } return false; } private boolean jj_3_156() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_202()) return true; return false; } private boolean jj_3R_1003() { if (jj_3R_1055()) return true; return false; } private boolean jj_3R_1002() { if (jj_3R_1054()) return true; return false; } private boolean jj_3R_1001() { if (jj_3R_722()) return true; return false; } private boolean jj_3R_1094() { if (jj_3R_213()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(8)) jj_scanpos = xsp; return false; } private boolean jj_3_158() { if (jj_scan_token(ONLY)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_251()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_304() { if (jj_scan_token(DELETE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(103)) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3_158()) { jj_scanpos = xsp; if (jj_3R_985()) return true; } xsp = jj_scanpos; if (jj_3R_1001()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_1002()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_1003()) jj_scanpos = xsp; return false; } private boolean jj_3_157() { if (jj_3R_207()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_472() { if (jj_3R_632()) return true; return false; } private boolean jj_3R_1097() { if (jj_scan_token(43)) return true; return false; } private boolean jj_3R_1096() { if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3R_1095() { if (jj_scan_token(INTO)) return true; return false; } private boolean jj_3R_1143() { if (jj_scan_token(FOR)) return true; if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3R_1055() { if (jj_scan_token(26)) return true; if (jj_scan_token(42)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1095()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_1096()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_1097()) jj_scanpos = xsp; return false; } private boolean jj_3R_271() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_471()) { jj_scanpos = xsp; if (jj_3R_472()) return true; } return false; } private boolean jj_3R_471() { if (jj_scan_token(AROBASE)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3R_1054() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(312)) { jj_scanpos = xsp; if (jj_scan_token(313)) return true; } if (jj_3R_1094()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_1094()) { jj_scanpos = xsp; break; } } if (jj_scan_token(INTO)) return true; return false; } private boolean jj_3_154() { if (jj_3R_208()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_1142() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3R_1135() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_154()) jj_scanpos = xsp; if (jj_3R_233()) return true; return false; } private boolean jj_3_155() { if (jj_3R_208()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_1121() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_155()) jj_scanpos = xsp; if (jj_3R_233()) return true; if (jj_scan_token(ASSIGN)) return true; return false; } private boolean jj_3R_1120() { if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_1135()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_1135()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_1093() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1120()) { jj_scanpos = xsp; if (jj_3R_1121()) return true; } return false; } private boolean jj_3R_1053() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_1093()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_1093()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_1052() { if (jj_3R_390()) return true; if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3R_1051() { if (jj_scan_token(ROW)) return true; if (jj_scan_token(ASSIGN)) return true; return false; } private boolean jj_3R_1000() { if (jj_scan_token(SET)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1051()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("VALUE"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_1052()) { jj_scanpos = xsp; if (jj_3R_1053()) return true; } } return false; } private boolean jj_3_151() { if (jj_3R_249()) return true; return false; } private boolean jj_3_152() { if (jj_3R_207()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_632() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(287)) { jj_scanpos = xsp; if (jj_scan_token(41)) return true; } xsp = jj_scanpos; if (jj_3R_1142()) { jj_scanpos = xsp; if (jj_3R_1143()) return true; } return false; } private boolean jj_3R_1042() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(463)) jj_scanpos = xsp; if (jj_scan_token(LPAREN)) return true; if (jj_3R_202()) return true; return false; } private boolean jj_3_153() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_152()) jj_scanpos = xsp; if (jj_3R_208()) return true; xsp = jj_scanpos; if (jj_3R_271()) jj_scanpos = xsp; return false; } private boolean jj_3R_1041() { if (jj_3R_707()) return true; return false; } private boolean jj_3R_984() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1041()) { jj_scanpos = xsp; if (jj_3_153()) { jj_scanpos = xsp; if (jj_3R_1042()) return true; } } return false; } private boolean jj_3R_1144() { if (jj_3R_470()) return true; return false; } private boolean jj_3R_303() { if (jj_scan_token(UPDATE)) return true; if (jj_3R_984()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_151()) jj_scanpos = xsp; if (jj_3R_1000()) return true; return false; } private boolean jj_3R_1137() { if (jj_3R_1055()) return true; return false; } private boolean jj_3R_801() { if (jj_3R_277()) return true; if (jj_scan_token(AS)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_202()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_802() { if (jj_scan_token(COMMA)) return true; if (jj_3R_801()) return true; return false; } private boolean jj_3R_852() { if (jj_3R_623()) return true; return false; } private boolean jj_3R_710() { if (jj_3R_801()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_802()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_709() { if (jj_3R_396()) return true; return false; } private boolean jj_3R_1136() { if (jj_3R_272()) return true; return false; } private boolean jj_3R_1133() { if (jj_scan_token(WHEN)) return true; if (jj_3R_226()) return true; if (jj_scan_token(THEN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_1144()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_1144()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_619() { if (jj_scan_token(WITH)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_709()) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; if (jj_3R_710()) jj_scanpos = xsp; return false; } private boolean jj_3R_851() { if (jj_3R_622()) return true; return false; } private boolean jj_3R_767() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_851()) { jj_scanpos = xsp; if (jj_3R_852()) return true; } return false; } private boolean jj_3R_1099() { if (jj_3R_202()) return true; return false; } private boolean jj_3R_524() { if (jj_3R_619()) return true; return false; } private boolean jj_3R_306() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_524()) jj_scanpos = xsp; if (jj_3R_461()) return true; if (jj_3R_462()) return true; xsp = jj_scanpos; if (jj_3R_767()) jj_scanpos = xsp; if (jj_3R_465()) return true; return false; } private boolean jj_3R_1141() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_270() { if (jj_3R_470()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1136()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_1137()) jj_scanpos = xsp; return false; } private boolean jj_3R_1132() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(71)) { jj_scanpos = xsp; if (jj_3R_1141()) return true; } return false; } private boolean jj_3R_1117() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1132()) jj_scanpos = xsp; if (jj_3R_1133()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_1133()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_1087() { if (jj_3R_1117()) return true; return false; } private boolean jj_3_150() { if (jj_scan_token(ALL)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_270()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_270()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_1044() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_150()) { jj_scanpos = xsp; if (jj_3R_1087()) return true; } if (jj_3R_202()) return true; return false; } private boolean jj_3R_474() { if (jj_3R_277()) return true; return false; } private boolean jj_3R_473() { if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3R_987() { if (jj_3R_1044()) return true; return false; } private boolean jj_3_148() { if (jj_3R_208()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3_147() { if (jj_3R_208()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_272() { if (jj_scan_token(VALUES)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_473()) { jj_scanpos = xsp; if (jj_3R_474()) return true; } return false; } private boolean jj_3R_1098() { if (jj_3R_272()) return true; return false; } private boolean jj_3_149() { if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_147()) jj_scanpos = xsp; if (jj_3R_233()) return true; return false; } private boolean jj_3_146() { if (jj_3R_249()) return true; return false; } private boolean jj_3R_470() { if (jj_scan_token(INTO)) return true; if (jj_3R_984()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_146()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3_149()) jj_scanpos = xsp; return false; } private boolean jj_3R_986() { if (jj_3R_1043()) return true; return false; } private boolean jj_3_145() { if (jj_3R_269()) return true; return false; } private boolean jj_3R_1043() { if (jj_3R_470()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1098()) { jj_scanpos = xsp; if (jj_3R_1099()) return true; } return false; } private boolean jj_3R_305() { if (jj_scan_token(INSERT)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_986()) { jj_scanpos = xsp; if (jj_3R_987()) return true; } return false; } private boolean jj_3R_1100() { if (jj_3R_269()) return true; return false; } private boolean jj_3R_993() { if (jj_3R_269()) return true; return false; } private boolean jj_3R_266() { if (jj_scan_token(LOCK)) return true; if (jj_scan_token(TABLE)) return true; return false; } private boolean jj_3R_823() { if (jj_scan_token(FOR)) return true; if (jj_3R_991()) return true; if (jj_scan_token(IN)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_306()) return true; return false; } private boolean jj_3R_826() { if (jj_scan_token(LOOP)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_993()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_993()) { jj_scanpos = xsp; break; } } if (jj_scan_token(END)) return true; if (jj_scan_token(LOOP)) return true; xsp = jj_scanpos; if (jj_scan_token(469)) jj_scanpos = xsp; return false; } private boolean jj_3R_572() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(29)) { jj_scanpos = xsp; if (jj_scan_token(30)) { jj_scanpos = xsp; if (jj_scan_token(493)) { jj_scanpos = xsp; if (jj_scan_token(32)) { jj_scanpos = xsp; if (jj_scan_token(33)) { jj_scanpos = xsp; if (jj_scan_token(34)) { jj_scanpos = xsp; if (jj_scan_token(35)) { jj_scanpos = xsp; if (jj_scan_token(36)) { jj_scanpos = xsp; if (jj_scan_token(37)) { jj_scanpos = xsp; if (jj_scan_token(38)) { jj_scanpos = xsp; if (jj_scan_token(39)) { jj_scanpos = xsp; if (jj_scan_token(40)) { jj_scanpos = xsp; if (jj_scan_token(41)) { jj_scanpos = xsp; if (jj_scan_token(26)) { jj_scanpos = xsp; if (jj_scan_token(42)) { jj_scanpos = xsp; if (jj_scan_token(43)) { jj_scanpos = xsp; if (jj_scan_token(44)) { jj_scanpos = xsp; if (jj_scan_token(208)) { jj_scanpos = xsp; if (jj_scan_token(352)) { jj_scanpos = xsp; if (jj_scan_token(358)) { jj_scanpos = xsp; if (jj_scan_token(156)) { jj_scanpos = xsp; if (jj_scan_token(381)) { jj_scanpos = xsp; if (jj_scan_token(157)) { jj_scanpos = xsp; if (jj_scan_token(406)) { jj_scanpos = xsp; if (jj_scan_token(158)) { jj_scanpos = xsp; if (jj_scan_token(159)) { jj_scanpos = xsp; if (jj_scan_token(407)) { jj_scanpos = xsp; if (jj_scan_token(77)) { jj_scanpos = xsp; if (jj_scan_token(439)) { jj_scanpos = xsp; if (jj_scan_token(160)) { jj_scanpos = xsp; if (jj_scan_token(408)) { jj_scanpos = xsp; if (jj_scan_token(457)) { jj_scanpos = xsp; if (jj_scan_token(161)) { jj_scanpos = xsp; if (jj_scan_token(382)) { jj_scanpos = xsp; if (jj_scan_token(373)) { jj_scanpos = xsp; if (jj_scan_token(374)) { jj_scanpos = xsp; if (jj_scan_token(163)) { jj_scanpos = xsp; if (jj_scan_token(444)) { jj_scanpos = xsp; if (jj_scan_token(165)) { jj_scanpos = xsp; if (jj_scan_token(166)) { jj_scanpos = xsp; if (jj_scan_token(411)) { jj_scanpos = xsp; if (jj_scan_token(167)) { jj_scanpos = xsp; if (jj_scan_token(440)) { jj_scanpos = xsp; if (jj_scan_token(450)) { jj_scanpos = xsp; if (jj_scan_token(380)) { jj_scanpos = xsp; if (jj_scan_token(437)) { jj_scanpos = xsp; if (jj_scan_token(436)) { jj_scanpos = xsp; if (jj_scan_token(375)) { jj_scanpos = xsp; if (jj_scan_token(170)) { jj_scanpos = xsp; if (jj_scan_token(171)) { jj_scanpos = xsp; if (jj_scan_token(172)) { jj_scanpos = xsp; if (jj_scan_token(173)) { jj_scanpos = xsp; if (jj_scan_token(174)) { jj_scanpos = xsp; if (jj_scan_token(409)) { jj_scanpos = xsp; if (jj_scan_token(465)) { jj_scanpos = xsp; if (jj_scan_token(176)) { jj_scanpos = xsp; if (jj_scan_token(177)) { jj_scanpos = xsp; if (jj_scan_token(431)) { jj_scanpos = xsp; if (jj_scan_token(178)) { jj_scanpos = xsp; if (jj_scan_token(179)) { jj_scanpos = xsp; if (jj_scan_token(180)) { jj_scanpos = xsp; if (jj_scan_token(181)) { jj_scanpos = xsp; if (jj_scan_token(182)) { jj_scanpos = xsp; if (jj_scan_token(64)) { jj_scanpos = xsp; if (jj_scan_token(184)) { jj_scanpos = xsp; if (jj_scan_token(410)) { jj_scanpos = xsp; if (jj_scan_token(186)) { jj_scanpos = xsp; if (jj_scan_token(455)) { jj_scanpos = xsp; if (jj_scan_token(362)) { jj_scanpos = xsp; if (jj_scan_token(390)) { jj_scanpos = xsp; if (jj_scan_token(391)) { jj_scanpos = xsp; if (jj_scan_token(63)) { jj_scanpos = xsp; if (jj_scan_token(188)) { jj_scanpos = xsp; if (jj_scan_token(460)) { jj_scanpos = xsp; if (jj_scan_token(191)) { jj_scanpos = xsp; if (jj_scan_token(412)) { jj_scanpos = xsp; if (jj_scan_token(361)) { jj_scanpos = xsp; if (jj_scan_token(193)) { jj_scanpos = xsp; if (jj_scan_token(413)) { jj_scanpos = xsp; if (jj_scan_token(195)) { jj_scanpos = xsp; if (jj_scan_token(445)) { jj_scanpos = xsp; if (jj_scan_token(197)) { jj_scanpos = xsp; if (jj_scan_token(198)) { jj_scanpos = xsp; if (jj_scan_token(199)) { jj_scanpos = xsp; if (jj_scan_token(200)) { jj_scanpos = xsp; if (jj_scan_token(203)) { jj_scanpos = xsp; if (jj_scan_token(201)) { jj_scanpos = xsp; if (jj_scan_token(205)) { jj_scanpos = xsp; if (jj_scan_token(206)) { jj_scanpos = xsp; if (jj_scan_token(204)) { jj_scanpos = xsp; if (jj_scan_token(207)) { jj_scanpos = xsp; if (jj_scan_token(209)) { jj_scanpos = xsp; if (jj_scan_token(414)) { jj_scanpos = xsp; if (jj_scan_token(213)) { jj_scanpos = xsp; if (jj_scan_token(212)) { jj_scanpos = xsp; if (jj_scan_token(214)) { jj_scanpos = xsp; if (jj_scan_token(387)) { jj_scanpos = xsp; if (jj_scan_token(215)) { jj_scanpos = xsp; if (jj_scan_token(216)) { jj_scanpos = xsp; if (jj_scan_token(217)) { jj_scanpos = xsp; if (jj_scan_token(218)) { jj_scanpos = xsp; if (jj_scan_token(219)) { jj_scanpos = xsp; if (jj_scan_token(220)) { jj_scanpos = xsp; if (jj_scan_token(223)) { jj_scanpos = xsp; if (jj_scan_token(224)) { jj_scanpos = xsp; if (jj_scan_token(225)) { jj_scanpos = xsp; if (jj_scan_token(222)) { jj_scanpos = xsp; if (jj_scan_token(226)) { jj_scanpos = xsp; if (jj_scan_token(389)) { jj_scanpos = xsp; if (jj_scan_token(221)) { jj_scanpos = xsp; if (jj_scan_token(227)) { jj_scanpos = xsp; if (jj_scan_token(364)) { jj_scanpos = xsp; if (jj_scan_token(230)) { jj_scanpos = xsp; if (jj_scan_token(231)) { jj_scanpos = xsp; if (jj_scan_token(232)) { jj_scanpos = xsp; if (jj_scan_token(233)) { jj_scanpos = xsp; if (jj_scan_token(234)) { jj_scanpos = xsp; if (jj_scan_token(235)) { jj_scanpos = xsp; if (jj_scan_token(69)) { jj_scanpos = xsp; if (jj_scan_token(463)) { jj_scanpos = xsp; if (jj_scan_token(448)) { jj_scanpos = xsp; if (jj_scan_token(442)) { jj_scanpos = xsp; if (jj_scan_token(433)) { jj_scanpos = xsp; if (jj_scan_token(236)) { jj_scanpos = xsp; if (jj_scan_token(428)) { jj_scanpos = xsp; if (jj_scan_token(238)) { jj_scanpos = xsp; if (jj_scan_token(239)) { jj_scanpos = xsp; if (jj_scan_token(237)) { jj_scanpos = xsp; if (jj_scan_token(240)) { jj_scanpos = xsp; if (jj_scan_token(458)) { jj_scanpos = xsp; if (jj_scan_token(378)) { jj_scanpos = xsp; if (jj_scan_token(415)) { jj_scanpos = xsp; if (jj_scan_token(416)) { jj_scanpos = xsp; if (jj_scan_token(244)) { jj_scanpos = xsp; if (jj_scan_token(435)) { jj_scanpos = xsp; if (jj_scan_token(245)) { jj_scanpos = xsp; if (jj_scan_token(246)) { jj_scanpos = xsp; if (jj_scan_token(247)) { jj_scanpos = xsp; if (jj_scan_token(248)) { jj_scanpos = xsp; if (jj_scan_token(249)) { jj_scanpos = xsp; if (jj_scan_token(250)) { jj_scanpos = xsp; if (jj_scan_token(252)) { jj_scanpos = xsp; if (jj_scan_token(446)) { jj_scanpos = xsp; if (jj_scan_token(429)) { jj_scanpos = xsp; if (jj_scan_token(253)) { jj_scanpos = xsp; if (jj_scan_token(254)) { jj_scanpos = xsp; if (jj_scan_token(367)) { jj_scanpos = xsp; if (jj_scan_token(451)) { jj_scanpos = xsp; if (jj_scan_token(376)) { jj_scanpos = xsp; if (jj_scan_token(417)) { jj_scanpos = xsp; if (jj_scan_token(256)) { jj_scanpos = xsp; if (jj_scan_token(258)) { jj_scanpos = xsp; if (jj_scan_token(260)) { jj_scanpos = xsp; if (jj_scan_token(418)) { jj_scanpos = xsp; if (jj_scan_token(464)) { jj_scanpos = xsp; if (jj_scan_token(262)) { jj_scanpos = xsp; if (jj_scan_token(265)) { jj_scanpos = xsp; if (jj_scan_token(365)) { jj_scanpos = xsp; if (jj_scan_token(368)) { jj_scanpos = xsp; if (jj_scan_token(272)) { jj_scanpos = xsp; if (jj_scan_token(274)) { jj_scanpos = xsp; if (jj_scan_token(275)) { jj_scanpos = xsp; if (jj_scan_token(385)) { jj_scanpos = xsp; if (jj_scan_token(276)) { jj_scanpos = xsp; if (jj_scan_token(277)) { jj_scanpos = xsp; if (jj_scan_token(278)) { jj_scanpos = xsp; if (jj_scan_token(279)) { jj_scanpos = xsp; if (jj_scan_token(280)) { jj_scanpos = xsp; if (jj_scan_token(281)) { jj_scanpos = xsp; if (jj_scan_token(283)) { jj_scanpos = xsp; if (jj_scan_token(284)) { jj_scanpos = xsp; if (jj_scan_token(285)) { jj_scanpos = xsp; if (jj_scan_token(432)) { jj_scanpos = xsp; if (jj_scan_token(386)) { jj_scanpos = xsp; if (jj_scan_token(287)) { jj_scanpos = xsp; if (jj_scan_token(289)) { jj_scanpos = xsp; if (jj_scan_token(363)) { jj_scanpos = xsp; if (jj_scan_token(296)) { jj_scanpos = xsp; if (jj_scan_token(298)) { jj_scanpos = xsp; if (jj_scan_token(299)) { jj_scanpos = xsp; if (jj_scan_token(301)) { jj_scanpos = xsp; if (jj_scan_token(462)) { jj_scanpos = xsp; if (jj_scan_token(303)) { jj_scanpos = xsp; if (jj_scan_token(304)) { jj_scanpos = xsp; if (jj_scan_token(305)) { jj_scanpos = xsp; if (jj_scan_token(306)) { jj_scanpos = xsp; if (jj_scan_token(308)) { jj_scanpos = xsp; if (jj_scan_token(310)) { jj_scanpos = xsp; if (jj_scan_token(312)) { jj_scanpos = xsp; if (jj_scan_token(313)) { jj_scanpos = xsp; if (jj_scan_token(314)) { jj_scanpos = xsp; if (jj_scan_token(443)) { jj_scanpos = xsp; if (jj_scan_token(315)) { jj_scanpos = xsp; if (jj_scan_token(316)) { jj_scanpos = xsp; if (jj_scan_token(317)) { jj_scanpos = xsp; if (jj_scan_token(319)) { jj_scanpos = xsp; if (jj_scan_token(320)) { jj_scanpos = xsp; if (jj_scan_token(318)) { jj_scanpos = xsp; if (jj_scan_token(322)) { jj_scanpos = xsp; if (jj_scan_token(323)) { jj_scanpos = xsp; if (jj_scan_token(419)) { jj_scanpos = xsp; if (jj_scan_token(388)) { jj_scanpos = xsp; if (jj_scan_token(324)) { jj_scanpos = xsp; if (jj_scan_token(325)) { jj_scanpos = xsp; if (jj_scan_token(420)) { jj_scanpos = xsp; if (jj_scan_token(456)) { jj_scanpos = xsp; if (jj_scan_token(328)) { jj_scanpos = xsp; if (jj_scan_token(330)) { jj_scanpos = xsp; if (jj_scan_token(459)) { jj_scanpos = xsp; if (jj_scan_token(331)) { jj_scanpos = xsp; if (jj_scan_token(421)) { jj_scanpos = xsp; if (jj_scan_token(329)) { jj_scanpos = xsp; if (jj_scan_token(333)) { jj_scanpos = xsp; if (jj_scan_token(334)) { jj_scanpos = xsp; if (jj_scan_token(422)) { jj_scanpos = xsp; if (jj_scan_token(423)) { jj_scanpos = xsp; if (jj_scan_token(337)) { jj_scanpos = xsp; if (jj_scan_token(424)) { jj_scanpos = xsp; if (jj_scan_token(369)) { jj_scanpos = xsp; if (jj_scan_token(430)) { jj_scanpos = xsp; if (jj_scan_token(447)) { jj_scanpos = xsp; if (jj_scan_token(338)) { jj_scanpos = xsp; if (jj_scan_token(141)) { jj_scanpos = xsp; if (jj_scan_token(339)) { jj_scanpos = xsp; if (jj_scan_token(425)) { jj_scanpos = xsp; if (jj_scan_token(434)) { jj_scanpos = xsp; if (jj_scan_token(342)) { jj_scanpos = xsp; if (jj_scan_token(343)) { jj_scanpos = xsp; if (jj_scan_token(344)) { jj_scanpos = xsp; if (jj_scan_token(345)) { jj_scanpos = xsp; if (jj_scan_token(347)) { jj_scanpos = xsp; if (jj_scan_token(349)) { jj_scanpos = xsp; if (jj_scan_token(348)) { jj_scanpos = xsp; if (jj_scan_token(346)) { jj_scanpos = xsp; if (jj_scan_token(449)) { jj_scanpos = xsp; if (jj_scan_token(350)) { jj_scanpos = xsp; if (jj_scan_token(441)) { jj_scanpos = xsp; if (jj_scan_token(426)) { jj_scanpos = xsp; if (jj_scan_token(354)) { jj_scanpos = xsp; if (jj_scan_token(370)) { jj_scanpos = xsp; if (jj_scan_token(461)) { jj_scanpos = xsp; if (jj_scan_token(355)) { jj_scanpos = xsp; if (jj_scan_token(371)) { jj_scanpos = xsp; if (jj_scan_token(372)) { jj_scanpos = xsp; if (jj_scan_token(377)) { jj_scanpos = xsp; if (jj_scan_token(357)) { jj_scanpos = xsp; if (jj_scan_token(379)) { jj_scanpos = xsp; if (jj_scan_token(427)) { jj_scanpos = xsp; if (jj_scan_token(341)) { jj_scanpos = xsp; if (jj_scan_token(194)) { jj_scanpos = xsp; if (jj_scan_token(263)) { jj_scanpos = xsp; if (jj_scan_token(438)) { jj_scanpos = xsp; if (jj_scan_token(264)) { jj_scanpos = xsp; if (jj_scan_token(309)) { jj_scanpos = xsp; if (jj_scan_token(307)) { jj_scanpos = xsp; if (jj_scan_token(70)) return true; } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } return false; } private boolean jj_3R_1101() { if (jj_3R_269()) return true; return false; } private boolean jj_3R_1056() { if (jj_scan_token(ELSIF)) return true; return false; } private boolean jj_3R_1046() { if (jj_scan_token(ELSE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_1101()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_1101()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_265() { if (jj_scan_token(SET)) return true; if (jj_scan_token(TRANSACTION)) return true; return false; } private boolean jj_3R_1045() { if (jj_scan_token(WHEN)) return true; if (jj_3R_213()) return true; if (jj_scan_token(THEN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_1100()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_1100()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_988() { if (jj_3R_213()) return true; return false; } private boolean jj_3R_390() { if (jj_scan_token(IDENTIFIER)) return true; return false; } private boolean jj_3R_990() { if (jj_3R_1046()) return true; return false; } private boolean jj_3R_989() { if (jj_3R_1045()) return true; return false; } private boolean jj_3R_821() { if (jj_scan_token(CASE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_988()) jj_scanpos = xsp; while (true) { xsp = jj_scanpos; if (jj_3R_989()) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; if (jj_3R_990()) jj_scanpos = xsp; if (jj_scan_token(END)) return true; if (jj_scan_token(CASE)) return true; xsp = jj_scanpos; if (jj_scan_token(469)) jj_scanpos = xsp; return false; } private boolean jj_3R_725() { if (jj_3R_394()) return true; return false; } private boolean jj_3R_630() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_725()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_725()) { jj_scanpos = xsp; break; } } if (jj_3R_631()) return true; return false; } private boolean jj_3R_469() { if (jj_3R_631()) return true; return false; } private boolean jj_3R_468() { if (jj_3R_630()) return true; return false; } private boolean jj_3R_269() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_468()) { jj_scanpos = xsp; if (jj_3R_469()) return true; } return false; } private boolean jj_3R_749() { if (jj_3R_213()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_748() { if (jj_3R_837()) return true; return false; } private boolean jj_3_144() { if (jj_3R_268()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_747() { if (jj_3R_836()) return true; return false; } private boolean jj_3R_746() { if (jj_3R_835()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_745() { if (jj_3R_555()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_744() { if (jj_3R_834()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3_143() { if (jj_scan_token(FOR)) return true; if (jj_3R_198()) return true; if (jj_scan_token(IN)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_scan_token(SELECT)) return true; return false; } private boolean jj_3R_743() { if (jj_3R_833()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_742() { if (jj_3R_832()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_741() { if (jj_3R_831()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_740() { if (jj_3R_830()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_739() { if (jj_3R_829()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_738() { if (jj_3R_828()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_264() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(1)) jj_scanpos = xsp; if (jj_scan_token(SELECT)) return true; return false; } private boolean jj_3_141() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_264()) { jj_scanpos = xsp; if (jj_scan_token(149)) { jj_scanpos = xsp; if (jj_scan_token(114)) { jj_scanpos = xsp; if (jj_scan_token(189)) { jj_scanpos = xsp; if (jj_scan_token(174)) { jj_scanpos = xsp; if (jj_scan_token(315)) { jj_scanpos = xsp; if (jj_scan_token(323)) { jj_scanpos = xsp; if (jj_3R_265()) { jj_scanpos = xsp; if (jj_3R_266()) { jj_scanpos = xsp; if (jj_scan_token(246)) { jj_scanpos = xsp; if (jj_scan_token(155)) return true; } } } } } } } } } } return false; } private boolean jj_3R_737() { if (jj_3R_827()) return true; return false; } private boolean jj_3R_736() { if (jj_3R_826()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_735() { if (jj_3R_825()) return true; return false; } private boolean jj_3_138() { if (jj_3R_262()) return true; return false; } private boolean jj_3R_734() { if (jj_3R_824()) return true; return false; } private boolean jj_3R_733() { if (jj_3R_823()) return true; return false; } private boolean jj_3R_732() { if (jj_3R_822()) return true; return false; } private boolean jj_3R_731() { if (jj_3R_821()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3_142() { if (jj_3R_267()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3_139() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(155)) { jj_scanpos = xsp; if (jj_scan_token(136)) return true; } return false; } private boolean jj_3R_730() { if (jj_3R_820()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(7)) jj_scanpos = xsp; return false; } private boolean jj_3R_819() { if (jj_3R_306()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3_140() { if (jj_3R_263()) return true; return false; } private boolean jj_3R_818() { if (jj_3R_262()) return true; return false; } private boolean jj_3R_729() { if (jj_3R_305()) return true; return false; } private boolean jj_3R_728() { if (jj_3R_304()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_727() { if (jj_3R_303()) return true; return false; } private boolean jj_3R_726() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_818()) { jj_scanpos = xsp; if (jj_3R_819()) return true; } return false; } private boolean jj_3R_631() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_726()) { jj_scanpos = xsp; if (jj_3R_727()) { jj_scanpos = xsp; if (jj_3R_728()) { jj_scanpos = xsp; if (jj_3R_729()) { jj_scanpos = xsp; if (jj_3_140()) { jj_scanpos = xsp; if (jj_3R_730()) { jj_scanpos = xsp; if (jj_3_142()) { jj_scanpos = xsp; if (jj_3R_731()) { jj_scanpos = xsp; if (jj_3R_732()) { jj_scanpos = xsp; if (jj_3R_733()) { jj_scanpos = xsp; if (jj_3R_734()) { jj_scanpos = xsp; if (jj_3R_735()) { jj_scanpos = xsp; if (jj_3R_736()) { jj_scanpos = xsp; if (jj_3R_737()) { jj_scanpos = xsp; if (jj_3R_738()) { jj_scanpos = xsp; if (jj_3R_739()) { jj_scanpos = xsp; if (jj_3R_740()) { jj_scanpos = xsp; if (jj_3R_741()) { jj_scanpos = xsp; if (jj_3R_742()) { jj_scanpos = xsp; if (jj_3R_743()) { jj_scanpos = xsp; if (jj_3R_744()) { jj_scanpos = xsp; if (jj_3R_745()) { jj_scanpos = xsp; if (jj_3_144()) { jj_scanpos = xsp; if (jj_3R_746()) { jj_scanpos = xsp; if (jj_3R_747()) { jj_scanpos = xsp; if (jj_3R_748()) { jj_scanpos = xsp; if (jj_3R_749()) return true; } } } } } } } } } } } } } } } } } } } } } } } } } } return false; } private boolean jj_3_137() { if (jj_3R_198()) return true; return false; } private boolean jj_3R_530() { if (jj_scan_token(WRAPPED)) return true; return false; } private boolean jj_3_136() { if (jj_3R_261()) return true; return false; } private boolean jj_3R_260() { if (jj_scan_token(COMMA)) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3_133() { if (jj_scan_token(COMMA)) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3R_258() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(180)) { jj_scanpos = xsp; if (jj_scan_token(283)) return true; } if (jj_scan_token(APPLY)) return true; xsp = jj_scanpos; if (jj_3_136()) { jj_scanpos = xsp; if (jj_3_137()) return true; } return false; } private boolean jj_3R_618() { if (jj_scan_token(RIGHT)) return true; return false; } private boolean jj_3R_1112() { if (jj_scan_token(COMMA)) return true; if (jj_3R_233()) return true; return false; } private boolean jj_3R_617() { if (jj_scan_token(LEFT)) return true; return false; } private boolean jj_3R_616() { if (jj_scan_token(FULL)) return true; return false; } private boolean jj_3R_458() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_616()) { jj_scanpos = xsp; if (jj_3R_617()) { jj_scanpos = xsp; if (jj_3R_618()) return true; } } xsp = jj_scanpos; if (jj_scan_token(283)) jj_scanpos = xsp; return false; } private boolean jj_3_135() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_213()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_260()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3_134() { if (jj_3R_213()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3_133()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_259() { if (jj_scan_token(PARTITION)) return true; if (jj_scan_token(BY)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_134()) { jj_scanpos = xsp; if (jj_3_135()) return true; } return false; } private boolean jj_3R_1111() { if (jj_scan_token(COMMA)) return true; if (jj_3R_233()) return true; return false; } private boolean jj_3R_1084() { if (jj_scan_token(USING)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_233()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_1112()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_1083() { if (jj_scan_token(ON)) return true; if (jj_3R_591()) return true; return false; } private boolean jj_3R_1037() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1083()) { jj_scanpos = xsp; if (jj_3R_1084()) return true; } return false; } private boolean jj_3_132() { if (jj_3R_259()) return true; return false; } private boolean jj_3R_457() { if (jj_scan_token(NATURAL)) return true; return false; } private boolean jj_3R_456() { if (jj_3R_259()) return true; return false; } private boolean jj_3R_257() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_456()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_457()) jj_scanpos = xsp; if (jj_3R_458()) return true; if (jj_scan_token(JOIN)) return true; if (jj_3R_261()) return true; xsp = jj_scanpos; if (jj_3_132()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_1037()) jj_scanpos = xsp; return false; } private boolean jj_3R_615() { if (jj_scan_token(NATURAL)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(221)) jj_scanpos = xsp; return false; } private boolean jj_3R_614() { if (jj_scan_token(CROSS)) return true; return false; } private boolean jj_3R_455() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_614()) { jj_scanpos = xsp; if (jj_3R_615()) return true; } if (jj_scan_token(JOIN)) return true; if (jj_3R_261()) return true; return false; } private boolean jj_3R_1082() { if (jj_scan_token(USING)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_233()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_1111()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_1081() { if (jj_scan_token(ON)) return true; if (jj_3R_591()) return true; return false; } private boolean jj_3R_454() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(221)) jj_scanpos = xsp; if (jj_scan_token(JOIN)) return true; if (jj_3R_261()) return true; xsp = jj_scanpos; if (jj_3R_1081()) { jj_scanpos = xsp; if (jj_3R_1082()) return true; } return false; } private boolean jj_3R_256() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_454()) { jj_scanpos = xsp; if (jj_3R_455()) return true; } return false; } private boolean jj_3_131() { if (jj_3R_258()) return true; return false; } private boolean jj_3_130() { if (jj_3R_257()) return true; return false; } private boolean jj_3_129() { if (jj_3R_256()) return true; return false; } private boolean jj_3R_445() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_129()) { jj_scanpos = xsp; if (jj_3_130()) { jj_scanpos = xsp; if (jj_3_131()) return true; } } return false; } private boolean jj_3R_800() { if (jj_3R_445()) return true; return false; } private boolean jj_3R_708() { if (jj_3R_261()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_800()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_800()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_1035() { if (jj_scan_token(LPAREN)) return true; if (jj_scan_token(PLUSSIGN)) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_254() { if (jj_3R_208()) return true; return false; } private boolean jj_3R_208() { if (jj_3R_198()) return true; return false; } private boolean jj_3R_255() { if (jj_3R_249()) return true; return false; } private boolean jj_3R_207() { if (jj_3R_198()) return true; return false; } private boolean jj_3R_799() { if (jj_3R_213()) return true; return false; } private boolean jj_3R_1080() { if (jj_scan_token(CONSTRAINT)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3_128() { if (jj_3R_198()) return true; return false; } private boolean jj_3R_977() { if (jj_3R_1036()) return true; return false; } private boolean jj_3_122() { if (jj_3R_253()) return true; return false; } private boolean jj_3R_459() { if (jj_3R_249()) return true; return false; } private boolean jj_3R_1079() { if (jj_scan_token(CHECK)) return true; if (jj_scan_token(OPTION)) return true; return false; } private boolean jj_3R_261() { if (jj_3R_444()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_459()) jj_scanpos = xsp; return false; } private boolean jj_3_127() { if (jj_3R_202()) return true; return false; } private boolean jj_3R_1078() { if (jj_scan_token(READ)) return true; if (jj_scan_token(ONLY)) return true; return false; } private boolean jj_3_123() { if (jj_3R_207()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_707() { if (jj_scan_token(TABLE)) return true; if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_127()) { jj_scanpos = xsp; if (jj_3R_799()) return true; } if (jj_scan_token(RPAREN)) return true; xsp = jj_scanpos; if (jj_3R_1035()) jj_scanpos = xsp; return false; } private boolean jj_3R_719() { if (jj_scan_token(COMMA)) return true; if (jj_3R_718()) return true; return false; } private boolean jj_3R_1036() { if (jj_scan_token(WITH)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1078()) { jj_scanpos = xsp; if (jj_3R_1079()) return true; } xsp = jj_scanpos; if (jj_3R_1080()) jj_scanpos = xsp; return false; } private boolean jj_3_121() { if (jj_3R_207()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_610() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_708()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3_126() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(463)) jj_scanpos = xsp; if (jj_scan_token(LPAREN)) return true; if (jj_3R_202()) return true; xsp = jj_scanpos; if (jj_3R_977()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3_125() { if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_123()) jj_scanpos = xsp; if (jj_3R_208()) return true; xsp = jj_scanpos; if (jj_3R_255()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_609() { if (jj_3R_707()) return true; return false; } private boolean jj_3_124() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_121()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3_122()) { jj_scanpos = xsp; if (jj_3R_254()) return true; } return false; } private boolean jj_3R_444() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_124()) { jj_scanpos = xsp; if (jj_3R_609()) { jj_scanpos = xsp; if (jj_3_125()) { jj_scanpos = xsp; if (jj_3_126()) { jj_scanpos = xsp; if (jj_3R_610()) return true; } } } } return false; } private boolean jj_3_120() { if (jj_3R_249()) return true; return false; } private boolean jj_3R_251() { if (jj_3R_444()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_120()) jj_scanpos = xsp; return false; } private boolean jj_3R_807() { if (jj_scan_token(COLON)) return true; if (jj_3R_872()) return true; return false; } private boolean jj_3R_872() { if (jj_3R_198()) return true; return false; } private boolean jj_3_118() { if (jj_scan_token(AS)) return true; return false; } private boolean jj_3R_871() { if (jj_3R_198()) return true; return false; } private boolean jj_3R_806() { if (jj_3R_871()) return true; return false; } private boolean jj_3R_718() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_806()) { jj_scanpos = xsp; if (jj_3R_807()) return true; } return false; } private boolean jj_3R_623() { if (jj_scan_token(BULK)) return true; if (jj_scan_token(COLLECT)) return true; if (jj_scan_token(INTO)) return true; if (jj_3R_718()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_719()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3_113() { if (jj_3R_249()) return true; return false; } private boolean jj_3R_717() { if (jj_scan_token(COMMA)) return true; if (jj_3R_716()) return true; return false; } private boolean jj_3R_805() { if (jj_scan_token(DOT)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3R_804() { if (jj_scan_token(DOT)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3R_803() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_286()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_716() { if (jj_3R_198()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_803()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_804()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_805()) jj_scanpos = xsp; return false; } private boolean jj_3R_622() { if (jj_scan_token(INTO)) return true; if (jj_3R_716()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_717()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3_119() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_118()) jj_scanpos = xsp; if (jj_3R_244()) return true; return false; } private boolean jj_3R_249() { if (jj_3R_198()) return true; return false; } private boolean jj_3R_248() { if (jj_3R_213()) return true; return false; } private boolean jj_3R_246() { if (jj_3R_213()) return true; return false; } private boolean jj_3R_715() { if (jj_scan_token(COMMA)) return true; if (jj_3R_714()) return true; return false; } private boolean jj_3R_874() { if (jj_scan_token(START)) return true; if (jj_scan_token(WITH)) return true; if (jj_3R_226()) return true; return false; } private boolean jj_3R_252() { if (jj_3R_445()) return true; return false; } private boolean jj_3R_244() { if (jj_3R_198()) return true; return false; } private boolean jj_3_112() { if (jj_scan_token(NOCYCLE)) return true; return false; } private boolean jj_3_117() { if (jj_scan_token(CONNECT_BY_ROOT)) return true; return false; } private boolean jj_3R_714() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_117()) jj_scanpos = xsp; if (jj_3R_218()) return true; xsp = jj_scanpos; if (jj_3_119()) jj_scanpos = xsp; return false; } private boolean jj_3R_621() { if (jj_3R_714()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_715()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_721() { if (jj_scan_token(COMMA)) return true; if (jj_3R_720()) return true; return false; } private boolean jj_3R_462() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(19)) { jj_scanpos = xsp; if (jj_3R_621()) return true; } return false; } private boolean jj_3R_980() { if (jj_3R_218()) return true; if (jj_scan_token(34)) return true; return false; } private boolean jj_3_115() { if (jj_scan_token(IDENTIFIER)) return true; if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3_102() { if (jj_3R_244()) return true; return false; } private boolean jj_3R_979() { if (jj_3R_218()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(34)) { jj_scanpos = xsp; if (jj_scan_token(35)) return true; } return false; } private boolean jj_3R_250() { if (jj_3R_207()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3_100() { if (jj_3R_244()) return true; return false; } private boolean jj_3R_978() { if (jj_3R_218()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(34)) { jj_scanpos = xsp; if (jj_scan_token(35)) return true; } return false; } private boolean jj_3_114() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_250()) jj_scanpos = xsp; if (jj_3R_208()) return true; xsp = jj_scanpos; if (jj_scan_token(469)) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(287)) { jj_scanpos = xsp; if (jj_scan_token(254)) { jj_scanpos = xsp; if (jj_scan_token(283)) { jj_scanpos = xsp; if (jj_scan_token(221)) { jj_scanpos = xsp; if (jj_scan_token(234)) { jj_scanpos = xsp; if (jj_scan_token(442)) { jj_scanpos = xsp; if (jj_scan_token(443)) { jj_scanpos = xsp; if (jj_scan_token(180)) { jj_scanpos = xsp; if (jj_scan_token(214)) return true; } } } } } } } } return false; } private boolean jj_3R_810() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_708()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3_116() { if (jj_3R_251()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_252()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_809() { if (jj_3R_873()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_113()) jj_scanpos = xsp; return false; } private boolean jj_3R_808() { if (jj_3R_708()) return true; return false; } private boolean jj_3_111() { if (jj_scan_token(NOCYCLE)) return true; return false; } private boolean jj_3R_922() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(155)) { jj_scanpos = xsp; if (jj_scan_token(39)) return true; } if (jj_scan_token(40)) return true; return false; } private boolean jj_3R_720() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_808()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("XMLTABLE"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_809()) { jj_scanpos = xsp; if (jj_3_116()) { jj_scanpos = xsp; if (jj_3R_810()) return true; } } } return false; } private boolean jj_3_110() { if (jj_scan_token(32)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_259()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_624() { if (jj_scan_token(FROM)) return true; if (jj_3R_720()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_721()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_813() { if (jj_scan_token(START)) return true; if (jj_scan_token(WITH)) return true; if (jj_3R_226()) return true; if (jj_scan_token(CONNECT)) return true; if (jj_scan_token(BY)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_112()) jj_scanpos = xsp; if (jj_3R_226()) return true; return false; } private boolean jj_3_109() { if (jj_scan_token(CURRENT)) return true; if (jj_scan_token(ROW)) return true; return false; } private boolean jj_3R_812() { if (jj_scan_token(CONNECT)) return true; if (jj_scan_token(BY)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_111()) jj_scanpos = xsp; if (jj_3R_226()) return true; xsp = jj_scanpos; if (jj_3R_874()) jj_scanpos = xsp; return false; } private boolean jj_3_107() { if (jj_scan_token(CURRENT)) return true; if (jj_scan_token(ROW)) return true; return false; } private boolean jj_3_105() { if (jj_scan_token(CURRENT)) return true; if (jj_scan_token(ROW)) return true; return false; } private boolean jj_3R_723() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_812()) { jj_scanpos = xsp; if (jj_3R_813()) return true; } return false; } private boolean jj_3R_921() { if (jj_3R_338()) return true; return false; } private boolean jj_3R_891() { if (jj_3R_923()) return true; return false; } private boolean jj_3R_233() { if (jj_3R_198()) return true; return false; } private boolean jj_3R_890() { if (jj_scan_token(TRUNCATE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_921()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_922()) jj_scanpos = xsp; return false; } private boolean jj_3R_848() { if (jj_3R_209()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_891()) jj_scanpos = xsp; return false; } private boolean jj_3R_846() { if (jj_scan_token(ON)) return true; if (jj_scan_token(37)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(38)) { jj_scanpos = xsp; if (jj_3R_890()) return true; } return false; } private boolean jj_3R_763() { if (jj_scan_token(36)) return true; if (jj_scan_token(GROUP)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_209()) return true; if (jj_scan_token(RPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_110()) jj_scanpos = xsp; return false; } private boolean jj_3R_247() { if (jj_3R_390()) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3_108() { if (jj_scan_token(33)) return true; if (jj_scan_token(34)) return true; return false; } private boolean jj_3R_245() { if (jj_3R_390()) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3_106() { if (jj_scan_token(33)) return true; if (jj_scan_token(35)) return true; return false; } private boolean jj_3R_942() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_108()) { jj_scanpos = xsp; if (jj_3_109()) { jj_scanpos = xsp; if (jj_3R_980()) return true; } } return false; } private boolean jj_3_104() { if (jj_scan_token(33)) return true; if (jj_scan_token(34)) return true; return false; } private boolean jj_3R_634() { if (jj_scan_token(NULL)) return true; if (jj_scan_token(ON)) return true; if (jj_scan_token(EMPTY)) return true; return false; } private boolean jj_3R_941() { if (jj_scan_token(BETWEEN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_104()) { jj_scanpos = xsp; if (jj_3_105()) { jj_scanpos = xsp; if (jj_3R_978()) return true; } } if (jj_scan_token(AND)) return true; xsp = jj_scanpos; if (jj_3_106()) { jj_scanpos = xsp; if (jj_3_107()) { jj_scanpos = xsp; if (jj_3R_979()) return true; } } return false; } private boolean jj_3R_847() { if (jj_3R_259()) return true; return false; } private boolean jj_3_103() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(75)) jj_scanpos = xsp; xsp = jj_scanpos; jj_lookingAhead = true; jj_semLA = isKeyword("EVALNAME"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_247()) { jj_scanpos = xsp; if (jj_3_102()) { jj_scanpos = xsp; if (jj_3R_248()) return true; } } return false; } private boolean jj_3_101() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(75)) jj_scanpos = xsp; xsp = jj_scanpos; jj_lookingAhead = true; jj_semLA = isKeyword("EVALNAME"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_245()) { jj_scanpos = xsp; if (jj_3_100()) { jj_scanpos = xsp; if (jj_3R_246()) return true; } } return false; } private boolean jj_3R_923() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(318)) { jj_scanpos = xsp; if (jj_scan_token(301)) return true; } xsp = jj_scanpos; if (jj_3R_941()) { jj_scanpos = xsp; if (jj_3R_942()) return true; } return false; } private boolean jj_3R_762() { if (jj_scan_token(32)) return true; if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_847()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_848()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_842() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(75)) jj_scanpos = xsp; if (jj_3R_244()) return true; return false; } private boolean jj_3R_888() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(75)) jj_scanpos = xsp; if (jj_3R_244()) return true; return false; } private boolean jj_3R_919() { if (jj_scan_token(COMMA)) return true; if (jj_3R_213()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_103()) jj_scanpos = xsp; return false; } private boolean jj_3R_1125() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_390()) return true; if (jj_scan_token(RPAREN)) return true; if (jj_scan_token(BY)) return true; if (jj_scan_token(29)) return true; return false; } private boolean jj_3R_887() { if (jj_3R_390()) return true; if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(469)) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(469)) jj_scanpos = xsp; if (jj_3R_213()) return true; xsp = jj_scanpos; if (jj_3_101()) jj_scanpos = xsp; while (true) { xsp = jj_scanpos; if (jj_3R_919()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_841() { if (jj_3R_213()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_888()) jj_scanpos = xsp; return false; } private boolean jj_3R_840() { if (jj_3R_887()) return true; return false; } private boolean jj_3R_757() { if (jj_scan_token(COMMA)) return true; if (jj_3R_213()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_842()) jj_scanpos = xsp; return false; } private boolean jj_3R_754() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(75)) jj_scanpos = xsp; if (jj_3R_198()) return true; return false; } private boolean jj_3R_243() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_756() { if (jj_scan_token(COMMA)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; jj_lookingAhead = true; jj_semLA = isKeyword("XMLATTRIBUTES"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_840()) { jj_scanpos = xsp; if (jj_3R_841()) return true; } return false; } private boolean jj_3_99() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_243()) jj_scanpos = xsp; if (jj_3R_198()) return true; return false; } private boolean jj_3R_755() { if (jj_3R_390()) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3_98() { if (jj_scan_token(AS)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3_97() { if (jj_scan_token(AS)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3R_612() { if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(469)) jj_scanpos = xsp; xsp = jj_scanpos; jj_lookingAhead = true; jj_semLA = isKeyword("EVALNAME"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_755()) { jj_scanpos = xsp; if (jj_3_99()) return true; } xsp = jj_scanpos; if (jj_3R_756()) jj_scanpos = xsp; while (true) { xsp = jj_scanpos; if (jj_3R_757()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_1114() { if (jj_3R_753()) return true; return false; } private boolean jj_3R_638() { if (jj_scan_token(COMMA)) return true; if (jj_3R_218()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_754()) jj_scanpos = xsp; return false; } private boolean jj_3R_602() { if (jj_3R_390()) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_338()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1114()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_636() { if (jj_3R_213()) return true; return false; } private boolean jj_3R_839() { if (jj_scan_token(COMMA)) return true; if (jj_3R_218()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_98()) jj_scanpos = xsp; return false; } private boolean jj_3R_838() { if (jj_scan_token(BY)) return true; if (jj_3R_390()) return true; return false; } private boolean jj_3R_753() { if (jj_3R_390()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_838()) jj_scanpos = xsp; if (jj_3R_218()) return true; xsp = jj_scanpos; if (jj_3_97()) jj_scanpos = xsp; while (true) { xsp = jj_scanpos; if (jj_3R_839()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_1110() { if (jj_scan_token(_DEFAULT)) return true; if (jj_3R_218()) return true; return false; } private boolean jj_3R_637() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(75)) jj_scanpos = xsp; if (jj_3R_198()) return true; return false; } private boolean jj_3R_1109() { if (jj_3R_390()) return true; if (jj_3R_338()) return true; return false; } private boolean jj_3R_242() { if (jj_3R_443()) return true; return false; } private boolean jj_3R_633() { if (jj_3R_753()) return true; return false; } private boolean jj_3R_241() { if (jj_3R_390()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1125()) jj_scanpos = xsp; return false; } private boolean jj_3R_976() { if (jj_3R_1034()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(8)) jj_scanpos = xsp; return false; } private boolean jj_3_96() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; jj_lookingAhead = true; jj_semLA = isKeyword("XMLTYPE"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_241()) { jj_scanpos = xsp; if (jj_3R_242()) return true; } xsp = jj_scanpos; if (jj_3R_1109()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_1110()) jj_scanpos = xsp; return false; } private boolean jj_3R_640() { if (jj_3R_213()) return true; return false; } private boolean jj_3R_1077() { if (jj_scan_token(FOR)) return true; if (jj_3R_390()) return true; return false; } private boolean jj_3R_1034() { if (jj_3R_233()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1077()) { jj_scanpos = xsp; if (jj_3_96()) return true; } return false; } private boolean jj_3R_937() { if (jj_scan_token(COLUMNS)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_976()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_976()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_936() { if (jj_scan_token(RETURNING)) return true; if (jj_3R_390()) return true; if (jj_scan_token(BY)) return true; if (jj_scan_token(29)) return true; return false; } private boolean jj_3R_935() { if (jj_3R_753()) return true; return false; } private boolean jj_3R_635() { if (jj_scan_token(MULTISET)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_202()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_914() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_935()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_936()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_937()) jj_scanpos = xsp; return false; } private boolean jj_3R_843() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_1033() { if (jj_scan_token(_DEFAULT)) return true; if (jj_3R_338()) return true; return false; } private boolean jj_3R_1032() { if (jj_3R_338()) return true; if (jj_scan_token(AS)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3R_975() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1032()) { jj_scanpos = xsp; if (jj_3R_1033()) return true; } xsp = jj_scanpos; if (jj_scan_token(8)) jj_scanpos = xsp; return false; } private boolean jj_3R_758() { if (jj_scan_token(NO)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_843()) jj_scanpos = xsp; return false; } private boolean jj_3R_639() { if (jj_scan_token(NO)) return true; if (jj_3R_390()) return true; return false; } private boolean jj_3R_934() { if (jj_3R_390()) return true; if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_975()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_975()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_913() { if (jj_3R_934()) return true; if (jj_scan_token(COMMA)) return true; return false; } private boolean jj_3R_873() { if (jj_3R_390()) return true; if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_913()) jj_scanpos = xsp; if (jj_3R_338()) return true; if (jj_3R_914()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_500() { if (jj_scan_token(AROBASE)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3R_650() { if (jj_scan_token(DOT)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3R_499() { if (jj_scan_token(DOT)) return true; if (jj_3R_198()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_650()) jj_scanpos = xsp; return false; } private boolean jj_3R_283() { if (jj_3R_198()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_499()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_500()) jj_scanpos = xsp; return false; } private boolean jj_3R_641() { if (jj_scan_token(COMMA)) return true; if (jj_3R_390()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(357)) { jj_scanpos = xsp; if (jj_3R_758()) return true; } return false; } private boolean jj_3R_453() { if (jj_3R_613()) return true; return false; } private boolean jj_3R_452() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_213()) return true; if (jj_scan_token(COMMA)) return true; if (jj_3R_390()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_639()) { jj_scanpos = xsp; if (jj_3R_640()) return true; } xsp = jj_scanpos; if (jj_3R_641()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_451() { if (jj_3R_612()) return true; return false; } private boolean jj_3R_450() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_218()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_637()) jj_scanpos = xsp; while (true) { xsp = jj_scanpos; if (jj_3R_638()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_449() { if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_635()) { jj_scanpos = xsp; if (jj_3R_636()) return true; } if (jj_scan_token(AS)) return true; if (jj_3R_443()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_448() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_338()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_633()) jj_scanpos = xsp; if (jj_scan_token(RETURNING)) return true; if (jj_3R_390()) return true; xsp = jj_scanpos; if (jj_3R_634()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_447() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_213()) return true; if (jj_scan_token(AS)) return true; if (jj_3R_443()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_446() { if (jj_3R_611()) return true; return false; } private boolean jj_3R_253() { if (jj_3R_283()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; jj_lookingAhead = true; jj_semLA = "TRIM".equalsIgnoreCase(token.getImage()); jj_lookingAhead = false; if (!jj_semLA || jj_3R_446()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = "XMLCAST".equalsIgnoreCase(token.getImage()); jj_lookingAhead = false; if (!jj_semLA || jj_3R_447()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = "XMLQUERY".equalsIgnoreCase(token.getImage()); jj_lookingAhead = false; if (!jj_semLA || jj_3R_448()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = "CAST".equalsIgnoreCase(token.getImage()); jj_lookingAhead = false; if (!jj_semLA || jj_3R_449()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = "XMLFOREST".equalsIgnoreCase(token.getImage()); jj_lookingAhead = false; if (!jj_semLA || jj_3R_450()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = "XMLELEMENT".equalsIgnoreCase(token.getImage()); jj_lookingAhead = false; if (!jj_semLA || jj_3R_451()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = "XMLROOT".equalsIgnoreCase(token.getImage()); jj_lookingAhead = false; if (!jj_semLA || jj_3R_452()) { jj_scanpos = xsp; if (jj_3R_453()) return true; } } } } } } } return false; } private boolean jj_3R_234() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_239() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_238() { if (jj_3R_390()) return true; return false; } private boolean jj_3_95() { if (jj_3R_208()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_237() { if (jj_3R_390()) return true; return false; } private boolean jj_3_94() { if (jj_3R_207()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_240() { if (jj_3R_233()) return true; return false; } private boolean jj_3R_236() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_282() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_94()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3_95()) jj_scanpos = xsp; if (jj_3R_233()) return true; if (jj_scan_token(LPAREN)) return true; if (jj_scan_token(PLUSSIGN)) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_235() { if (jj_3R_390()) return true; return false; } private boolean jj_3_93() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(19)) { jj_scanpos = xsp; if (jj_3R_240()) return true; } return false; } private boolean jj_3R_232() { if (jj_3R_233()) return true; return false; } private boolean jj_3R_231() { if (jj_3R_233()) return true; return false; } private boolean jj_3_92() { if (jj_3R_233()) return true; if (jj_scan_token(REM)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; jj_lookingAhead = true; jj_semLA = isKeyword("isopen"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_234()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("found"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_235()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("notfound"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_236()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("rowcount"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_237()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("bulk_rowcount"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_238()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("bulk_exceptions"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_239()) return true; } } } } } return false; } private boolean jj_3_91() { if (jj_3R_208()) return true; if (jj_scan_token(DOT)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(19)) { jj_scanpos = xsp; if (jj_3R_232()) return true; } return false; } private boolean jj_3_90() { if (jj_3R_207()) return true; if (jj_scan_token(DOT)) return true; if (jj_3R_208()) return true; if (jj_scan_token(DOT)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(19)) { jj_scanpos = xsp; if (jj_3R_231()) return true; } return false; } private boolean jj_3_89() { if (jj_3R_198()) return true; if (jj_scan_token(DOT)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(183)) { jj_scanpos = xsp; if (jj_scan_token(259)) return true; } return false; } private boolean jj_3_88() { if (jj_3R_230()) return true; return false; } private boolean jj_3R_182() { if (jj_scan_token(ALTER)) return true; if (jj_scan_token(TRIGGER)) return true; if (jj_3R_335()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_510() { if (jj_3R_200()) return true; return false; } private boolean jj_3R_509() { if (jj_3R_338()) return true; return false; } private boolean jj_3_87() { if (jj_scan_token(ROWNUM)) return true; return false; } private boolean jj_3R_523() { if (jj_3R_652()) return true; return false; } private boolean jj_3R_287() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_87()) { jj_scanpos = xsp; if (jj_3R_509()) { jj_scanpos = xsp; if (jj_3R_510()) { jj_scanpos = xsp; if (jj_3_88()) { jj_scanpos = xsp; if (jj_3_89()) { jj_scanpos = xsp; if (jj_3_90()) { jj_scanpos = xsp; if (jj_3_91()) { jj_scanpos = xsp; if (jj_3_92()) { jj_scanpos = xsp; if (jj_3_93()) return true; } } } } } } } } return false; } private boolean jj_3R_1131() { if (jj_scan_token(COMMA)) return true; if (jj_3R_229()) return true; return false; } private boolean jj_3_78() { if (jj_3R_228()) return true; return false; } private boolean jj_3R_606() { if (jj_scan_token(COMMA)) return true; if (jj_3R_218()) return true; return false; } private boolean jj_3_234() { if (jj_3R_190()) return true; return false; } private boolean jj_3R_301() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_234()) { jj_scanpos = xsp; if (jj_3R_523()) return true; } return false; } private boolean jj_3R_218() { if (jj_3R_426()) return true; return false; } private boolean jj_3R_705() { if (jj_3R_229()) return true; return false; } private boolean jj_3_86() { if (jj_3R_229()) return true; return false; } private boolean jj_3_85() { if (jj_3R_228()) return true; return false; } private boolean jj_3_84() { if (jj_scan_token(COMMA)) return true; if (jj_3R_218()) return true; return false; } private boolean jj_3R_652() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(422)) { jj_scanpos = xsp; if (jj_scan_token(421)) { jj_scanpos = xsp; if (jj_scan_token(416)) { jj_scanpos = xsp; if (jj_scan_token(415)) { jj_scanpos = xsp; if (jj_scan_token(420)) { jj_scanpos = xsp; if (jj_scan_token(425)) return true; } } } } } return false; } private boolean jj_3R_215() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_85()) { jj_scanpos = xsp; if (jj_3_86()) return true; } return false; } private boolean jj_3R_442() { if (jj_3R_218()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_606()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_1146() { if (jj_scan_token(31)) return true; return false; } private boolean jj_3R_229() { if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_442()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3_72() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(73)) { jj_scanpos = xsp; if (jj_scan_token(129)) return true; } if (jj_3R_226()) return true; return false; } private boolean jj_3_77() { if (jj_3R_202()) return true; return false; } private boolean jj_3R_393() { if (jj_scan_token(DISASSOCIATE)) return true; if (jj_scan_token(STATISTICS)) return true; return false; } private boolean jj_3R_228() { if (jj_3R_218()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3_84()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_392() { if (jj_3R_390()) return true; return false; } private boolean jj_3_233() { if (jj_3R_198()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_391() { if (jj_scan_token(ASSOCIATE)) return true; if (jj_scan_token(STATISTICS)) return true; return false; } private boolean jj_3_83() { if (jj_3R_218()) return true; return false; } private boolean jj_3_82() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_229()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_1131()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3_73() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(73)) { jj_scanpos = xsp; if (jj_scan_token(129)) return true; } if (jj_3R_226()) return true; return false; } private boolean jj_3R_190() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(72)) { jj_scanpos = xsp; if (jj_scan_token(406)) { jj_scanpos = xsp; if (jj_3R_391()) { jj_scanpos = xsp; if (jj_scan_token(408)) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("COMMENT"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_392()) { jj_scanpos = xsp; if (jj_scan_token(90)) { jj_scanpos = xsp; if (jj_3R_393()) { jj_scanpos = xsp; if (jj_scan_token(96)) { jj_scanpos = xsp; if (jj_scan_token(106)) { jj_scanpos = xsp; if (jj_scan_token(418)) { jj_scanpos = xsp; if (jj_scan_token(309)) { jj_scanpos = xsp; if (jj_scan_token(135)) { jj_scanpos = xsp; if (jj_scan_token(426)) return true; } } } } } } } } } } } } return false; } private boolean jj_3_81() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_228()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_1116() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(74)) { jj_scanpos = xsp; if (jj_scan_token(333)) { jj_scanpos = xsp; if (jj_scan_token(71)) return true; } } return false; } private boolean jj_3_80() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_202()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3_232() { if (jj_3R_190()) return true; return false; } private boolean jj_3R_1140() { if (jj_scan_token(ASSIGN)) return true; return false; } private boolean jj_3R_1145() { if (jj_scan_token(ASSIGN)) return true; return false; } private boolean jj_3R_1139() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1145()) { jj_scanpos = xsp; if (jj_3R_1146()) return true; } return false; } private boolean jj_3_79() { if (jj_3R_218()) return true; return false; } private boolean jj_3R_605() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_79()) { jj_scanpos = xsp; if (jj_3R_705()) return true; } if (jj_3R_1115()) return true; xsp = jj_scanpos; if (jj_3R_1116()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3_80()) { jj_scanpos = xsp; if (jj_3_81()) { jj_scanpos = xsp; if (jj_3_82()) { jj_scanpos = xsp; if (jj_3_83()) return true; } } } return false; } private boolean jj_3_230() { if (jj_3R_198()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_1130() { if (jj_scan_token(31)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1140()) jj_scanpos = xsp; return false; } private boolean jj_3R_1129() { if (jj_scan_token(LT)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1139()) jj_scanpos = xsp; return false; } private boolean jj_3_225() { if (jj_3R_301()) return true; return false; } private boolean jj_3_231() { if (jj_3R_190()) return true; return false; } private boolean jj_3R_1128() { if (jj_scan_token(XOR)) return true; if (jj_scan_token(ASSIGN)) return true; return false; } private boolean jj_3R_1127() { if (jj_scan_token(BANG)) return true; if (jj_scan_token(ASSIGN)) return true; return false; } private boolean jj_3R_1126() { if (jj_scan_token(ASSIGN)) return true; return false; } private boolean jj_3R_1115() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1126()) { jj_scanpos = xsp; if (jj_3R_1127()) { jj_scanpos = xsp; if (jj_3R_1128()) { jj_scanpos = xsp; if (jj_3R_1129()) { jj_scanpos = xsp; if (jj_3R_1130()) return true; } } } } return false; } private boolean jj_3_74() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(73)) { jj_scanpos = xsp; if (jj_scan_token(129)) return true; } if (jj_3R_226()) return true; return false; } private boolean jj_3_223() { if (jj_3R_301()) return true; return false; } private boolean jj_3R_603() { if (jj_3R_218()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(123)) jj_scanpos = xsp; if (jj_scan_token(IN)) return true; if (jj_scan_token(LPAREN)) return true; xsp = jj_scanpos; if (jj_3_77()) { jj_scanpos = xsp; if (jj_3_78()) return true; } if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3_75() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_218()) return true; if (jj_scan_token(COMMA)) return true; return false; } private boolean jj_3R_302() { if (jj_scan_token(COMMA)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3R_427() { if (jj_scan_token(ESCAPE)) return true; if (jj_3R_218()) return true; return false; } private boolean jj_3_76() { if (jj_3R_227()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3_74()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_599() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_226()) return true; if (jj_scan_token(RPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3_73()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_598() { if (jj_3R_227()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3_72()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_300() { if (jj_scan_token(COMMA)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3R_597() { if (jj_scan_token(NOT)) return true; if (jj_3R_226()) return true; return false; } private boolean jj_3R_430() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_597()) { jj_scanpos = xsp; if (jj_3R_598()) { jj_scanpos = xsp; if (jj_3R_599()) { jj_scanpos = xsp; if (jj_3_76()) return true; } } } return false; } private boolean jj_3R_225() { if (jj_3R_208()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(123)) jj_scanpos = xsp; if (jj_scan_token(SUBMULTISET)) return true; xsp = jj_scanpos; if (jj_scan_token(126)) jj_scanpos = xsp; if (jj_3R_208()) return true; return false; } private boolean jj_3_226() { if (jj_3R_198()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3_229() { if (jj_3R_198()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3_224() { if (jj_scan_token(OF)) return true; if (jj_3R_198()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_302()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_224() { if (jj_3R_218()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(123)) jj_scanpos = xsp; if (jj_scan_token(MEMBER)) return true; xsp = jj_scanpos; if (jj_scan_token(126)) jj_scanpos = xsp; if (jj_3R_208()) return true; return false; } private boolean jj_3R_223() { if (jj_3R_208()) return true; if (jj_scan_token(IS)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(123)) jj_scanpos = xsp; if (jj_scan_token(EMPTY)) return true; return false; } private boolean jj_3_222() { if (jj_scan_token(OF)) return true; if (jj_3R_198()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_300()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_222() { if (jj_3R_208()) return true; if (jj_scan_token(IS)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(123)) jj_scanpos = xsp; if (jj_scan_token(A)) return true; if (jj_scan_token(SET)) return true; return false; } private boolean jj_3R_552() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(194)) { jj_scanpos = xsp; if (jj_scan_token(263)) return true; } return false; } private boolean jj_3_71() { if (jj_3R_225()) return true; return false; } private boolean jj_3_70() { if (jj_3R_224()) return true; return false; } private boolean jj_3_69() { if (jj_3R_223()) return true; return false; } private boolean jj_3_68() { if (jj_3R_222()) return true; return false; } private boolean jj_3R_216() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_68()) { jj_scanpos = xsp; if (jj_3_69()) { jj_scanpos = xsp; if (jj_3_70()) { jj_scanpos = xsp; if (jj_3_71()) return true; } } } return false; } private boolean jj_3R_601() { if (jj_scan_token(EXISTS)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_202()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_553() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(189)) { jj_scanpos = xsp; if (jj_scan_token(114)) { jj_scanpos = xsp; if (jj_scan_token(149)) return true; } } return false; } private boolean jj_3_227() { if (jj_3R_198()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_1113() { if (jj_scan_token(COMMA)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(475)) { jj_scanpos = xsp; if (jj_scan_token(492)) return true; } return false; } private boolean jj_3R_334() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_227()) jj_scanpos = xsp; if (jj_3R_198()) return true; return false; } private boolean jj_3_228() { if (jj_scan_token(NESTED)) return true; if (jj_scan_token(TABLE)) return true; return false; } private boolean jj_3R_333() { if (jj_scan_token(OR)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_553()) { jj_scanpos = xsp; if (jj_3_225()) return true; } return false; } private boolean jj_3R_332() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(189)) { jj_scanpos = xsp; if (jj_scan_token(114)) { jj_scanpos = xsp; if (jj_scan_token(149)) return true; } } xsp = jj_scanpos; if (jj_3_222()) jj_scanpos = xsp; return false; } private boolean jj_3R_551() { if (jj_scan_token(OR)) return true; if (jj_3R_390()) return true; return false; } private boolean jj_3R_600() { if (jj_scan_token(REGEXP_LIKE)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_218()) return true; if (jj_scan_token(COMMA)) return true; if (jj_3R_218()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1113()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_219() { if (jj_3R_218()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(123)) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(118)) { jj_scanpos = xsp; if (jj_scan_token(237)) { jj_scanpos = xsp; if (jj_scan_token(238)) { jj_scanpos = xsp; if (jj_scan_token(239)) return true; } } } if (jj_3R_218()) return true; xsp = jj_scanpos; if (jj_3R_427()) jj_scanpos = xsp; return false; } private boolean jj_3R_331() { if (jj_scan_token(CREATE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_551()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_552()) jj_scanpos = xsp; return false; } private boolean jj_3R_181() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_331()) jj_scanpos = xsp; if (jj_scan_token(TRIGGER)) return true; if (jj_3R_309()) return true; xsp = jj_scanpos; if (jj_scan_token(382)) { jj_scanpos = xsp; if (jj_scan_token(381)) { jj_scanpos = xsp; if (jj_scan_token(383)) { jj_scanpos = xsp; if (jj_scan_token(102)) return true; } } } xsp = jj_scanpos; if (jj_3R_332()) { jj_scanpos = xsp; if (jj_3_223()) return true; } while (true) { xsp = jj_scanpos; if (jj_3R_333()) { jj_scanpos = xsp; break; } } if (jj_scan_token(ON)) return true; xsp = jj_scanpos; if (jj_scan_token(410)) { jj_scanpos = xsp; if (jj_3_228()) { jj_scanpos = xsp; if (jj_3R_334()) return true; } } return false; } private boolean jj_3R_220() { if (jj_3R_218()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(123)) jj_scanpos = xsp; if (jj_scan_token(BETWEEN)) return true; if (jj_3R_218()) return true; if (jj_scan_token(AND)) return true; if (jj_3R_218()) return true; return false; } private boolean jj_3_67() { if (jj_3R_221()) return true; if (jj_scan_token(IS)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(123)) jj_scanpos = xsp; if (jj_scan_token(OF)) return true; return false; } private boolean jj_3R_217() { if (jj_3R_218()) return true; if (jj_scan_token(IS)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(123)) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(253)) { jj_scanpos = xsp; if (jj_scan_token(226)) return true; } return false; } private boolean jj_3_66() { if (jj_3R_221()) return true; if (jj_scan_token(IS)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(123)) jj_scanpos = xsp; if (jj_scan_token(NULL)) return true; return false; } private boolean jj_3_65() { if (jj_3R_220()) return true; return false; } private boolean jj_3_64() { if (jj_3R_219()) return true; return false; } private boolean jj_3R_441() { if (jj_3R_605()) return true; return false; } private boolean jj_3_63() { if (jj_3R_218()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(123)) jj_scanpos = xsp; if (jj_scan_token(IN)) return true; return false; } private boolean jj_3R_440() { if (jj_3R_604()) return true; return false; } private boolean jj_3_62() { if (jj_3R_217()) return true; return false; } private boolean jj_3R_439() { if (jj_3R_279()) return true; return false; } private boolean jj_3_61() { if (jj_3R_216()) return true; return false; } private boolean jj_3R_438() { if (jj_3R_220()) return true; return false; } private boolean jj_3R_437() { if (jj_3R_219()) return true; return false; } private boolean jj_3_60() { if (jj_scan_token(EXISTS)) return true; return false; } private boolean jj_3R_436() { if (jj_3R_603()) return true; return false; } private boolean jj_3_59() { if (jj_scan_token(REGEXP_LIKE)) return true; return false; } private boolean jj_3R_435() { if (jj_3R_217()) return true; return false; } private boolean jj_3R_434() { if (jj_3R_216()) return true; return false; } private boolean jj_3R_878() { if (jj_scan_token(WITH)) return true; if (jj_scan_token(TIES)) return true; return false; } private boolean jj_3R_433() { if (jj_3R_602()) return true; return false; } private boolean jj_3R_432() { if (jj_3R_601()) return true; return false; } private boolean jj_3R_431() { if (jj_3R_600()) return true; return false; } private boolean jj_3R_227() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_431()) { jj_scanpos = xsp; if (jj_3R_432()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("XMLEXISTS"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_433()) { jj_scanpos = xsp; if (jj_3R_434()) { jj_scanpos = xsp; if (jj_3R_435()) { jj_scanpos = xsp; if (jj_3R_436()) { jj_scanpos = xsp; if (jj_3R_437()) { jj_scanpos = xsp; if (jj_3R_438()) { jj_scanpos = xsp; if (jj_3R_439()) { jj_scanpos = xsp; if (jj_3R_440()) { jj_scanpos = xsp; if (jj_3R_441()) return true; } } } } } } } } } } return false; } private boolean jj_3R_226() { if (jj_3R_430()) return true; return false; } private boolean jj_3_57() { if (jj_scan_token(COMMA)) return true; if (jj_3R_215()) return true; return false; } private boolean jj_3R_811() { if (jj_scan_token(WHERE)) return true; if (jj_3R_226()) return true; return false; } private boolean jj_3_58() { if (jj_scan_token(WHERE)) return true; if (jj_scan_token(CURRENT)) return true; if (jj_scan_token(OF)) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3R_722() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_58()) { jj_scanpos = xsp; if (jj_3R_811()) return true; } return false; } private boolean jj_3_56() { if (jj_3R_214()) return true; return false; } private boolean jj_3_55() { if (jj_3R_211()) return true; return false; } private boolean jj_3R_214() { if (jj_3R_215()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3_57()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_860() { if (jj_scan_token(INTERFACE)) return true; if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3R_859() { if (jj_scan_token(EXCEPTION_INIT)) return true; if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3R_938() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(8)) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3_55()) { jj_scanpos = xsp; if (jj_3_56()) return true; } return false; } private boolean jj_3R_858() { if (jj_scan_token(RESTRICT_REFERENCES)) return true; if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3R_212() { if (jj_scan_token(GROUPING)) return true; if (jj_scan_token(SETS)) return true; if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_938()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_938()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_774() { if (jj_scan_token(PRAGMA)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(65)) { jj_scanpos = xsp; if (jj_scan_token(68)) { jj_scanpos = xsp; if (jj_3R_858()) { jj_scanpos = xsp; if (jj_3R_859()) { jj_scanpos = xsp; if (jj_3R_860()) return true; } } } } return false; } private boolean jj_3R_211() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(316)) { jj_scanpos = xsp; if (jj_scan_token(181)) return true; } if (jj_scan_token(LPAREN)) return true; if (jj_3R_214()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_877() { if (jj_3R_200()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(289)) jj_scanpos = xsp; return false; } private boolean jj_3_53() { if (jj_3R_213()) return true; return false; } private boolean jj_3_52() { if (jj_3R_212()) return true; return false; } private boolean jj_3R_814() { if (jj_scan_token(HAVING)) return true; if (jj_3R_226()) return true; return false; } private boolean jj_3R_587() { if (jj_scan_token(ALL)) return true; return false; } private boolean jj_3_51() { if (jj_3R_211()) return true; return false; } private boolean jj_3_54() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(8)) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3_51()) { jj_scanpos = xsp; if (jj_3_52()) { jj_scanpos = xsp; if (jj_3_53()) return true; } } return false; } private boolean jj_3R_724() { if (jj_scan_token(GROUP)) return true; if (jj_scan_token(BY)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3_54()) return true; while (true) { xsp = jj_scanpos; if (jj_3_54()) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; if (jj_3R_814()) jj_scanpos = xsp; return false; } private boolean jj_3R_297() { if (jj_3R_198()) return true; if (jj_3R_443()) return true; return false; } private boolean jj_3R_917() { if (jj_3R_724()) return true; return false; } private boolean jj_3R_916() { if (jj_3R_723()) return true; return false; } private boolean jj_3R_915() { if (jj_3R_722()) return true; return false; } private boolean jj_3R_589() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_694() { if (jj_3R_619()) return true; return false; } private boolean jj_3R_588() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_694()) jj_scanpos = xsp; if (jj_3R_461()) return true; if (jj_3R_462()) return true; if (jj_3R_624()) return true; xsp = jj_scanpos; if (jj_3R_915()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_916()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_917()) jj_scanpos = xsp; return false; } private boolean jj_3R_918() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_422() { if (jj_scan_token(FETCH)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_589()) { jj_scanpos = xsp; if (jj_scan_token(258)) return true; } xsp = jj_scanpos; if (jj_3R_877()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(317)) { jj_scanpos = xsp; if (jj_scan_token(318)) return true; } xsp = jj_scanpos; if (jj_scan_token(276)) { jj_scanpos = xsp; if (jj_3R_878()) return true; } return false; } private boolean jj_3R_421() { if (jj_scan_token(OFFSET)) return true; if (jj_3R_200()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(317)) { jj_scanpos = xsp; if (jj_scan_token(318)) return true; } return false; } private boolean jj_3R_816() { if (jj_scan_token(COMMA)) return true; if (jj_3R_815()) return true; return false; } private boolean jj_3R_210() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_421()) { jj_scanpos = xsp; if (jj_3R_422()) return true; } return false; } private boolean jj_3R_876() { if (jj_scan_token(NULLS)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_918()) { jj_scanpos = xsp; if (jj_scan_token(30)) return true; } return false; } private boolean jj_3R_875() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(76)) { jj_scanpos = xsp; if (jj_scan_token(94)) return true; } return false; } private boolean jj_3R_815() { if (jj_3R_218()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_875()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_876()) jj_scanpos = xsp; return false; } private boolean jj_3R_209() { if (jj_scan_token(ORDER)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(329)) jj_scanpos = xsp; if (jj_scan_token(BY)) return true; if (jj_3R_815()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_816()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_778() { if (jj_scan_token(CASCADE)) return true; return false; } private boolean jj_3R_418() { if (jj_scan_token(MINUS)) return true; return false; } private boolean jj_3_48() { if (jj_3R_201()) return true; if (jj_3R_202()) return true; return false; } private boolean jj_3R_417() { if (jj_scan_token(INTERSECT)) return true; return false; } private boolean jj_3R_416() { if (jj_scan_token(UNION)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_587()) jj_scanpos = xsp; return false; } private boolean jj_3R_666() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(231)) { jj_scanpos = xsp; if (jj_3R_778()) return true; } return false; } private boolean jj_3R_201() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_416()) { jj_scanpos = xsp; if (jj_3R_417()) { jj_scanpos = xsp; if (jj_3R_418()) return true; } } return false; } private boolean jj_3R_299() { if (jj_3R_519()) return true; return false; } private boolean jj_3_221() { if (jj_3R_296()) return true; return false; } private boolean jj_3_50() { if (jj_3R_210()) return true; return false; } private boolean jj_3R_298() { if (jj_scan_token(AUTHID)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(64)) { jj_scanpos = xsp; if (jj_scan_token(63)) return true; } return false; } private boolean jj_3R_420() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_202()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3_49() { if (jj_3R_209()) return true; return false; } private boolean jj_3R_419() { if (jj_3R_588()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3_48()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3_44() { if (jj_scan_token(COMMA)) return true; if (jj_3R_204()) return true; return false; } private boolean jj_3R_665() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(123)) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(209)) { jj_scanpos = xsp; if (jj_scan_token(227)) { jj_scanpos = xsp; if (jj_scan_token(125)) return true; } } return false; } private boolean jj_3_220() { if (jj_3R_296()) return true; return false; } private boolean jj_3R_202() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_419()) { jj_scanpos = xsp; if (jj_3R_420()) return true; } xsp = jj_scanpos; if (jj_3_49()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3_50()) jj_scanpos = xsp; return false; } private boolean jj_3_47() { if (jj_3R_208()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3_46() { if (jj_3R_207()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_204() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_46()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3_47()) jj_scanpos = xsp; if (jj_3R_233()) return true; return false; } private boolean jj_3R_206() { if (jj_3R_390()) return true; if (jj_3R_390()) return true; return false; } private boolean jj_3R_205() { if (jj_3R_390()) return true; if (jj_scan_token(UNSIGNED_NUMERIC_LITERAL)) return true; return false; } private boolean jj_3_219() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_298()) { jj_scanpos = xsp; if (jj_3R_299()) return true; } return false; } private boolean jj_3_45() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(124)) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("WAIT"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_205()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("SKIP"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_206()) return true; } } return false; } private boolean jj_3R_664() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_817() { if (jj_scan_token(OF)) return true; if (jj_3R_204()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3_44()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_203() { if (jj_scan_token(FOR)) return true; if (jj_scan_token(UPDATE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_817()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3_45()) jj_scanpos = xsp; return false; } private boolean jj_3_43() { if (jj_3R_203()) return true; return false; } private boolean jj_3R_629() { if (jj_3R_210()) return true; return false; } private boolean jj_3R_628() { if (jj_3R_209()) return true; return false; } private boolean jj_3R_464() { if (jj_3R_623()) return true; return false; } private boolean jj_3_42() { if (jj_3R_201()) return true; if (jj_3R_202()) return true; return false; } private boolean jj_3R_627() { if (jj_3R_724()) return true; return false; } private boolean jj_3R_626() { if (jj_3R_723()) return true; return false; } private boolean jj_3R_625() { if (jj_3R_722()) return true; return false; } private boolean jj_3R_465() { if (jj_3R_624()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_625()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_626()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_627()) jj_scanpos = xsp; while (true) { xsp = jj_scanpos; if (jj_3_42()) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; if (jj_3R_628()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_629()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3_43()) jj_scanpos = xsp; return false; } private boolean jj_3R_463() { if (jj_3R_622()) return true; return false; } private boolean jj_3R_460() { if (jj_3R_619()) return true; return false; } private boolean jj_3R_262() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_460()) jj_scanpos = xsp; if (jj_3R_461()) return true; if (jj_3R_462()) return true; xsp = jj_scanpos; if (jj_3R_463()) { jj_scanpos = xsp; if (jj_3R_464()) return true; } if (jj_3R_465()) return true; return false; } private boolean jj_3R_713() { if (jj_scan_token(ALL)) return true; return false; } private boolean jj_3R_712() { if (jj_scan_token(UNIQUE)) return true; return false; } private boolean jj_3R_620() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_711()) { jj_scanpos = xsp; if (jj_3R_712()) { jj_scanpos = xsp; if (jj_3R_713()) return true; } } return false; } private boolean jj_3R_711() { if (jj_scan_token(DISTINCT)) return true; return false; } private boolean jj_3R_461() { if (jj_scan_token(SELECT)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_620()) jj_scanpos = xsp; return false; } private boolean jj_3R_884() { if (jj_scan_token(MERGE)) return true; return false; } private boolean jj_3R_777() { if (jj_scan_token(DROP)) return true; return false; } private boolean jj_3R_883() { if (jj_scan_token(LOCK)) return true; if (jj_scan_token(TABLE)) return true; return false; } private boolean jj_3R_882() { if (jj_scan_token(SET)) return true; if (jj_scan_token(TRANSACTION)) return true; return false; } private boolean jj_3R_881() { if (jj_scan_token(SAVEPOINT)) return true; return false; } private boolean jj_3R_880() { if (jj_scan_token(ROLLBACK)) return true; return false; } private boolean jj_3R_879() { if (jj_scan_token(COMMIT)) return true; return false; } private boolean jj_3R_820() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(136)) { jj_scanpos = xsp; if (jj_scan_token(149)) { jj_scanpos = xsp; if (jj_scan_token(114)) { jj_scanpos = xsp; if (jj_scan_token(189)) { jj_scanpos = xsp; if (jj_3R_879()) { jj_scanpos = xsp; if (jj_3R_880()) { jj_scanpos = xsp; if (jj_3R_881()) { jj_scanpos = xsp; if (jj_3R_882()) { jj_scanpos = xsp; if (jj_3R_883()) { jj_scanpos = xsp; if (jj_3R_884()) { jj_scanpos = xsp; if (jj_scan_token(155)) return true; } } } } } } } } } } if (jj_3R_335()) return true; return false; } private boolean jj_3R_525() { return false; } private boolean jj_3R_776() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(8)) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(156)) { jj_scanpos = xsp; if (jj_scan_token(250)) return true; } return false; } private boolean jj_3R_663() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_776()) { jj_scanpos = xsp; if (jj_3R_777()) return true; } return false; } private boolean jj_3R_658() { if (jj_3R_297()) return true; return false; } private boolean jj_3R_543() { if (jj_scan_token(ALTER)) return true; if (jj_scan_token(TYPE)) return true; if (jj_3R_662()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_663()) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; if (jj_3R_664()) jj_scanpos = xsp; while (true) { xsp = jj_scanpos; if (jj_3R_665()) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; if (jj_3R_666()) jj_scanpos = xsp; return false; } private boolean jj_3_218() { if (jj_3R_297()) return true; return false; } private boolean jj_3R_544() { if (jj_3R_543()) return true; return false; } private boolean jj_3R_322() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(7)) { jj_scanpos = xsp; if (jj_scan_token(20)) return true; } while (true) { xsp = jj_scanpos; if (jj_3R_544()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_321() { if (jj_3R_543()) return true; return false; } private boolean jj_3R_660() { if (jj_3R_296()) return true; return false; } private boolean jj_3R_661() { if (jj_3R_774()) return true; return false; } private boolean jj_3R_320() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(123)) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(209)) { jj_scanpos = xsp; if (jj_scan_token(227)) { jj_scanpos = xsp; if (jj_scan_token(125)) return true; } } return false; } private boolean jj_3R_542() { if (jj_scan_token(COMMA)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_660()) { jj_scanpos = xsp; if (jj_3_218()) { jj_scanpos = xsp; if (jj_3R_661()) return true; } } return false; } private boolean jj_3R_659() { if (jj_3R_774()) return true; return false; } private boolean jj_3_217() { if (jj_3R_296()) return true; return false; } private boolean jj_3R_541() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_217()) { jj_scanpos = xsp; if (jj_3R_658()) { jj_scanpos = xsp; if (jj_3R_659()) return true; } } return false; } private boolean jj_3R_319() { if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_541()) { jj_scanpos = xsp; break; } } while (true) { xsp = jj_scanpos; if (jj_3R_542()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_318() { if (jj_3R_530()) return true; return false; } private boolean jj_3_215() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(117)) { jj_scanpos = xsp; if (jj_scan_token(75)) return true; } if (jj_3R_295()) return true; if (jj_scan_token(OF)) return true; if (jj_3R_443()) return true; return false; } private boolean jj_3R_294() { if (jj_3R_519()) return true; return false; } private boolean jj_3_214() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(117)) { jj_scanpos = xsp; if (jj_scan_token(75)) return true; } if (jj_scan_token(OPAQUE)) return true; if (jj_scan_token(VARYING)) return true; if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3R_293() { if (jj_scan_token(AUTHID)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(64)) { jj_scanpos = xsp; if (jj_scan_token(63)) return true; } return false; } private boolean jj_3_213() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(117)) { jj_scanpos = xsp; if (jj_scan_token(75)) return true; } if (jj_scan_token(OBJECT)) return true; return false; } private boolean jj_3_216() { if (jj_scan_token(EXTERNAL)) return true; if (jj_scan_token(IDENTIFIER)) return true; if (jj_scan_token(IDENTIFIER)) return true; if (jj_scan_token(LANGUAGE)) return true; if (jj_scan_token(JAVA)) return true; if (jj_scan_token(USING)) return true; if (jj_scan_token(IDENTIFIER)) return true; return false; } private boolean jj_3R_540() { if (jj_scan_token(UNDER)) return true; if (jj_3R_309()) return true; return false; } private boolean jj_3R_317() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_540()) { jj_scanpos = xsp; if (jj_3_213()) { jj_scanpos = xsp; if (jj_3_214()) { jj_scanpos = xsp; if (jj_3_215()) return true; } } } return false; } private boolean jj_3R_539() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(194)) { jj_scanpos = xsp; if (jj_scan_token(263)) return true; } return false; } private boolean jj_3_212() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_293()) { jj_scanpos = xsp; if (jj_3R_294()) return true; } return false; } private boolean jj_3_211() { if (jj_scan_token(OID)) return true; if (jj_scan_token(STRING_LITERAL)) return true; return false; } private boolean jj_3R_538() { if (jj_scan_token(OR)) return true; if (jj_3R_390()) return true; return false; } private boolean jj_3R_1134() { if (jj_3R_655()) return true; return false; } private boolean jj_3R_316() { if (jj_scan_token(CREATE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_538()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_539()) jj_scanpos = xsp; return false; } private boolean jj_3R_178() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_316()) jj_scanpos = xsp; if (jj_scan_token(TYPE)) return true; if (jj_3R_309()) return true; xsp = jj_scanpos; if (jj_scan_token(213)) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3_211()) jj_scanpos = xsp; while (true) { xsp = jj_scanpos; if (jj_3_212()) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; if (jj_3R_317()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3_216()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_318()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_319()) jj_scanpos = xsp; while (true) { xsp = jj_scanpos; if (jj_3R_320()) { jj_scanpos = xsp; break; } } while (true) { xsp = jj_scanpos; if (jj_3R_321()) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; if (jj_3R_322()) jj_scanpos = xsp; return false; } private boolean jj_3R_1025() { return false; } private boolean jj_3R_1119() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1134()) jj_scanpos = xsp; if (jj_scan_token(BEGIN)) return true; return false; } private boolean jj_3R_1118() { if (jj_3R_197()) return true; return false; } private boolean jj_3R_327() { return false; } private boolean jj_3R_983() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(117)) { jj_scanpos = xsp; if (jj_scan_token(75)) return true; } xsp = jj_scanpos; if (jj_3R_1118()) { jj_scanpos = xsp; if (jj_3R_1119()) return true; } return false; } private boolean jj_3_209() { if (jj_3R_198()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_335() { return false; } private boolean jj_3R_522() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(244)) { jj_scanpos = xsp; if (jj_scan_token(130)) return true; } return false; } private boolean jj_3R_521() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(123)) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(284)) { jj_scanpos = xsp; if (jj_scan_token(227)) { jj_scanpos = xsp; if (jj_scan_token(209)) return true; } } return false; } private boolean jj_3_210() { if (jj_3R_198()) return true; if (jj_scan_token(DOT)) return true; if (jj_3R_198()) return true; if (jj_scan_token(DOT)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3R_296() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_521()) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; if (jj_3R_522()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(177)) { jj_scanpos = xsp; if (jj_scan_token(245)) { jj_scanpos = xsp; if (jj_scan_token(337)) return true; } } if (jj_3R_396()) return true; xsp = jj_scanpos; if (jj_scan_token(190)) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(286)) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(291)) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(311)) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_983()) jj_scanpos = xsp; return false; } private boolean jj_3R_770() { if (jj_3R_198()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_895() { if (jj_scan_token(OR)) return true; if (jj_3R_662()) return true; return false; } private boolean jj_3R_389() { return false; } private boolean jj_3R_654() { if (jj_scan_token(COLUMN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_770()) jj_scanpos = xsp; if (jj_3R_198()) return true; if (jj_scan_token(DOT)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3R_896() { if (jj_3R_269()) return true; return false; } private boolean jj_3R_653() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(143)) { jj_scanpos = xsp; if (jj_scan_token(279)) { jj_scanpos = xsp; if (jj_scan_token(224)) return true; } } xsp = jj_scanpos; if (jj_3_209()) jj_scanpos = xsp; if (jj_3R_198()) return true; return false; } private boolean jj_3R_189() { jj_lookingAhead = true; jj_semLA = isKeyword("COMMENT"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_389()) return true; if (jj_3R_390()) return true; if (jj_scan_token(ON)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_653()) { jj_scanpos = xsp; if (jj_3R_654()) return true; } if (jj_scan_token(IS)) return true; if (jj_3R_338()) return true; return false; } private boolean jj_3R_857() { if (jj_scan_token(WHEN)) return true; if (jj_3R_662()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_895()) { jj_scanpos = xsp; break; } } if (jj_scan_token(THEN)) return true; if (jj_3R_896()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_896()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_549() { if (jj_3R_198()) return true; return false; } private boolean jj_3_41() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_200()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_340() { if (jj_3R_290()) return true; if (jj_scan_token(IDENTIFIED)) return true; return false; } private boolean jj_3R_339() { if (jj_scan_token(CONNECT)) return true; if (jj_scan_token(TO)) return true; return false; } private boolean jj_3R_643() { if (jj_scan_token(TO)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(377)) { jj_scanpos = xsp; if (jj_scan_token(252)) { jj_scanpos = xsp; if (jj_scan_token(186)) { jj_scanpos = xsp; if (jj_scan_token(219)) { jj_scanpos = xsp; if (jj_scan_token(248)) { jj_scanpos = xsp; if (jj_scan_token(324)) return true; } } } } } xsp = jj_scanpos; if (jj_3_41()) jj_scanpos = xsp; return false; } private boolean jj_3R_761() { if (jj_scan_token(LOCAL)) return true; return false; } private boolean jj_3R_480() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_642()) { jj_scanpos = xsp; if (jj_3R_643()) return true; } return false; } private boolean jj_3R_642() { if (jj_scan_token(WITH)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_761()) jj_scanpos = xsp; if (jj_scan_token(TIME)) return true; if (jj_scan_token(ZONE)) return true; return false; } private boolean jj_3R_185() { if (jj_scan_token(CREATE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(459)) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(133)) jj_scanpos = xsp; if (jj_scan_token(DATABASE)) return true; if (jj_scan_token(LINK)) return true; if (jj_3R_309()) return true; xsp = jj_scanpos; if (jj_3R_339()) { jj_scanpos = xsp; if (jj_3R_340()) return true; } return false; } private boolean jj_3_40() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_200()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_337() { if (jj_scan_token(OR)) return true; if (jj_3R_390()) return true; return false; } private boolean jj_3R_479() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(377)) { jj_scanpos = xsp; if (jj_scan_token(252)) { jj_scanpos = xsp; if (jj_scan_token(186)) { jj_scanpos = xsp; if (jj_scan_token(219)) { jj_scanpos = xsp; if (jj_scan_token(248)) { jj_scanpos = xsp; if (jj_scan_token(324)) return true; } } } } } return false; } private boolean jj_3R_184() { if (jj_scan_token(CREATE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_337()) jj_scanpos = xsp; if (jj_scan_token(DIRECTORY)) return true; if (jj_3R_309()) return true; if (jj_scan_token(AS)) return true; if (jj_3R_338()) return true; xsp = jj_scanpos; if (jj_scan_token(7)) { jj_scanpos = xsp; if (jj_scan_token(20)) return true; } return false; } private boolean jj_3R_478() { if (jj_3R_338()) return true; return false; } private boolean jj_3R_477() { if (jj_scan_token(CHARACTER_LITERAL)) return true; return false; } private boolean jj_3R_336() { if (jj_scan_token(OR)) return true; if (jj_3R_390()) return true; return false; } private boolean jj_3R_550() { if (jj_scan_token(COMMA)) return true; return false; } private boolean jj_3R_183() { if (jj_scan_token(CREATE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_336()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(133)) jj_scanpos = xsp; if (jj_scan_token(SYNONYM)) return true; if (jj_3R_309()) return true; if (jj_scan_token(FOR)) return true; if (jj_3R_309()) return true; xsp = jj_scanpos; if (jj_scan_token(7)) { jj_scanpos = xsp; if (jj_scan_token(20)) return true; } return false; } private boolean jj_3R_328() { if (jj_scan_token(OR)) return true; if (jj_3R_390()) return true; return false; } private boolean jj_3_208() { if (jj_scan_token(COMMA)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3R_330() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_549()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_550()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_518() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_329() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(260)) jj_scanpos = xsp; if (jj_scan_token(FORCE)) return true; return false; } private boolean jj_3_35() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_200()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_276() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(230)) { jj_scanpos = xsp; if (jj_scan_token(345)) { jj_scanpos = xsp; if (jj_scan_token(185)) return true; } } xsp = jj_scanpos; if (jj_3R_477()) { jj_scanpos = xsp; if (jj_3R_478()) return true; } xsp = jj_scanpos; if (jj_3R_479()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3_40()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_480()) jj_scanpos = xsp; return false; } private boolean jj_3R_180() { if (jj_scan_token(CREATE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_328()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_329()) jj_scanpos = xsp; if (jj_scan_token(VIEW)) return true; if (jj_3R_309()) return true; xsp = jj_scanpos; if (jj_3R_330()) jj_scanpos = xsp; if (jj_scan_token(AS)) return true; if (jj_3R_202()) return true; return false; } private boolean jj_3_200() { if (jj_3R_291()) return true; return false; } private boolean jj_3_39() { if (jj_scan_token(TO)) return true; if (jj_scan_token(SECOND)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_35()) jj_scanpos = xsp; return false; } private boolean jj_3_38() { if (jj_scan_token(TO)) return true; if (jj_scan_token(MONTH)) return true; return false; } private boolean jj_3_207() { if (jj_scan_token(LPAREN)) return true; if (jj_scan_token(CREATE)) return true; return false; } private boolean jj_3_37() { if (jj_scan_token(WITH)) return true; if (jj_scan_token(TIME)) return true; if (jj_scan_token(ZONE)) return true; return false; } private boolean jj_3_206() { if (jj_scan_token(IDENTIFIER)) return true; return false; } private boolean jj_3_36() { if (jj_scan_token(WITH)) return true; if (jj_scan_token(LOCAL)) return true; if (jj_scan_token(TIME)) return true; if (jj_scan_token(ZONE)) return true; return false; } private boolean jj_3R_415() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_586()) { jj_scanpos = xsp; if (jj_3_36()) { jj_scanpos = xsp; if (jj_3_37()) { jj_scanpos = xsp; if (jj_3_38()) { jj_scanpos = xsp; if (jj_3_39()) return true; } } } } return false; } private boolean jj_3R_586() { if (jj_scan_token(CHARACTER)) return true; if (jj_scan_token(SET)) return true; if (jj_3R_277()) return true; return false; } private boolean jj_3_203() { if (jj_3R_283()) return true; if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3R_516() { if (jj_scan_token(CHECK)) return true; if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3_205() { if (jj_3R_208()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_515() { if (jj_scan_token(FOREIGN)) return true; if (jj_scan_token(KEY)) return true; return false; } private boolean jj_3R_514() { if (jj_scan_token(PRIMARY)) return true; if (jj_scan_token(KEY)) return true; return false; } private boolean jj_3R_517() { if (jj_scan_token(BY)) return true; return false; } private boolean jj_3R_513() { if (jj_scan_token(UNIQUE)) return true; if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3R_894() { if (jj_scan_token(BYTE)) return true; return false; } private boolean jj_3R_292() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_517()) { jj_scanpos = xsp; if (jj_3R_518()) return true; } return false; } private boolean jj_3R_893() { if (jj_scan_token(CHAR)) return true; return false; } private boolean jj_3R_512() { if (jj_scan_token(CONSTRAINT)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3R_892() { if (jj_scan_token(COMMA)) return true; if (jj_3R_697()) return true; return false; } private boolean jj_3R_667() { if (jj_3R_779()) return true; return false; } private boolean jj_3R_291() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_512()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_513()) { jj_scanpos = xsp; if (jj_3R_514()) { jj_scanpos = xsp; if (jj_3R_515()) { jj_scanpos = xsp; if (jj_3R_516()) return true; } } } return false; } private boolean jj_3_34() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_200()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_892()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_893()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_894()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_546() { if (jj_scan_token(EXTENDED)) return true; return false; } private boolean jj_3R_414() { if (jj_scan_token(SELF)) return true; if (jj_scan_token(AS)) return true; if (jj_scan_token(RESULT)) return true; return false; } private boolean jj_3R_411() { if (jj_scan_token(DOUBLE)) return true; if (jj_scan_token(PRECISION)) return true; return false; } private boolean jj_3R_1076() { if (jj_3R_390()) return true; return false; } private boolean jj_3_33() { if (jj_scan_token(INTERVAL)) return true; if (jj_scan_token(DAY)) return true; return false; } private boolean jj_3_32() { if (jj_scan_token(INTERVAL)) return true; if (jj_scan_token(YEAR)) return true; return false; } private boolean jj_3_204() { if (jj_scan_token(GENERATED)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_292()) jj_scanpos = xsp; if (jj_scan_token(AS)) return true; return false; } private boolean jj_3R_413() { if (jj_scan_token(29)) return true; if (jj_scan_token(CURSOR)) return true; return false; } private boolean jj_3R_547() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(123)) jj_scanpos = xsp; if (jj_scan_token(SUBSTITUTABLE)) return true; return false; } private boolean jj_3R_779() { if (jj_3R_198()) return true; if (jj_3R_443()) return true; return false; } private boolean jj_3R_1075() { if (jj_scan_token(TYPE)) return true; if (jj_scan_token(50)) return true; return false; } private boolean jj_3_199() { if (jj_3R_291()) return true; return false; } private boolean jj_3R_323() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_545()) { jj_scanpos = xsp; if (jj_scan_token(330)) { jj_scanpos = xsp; if (jj_scan_token(193)) return true; } } return false; } private boolean jj_3R_545() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(215)) { jj_scanpos = xsp; if (jj_scan_token(299)) return true; } if (jj_scan_token(TEMPORARY)) return true; return false; } private boolean jj_3_202() { if (jj_scan_token(ON)) return true; if (jj_scan_token(COMMIT)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(189)) { jj_scanpos = xsp; if (jj_scan_token(296)) return true; } if (jj_scan_token(ROWS)) return true; return false; } private boolean jj_3R_952() { return false; } private boolean jj_3_31() { if (jj_scan_token(LONG)) return true; if (jj_scan_token(RAW)) return true; return false; } private boolean jj_3_201() { if (jj_scan_token(ON)) return true; if (jj_scan_token(COMMIT)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(96)) { jj_scanpos = xsp; if (jj_scan_token(296)) return true; } if (jj_scan_token(DEFINITION)) return true; return false; } private boolean jj_3R_548() { if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_199()) { jj_scanpos = xsp; if (jj_3R_667()) return true; } return false; } private boolean jj_3R_326() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_548()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3_201()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3_202()) jj_scanpos = xsp; return false; } private boolean jj_3R_325() { if (jj_scan_token(OF)) return true; if (jj_3R_443()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_547()) jj_scanpos = xsp; return false; } private boolean jj_3R_324() { if (jj_scan_token(SHARING)) return true; if (jj_scan_token(ASSIGN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(247)) { jj_scanpos = xsp; if (jj_scan_token(184)) { jj_scanpos = xsp; if (jj_3R_546()) { jj_scanpos = xsp; if (jj_scan_token(262)) return true; } } } return false; } private boolean jj_3R_953() { if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1075()) jj_scanpos = xsp; xsp = jj_scanpos; jj_lookingAhead = true; jj_semLA = isKeyword("SCALAR"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_1076()) { jj_scanpos = xsp; if (jj_scan_token(143)) return true; } if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_412() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(168)) { jj_scanpos = xsp; if (jj_scan_token(380)) { jj_scanpos = xsp; if (jj_3_31()) { jj_scanpos = xsp; if (jj_scan_token(242)) { jj_scanpos = xsp; if (jj_scan_token(367)) { jj_scanpos = xsp; if (jj_scan_token(368)) { jj_scanpos = xsp; if (jj_scan_token(302)) { jj_scanpos = xsp; if (jj_scan_token(319)) { jj_scanpos = xsp; if (jj_scan_token(369)) { jj_scanpos = xsp; if (jj_scan_token(370)) { jj_scanpos = xsp; if (jj_scan_token(359)) { jj_scanpos = xsp; if (jj_scan_token(360)) { jj_scanpos = xsp; if (jj_scan_token(375)) { jj_scanpos = xsp; if (jj_scan_token(376)) return true; } } } } } } } } } } } } } return false; } private boolean jj_3R_179() { if (jj_scan_token(CREATE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_323()) jj_scanpos = xsp; if (jj_scan_token(TABLE)) return true; if (jj_3R_309()) return true; xsp = jj_scanpos; if (jj_3R_324()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_325()) { jj_scanpos = xsp; if (jj_3R_326()) return true; } if (jj_3R_327()) return true; xsp = jj_scanpos; if (jj_scan_token(7)) jj_scanpos = xsp; return false; } private boolean jj_3R_927() { jj_lookingAhead = true; jj_semLA = isKeyword("SQL_MACRO"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_952()) return true; if (jj_3R_390()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_953()) jj_scanpos = xsp; return false; } private boolean jj_3R_771() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(104)) { jj_scanpos = xsp; if (jj_scan_token(132)) { jj_scanpos = xsp; if (jj_scan_token(285)) { jj_scanpos = xsp; if (jj_scan_token(351)) { jj_scanpos = xsp; if (jj_scan_token(146)) return true; } } } } return false; } private boolean jj_3R_772() { if (jj_scan_token(COMMA)) return true; return false; } private boolean jj_3R_199() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(267)) { jj_scanpos = xsp; if (jj_scan_token(268)) { jj_scanpos = xsp; if (jj_scan_token(169)) { jj_scanpos = xsp; if (jj_scan_token(269)) { jj_scanpos = xsp; if (jj_scan_token(270)) { jj_scanpos = xsp; if (jj_scan_token(271)) { jj_scanpos = xsp; if (jj_scan_token(162)) { jj_scanpos = xsp; if (jj_scan_token(362)) { jj_scanpos = xsp; if (jj_scan_token(187)) { jj_scanpos = xsp; if (jj_3R_411()) { jj_scanpos = xsp; if (jj_scan_token(210)) { jj_scanpos = xsp; if (jj_scan_token(364)) { jj_scanpos = xsp; if (jj_scan_token(228)) { jj_scanpos = xsp; if (jj_scan_token(254)) { jj_scanpos = xsp; if (jj_scan_token(255)) { jj_scanpos = xsp; if (jj_scan_token(266)) { jj_scanpos = xsp; if (jj_scan_token(365)) { jj_scanpos = xsp; if (jj_scan_token(292)) { jj_scanpos = xsp; if (jj_scan_token(293)) { jj_scanpos = xsp; if (jj_scan_token(294)) { jj_scanpos = xsp; if (jj_scan_token(303)) { jj_scanpos = xsp; if (jj_scan_token(366)) { jj_scanpos = xsp; if (jj_scan_token(332)) { jj_scanpos = xsp; if (jj_3R_412()) { jj_scanpos = xsp; if (jj_scan_token(164)) { jj_scanpos = xsp; if (jj_scan_token(373)) { jj_scanpos = xsp; if (jj_scan_token(374)) { jj_scanpos = xsp; if (jj_scan_token(341)) { jj_scanpos = xsp; if (jj_3R_413()) { jj_scanpos = xsp; if (jj_scan_token(185)) { jj_scanpos = xsp; if (jj_3_32()) { jj_scanpos = xsp; if (jj_3_33()) { jj_scanpos = xsp; if (jj_scan_token(344)) { jj_scanpos = xsp; if (jj_scan_token(345)) { jj_scanpos = xsp; if (jj_3R_414()) return true; } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } xsp = jj_scanpos; if (jj_3_34()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_415()) jj_scanpos = xsp; return false; } private boolean jj_3R_520() { if (jj_scan_token(VARYING)) return true; if (jj_scan_token(ARRAY)) return true; return false; } private boolean jj_3R_519() { if (jj_scan_token(ACCESSIBLE)) return true; if (jj_scan_token(BY)) return true; if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_771()) jj_scanpos = xsp; if (jj_3R_662()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_772()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3_30() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_200()) return true; return false; } private boolean jj_3R_862() { if (jj_scan_token(LPAREN)) return true; if (jj_scan_token(PARTITION)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3R_193() { if (jj_3R_198()) return true; if (jj_scan_token(EXCEPTION)) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_295() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(143)) { jj_scanpos = xsp; if (jj_scan_token(371)) { jj_scanpos = xsp; if (jj_3R_520()) return true; } } xsp = jj_scanpos; if (jj_3_30()) jj_scanpos = xsp; return false; } private boolean jj_3R_837() { if (jj_scan_token(PRAGMA)) return true; if (jj_scan_token(INLINE)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_662()) return true; if (jj_scan_token(COMMA)) return true; return false; } private boolean jj_3R_688() { if (jj_3R_662()) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_525()) return true; return false; } private boolean jj_3R_856() { if (jj_scan_token(CC_ELSE)) return true; if (jj_3R_443()) return true; return false; } private boolean jj_3R_687() { if (jj_scan_token(INTERFACE)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_scan_token(IDENTIFIER)) return true; if (jj_scan_token(COMMA)) return true; return false; } private boolean jj_3R_686() { if (jj_scan_token(EXCEPTION_INIT)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_scan_token(IDENTIFIER)) return true; if (jj_scan_token(COMMA)) return true; return false; } private boolean jj_3R_1047() { if (jj_scan_token(COMMA)) return true; return false; } private boolean jj_3R_685() { if (jj_scan_token(RESTRICT_REFERENCES)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_198()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_1047()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_1047()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_855() { if (jj_scan_token(CC_ELSIF)) return true; if (jj_3R_591()) return true; if (jj_scan_token(CC_THEN)) return true; if (jj_3R_443()) return true; return false; } private boolean jj_3R_684() { if (jj_scan_token(TIMESTAMP)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_338()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_706() { if (jj_scan_token(CC_IF)) return true; if (jj_3R_591()) return true; if (jj_scan_token(CC_THEN)) return true; if (jj_3R_443()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_855()) { jj_scanpos = xsp; break; } } while (true) { xsp = jj_scanpos; if (jj_3R_856()) { jj_scanpos = xsp; break; } } if (jj_scan_token(CC_END)) return true; return false; } private boolean jj_3R_769() { if (jj_scan_token(REM)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(146)) { jj_scanpos = xsp; if (jj_scan_token(321)) return true; } return false; } private boolean jj_3R_768() { if (jj_scan_token(AROBASE)) return true; if (jj_3R_662()) return true; return false; } private boolean jj_3R_576() { if (jj_scan_token(PRAGMA)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(65)) { jj_scanpos = xsp; if (jj_scan_token(68)) { jj_scanpos = xsp; if (jj_3R_684()) { jj_scanpos = xsp; if (jj_3R_685()) { jj_scanpos = xsp; if (jj_3R_686()) { jj_scanpos = xsp; if (jj_3R_687()) { jj_scanpos = xsp; if (jj_3R_688()) return true; } } } } } } if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3_28() { if (jj_scan_token(29)) return true; return false; } private boolean jj_3R_608() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_28()) jj_scanpos = xsp; if (jj_3R_662()) return true; xsp = jj_scanpos; if (jj_3R_768()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_769()) jj_scanpos = xsp; return false; } private boolean jj_3_29() { if (jj_3R_199()) return true; return false; } private boolean jj_3R_607() { if (jj_3R_706()) return true; return false; } private boolean jj_3R_443() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_607()) { jj_scanpos = xsp; if (jj_3_29()) { jj_scanpos = xsp; if (jj_3R_608()) return true; } } return false; } private boolean jj_3R_195() { if (jj_3R_400()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_845() { if (jj_3R_889()) return true; return false; } private boolean jj_3R_682() { if (jj_scan_token(_DEFAULT)) return true; return false; } private boolean jj_3R_940() { if (jj_scan_token(USING)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(450)) { jj_scanpos = xsp; if (jj_scan_token(451)) return true; } return false; } private boolean jj_3R_939() { if (jj_scan_token(_DEFAULT)) return true; if (jj_3R_213()) return true; if (jj_scan_token(ON)) return true; if (jj_3R_390()) return true; if (jj_scan_token(38)) return true; return false; } private boolean jj_3_198() { if (jj_3R_290()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(50)) { jj_scanpos = xsp; if (jj_scan_token(75)) return true; } return false; } private boolean jj_3R_683() { if (jj_3R_213()) return true; return false; } private boolean jj_3R_476() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_198()) jj_scanpos = xsp; if (jj_3R_213()) return true; xsp = jj_scanpos; if (jj_3R_939()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_940()) jj_scanpos = xsp; return false; } private boolean jj_3R_573() { if (jj_3R_198()) return true; return false; } private boolean jj_3R_681() { if (jj_scan_token(COLON)) return true; if (jj_scan_token(ASSIGN)) return true; return false; } private boolean jj_3R_920() { if (jj_scan_token(COMMA)) return true; if (jj_3R_476()) return true; return false; } private boolean jj_3R_575() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_681()) { jj_scanpos = xsp; if (jj_3R_682()) return true; } if (jj_3R_683()) return true; return false; } private boolean jj_3R_680() { if (jj_scan_token(NOT)) return true; return false; } private boolean jj_3R_889() { if (jj_3R_476()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_920()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_574() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_680()) jj_scanpos = xsp; if (jj_scan_token(NULL)) return true; return false; } private boolean jj_3_27() { if (jj_scan_token(CONSTANT)) return true; return false; } private boolean jj_3R_760() { if (jj_3R_846()) return true; return false; } private boolean jj_3R_844() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(71)) { jj_scanpos = xsp; if (jj_scan_token(95)) { jj_scanpos = xsp; if (jj_scan_token(148)) return true; } } return false; } private boolean jj_3R_400() { if (jj_3R_573()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_27()) jj_scanpos = xsp; if (jj_3R_443()) return true; xsp = jj_scanpos; if (jj_3R_574()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_575()) jj_scanpos = xsp; return false; } private boolean jj_3R_759() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_844()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(19)) { jj_scanpos = xsp; if (jj_3R_845()) return true; } return false; } private boolean jj_3R_289() { if (jj_scan_token(REM)) return true; return false; } private boolean jj_3R_951() { if (jj_scan_token(COMMA)) return true; if (jj_3R_902()) return true; return false; } private boolean jj_3R_613() { if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_759()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_760()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_897() { if (jj_3R_927()) return true; return false; } private boolean jj_3R_775() { if (jj_scan_token(DOT)) return true; if (jj_3R_194()) return true; return false; } private boolean jj_3R_861() { if (jj_3R_902()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_951()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_662() { if (jj_3R_290()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_775()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_782() { if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_861()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_673() { if (jj_3R_782()) return true; return false; } private boolean jj_3R_901() { if (jj_3R_198()) return true; return false; } private boolean jj_3R_672() { if (jj_scan_token(RETURN)) return true; if (jj_3R_443()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_897()) jj_scanpos = xsp; return false; } private boolean jj_3R_288() { if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_568() { if (jj_scan_token(PROCEDURE)) return true; if (jj_3R_309()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_673()) jj_scanpos = xsp; return false; } private boolean jj_3_197() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_288()) { jj_scanpos = xsp; if (jj_3R_289()) return true; } if (jj_3R_194()) return true; return false; } private boolean jj_3R_277() { if (jj_3R_290()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3_197()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_671() { if (jj_3R_782()) return true; return false; } private boolean jj_3R_394() { if (jj_scan_token(48)) return true; if (jj_3R_290()) return true; if (jj_scan_token(49)) return true; return false; } private boolean jj_3R_567() { if (jj_scan_token(FUNCTION)) return true; if (jj_3R_309()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_671()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_672()) jj_scanpos = xsp; return false; } private boolean jj_3R_929() { if (jj_3R_857()) return true; return false; } private boolean jj_3R_396() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_567()) { jj_scanpos = xsp; if (jj_3R_568()) return true; } return false; } private boolean jj_3R_200() { if (jj_scan_token(UNSIGNED_NUMERIC_LITERAL)) return true; return false; } private boolean jj_3R_693() { if (jj_3R_296()) return true; return false; } private boolean jj_3R_1021() { if (jj_3R_443()) return true; return false; } private boolean jj_3R_692() { if (jj_3R_192()) return true; return false; } private boolean jj_3R_900() { if (jj_scan_token(EXCEPTION)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_929()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_929()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_580() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_692()) { jj_scanpos = xsp; if (jj_3R_693()) return true; } return false; } private boolean jj_3R_928() { if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_1068() { if (jj_scan_token(COLON)) return true; if (jj_scan_token(ASSIGN)) return true; return false; } private boolean jj_3R_1022() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1068()) { jj_scanpos = xsp; if (jj_scan_token(93)) return true; } if (jj_3R_213()) return true; return false; } private boolean jj_3R_1020() { if (jj_scan_token(NOCOPY)) return true; return false; } private boolean jj_3R_1019() { if (jj_scan_token(OUT)) return true; return false; } private boolean jj_3R_1018() { if (jj_scan_token(IN)) return true; return false; } private boolean jj_3R_955() { if (jj_3R_198()) return true; return false; } private boolean jj_3R_899() { if (jj_3R_269()) return true; return false; } private boolean jj_3R_898() { if (jj_3R_576()) return true; return false; } private boolean jj_3R_784() { if (jj_scan_token(USING)) return true; if (jj_3R_198()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_928()) jj_scanpos = xsp; return false; } private boolean jj_3R_902() { if (jj_3R_198()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1018()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_1019()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_1020()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(28)) { jj_scanpos = xsp; if (jj_3R_1021()) return true; } xsp = jj_scanpos; if (jj_3R_1022()) jj_scanpos = xsp; return false; } private boolean jj_3R_787() { if (jj_3R_655()) return true; return false; } private boolean jj_3R_501() { if (jj_scan_token(A)) return true; if (jj_scan_token(SET)) return true; return false; } private boolean jj_3R_284() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_501()) { jj_scanpos = xsp; if (jj_scan_token(445)) return true; } return false; } private boolean jj_3R_399() { if (jj_3R_572()) return true; return false; } private boolean jj_3R_954() { if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3R_679() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_787()) jj_scanpos = xsp; if (jj_scan_token(BEGIN)) return true; xsp = jj_scanpos; if (jj_3R_898()) jj_scanpos = xsp; while (true) { xsp = jj_scanpos; if (jj_3R_899()) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; if (jj_3R_900()) jj_scanpos = xsp; if (jj_scan_token(END)) return true; xsp = jj_scanpos; if (jj_3R_901()) jj_scanpos = xsp; return false; } private boolean jj_3_26() { if (jj_3R_198()) return true; if (jj_scan_token(DOT)) return true; return false; } private boolean jj_3_25() { if (jj_3R_197()) return true; return false; } private boolean jj_3R_309() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_26()) jj_scanpos = xsp; if (jj_3R_198()) return true; return false; } private boolean jj_3R_230() { if (jj_scan_token(NULL)) return true; return false; } private boolean jj_3R_194() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(469)) { jj_scanpos = xsp; if (jj_scan_token(477)) { jj_scanpos = xsp; if (jj_3R_399()) { jj_scanpos = xsp; if (jj_scan_token(65)) { jj_scanpos = xsp; if (jj_scan_token(66)) { jj_scanpos = xsp; if (jj_scan_token(67)) { jj_scanpos = xsp; if (jj_scan_token(68)) { jj_scanpos = xsp; if (jj_scan_token(162)) { jj_scanpos = xsp; if (jj_scan_token(164)) { jj_scanpos = xsp; if (jj_scan_token(168)) { jj_scanpos = xsp; if (jj_scan_token(169)) { jj_scanpos = xsp; if (jj_scan_token(175)) { jj_scanpos = xsp; if (jj_scan_token(183)) { jj_scanpos = xsp; if (jj_scan_token(185)) { jj_scanpos = xsp; if (jj_scan_token(187)) { jj_scanpos = xsp; if (jj_scan_token(189)) { jj_scanpos = xsp; if (jj_scan_token(192)) { jj_scanpos = xsp; if (jj_scan_token(196)) { jj_scanpos = xsp; if (jj_scan_token(202)) { jj_scanpos = xsp; if (jj_scan_token(210)) { jj_scanpos = xsp; if (jj_scan_token(211)) { jj_scanpos = xsp; if (jj_scan_token(228)) { jj_scanpos = xsp; if (jj_scan_token(229)) { jj_scanpos = xsp; if (jj_scan_token(242)) { jj_scanpos = xsp; if (jj_scan_token(243)) { jj_scanpos = xsp; if (jj_scan_token(251)) { jj_scanpos = xsp; if (jj_scan_token(255)) { jj_scanpos = xsp; if (jj_scan_token(259)) { jj_scanpos = xsp; if (jj_scan_token(261)) { jj_scanpos = xsp; if (jj_scan_token(266)) { jj_scanpos = xsp; if (jj_scan_token(267)) { jj_scanpos = xsp; if (jj_scan_token(268)) { jj_scanpos = xsp; if (jj_scan_token(269)) { jj_scanpos = xsp; if (jj_scan_token(270)) { jj_scanpos = xsp; if (jj_scan_token(271)) { jj_scanpos = xsp; if (jj_scan_token(273)) { jj_scanpos = xsp; if (jj_scan_token(282)) { jj_scanpos = xsp; if (jj_scan_token(292)) { jj_scanpos = xsp; if (jj_scan_token(293)) { jj_scanpos = xsp; if (jj_scan_token(294)) { jj_scanpos = xsp; if (jj_scan_token(295)) { jj_scanpos = xsp; if (jj_scan_token(297)) { jj_scanpos = xsp; if (jj_scan_token(300)) { jj_scanpos = xsp; if (jj_scan_token(302)) { jj_scanpos = xsp; if (jj_scan_token(321)) { jj_scanpos = xsp; if (jj_scan_token(326)) { jj_scanpos = xsp; if (jj_scan_token(332)) { jj_scanpos = xsp; if (jj_scan_token(335)) { jj_scanpos = xsp; if (jj_scan_token(336)) { jj_scanpos = xsp; if (jj_scan_token(340)) { jj_scanpos = xsp; if (jj_scan_token(351)) { jj_scanpos = xsp; if (jj_scan_token(146)) { jj_scanpos = xsp; if (jj_scan_token(353)) { jj_scanpos = xsp; if (jj_scan_token(359)) { jj_scanpos = xsp; if (jj_scan_token(360)) { jj_scanpos = xsp; if (jj_scan_token(366)) { jj_scanpos = xsp; if (jj_scan_token(356)) return true; } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } return false; } private boolean jj_3R_786() { if (jj_scan_token(RELIES_ON)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3R_783() { if (jj_3R_862()) return true; return false; } private boolean jj_3R_566() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(194)) { jj_scanpos = xsp; if (jj_scan_token(263)) return true; } return false; } private boolean jj_3R_864() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(130)) { jj_scanpos = xsp; if (jj_scan_token(84)) return true; } xsp = jj_scanpos; if (jj_3R_955()) jj_scanpos = xsp; if (jj_scan_token(BY)) return true; if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3R_571() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(117)) { jj_scanpos = xsp; if (jj_scan_token(75)) return true; } xsp = jj_scanpos; if (jj_3_25()) { jj_scanpos = xsp; if (jj_3R_679()) return true; } return false; } private boolean jj_3R_863() { if (jj_scan_token(USING)) return true; if (jj_3R_198()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_954()) jj_scanpos = xsp; return false; } private boolean jj_3R_785() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_863()) { jj_scanpos = xsp; if (jj_3R_864()) return true; } return false; } private boolean jj_3R_511() { if (jj_3R_572()) return true; return false; } private boolean jj_3R_651() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(352)) { jj_scanpos = xsp; if (jj_scan_token(208)) return true; } return false; } private boolean jj_3R_570() { if (jj_scan_token(AGGREGATE)) return true; if (jj_scan_token(USING)) return true; if (jj_3R_198()) return true; return false; } private boolean jj_3R_678() { if (jj_scan_token(RESULT_CACHE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_786()) jj_scanpos = xsp; return false; } private boolean jj_3R_677() { if (jj_scan_token(PIPELINED)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_785()) jj_scanpos = xsp; return false; } private boolean jj_3R_676() { if (jj_scan_token(PARALLEL_ENABLE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_783()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_784()) jj_scanpos = xsp; return false; } private boolean jj_3R_338() { if (jj_scan_token(STRING_LITERAL)) return true; return false; } private boolean jj_3R_290() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(469)) { jj_scanpos = xsp; if (jj_scan_token(477)) { jj_scanpos = xsp; if (jj_3R_511()) { jj_scanpos = xsp; if (jj_scan_token(251)) { jj_scanpos = xsp; if (jj_scan_token(302)) { jj_scanpos = xsp; if (jj_scan_token(335)) { jj_scanpos = xsp; if (jj_scan_token(336)) { jj_scanpos = xsp; if (jj_scan_token(146)) { jj_scanpos = xsp; if (jj_scan_token(243)) return true; } } } } } } } } return false; } private boolean jj_3R_675() { if (jj_3R_519()) return true; return false; } private boolean jj_3R_569() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_674()) { jj_scanpos = xsp; if (jj_scan_token(190)) { jj_scanpos = xsp; if (jj_3R_675()) { jj_scanpos = xsp; if (jj_3R_676()) { jj_scanpos = xsp; if (jj_3R_677()) { jj_scanpos = xsp; if (jj_3R_678()) return true; } } } } } return false; } private boolean jj_3R_674() { if (jj_scan_token(AUTHID)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(64)) { jj_scanpos = xsp; if (jj_scan_token(63)) return true; } return false; } private boolean jj_3R_398() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_569()) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; if (jj_3R_570()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_571()) jj_scanpos = xsp; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_565() { if (jj_scan_token(OR)) return true; if (jj_3R_390()) return true; return false; } private boolean jj_3R_645() { if (jj_3R_763()) return true; return false; } private boolean jj_3R_397() { if (jj_3R_530()) return true; return false; } private boolean jj_3R_395() { if (jj_scan_token(CREATE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_565()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_566()) jj_scanpos = xsp; return false; } private boolean jj_3R_508() { if (jj_3R_276()) return true; return false; } private boolean jj_3R_192() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_395()) jj_scanpos = xsp; if (jj_3R_396()) return true; xsp = jj_scanpos; if (jj_3R_397()) { jj_scanpos = xsp; if (jj_3R_398()) return true; } return false; } private boolean jj_3R_507() { if (jj_3R_230()) return true; return false; } private boolean jj_3R_506() { if (jj_3R_651()) return true; return false; } private boolean jj_3R_505() { if (jj_3R_338()) return true; return false; } private boolean jj_3R_504() { if (jj_3R_200()) return true; return false; } private boolean jj_3R_286() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_504()) { jj_scanpos = xsp; if (jj_scan_token(475)) { jj_scanpos = xsp; if (jj_3R_505()) { jj_scanpos = xsp; if (jj_3R_506()) { jj_scanpos = xsp; if (jj_3R_507()) { jj_scanpos = xsp; if (jj_3R_508()) return true; } } } } } return false; } private boolean jj_3R_644() { if (jj_3R_762()) return true; return false; } private boolean jj_3R_912() { if (jj_3R_213()) return true; return false; } private boolean jj_3R_1092() { if (jj_scan_token(CC_ERROR)) return true; return false; } private boolean jj_3R_911() { if (jj_3R_338()) return true; return false; } private boolean jj_3R_910() { if (jj_scan_token(SESSIONTIMEZONE)) return true; return false; } private boolean jj_3R_909() { if (jj_scan_token(DBTIMEZONE)) return true; return false; } private boolean jj_3R_1091() { if (jj_3R_196()) return true; return false; } private boolean jj_3R_1050() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1091()) { jj_scanpos = xsp; if (jj_3R_1092()) return true; } return false; } private boolean jj_3R_537() { if (jj_3R_198()) return true; return false; } private boolean jj_3R_926() { if (jj_scan_token(CC_ELSE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_1050()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_649() { if (jj_scan_token(TIME)) return true; if (jj_scan_token(ZONE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_909()) { jj_scanpos = xsp; if (jj_3R_910()) { jj_scanpos = xsp; if (jj_3R_911()) { jj_scanpos = xsp; if (jj_3R_912()) return true; } } } return false; } private boolean jj_3R_498() { if (jj_3R_613()) return true; return false; } private boolean jj_3R_648() { if (jj_scan_token(LOCAL)) return true; return false; } private boolean jj_3R_925() { if (jj_scan_token(CC_ELSIF)) return true; if (jj_3R_591()) return true; return false; } private boolean jj_3R_950() { if (jj_scan_token(CC_ERROR)) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3R_949() { if (jj_3R_196()) return true; return false; } private boolean jj_3R_924() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_949()) { jj_scanpos = xsp; if (jj_3R_950()) return true; } return false; } private boolean jj_3R_497() { if (jj_scan_token(AT)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_648()) { jj_scanpos = xsp; if (jj_3R_649()) return true; } return false; } private boolean jj_3R_496() { if (jj_scan_token(AROBASE)) return true; if (jj_3R_194()) return true; return false; } private boolean jj_3R_581() { if (jj_scan_token(CC_IF)) return true; if (jj_3R_591()) return true; if (jj_scan_token(CC_THEN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_924()) { jj_scanpos = xsp; break; } } while (true) { xsp = jj_scanpos; if (jj_3R_925()) { jj_scanpos = xsp; break; } } while (true) { xsp = jj_scanpos; if (jj_3R_926()) { jj_scanpos = xsp; break; } } if (jj_scan_token(CC_END)) return true; return false; } private boolean jj_3R_495() { if (jj_scan_token(DOT)) return true; if (jj_3R_194()) return true; return false; } private boolean jj_3R_281() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_495()) { jj_scanpos = xsp; if (jj_3R_496()) { jj_scanpos = xsp; if (jj_3R_497()) { jj_scanpos = xsp; if (jj_3R_498()) return true; } } } return false; } private boolean jj_3R_773() { if (jj_3R_857()) return true; return false; } private boolean jj_3R_1029() { if (jj_scan_token(NOT)) return true; return false; } private boolean jj_3R_1105() { if (jj_scan_token(NOT)) return true; return false; } private boolean jj_3_24() { if (jj_3R_196()) return true; return false; } private boolean jj_3R_655() { if (jj_3R_196()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3_24()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3_196() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_scan_token(1)) return true; while (true) { xsp = jj_scanpos; if (jj_scan_token(1)) { jj_scanpos = xsp; break; } } if (jj_scan_token(WITH)) return true; return false; } private boolean jj_3_195() { if (jj_scan_token(WITH)) return true; return false; } private boolean jj_3_194() { if (jj_scan_token(LPAREN)) return true; if (jj_scan_token(SELECT)) return true; return false; } private boolean jj_3R_647() { if (jj_scan_token(COMMA)) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3_193() { if (jj_3R_287()) return true; return false; } private boolean jj_3_192() { if (jj_3R_286()) return true; return false; } private boolean jj_3_22() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(104)) { jj_scanpos = xsp; if (jj_scan_token(132)) return true; } if (jj_3R_194()) return true; return false; } private boolean jj_3R_657() { if (jj_scan_token(EXCEPTION)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_773()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_773()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3_191() { if (jj_3R_285()) return true; return false; } private boolean jj_3_21() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(146)) { jj_scanpos = xsp; if (jj_scan_token(141)) return true; } if (jj_3R_194()) return true; xsp = jj_scanpos; if (jj_scan_token(117)) { jj_scanpos = xsp; if (jj_scan_token(75)) return true; } return false; } private boolean jj_3_190() { if (jj_scan_token(CASE)) return true; return false; } private boolean jj_3R_494() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_213()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_647()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_407() { if (jj_3R_581()) return true; return false; } private boolean jj_3_189() { if (jj_3R_284()) return true; return false; } private boolean jj_3R_406() { if (jj_3R_580()) return true; return false; } private boolean jj_3_188() { if (jj_3R_283()) return true; if (jj_scan_token(LPAREN)) return true; return false; } private boolean jj_3R_493() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_335()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_534() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(194)) { jj_scanpos = xsp; if (jj_scan_token(263)) return true; } return false; } private boolean jj_3R_492() { if (jj_scan_token(WITH)) return true; if (jj_3R_335()) return true; return false; } private boolean jj_3_187() { if (jj_3R_282()) return true; return false; } private boolean jj_3R_491() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_306()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_405() { if (jj_3R_579()) return true; return false; } private boolean jj_3R_490() { if (jj_3R_277()) return true; return false; } private boolean jj_3R_404() { if (jj_3R_578()) return true; return false; } private boolean jj_3R_489() { if (jj_3R_287()) return true; return false; } private boolean jj_3_23() { if (jj_3R_195()) return true; return false; } private boolean jj_3R_488() { if (jj_3R_286()) return true; return false; } private boolean jj_3R_403() { if (jj_3R_192()) return true; return false; } private boolean jj_3R_487() { if (jj_3R_285()) return true; return false; } private boolean jj_3R_402() { if (jj_3R_577()) return true; return false; } private boolean jj_3R_486() { if (jj_3R_646()) return true; return false; } private boolean jj_3_20() { if (jj_3R_193()) return true; return false; } private boolean jj_3R_485() { if (jj_3R_284()) return true; return false; } private boolean jj_3R_401() { if (jj_3R_576()) return true; return false; } private boolean jj_3R_484() { if (jj_3R_253()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_644()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_645()) jj_scanpos = xsp; return false; } private boolean jj_3R_656() { if (jj_3R_269()) return true; return false; } private boolean jj_3R_483() { if (jj_3R_282()) return true; return false; } private boolean jj_3R_196() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_401()) { jj_scanpos = xsp; if (jj_3_20()) { jj_scanpos = xsp; if (jj_3R_402()) { jj_scanpos = xsp; if (jj_3R_403()) { jj_scanpos = xsp; if (jj_3_23()) { jj_scanpos = xsp; if (jj_3R_404()) { jj_scanpos = xsp; if (jj_3R_405()) { jj_scanpos = xsp; if (jj_3R_406()) { jj_scanpos = xsp; if (jj_3R_407()) return true; } } } } } } } } return false; } private boolean jj_3R_280() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_483()) { jj_scanpos = xsp; if (jj_3R_484()) { jj_scanpos = xsp; if (jj_3R_485()) { jj_scanpos = xsp; if (jj_3R_486()) { jj_scanpos = xsp; if (jj_3R_487()) { jj_scanpos = xsp; if (jj_3R_488()) { jj_scanpos = xsp; if (jj_3R_489()) { jj_scanpos = xsp; if (jj_3R_490()) { jj_scanpos = xsp; if (jj_3R_491()) { jj_scanpos = xsp; if (jj_3R_492()) { jj_scanpos = xsp; if (jj_3R_493()) { jj_scanpos = xsp; if (jj_3R_494()) return true; } } } } } } } } } } } return false; } private boolean jj_3_186() { if (jj_3R_281()) return true; return false; } private boolean jj_3_185() { if (jj_scan_token(NEW)) return true; if (jj_3R_280()) return true; return false; } private boolean jj_3R_596() { if (jj_3R_280()) return true; return false; } private boolean jj_3R_536() { if (jj_scan_token(BEGIN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_656()) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; if (jj_3R_657()) jj_scanpos = xsp; return false; } private boolean jj_3R_535() { if (jj_3R_655()) return true; return false; } private boolean jj_3R_595() { if (jj_scan_token(NEW)) return true; if (jj_3R_280()) return true; return false; } private boolean jj_3R_1107() { if (jj_scan_token(NOT)) return true; return false; } private boolean jj_3R_533() { if (jj_scan_token(OR)) return true; if (jj_3R_390()) return true; return false; } private boolean jj_3R_315() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(117)) { jj_scanpos = xsp; if (jj_scan_token(75)) return true; } xsp = jj_scanpos; if (jj_3R_535()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_536()) jj_scanpos = xsp; if (jj_scan_token(END)) return true; xsp = jj_scanpos; if (jj_3R_537()) jj_scanpos = xsp; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_1108() { if (jj_scan_token(COMMA)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(276)) jj_scanpos = xsp; if (jj_3R_277()) return true; return false; } private boolean jj_3R_429() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_595()) { jj_scanpos = xsp; if (jj_3R_596()) return true; } while (true) { xsp = jj_scanpos; if (jj_3_186()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_527() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(194)) { jj_scanpos = xsp; if (jj_scan_token(263)) return true; } return false; } private boolean jj_3R_314() { if (jj_3R_530()) return true; return false; } private boolean jj_3R_428() { if (jj_scan_token(NEW_DOT)) return true; if (jj_3R_194()) return true; return false; } private boolean jj_3R_1106() { if (jj_scan_token(COMMA)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(276)) jj_scanpos = xsp; if (jj_3R_277()) return true; return false; } private boolean jj_3R_221() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_428()) { jj_scanpos = xsp; if (jj_3R_429()) return true; } return false; } private boolean jj_3R_313() { if (jj_scan_token(CREATE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_533()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_534()) jj_scanpos = xsp; return false; } private boolean jj_3R_532() { if (jj_3R_198()) return true; return false; } private boolean jj_3R_177() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_313()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(285)) { jj_scanpos = xsp; if (jj_scan_token(146)) return true; } if (jj_scan_token(BODY)) return true; if (jj_3R_309()) return true; xsp = jj_scanpos; if (jj_3R_314()) { jj_scanpos = xsp; if (jj_3R_315()) return true; } return false; } private boolean jj_3_184() { if (jj_3R_221()) return true; if (jj_scan_token(IS)) return true; return false; } private boolean jj_3R_531() { if (jj_3R_655()) return true; return false; } private boolean jj_3R_554() { if (jj_3R_394()) return true; return false; } private boolean jj_3_183() { if (jj_scan_token(IDENTIFIER)) return true; if (jj_scan_token(IS)) return true; return false; } private boolean jj_3R_704() { if (jj_3R_221()) return true; return false; } private boolean jj_3R_312() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(117)) { jj_scanpos = xsp; if (jj_scan_token(75)) return true; } xsp = jj_scanpos; if (jj_3R_531()) jj_scanpos = xsp; if (jj_scan_token(END)) return true; xsp = jj_scanpos; if (jj_3R_532()) jj_scanpos = xsp; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_703() { if (jj_3R_221()) return true; if (jj_scan_token(IS)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1107()) jj_scanpos = xsp; if (jj_scan_token(OF)) return true; xsp = jj_scanpos; if (jj_scan_token(146)) jj_scanpos = xsp; if (jj_scan_token(LPAREN)) return true; xsp = jj_scanpos; if (jj_scan_token(276)) jj_scanpos = xsp; if (jj_3R_277()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_1108()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_311() { if (jj_3R_530()) return true; return false; } private boolean jj_3R_526() { if (jj_scan_token(OR)) return true; if (jj_3R_390()) return true; return false; } private boolean jj_3R_702() { if (jj_3R_277()) return true; if (jj_scan_token(IS)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1105()) jj_scanpos = xsp; if (jj_scan_token(OF)) return true; xsp = jj_scanpos; if (jj_scan_token(146)) jj_scanpos = xsp; if (jj_scan_token(LPAREN)) return true; xsp = jj_scanpos; if (jj_scan_token(276)) jj_scanpos = xsp; if (jj_3R_277()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_1106()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_1072() { if (jj_scan_token(COMMA)) return true; if (jj_3R_338()) return true; return false; } private boolean jj_3R_529() { if (jj_3R_519()) return true; return false; } private boolean jj_3R_604() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_702()) { jj_scanpos = xsp; if (jj_3R_703()) { jj_scanpos = xsp; if (jj_3R_704()) return true; } } return false; } private boolean jj_3R_310() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_528()) { jj_scanpos = xsp; if (jj_3R_529()) return true; } return false; } private boolean jj_3R_528() { if (jj_scan_token(AUTHID)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(64)) { jj_scanpos = xsp; if (jj_scan_token(63)) return true; } return false; } private boolean jj_3R_308() { if (jj_scan_token(CREATE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_526()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_527()) jj_scanpos = xsp; return false; } private boolean jj_3_182() { if (jj_3R_221()) return true; if (jj_scan_token(IS)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(123)) jj_scanpos = xsp; if (jj_scan_token(NULL)) return true; return false; } private boolean jj_3R_781() { if (jj_3R_857()) return true; return false; } private boolean jj_3R_176() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_308()) jj_scanpos = xsp; if (jj_scan_token(PACKAGE)) return true; if (jj_3R_309()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_310()) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; if (jj_3R_311()) { jj_scanpos = xsp; if (jj_3R_312()) return true; } return false; } private boolean jj_3R_410() { if (jj_3R_572()) return true; return false; } private boolean jj_3R_482() { if (jj_3R_604()) return true; return false; } private boolean jj_3R_481() { if (jj_3R_221()) return true; if (jj_scan_token(IS)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1029()) jj_scanpos = xsp; if (jj_scan_token(NULL)) return true; return false; } private boolean jj_3R_279() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_481()) { jj_scanpos = xsp; if (jj_3R_482()) return true; } return false; } private boolean jj_3R_780() { if (jj_3R_655()) return true; return false; } private boolean jj_3R_670() { if (jj_scan_token(EXCEPTION)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_781()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_781()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_669() { if (jj_3R_269()) return true; return false; } private boolean jj_3R_191() { if (jj_3R_394()) return true; return false; } private boolean jj_3R_198() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(469)) { jj_scanpos = xsp; if (jj_scan_token(477)) { jj_scanpos = xsp; if (jj_3R_410()) { jj_scanpos = xsp; if (jj_scan_token(65)) { jj_scanpos = xsp; if (jj_scan_token(66)) { jj_scanpos = xsp; if (jj_scan_token(67)) { jj_scanpos = xsp; if (jj_scan_token(68)) { jj_scanpos = xsp; if (jj_scan_token(72)) { jj_scanpos = xsp; if (jj_scan_token(73)) { jj_scanpos = xsp; if (jj_scan_token(74)) { jj_scanpos = xsp; if (jj_scan_token(76)) { jj_scanpos = xsp; if (jj_scan_token(162)) { jj_scanpos = xsp; if (jj_scan_token(164)) { jj_scanpos = xsp; if (jj_scan_token(168)) { jj_scanpos = xsp; if (jj_scan_token(169)) { jj_scanpos = xsp; if (jj_scan_token(82)) { jj_scanpos = xsp; if (jj_scan_token(84)) { jj_scanpos = xsp; if (jj_scan_token(87)) { jj_scanpos = xsp; if (jj_scan_token(175)) { jj_scanpos = xsp; if (jj_scan_token(90)) { jj_scanpos = xsp; if (jj_scan_token(183)) { jj_scanpos = xsp; if (jj_scan_token(185)) { jj_scanpos = xsp; if (jj_scan_token(187)) { jj_scanpos = xsp; if (jj_scan_token(189)) { jj_scanpos = xsp; if (jj_scan_token(94)) { jj_scanpos = xsp; if (jj_scan_token(192)) { jj_scanpos = xsp; if (jj_scan_token(96)) { jj_scanpos = xsp; if (jj_scan_token(196)) { jj_scanpos = xsp; if (jj_scan_token(100)) { jj_scanpos = xsp; if (jj_scan_token(101)) { jj_scanpos = xsp; if (jj_scan_token(210)) { jj_scanpos = xsp; if (jj_scan_token(211)) { jj_scanpos = xsp; if (jj_scan_token(105)) { jj_scanpos = xsp; if (jj_scan_token(108)) { jj_scanpos = xsp; if (jj_scan_token(112)) { jj_scanpos = xsp; if (jj_scan_token(114)) { jj_scanpos = xsp; if (jj_scan_token(228)) { jj_scanpos = xsp; if (jj_scan_token(229)) { jj_scanpos = xsp; if (jj_scan_token(115)) { jj_scanpos = xsp; if (jj_scan_token(117)) { jj_scanpos = xsp; if (jj_scan_token(118)) { jj_scanpos = xsp; if (jj_scan_token(241)) { jj_scanpos = xsp; if (jj_scan_token(119)) { jj_scanpos = xsp; if (jj_scan_token(242)) { jj_scanpos = xsp; if (jj_scan_token(243)) { jj_scanpos = xsp; if (jj_scan_token(120)) { jj_scanpos = xsp; if (jj_scan_token(251)) { jj_scanpos = xsp; if (jj_scan_token(121)) { jj_scanpos = xsp; if (jj_scan_token(255)) { jj_scanpos = xsp; if (jj_scan_token(259)) { jj_scanpos = xsp; if (jj_scan_token(261)) { jj_scanpos = xsp; if (jj_scan_token(123)) { jj_scanpos = xsp; if (jj_scan_token(125)) { jj_scanpos = xsp; if (jj_scan_token(266)) { jj_scanpos = xsp; if (jj_scan_token(271)) { jj_scanpos = xsp; if (jj_scan_token(273)) { jj_scanpos = xsp; if (jj_scan_token(267)) { jj_scanpos = xsp; if (jj_scan_token(268)) { jj_scanpos = xsp; if (jj_scan_token(269)) { jj_scanpos = xsp; if (jj_scan_token(270)) { jj_scanpos = xsp; if (jj_scan_token(128)) { jj_scanpos = xsp; if (jj_scan_token(129)) { jj_scanpos = xsp; if (jj_scan_token(282)) { jj_scanpos = xsp; if (jj_scan_token(288)) { jj_scanpos = xsp; if (jj_scan_token(292)) { jj_scanpos = xsp; if (jj_scan_token(293)) { jj_scanpos = xsp; if (jj_scan_token(294)) { jj_scanpos = xsp; if (jj_scan_token(297)) { jj_scanpos = xsp; if (jj_scan_token(300)) { jj_scanpos = xsp; if (jj_scan_token(302)) { jj_scanpos = xsp; if (jj_scan_token(321)) { jj_scanpos = xsp; if (jj_scan_token(326)) { jj_scanpos = xsp; if (jj_scan_token(137)) { jj_scanpos = xsp; if (jj_scan_token(332)) { jj_scanpos = xsp; if (jj_scan_token(335)) { jj_scanpos = xsp; if (jj_scan_token(336)) { jj_scanpos = xsp; if (jj_scan_token(340)) { jj_scanpos = xsp; if (jj_scan_token(144)) { jj_scanpos = xsp; if (jj_scan_token(145)) { jj_scanpos = xsp; if (jj_scan_token(351)) { jj_scanpos = xsp; if (jj_scan_token(146)) { jj_scanpos = xsp; if (jj_scan_token(353)) { jj_scanpos = xsp; if (jj_scan_token(149)) { jj_scanpos = xsp; if (jj_scan_token(359)) { jj_scanpos = xsp; if (jj_scan_token(360)) { jj_scanpos = xsp; if (jj_scan_token(366)) { jj_scanpos = xsp; if (jj_scan_token(356)) { jj_scanpos = xsp; if (jj_scan_token(478)) return true; } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } return false; } private boolean jj_3R_668() { if (jj_scan_token(DECLARE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_780()) jj_scanpos = xsp; return false; } private boolean jj_3_18() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_191()) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; if (jj_scan_token(92)) { jj_scanpos = xsp; if (jj_scan_token(78)) return true; } return false; } private boolean jj_3R_908() { if (jj_3R_933()) return true; return false; } private boolean jj_3R_555() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_668()) jj_scanpos = xsp; if (jj_scan_token(BEGIN)) return true; while (true) { xsp = jj_scanpos; if (jj_3R_669()) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; if (jj_3R_670()) jj_scanpos = xsp; if (jj_scan_token(END)) return true; xsp = jj_scanpos; if (jj_scan_token(469)) jj_scanpos = xsp; return false; } private boolean jj_3_181() { if (jj_3R_279()) return true; return false; } private boolean jj_3_180() { if (jj_3R_278()) return true; return false; } private boolean jj_3R_907() { if (jj_scan_token(NOT)) return true; if (jj_3R_697()) return true; return false; } private boolean jj_3_19() { if (jj_3R_192()) return true; return false; } private boolean jj_3_179() { if (jj_3R_277()) return true; return false; } private boolean jj_3R_341() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_554()) { jj_scanpos = xsp; break; } } if (jj_3R_555()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_870() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_907()) { jj_scanpos = xsp; if (jj_3_180()) { jj_scanpos = xsp; if (jj_3_181()) { jj_scanpos = xsp; if (jj_3R_908()) return true; } } } return false; } private boolean jj_3_178() { if (jj_3R_276()) return true; return false; } private boolean jj_3_177() { if (jj_3R_253()) return true; return false; } private boolean jj_3R_275() { if (jj_scan_token(EXTRACT)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_476()) return true; if (jj_scan_token(COMMA)) return true; if (jj_3R_338()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1072()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_186() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_341()) { jj_scanpos = xsp; if (jj_3_19()) return true; } return false; } private boolean jj_3R_1071() { if (jj_3R_277()) return true; return false; } private boolean jj_3R_562() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(482)) { jj_scanpos = xsp; if (jj_scan_token(484)) { jj_scanpos = xsp; if (jj_scan_token(485)) return true; } } return false; } private boolean jj_3R_1070() { if (jj_3R_276()) return true; return false; } private boolean jj_3R_1069() { if (jj_3R_253()) return true; return false; } private boolean jj_3R_561() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(482)) { jj_scanpos = xsp; if (jj_scan_token(484)) { jj_scanpos = xsp; if (jj_scan_token(485)) return true; } } return false; } private boolean jj_3R_563() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(482)) { jj_scanpos = xsp; if (jj_scan_token(484)) { jj_scanpos = xsp; if (jj_scan_token(485)) return true; } } return false; } private boolean jj_3R_558() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(482)) { jj_scanpos = xsp; if (jj_scan_token(484)) { jj_scanpos = xsp; if (jj_scan_token(485)) return true; } } return false; } private boolean jj_3R_274() { if (jj_scan_token(EXTRACT)) return true; if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(252)) { jj_scanpos = xsp; if (jj_scan_token(377)) { jj_scanpos = xsp; if (jj_scan_token(186)) { jj_scanpos = xsp; if (jj_scan_token(219)) { jj_scanpos = xsp; if (jj_scan_token(248)) { jj_scanpos = xsp; if (jj_scan_token(324)) { jj_scanpos = xsp; if (jj_scan_token(349)) { jj_scanpos = xsp; if (jj_scan_token(348)) { jj_scanpos = xsp; if (jj_scan_token(346)) { jj_scanpos = xsp; if (jj_scan_token(347)) return true; } } } } } } } } } if (jj_scan_token(FROM)) return true; xsp = jj_scanpos; if (jj_3R_1069()) { jj_scanpos = xsp; if (jj_3R_1070()) { jj_scanpos = xsp; if (jj_3R_1071()) return true; } } if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3_176() { if (jj_3R_275()) return true; return false; } private boolean jj_3R_278() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_175()) { jj_scanpos = xsp; if (jj_3_176()) return true; } return false; } private boolean jj_3_175() { if (jj_3R_274()) return true; return false; } private boolean jj_3R_388() { if (jj_scan_token(DOT)) return true; if (jj_scan_token(ATTACH)) return true; return false; } private boolean jj_3R_387() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_564() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(482)) { jj_scanpos = xsp; if (jj_scan_token(484)) { jj_scanpos = xsp; if (jj_scan_token(485)) return true; } } return false; } private boolean jj_3R_794() { if (jj_3R_870()) return true; return false; } private boolean jj_3R_386() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_385() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_869() { if (jj_scan_token(PRIOR)) return true; return false; } private boolean jj_3R_384() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_868() { if (jj_scan_token(MINUSSIGN)) return true; return false; } private boolean jj_3R_383() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_867() { if (jj_scan_token(PLUSSIGN)) return true; return false; } private boolean jj_3R_382() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_381() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_793() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_867()) { jj_scanpos = xsp; if (jj_3R_868()) { jj_scanpos = xsp; if (jj_3R_869()) return true; } } if (jj_3R_697()) return true; return false; } private boolean jj_3R_380() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_379() { if (jj_scan_token(START)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_564()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_378() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_697() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_793()) { jj_scanpos = xsp; if (jj_3R_794()) return true; } return false; } private boolean jj_3R_377() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_376() { if (jj_3R_390()) return true; return false; } private boolean jj_3_174() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(47)) { jj_scanpos = xsp; if (jj_scan_token(19)) { jj_scanpos = xsp; if (jj_scan_token(20)) { jj_scanpos = xsp; if (jj_scan_token(251)) return true; } } } return false; } private boolean jj_3R_375() { if (jj_3R_390()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_563()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_374() { if (jj_3R_390()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_562()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_373() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_560() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(482)) { jj_scanpos = xsp; if (jj_scan_token(484)) { jj_scanpos = xsp; if (jj_scan_token(485)) return true; } } return false; } private boolean jj_3R_798() { if (jj_scan_token(MOD)) return true; return false; } private boolean jj_3R_372() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_559() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(482)) { jj_scanpos = xsp; if (jj_scan_token(484)) { jj_scanpos = xsp; if (jj_scan_token(485)) return true; } } return false; } private boolean jj_3R_797() { if (jj_scan_token(SLASH)) return true; return false; } private boolean jj_3R_371() { if (jj_3R_390()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_561()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_796() { if (jj_scan_token(STAR)) return true; return false; } private boolean jj_3R_370() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_795() { if (jj_scan_token(47)) return true; return false; } private boolean jj_3R_369() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_368() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_367() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_366() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_698() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_795()) { jj_scanpos = xsp; if (jj_3R_796()) { jj_scanpos = xsp; if (jj_3R_797()) { jj_scanpos = xsp; if (jj_3R_798()) return true; } } } if (jj_3R_697()) return true; return false; } private boolean jj_3R_365() { if (jj_scan_token(BANG)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_560()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_364() { if (jj_scan_token(27)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_559()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_363() { if (jj_3R_390()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_558()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_362() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_593() { if (jj_3R_697()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_698()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_361() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_360() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_359() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_358() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_357() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_356() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_355() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_354() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_475() { if (jj_scan_token(46)) return true; if (jj_3R_221()) return true; return false; } private boolean jj_3R_353() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_352() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_351() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_350() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_349() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_273() { if (jj_3R_221()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_475()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_348() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_556() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(482)) { jj_scanpos = xsp; if (jj_scan_token(484)) { jj_scanpos = xsp; if (jj_scan_token(485)) return true; } } return false; } private boolean jj_3R_557() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(482)) { jj_scanpos = xsp; if (jj_scan_token(484)) { jj_scanpos = xsp; if (jj_scan_token(485)) return true; } } return false; } private boolean jj_3R_347() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_346() { if (jj_3R_390()) return true; if (jj_scan_token(26)) return true; return false; } private boolean jj_3R_345() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_344() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_343() { if (jj_scan_token(AROBASE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_557()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_342() { if (jj_scan_token(25)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_556()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_701() { if (jj_scan_token(46)) return true; return false; } private boolean jj_3R_700() { if (jj_scan_token(MINUSSIGN)) return true; return false; } private boolean jj_3R_699() { if (jj_scan_token(PLUSSIGN)) return true; return false; } private boolean jj_3R_594() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_699()) { jj_scanpos = xsp; if (jj_3R_700()) { jj_scanpos = xsp; if (jj_3R_701()) return true; } } if (jj_3R_593()) return true; return false; } private boolean jj_3R_187() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_342()) { jj_scanpos = xsp; if (jj_3R_343()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("ACCEPT"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_344()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("ACC"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_345()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("ARCHIVE"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_346()) { jj_scanpos = xsp; if (jj_scan_token(160)) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("BREAK"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_347()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("BTITLE"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_348()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("CLEAR"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_349()) { jj_scanpos = xsp; if (jj_scan_token(173)) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("COL"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_350()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("COMPUTE"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_351()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("COMP"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_352()) { jj_scanpos = xsp; if (jj_scan_token(88)) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("CONN"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_353()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("COPY"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_354()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("DEFINE"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_355()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("DEF"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_356()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("DESCRIBE"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_357()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("DESCR"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_358()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("DESC"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_359()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("DISCONNECT"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_360()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("DISC"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_361()) { jj_scanpos = xsp; if (jj_scan_token(201)) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("EXEC"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_362()) { jj_scanpos = xsp; if (jj_scan_token(203)) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("HOST"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_363()) { jj_scanpos = xsp; if (jj_3R_364()) { jj_scanpos = xsp; if (jj_3R_365()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("INPUT"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_366()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("PASSWORD"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_367()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("PASSW"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_368()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("PAUSE"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_369()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("PRINT"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_370()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("PROMPT"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_371()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("QUIT"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_372()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("RECOVER"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_373()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("REMARK"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_374()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("REM"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_375()) { jj_scanpos = xsp; if (jj_scan_token(327)) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("SHOW"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_376()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("SHO"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_377()) { jj_scanpos = xsp; if (jj_scan_token(421)) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("SPOOL"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_378()) { jj_scanpos = xsp; if (jj_3R_379()) { jj_scanpos = xsp; if (jj_scan_token(422)) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("STORE"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_380()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("TIMING"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_381()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("TTITLE"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_382()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("UNDEFINE"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_383()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("VARIABLE"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_384()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("VAR"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_385()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("WHENEVER"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_386()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("COMMENT"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_387()) { jj_scanpos = xsp; if (jj_scan_token(106)) { jj_scanpos = xsp; if (jj_scan_token(135)) { jj_scanpos = xsp; if (jj_scan_token(96)) { jj_scanpos = xsp; if (jj_3R_388()) return true; } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } return false; } private boolean jj_3R_426() { if (jj_3R_593()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_594()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_188() { return false; } private boolean jj_3R_1040() { if (jj_3R_338()) return true; return false; } private boolean jj_3R_307() { if (jj_scan_token(LOCK)) return true; return false; } private boolean jj_3R_1039() { if (jj_scan_token(CHARACTER_LITERAL)) return true; return false; } private boolean jj_3_17() { if (jj_3R_190()) return true; if (jj_3R_525()) return true; return false; } private boolean jj_3R_1086() { if (jj_scan_token(ALL)) return true; return false; } private boolean jj_3R_981() { if (jj_scan_token(ESCAPE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1039()) { jj_scanpos = xsp; if (jj_3R_1040()) return true; } return false; } private boolean jj_3R_1085() { if (jj_scan_token(DISTINCT)) return true; return false; } private boolean jj_3R_1038() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1085()) { jj_scanpos = xsp; if (jj_3R_1086()) return true; } return false; } private boolean jj_3_16() { jj_lookingAhead = true; jj_semLA = isKeyword("COMMENT"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_188()) return true; if (jj_3R_189()) return true; return false; } private boolean jj_3R_968() { if (jj_scan_token(UNION)) return true; return false; } private boolean jj_3R_967() { if (jj_scan_token(INTERSECT)) return true; return false; } private boolean jj_3R_175() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_16()) { jj_scanpos = xsp; if (jj_3_17()) return true; } return false; } private boolean jj_3R_966() { if (jj_scan_token(EXCEPT)) return true; return false; } private boolean jj_3R_1028() { if (jj_scan_token(OF)) return true; return false; } private boolean jj_3R_932() { if (jj_scan_token(MULTISET)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_966()) { jj_scanpos = xsp; if (jj_3R_967()) { jj_scanpos = xsp; if (jj_3R_968()) return true; } } xsp = jj_scanpos; if (jj_3R_1038()) jj_scanpos = xsp; return false; } private boolean jj_3R_1027() { if (jj_scan_token(SUBMULTISET)) return true; return false; } private boolean jj_3R_1026() { if (jj_scan_token(MEMBER)) return true; return false; } private boolean jj_3R_965() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1026()) { jj_scanpos = xsp; if (jj_3R_1027()) return true; } xsp = jj_scanpos; if (jj_3R_1028()) jj_scanpos = xsp; return false; } private boolean jj_3R_964() { if (jj_scan_token(LIKE)) return true; return false; } private boolean jj_3R_963() { if (jj_scan_token(BETWEEN)) return true; return false; } private boolean jj_3R_173() { if (jj_3R_263()) return true; return false; } private boolean jj_3R_174() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(174)) { jj_scanpos = xsp; if (jj_scan_token(315)) { jj_scanpos = xsp; if (jj_scan_token(323)) { jj_scanpos = xsp; if (jj_3R_307()) { jj_scanpos = xsp; if (jj_scan_token(155)) return true; } } } } return false; } private boolean jj_3R_172() { if (jj_3R_306()) return true; return false; } private boolean jj_3R_962() { if (jj_scan_token(IN)) return true; return false; } private boolean jj_3R_171() { if (jj_3R_305()) return true; return false; } private boolean jj_3R_961() { if (jj_scan_token(NOT)) return true; return false; } private boolean jj_3R_170() { if (jj_3R_304()) return true; return false; } private boolean jj_3R_931() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_961()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_962()) { jj_scanpos = xsp; if (jj_3R_963()) { jj_scanpos = xsp; if (jj_3R_964()) { jj_scanpos = xsp; if (jj_3R_965()) return true; } } } return false; } private boolean jj_3R_169() { if (jj_3R_303()) return true; return false; } private boolean jj_3R_960() { if (jj_scan_token(XOR)) return true; if (jj_scan_token(ASSIGN)) return true; return false; } private boolean jj_3_15() { if (jj_3R_187()) return true; return false; } private boolean jj_3R_959() { if (jj_scan_token(TILDE)) return true; if (jj_scan_token(ASSIGN)) return true; return false; } private boolean jj_3R_958() { if (jj_scan_token(BANG)) return true; if (jj_scan_token(ASSIGN)) return true; return false; } private boolean jj_3_13() { if (jj_3R_186()) return true; return false; } private boolean jj_3R_957() { if (jj_scan_token(31)) return true; return false; } private boolean jj_3_12() { if (jj_3R_185()) return true; return false; } private boolean jj_3R_956() { if (jj_scan_token(LT)) return true; return false; } private boolean jj_3_2() { if (jj_3R_175()) return true; return false; } private boolean jj_3_11() { if (jj_3R_184()) return true; return false; } private boolean jj_3_10() { if (jj_3R_183()) return true; return false; } private boolean jj_3_14() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3_2()) return true; while (true) { xsp = jj_scanpos; if (jj_3_2()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3_9() { if (jj_3R_182()) return true; return false; } private boolean jj_3_8() { if (jj_3R_181()) return true; return false; } private boolean jj_3_173() { if (jj_scan_token(31)) return true; if (jj_scan_token(ASSIGN)) return true; return false; } private boolean jj_3_7() { if (jj_3R_180()) return true; return false; } private boolean jj_3_172() { if (jj_scan_token(LT)) return true; if (jj_scan_token(ASSIGN)) return true; return false; } private boolean jj_3_6() { if (jj_3R_179()) return true; return false; } private boolean jj_3_171() { if (jj_scan_token(LT)) return true; if (jj_scan_token(31)) return true; return false; } private boolean jj_3_5() { if (jj_3R_178()) return true; return false; } private boolean jj_3_4() { if (jj_3R_177()) return true; return false; } private boolean jj_3R_930() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_171()) { jj_scanpos = xsp; if (jj_3_172()) { jj_scanpos = xsp; if (jj_3_173()) { jj_scanpos = xsp; if (jj_3R_956()) { jj_scanpos = xsp; if (jj_3R_957()) { jj_scanpos = xsp; if (jj_3R_958()) { jj_scanpos = xsp; if (jj_3R_959()) { jj_scanpos = xsp; if (jj_3R_960()) return true; } } } } } } } return false; } private boolean jj_3_3() { if (jj_3R_176()) return true; return false; } private boolean jj_3_1() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3_3()) { jj_scanpos = xsp; if (jj_3_4()) { jj_scanpos = xsp; if (jj_3_5()) { jj_scanpos = xsp; if (jj_3_6()) { jj_scanpos = xsp; if (jj_3_7()) { jj_scanpos = xsp; if (jj_3_8()) { jj_scanpos = xsp; if (jj_3_9()) { jj_scanpos = xsp; if (jj_3_10()) { jj_scanpos = xsp; 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()) { jj_scanpos = xsp; if (jj_3R_169()) { jj_scanpos = xsp; if (jj_3R_170()) { jj_scanpos = xsp; if (jj_3R_171()) { jj_scanpos = xsp; if (jj_3R_172()) { jj_scanpos = xsp; if (jj_3R_173()) { jj_scanpos = xsp; if (jj_3R_174()) return true; } } } } } } } } } } } } } } } } } } return false; } private boolean jj_3R_903() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_930()) { jj_scanpos = xsp; if (jj_3R_931()) { jj_scanpos = xsp; if (jj_3R_932()) return true; } } if (jj_3R_426()) return true; xsp = jj_scanpos; if (jj_3R_981()) jj_scanpos = xsp; return false; } private boolean jj_3R_865() { if (jj_3R_426()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_903()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_906() { if (jj_scan_token(IS)) return true; return false; } private boolean jj_3R_905() { if (jj_scan_token(BANG)) return true; if (jj_scan_token(ASSIGN)) return true; return false; } private boolean jj_3R_904() { if (jj_scan_token(ASSIGN)) return true; return false; } private boolean jj_3R_866() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_904()) { jj_scanpos = xsp; if (jj_3R_905()) { jj_scanpos = xsp; if (jj_3R_906()) return true; } } if (jj_3R_865()) return true; return false; } private boolean jj_3R_791() { if (jj_3R_865()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_866()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_792() { if (jj_scan_token(AND)) return true; if (jj_3R_791()) return true; return false; } private boolean jj_3R_695() { if (jj_3R_791()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_792()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_696() { if (jj_scan_token(OR)) return true; if (jj_3R_695()) return true; return false; } private boolean jj_3R_591() { if (jj_3R_695()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_696()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_503() { if (jj_scan_token(DOT)) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3R_502() { if (jj_scan_token(AT)) return true; if (jj_scan_token(TIME)) return true; if (jj_scan_token(ZONE)) return true; if (jj_3R_221()) return true; return false; } private boolean jj_3R_285() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(440)) { jj_scanpos = xsp; if (jj_scan_token(441)) return true; } if (jj_scan_token(LPAREN)) return true; if (jj_3R_213()) return true; xsp = jj_scanpos; if (jj_3R_502()) jj_scanpos = xsp; if (jj_scan_token(AS)) return true; if (jj_3R_443()) return true; if (jj_scan_token(RPAREN)) return true; while (true) { xsp = jj_scanpos; if (jj_3R_503()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3_170() { if (jj_3R_273()) return true; if (jj_scan_token(FROM)) return true; return false; } private boolean jj_3R_1074() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_752() { if (jj_scan_token(FROM)) return true; return false; } private boolean jj_3R_751() { if (jj_3R_273()) return true; return false; } private boolean jj_3R_750() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_scan_token(448)) { jj_scanpos = xsp; if (jj_scan_token(449)) { jj_scanpos = xsp; if (jj_scan_token(444)) return true; } } return false; } private boolean jj_3R_611() { if (jj_scan_token(LPAREN)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_750()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_751()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_752()) jj_scanpos = xsp; if (jj_3R_273()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_850() { if (jj_scan_token(WHEN)) return true; if (jj_3R_226()) return true; if (jj_scan_token(THEN)) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3R_849() { if (jj_scan_token(WHEN)) return true; if (jj_3R_213()) return true; if (jj_scan_token(THEN)) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3R_765() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_850()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_850()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_766() { if (jj_scan_token(ELSE)) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3R_764() { if (jj_3R_213()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; if (jj_3R_849()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_849()) { jj_scanpos = xsp; break; } } return false; } private boolean jj_3R_646() { if (jj_scan_token(CASE)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_764()) { jj_scanpos = xsp; if (jj_3R_765()) return true; } xsp = jj_scanpos; if (jj_3R_766()) jj_scanpos = xsp; if (jj_scan_token(END)) return true; return false; } private boolean jj_3R_1073() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_590() { if (jj_3R_221()) return true; if (jj_scan_token(COLON)) return true; if (jj_scan_token(ASSIGN)) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3R_854() { if (jj_scan_token(CC_ELSE)) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3R_853() { if (jj_scan_token(CC_ELSIF)) return true; if (jj_3R_591()) return true; if (jj_scan_token(CC_THEN)) return true; if (jj_3R_213()) return true; return false; } private boolean jj_3R_592() { if (jj_scan_token(CC_IF)) return true; if (jj_3R_591()) return true; if (jj_scan_token(CC_THEN)) return true; if (jj_3R_213()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; while (true) { xsp = jj_scanpos; if (jj_3R_853()) { jj_scanpos = xsp; break; } } while (true) { xsp = jj_scanpos; if (jj_3R_854()) { jj_scanpos = xsp; break; } } if (jj_scan_token(CC_END)) return true; return false; } private boolean jj_3R_1031() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_221()) return true; if (jj_scan_token(RPAREN)) return true; if (jj_scan_token(DOT)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; jj_lookingAhead = true; jj_semLA = isKeyword("error_index"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_1073()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("error_code"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_1074()) return true; } return false; } private boolean jj_3R_1030() { if (jj_scan_token(DOT)) return true; if (jj_scan_token(40)) return true; return false; } private boolean jj_3R_974() { if (jj_3R_390()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_1030()) { jj_scanpos = xsp; if (jj_3R_1031()) return true; } return false; } private boolean jj_3R_973() { if (jj_3R_390()) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_221()) return true; if (jj_scan_token(RPAREN)) return true; return false; } private boolean jj_3R_972() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_971() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_970() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_969() { if (jj_3R_390()) return true; return false; } private boolean jj_3R_933() { if (jj_scan_token(SQL)) return true; if (jj_scan_token(REM)) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; jj_lookingAhead = true; jj_semLA = isKeyword("isopen"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_969()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("found"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_970()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("notfound"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_971()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("rowcount"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_972()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("bulk_rowcount"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_973()) { jj_scanpos = xsp; jj_lookingAhead = true; jj_semLA = isKeyword("bulk_exceptions"); jj_lookingAhead = false; if (!jj_semLA || jj_3R_974()) return true; } } } } } return false; } private boolean jj_3_169() { if (jj_3R_221()) return true; if (jj_scan_token(COLON)) return true; if (jj_scan_token(ASSIGN)) return true; return false; } private boolean jj_3R_425() { if (jj_3R_592()) return true; return false; } private boolean jj_3R_424() { if (jj_3R_591()) return true; return false; } private boolean jj_3R_423() { if (jj_3R_590()) return true; return false; } private boolean jj_3R_213() { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_423()) { jj_scanpos = xsp; if (jj_3R_424()) { jj_scanpos = xsp; if (jj_3R_425()) return true; } } return false; } private boolean jj_3R_578() { if (jj_3R_691()) return true; return false; } private boolean jj_3R_790() { if (jj_scan_token(IS)) return true; if (jj_3R_306()) return true; return false; } private boolean jj_3R_789() { if (jj_scan_token(RETURN)) return true; if (jj_3R_443()) return true; return false; } private boolean jj_3R_788() { if (jj_3R_782()) return true; return false; } private boolean jj_3R_691() { if (jj_scan_token(CURSOR)) return true; if (jj_3R_198()) return true; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken xsp; xsp = jj_scanpos; if (jj_3R_788()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_789()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_790()) jj_scanpos = xsp; if (jj_scan_token(SEMICOLON)) return true; return false; } private boolean jj_3R_1024() { if (jj_3R_338()) return true; return false; } private boolean jj_3R_1023() { if (jj_3R_338()) return true; return false; } private boolean jj_3R_579() { if (jj_scan_token(IDENTIFIER)) return true; return false; } private boolean jj_3R_585() { if (jj_scan_token(PARAMETERS)) return true; if (jj_3R_1025()) return true; return false; } /** Generated net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken Manager. */ public PLSQLParserImplTokenManager token_source; /** Current token. */ public net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken token; /** Next token. */ public net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken jj_nt; private net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken jj_scanpos, jj_lastpos; private int jj_la; /** Whether we are looking ahead. */ private boolean jj_lookingAhead = false; private boolean jj_semLA; private int jj_gen; final private int[] jj_la1 = new int[797]; static private int[] jj_la1_0; static private int[] jj_la1_1; static private int[] jj_la1_2; static private int[] jj_la1_3; static private int[] jj_la1_4; static private int[] jj_la1_5; static private int[] jj_la1_6; static private int[] jj_la1_7; static private int[] jj_la1_8; static private int[] jj_la1_9; static private int[] jj_la1_10; static private int[] jj_la1_11; static private int[] jj_la1_12; static private int[] jj_la1_13; static private int[] jj_la1_14; static private int[] jj_la1_15; static { jj_la1_init_0(); jj_la1_init_1(); jj_la1_init_2(); jj_la1_init_3(); jj_la1_init_4(); jj_la1_init_5(); jj_la1_init_6(); jj_la1_init_7(); jj_la1_init_8(); jj_la1_init_9(); jj_la1_init_10(); jj_la1_init_11(); jj_la1_init_12(); jj_la1_init_13(); jj_la1_init_14(); jj_la1_init_15(); } private static void jj_la1_init_0() { jj_la1_0 = new int[] {0x80,0x80,0x80,0x80,0x80,0x0,0x0,0x100000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000400,0x0,0x0,0x0,0x0,0x0,0x8002000,0x0,0x0,0x0,0x200,0x0,0x64000000,0x0,0x640e0002,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x64000000,0x64000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x64000000,0x640e0002,0x0,0x0,0x0,0x64000000,0x0,0x0,0x0,0x64000000,0x64000000,0x0,0x64000000,0x64000000,0x0,0x64000000,0x64000000,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x200,0x0,0x200,0x0,0x64000000,0x100,0x0,0x0,0x200,0x100,0x200,0x0,0x0,0x0,0x0,0x64000000,0x0,0x640e0002,0x0,0x0,0x64000000,0x64000000,0x0,0x80,0x0,0x0,0x0,0x74000000,0x10000,0x10000,0x0,0x2,0x0,0x2,0x0,0x100,0x64000000,0x0,0x0,0x10000,0x10000,0x400,0x0,0x1000000,0x0,0x64000000,0x0,0x0,0x0,0x100,0x0,0x0,0x0,0x0,0x20000000,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x640e0002,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x100,0x0,0x0,0x40000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x0,0x0,0x100,0x640e0102,0x0,0x640e0002,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x80000800,0x80000800,0x800,0x80803800,0x2,0x0,0x0,0x100,0x100,0x640e0002,0x0,0x64080000,0x64080000,0x64080000,0x0,0x0,0x640e0002,0x0,0x64000000,0x100,0x0,0x64000000,0x640e0002,0x0,0x100,0x2,0x200,0x200,0x400,0x0,0x100,0x0,0x0,0x100,0x64000000,0x0,0x2,0x64000000,0x0,0x0,0x0,0x100,0x0,0x64000000,0x640e0002,0x100,0x100,0x0,0x64000000,0x0,0x640e0002,0x100,0x0,0x640e0002,0x0,0x0,0x0,0x0,0x0,0x640e0002,0x0,0x640e0002,0x640e0002,0x640e0002,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x0,0x2,0x100,0x640e0002,0x100,0x2,0x200,0x200,0x100,0x64010000,0x64000000,0x64000000,0x0,0x0,0x0,0x2,0x0,0x0,0x640e0002,0x2,0x0,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0x0,0x0,0x0,0x80,0x0,0x0,0x0,0x640e0002,0x640e0002,0x0,0x640e0002,0x0,0x0,0x0,0x640e0002,0x640e0002,0x640e0002,0x0,0x640e0002,0x0,0x0,0x0,0x2,0x4000000,0x100,0x640e0002,0x100,0x640e0002,0x64000002,0x0,0x4000000,0x0,0x0,0x0,0x0,0x0,0x4000000,0x0,0x0,0x0,0x4000000,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x64000000,0x0,0x0,0x4000000,0x400,0x400,0x0,0x0,0x0,0x2,0x0,0x100,0x64000000,0x2,0x640e0002,0x100,0x64000000,0x640e0002,0x64000002,0x100,0x64000002,0x0,0x64000002,0x0,0x100,0x640e0002,0x100,0x64000000,0x0,0x2,0x0,0x0,0x0,0x64000002,0x0,0x0,0x4000000,0x64000000,0x64000000,0x64000002,0x0,0x0,0x4000000,0x0,0x640e0002,0x100,0x640e0002,0x0,0x0,0x100,0x2,0x0,0x0,0x0,0x640e0002,0x0,0x640e0002,0x0,0x0,0x0,0x0,0x0,0x640e0002,0x0,0x640e0002,0x64000000,0x0,0x64000000,0x0,0x64000000,0x640e0002,0x640e0002,0x0,0x0,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x0,0x0,0x0,0x640e0002,0x0,0x640e0002,0x0,0x640e0002,0x0,0x2,0x2,0x0,0x0,0x0,0x100,0x100,0x0,0x2,0x0,0x0,0x0,0x100,0x64000002,0x0,0x0,0x0,0x10000,0x10000,0x0,0x0,0x0,0x0,0x0,0x200,0x0,0x0,0x2,0x0,0x0,0x640e0002,0x202,0x0,0x0,0x0,0x0,0x640e0002,0x0,0x0,0x0,0x200,0x0,0x0,0x0,0x0,0x0,0x200,0x0,0x0,0x2800,0x2800,0x80807000,0x80807000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80807000,0x0,0x0,0x60000,0x60000,0x0,0x180000,0x60000,0x640e0002,0x0,0x100,0x0,0x0,0x0,0x64080002,0x0,0x0,0x0,0x100,0x0,0x0,0x0,0x0,0x100,0x0,0x64080002,0x64080002,0x64080002,0x0,0x0,0x100,0x64000000,0x2,0x640e0002,0x0,0x602,0x0,0x0,0x0,0x1000200,0x200,0x0,0x0,0x640e0002,0x640e0002,0x0,0x100,0x0,0x0,0x0,0x0,0x64000000,0x100,0x60000,0x60000,0x100,0x64000000,0x0,0x100,0x0,0x0,0x100,0x0,0x0,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x64000000,0x100,0x64000000,0x2,0x0,0x0,0x0,0x80,0x0,0x640e0002,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x100,0x100,0x0,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x100,0x2,0x0,0x100080,0x0,0x0,0x100080,0x0,0x100080,0x0,0x0,0x64000000,0x64000000,0x0,0x100080,0x0,0x0,0x100080,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x64000000,0x640e0002,0x0,0x0,0x64000000,0x64000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200,0x0,0x0,0x0,0x0,0x64000000,0x64000000,0x100,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x100080,0x0,0x100080,0x100080,0x100,0x100,0x0,0x2,0x100,0x4,0x0,0x0,0x2,0x100,0x4,0x0,0x0,0x100,0x0,0x0,0x0,0x64000000,0x100,0x64000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x64000000,0x100,0x60000,0x60000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x0,0x0,0x0,0x100,0x0,0x0,0x64000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x64000000,0x640e0002,0x0,0x0,0x0,0x0,0x64000000,0x0,0x64000000,0x0,0x0,0x0,0x0,0x64000000,0x0,0x0,0x0,0x0,0x0,0x64000000,0x64000000,0x64000000,0x64000000,0x20000000,0x0,0x0,0x2,}; } private static void jj_la1_init_1() { jj_la1_1 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10000,0x80001fff,0x0,0x80011fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80000000,0x0,0x0,0x80001fff,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x80011fff,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x80001fff,0x80001fff,0x0,0x80001fff,0x80001fff,0x0,0x80001fff,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x80000000,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x80011fff,0x0,0x0,0x80001fff,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80011fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x80001fff,0x80001fff,0x80001fff,0x0,0x0,0x80001fff,0x0,0x80001fff,0x0,0x0,0x80001fff,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x80001fff,0x0,0x0,0x0,0x80001fff,0x0,0x80001fff,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x0,0xc,0x80001fff,0xc,0x80001fff,0x80001fff,0x80001fff,0x0,0x80,0x80,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x80001fff,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x80011fff,0x10000,0x80001fff,0x0,0x0,0x0,0x80011fff,0x80011fff,0x80011fff,0x0,0x80011fff,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x80001fff,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x200,0x200,0x0,0x0,0x0,0x0,0x200,0x0,0x80001fff,0x0,0x80001fff,0x0,0x80001fff,0x80001fff,0x80001fff,0x0,0x80001fff,0x0,0x80001fff,0x0,0x0,0x80001fff,0x0,0x80001fff,0x0,0x0,0x1000,0x800,0x0,0x80001fff,0x0,0x0,0x0,0x80001fff,0x80001fff,0x80001fff,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x80011fff,0x0,0x80011fff,0x0,0x0,0x0,0x0,0x2000,0x80001fff,0x0,0x80001fff,0x80001fff,0x0,0x80001fff,0x0,0x80001fff,0x80001fff,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80011fff,0x0,0x80011fff,0x0,0x80011fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000,0x4000,0x4000,0x8000,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x80001fff,0x80001fff,0x1,0x10,0x0,0x80001fff,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x80001fff,0x0,0x0,0x40000,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x80011fff,0x0,0x0,0x80001fff,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x80000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80000000,0x0,0x0,0x80001fff,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x80011fff,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x80001fff,0x0,0x0,0x0,0x0,0x0,0x80001fff,0x80001fff,0x80001fff,0x80001fff,0x0,0x0,0x0,0x0,}; } private static void jj_la1_init_2() { jj_la1_2 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4c94377f,0x10000000,0x5496777f,0x0,0x0,0x0,0x0,0x0,0x0,0x4000000,0x0,0x1,0x0,0x800,0x4c94377f,0x4494377f,0x800,0x0,0x0,0x0,0x4000000,0x0,0x800,0x4c94377f,0x5496777f,0x0,0x0,0x4000,0x4494377f,0x800,0x0,0xc000000,0x4c94377f,0x4c94377f,0x0,0x4c94377f,0x4c94377f,0x0,0x4c94377f,0x4c94377f,0x0,0x0,0x0,0x4000000,0x0,0x1,0x0,0x0,0x0,0x0,0x100000,0x4494377f,0x0,0x100000,0x100000,0x0,0x0,0x0,0x0,0x0,0x0,0x800,0x4c94377f,0x0,0x5496777f,0x0,0x0,0x4494377f,0x4c94777f,0x800,0x800,0x0,0x0,0x0,0x2061,0x20000000,0x20000000,0x4000000,0x0,0x0,0x0,0x0,0x0,0x4494377f,0x0,0x0,0x20000000,0x20000000,0x0,0x0,0x0,0x0,0x2061,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x5496777f,0x0,0x80000080,0x80000080,0x0,0x0,0x0,0x1000000,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x0,0x0,0x0,0x40001000,0x40001000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000000,0x0,0x0,0x0,0x0,0x0,0x4496377f,0x0,0x4496377f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200,0x200,0x200,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x480,0x480,0x0,0x0,0x4496377f,0x0,0x4494377f,0x4494377f,0x4494377f,0x0,0x0,0x4496377f,0x800,0x44943f7f,0x0,0x800,0x44943f7f,0x4496377f,0x0,0x0,0x0,0x0,0x0,0x0,0x20000000,0x0,0x20000000,0x0,0x0,0x4494377f,0x400000,0x0,0x2061,0x20000000,0x0,0x10000,0x0,0x800,0x44943f7f,0x4496377f,0x0,0x0,0x800,0x44943f7f,0x800,0x4496377f,0x0,0x800,0x4496377f,0x0,0x0,0x0,0x0,0x0,0x4496377f,0x0,0x4496377f,0x4496377f,0x4496b77f,0x0,0x0,0x0,0x0,0x0,0x1000000,0x0,0x0,0x0,0x0,0x4496377f,0x0,0x0,0x0,0x0,0x0,0x4494377f,0x4494377f,0x4494377f,0x0,0x0,0x0,0x0,0x40000,0x0,0x4496377f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000,0x10004000,0x4496377f,0x5496777f,0x0,0x4496377f,0x0,0x0,0x0,0x5496777f,0x5496777f,0x5496777f,0x0,0x5496777f,0x0,0x80,0x0,0x0,0x0,0x0,0x6496377f,0x0,0x6496377f,0x2061,0x0,0x0,0x0,0x80,0x80,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2061,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4494377f,0x0,0x4496377f,0x0,0x4494377f,0x6496377f,0x4494377f,0x0,0x4494377f,0x0,0x4494377f,0x0,0x0,0x4496377f,0x0,0x2061,0x0,0x0,0x0,0x0,0x0,0x4494377f,0x0,0x0,0x0,0x4494377f,0x4494377f,0x4494377f,0x0,0x0,0x0,0x0,0x6496377f,0x0,0x6496377f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x5496777f,0x0,0x5496777f,0x0,0x0,0x0,0x0,0x0,0x4496377f,0x0,0x4496377f,0x2061,0x0,0x2061,0x0,0x2061,0x4496377f,0x4496377f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x5496777f,0x0,0x5496777f,0x0,0x5496777f,0x0,0x0,0x0,0x0,0x800,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2061,0x0,0x0,0x0,0x20000000,0x20000000,0x0,0x20,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4496377f,0x0,0x0,0x0,0x0,0x0,0x4496377f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x0,0x200,0x0,0x0,0x8000,0x0,0x0,0x0,0x0,0x8000,0x0,0x80000080,0x80000080,0x8000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4496377f,0x0,0x0,0x0,0x0,0x0,0x4496377f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4496377f,0x4496377f,0x4496377f,0x0,0x0,0x0,0x2061,0x0,0x4496377f,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x80000080,0x80000080,0x4496377f,0xc49637ff,0x0,0x0,0x800,0x20000000,0x0,0x0,0x4494377f,0x0,0x0,0x0,0x0,0x207f,0x0,0x0,0x400,0x100000,0x0,0x100000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4494377f,0x0,0x4494377f,0x0,0x0,0x0,0x0,0x0,0x0,0x4496377f,0x0,0x10000,0x10000,0x20000000,0x20000000,0x40000,0x0,0x0,0x40000,0x0,0x0,0x0,0x0,0x0,0x40000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2061,0x1002061,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800,0x0,0x4c94377f,0x5496777f,0x0,0x0,0x4494377f,0x4c94777f,0x800,0x0,0x0,0x0,0x4000000,0x0,0x1,0x0,0x800,0x800,0x0,0x0,0x0,0x800,0x0,0x800,0x0,0x4494377f,0x4494377f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x800,0x4494377f,0x0,0x4494377f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4494377f,0x0,0x0,0x0,0x1e,0x0,0x0,0x0,0x4000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4494377f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10004000,0x0,0x0,0x4c94377f,0x5496777f,0x0,0x0,0x0,0x0,0x4c94377f,0x0,0x4494377f,0x0,0x0,0x0,0x0,0x4494377f,0x100,0x4000000,0x0,0x0,0xffffff80,0x2061,0x4494377f,0x2061,0x207f,0x0,0x0,0x0,0x0,}; } private static void jj_la1_init_3() { jj_la1_3 = new int[] {0x0,0x0,0x0,0x0,0x0,0x800000,0x840000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x401,0x0,0x2bed1331,0x0,0x2bed5271,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200000,0x2bed1331,0x2bed1231,0x200000,0x0,0x0,0x0,0x0,0x0,0x200000,0x2bed1331,0x2bed5271,0x0,0x8,0x0,0x2bed1231,0x200000,0x0,0x8000100,0x2bed1331,0x2bed1331,0x0,0x2bed1331,0x2bed1331,0x0,0x2bed1331,0x2bed1331,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2bed1231,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200000,0x2bed1331,0x0,0x2bed5271,0x0,0x8,0x2bed1231,0x2bed1331,0x200000,0x200000,0x8000,0x0,0x0,0x0,0x0,0x0,0x8000100,0x0,0x0,0x0,0x100,0x0,0x2bed1231,0x8000000,0x28000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2bed5271,0x840000,0x0,0x0,0x0,0x100000,0x0,0x0,0x800,0x0,0x20,0x40000000,0x10000000,0x0,0x0,0x1080000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20,0x0,0x0,0x0,0x800,0x0,0x1000,0x0,0x0,0x2bed1231,0x0,0x2bed1231,0x8000000,0x0,0x8000000,0x8000000,0x400000,0x0,0x0,0x0,0x8000000,0x8000000,0x8000000,0x40000000,0x8000000,0x40000000,0x0,0x0,0x0,0x8000000,0x0,0x8000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2bed1231,0x0,0x2bed1231,0x2bed1231,0x2bed1231,0x0,0x20000000,0x2bed1231,0x0,0x2bed1231,0x0,0x0,0x2bed1231,0x2bed1231,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2bed1231,0x0,0x0,0x0,0x0,0x40,0x0,0x0,0x0,0x2bed1231,0x2bed1231,0x0,0x0,0x0,0x2bed1231,0x0,0x2bed1231,0x0,0x0,0x2bed1231,0x0,0x0,0x0,0x0,0x0,0x2bed1231,0x0,0x2bed1231,0x2bed1231,0x2bed1231,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2bed1231,0x0,0x0,0x0,0x0,0x0,0x2bed1231,0x2bed1231,0x2bed1231,0x0,0x0,0x0,0x0,0x0,0x0,0x2bed1231,0x0,0x0,0x0,0x0,0x80000000,0x0,0x0,0x0,0x0,0x0,0x0,0x80000000,0x80000000,0x0,0x0,0x0,0x0,0x0,0x0,0x40000,0x4000,0x260,0x2bed1231,0x2bed5271,0x0,0x2bed1231,0x0,0x2,0x0,0x2bed5271,0x2bed5271,0x2bed5271,0x0,0x2bed5271,0x0,0x100000,0x0,0x0,0x0,0x0,0x2bed1231,0x0,0x2bed1231,0x0,0x0,0x0,0x100000,0x0,0x0,0x0,0x0,0x0,0x100000,0x0,0x0,0x0,0x100000,0x2,0x0,0x100000,0x100000,0x100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2bed1231,0x40,0x2bed1231,0x0,0x2bed1231,0x2bed1231,0x2bed1231,0x0,0x2bed1231,0x0,0x2bed1231,0x0,0x0,0x2bed1231,0x0,0x0,0x100000,0x0,0x0,0x0,0x80,0x2bed1231,0x0,0x0,0x0,0x2bed1231,0x2bed1231,0x2bed1231,0x0,0x8000000,0x0,0x0,0x2bed1231,0x0,0x2bed1231,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2bed5271,0x0,0x2bed5271,0x0,0x0,0x2,0x0,0x0,0x2bed1231,0x0,0x2bed1231,0x0,0x0,0x0,0x0,0x0,0x2bed1231,0x2bed1231,0x0,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x100000,0x100000,0x0,0x100000,0x0,0x8000,0x8000,0x0,0x0,0x8000,0x8000,0x2bed5271,0x0,0x2bed5271,0x0,0x2bed5271,0x0,0x0,0x0,0x8000000,0x200000,0x0,0x0,0x0,0x0,0x0,0x8000000,0x10000,0x0,0x0,0x0,0x0,0x8000000,0x28000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200000,0x2bed1231,0x0,0x0,0x0,0x0,0x0,0x2bed1231,0x2,0x0,0x0,0x0,0x0,0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x200000,0x200000,0x8408000,0x0,0x8000000,0x0,0x40000000,0x408000,0x80000,0x0,0x0,0x8408000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2bed1231,0x0,0x0,0x8000000,0x0,0x8000000,0x2bed1231,0x8000000,0x0,0x0,0x0,0x0,0x8000000,0x0,0x0,0x0,0x0,0x2bed1231,0x2bed1231,0x2bed1231,0x0,0x0,0x0,0x0,0x0,0x2bed1231,0x0,0x0,0x20000000,0x0,0x0,0x0,0x0,0x0,0x0,0x2bed1231,0x2bed1231,0x80000000,0x0,0x0,0x0,0x0,0x0,0x2bed1231,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x100,0x0,0x100,0x100,0x0,0x0,0x0,0x0,0x0,0x8000000,0x8000000,0x2bed1231,0x0,0x2bed1231,0x0,0x1,0x0,0x40000000,0x0,0x80000000,0x2bed1231,0x80000000,0x0,0x0,0x0,0x0,0x28000000,0x0,0x8000000,0x28000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8000000,0x8000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200000,0x0,0x2bed1331,0x2bed5271,0x0,0x8,0x2bed1231,0x2bed1331,0x200000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200000,0x200000,0x0,0x0,0x0,0x200000,0x0,0x200000,0x0,0x2bed1231,0x2bed1231,0x0,0x8000000,0x0,0x0,0x28000000,0x8000000,0x20000000,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x8000000,0x8000000,0x0,0x0,0x0,0x8000000,0x8000000,0x1,0x0,0x0,0x200000,0x2bed1231,0x0,0x2bed1231,0x0,0x28000000,0x8000000,0x20000000,0x8000000,0x8000000,0x8000000,0x0,0x0,0x0,0x0,0x2bed1231,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x40000,0x0,0x40000,0x0,0x40000,0x0,0x40000,0x0,0x2bed1231,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2bed1331,0x2bed5271,0x0,0x8,0x0,0x0,0x2bed1331,0x0,0x2bed1231,0x0,0x0,0x0,0x0,0x2bed1231,0x0,0x401,0x0,0x0,0xffffffff,0x0,0x2bed1231,0x0,0x0,0x0,0x0,0x0,0x0,}; } private static void jj_la1_init_4() { jj_la1_4 = new int[] {0x0,0x0,0x0,0x0,0x0,0x8000000,0x8200100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000,0x80,0x0,0xf0272217,0x0,0xf8272b03,0x2000000,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf0272217,0xf0272203,0x0,0x2,0x0,0x0,0x0,0x40000,0x0,0xf0272217,0xf8272b03,0x2000000,0x0,0x0,0xf0272203,0x0,0x0,0x14,0xf0272217,0xf0272217,0x0,0xf0272217,0xf0272217,0x0,0xf0272217,0xf0272217,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4,0xf0272203,0x0,0x4,0x4,0x0,0x0,0x0,0x0,0x0,0x20000000,0x0,0xf0272217,0x0,0xf8272b03,0x2000000,0x0,0xf0272203,0xf0272217,0x0,0x20000000,0x0,0x0,0x0,0xf0042000,0x0,0x0,0x14,0x0,0x0,0x0,0x10,0x0,0xf0272203,0x0,0x0,0x0,0x0,0x0,0x40000,0x0,0x0,0xf0042000,0x0,0x0,0x8000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8020000,0x0,0x0,0x0,0x0,0x0,0x0,0x8020000,0x8020000,0x2,0xf8272b03,0x8200100,0x100000,0x100000,0x8000000,0x0,0x4000000,0x1000,0x0,0x4,0x0,0x0,0x0,0x8000100,0x0,0x80000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8000000,0x0,0x8000000,0x4000000,0x1000,0x0,0x0,0x0,0x0,0x0,0xf8272a03,0x4000000,0xf8272a03,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x2,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf8272a03,0x0,0xf0272203,0xf0272203,0xf0272203,0x0,0x0,0xf8272a03,0x0,0xf0272203,0x0,0x0,0xf0272203,0xf8272a03,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf0272203,0x0,0x0,0xf0042000,0x0,0x0,0x0,0x0,0x0,0xf0272203,0xf8272a03,0x0,0x0,0x0,0xf0272203,0x0,0xf8272a03,0x0,0x0,0xf8272a03,0x0,0x0,0x4,0x0,0x0,0xf8272a03,0x0,0xf8272a03,0xf8272a03,0xf8272a03,0x0,0x8000000,0x8000000,0x0,0x1000,0x1000,0x0,0x0,0x0,0x0,0xf8272a03,0x0,0x0,0x0,0x0,0x0,0xf0272203,0xf0272203,0xf0272203,0x0,0x8000000,0x8000,0x0,0x0,0x0,0xf8272a03,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8000100,0x0,0x200000,0x0,0x0,0xf8272a03,0xf8272b03,0x0,0xf8272a03,0x2000000,0x0,0x0,0xf8272b03,0xf8272b03,0xf8272b03,0x0,0xf8272b03,0x0,0x2000000,0x0,0x8400100,0x0,0x0,0xf8272a03,0x0,0xf8272a03,0xf0042000,0x400000,0x0,0x0,0x2000000,0x0,0x0,0x400000,0x0,0x0,0x2000000,0x400000,0x0,0x0,0x0,0x8000000,0x0,0x0,0x10,0x0,0xf0042000,0x4000000,0x0,0x0,0x0,0x0,0x0,0x8000000,0x8000,0x0,0x0,0x0,0xf0272203,0x0,0xf8272a03,0x0,0xf0272203,0xf8272a03,0xf0272203,0x0,0xf0272203,0x0,0xf0272203,0x0,0x0,0xf8272a03,0x0,0xf0042000,0x0,0x0,0x0,0x0,0x0,0xf027a203,0x4000000,0x0,0x0,0xf0272203,0xf0272203,0xf0272203,0x2000000,0x0,0x0,0x0,0xf8272a03,0x0,0xf8272a03,0x4000000,0x0,0x0,0x0,0x4000000,0x0,0x0,0xf8272b03,0x0,0xf8272b03,0x0,0x0,0x0,0x400000,0x0,0xf8672a03,0x0,0xf8272a03,0xf0042000,0x2000000,0xf0042000,0x2000000,0xf0042000,0xf8272a03,0xf8272b03,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf8272b03,0x0,0xf8272b03,0x0,0xf8272b03,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8000,0x0,0x0,0x0,0x0,0x0,0xf004a000,0x42000,0x0,0x0,0x0,0x0,0x0,0x0,0x8000000,0x0,0x0,0x0,0x0,0x8000000,0x0,0x0,0x0,0xf8272a03,0x0,0x0,0x0,0x2000000,0x2000000,0xfa272a03,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf8272a03,0x0,0x0,0x0,0x800,0x0,0xf8272203,0x0,0x40000,0x0,0x0,0x0,0x0,0x40000,0x0,0x0,0x0,0xf8272203,0xf8272203,0xf8272203,0x0,0x0,0x0,0xf0042000,0x0,0xf8272a03,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100000,0x100000,0xf8272a03,0xf8372a03,0x0,0x0,0x0,0x0,0x0,0x0,0xf0272203,0x0,0x0,0x0,0x0,0xf0042000,0x0,0x0,0x0,0x4,0x0,0x4,0x40010,0x40010,0x0,0x40010,0x40010,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf0272203,0x0,0xf0272203,0x0,0x0,0x0,0x0,0x0,0x0,0xf8272a03,0x0,0x0,0x0,0x0,0x0,0x8100000,0x0,0x0,0x8100000,0x0,0x0,0x0,0x0,0x0,0x100000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x8000000,0x0,0x2,0x20,0x0,0x2,0x0,0x0,0x20,0xf0042000,0xf0042000,0x0,0x0,0x8000,0x8000,0x0,0x0,0x0,0x0,0x4,0x4,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf0272217,0xf8272b03,0x2000000,0x0,0xf0272203,0xf0272217,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf0272207,0xf0272203,0x0,0x4,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10000000,0x0,0x10000000,0x0,0x0,0x0,0x4,0x4,0x0,0x0,0x0,0x4,0x4,0x10000000,0x0,0x0,0x0,0xf0272203,0x0,0xf0272203,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xf0272203,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x200000,0x0,0x200000,0x2,0x200000,0x0,0x200000,0x0,0xf0272203,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000000,0x0,0x0,0x0,0xf0272217,0xf8272b03,0x2000000,0x0,0x0,0x0,0xf0272217,0x0,0xf0272203,0x0,0x0,0x2,0x0,0xf0272203,0x0,0x80,0x0,0x0,0xfffffff,0xf0002000,0xf0272203,0xf0042000,0xf0042000,0x88008000,0x40000,0x8000,0x0,}; } private static void jj_la1_init_5() { jj_la1_5 = new int[] {0x0,0x0,0x0,0x0,0x0,0x4000,0x20004000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x2,0x0,0xbfffffff,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0xbfffffff,0x0,0x0,0x0,0xbfffffff,0x0,0x0,0x20000,0xbfffffff,0xbfffffff,0x0,0xbfffffff,0xbfffffff,0x0,0xbfffffff,0xbfffffff,0x0,0x0,0x0,0x0,0x40000002,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40000002,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0xbfffffff,0xbfffffff,0x0,0x40000002,0x0,0x0,0x0,0x9f7f7fff,0x0,0x0,0x20000,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x957f7ceb,0x0,0x0,0x0,0x0,0x100,0x40,0x100,0x0,0xa000314,0x0,0x0,0x100,0x40,0x0,0x0,0x2000000,0x0,0x4000000,0x4000000,0x0,0x4000000,0x0,0x0,0x0,0xbfffffff,0x20004000,0x0,0x0,0x0,0x20,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200000,0x0,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x800000,0xbfffffff,0xbfffffff,0xbfffffff,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0xbfffffff,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0x0,0x9f7f7fff,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0xbfffffff,0x0,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0xbfffffff,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100000,0x0,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0xbfffffff,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x10000,0xbfffffff,0x0,0x100000,0x0,0x0,0x0,0x0,0x100000,0x100000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100000,0x0,0x0,0x20000000,0x0,0x400,0xbfffffff,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0x0,0xbfffffff,0xbfffffff,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0x957f7ceb,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20,0x20,0x0,0x0,0x957f7ceb,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0x0,0xbfffffff,0xbfffffff,0xbfffffff,0x0,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0xbfffffff,0x0,0x957f7ceb,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0x0,0x0,0xbfffffff,0xbfffffff,0xbfffffff,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0x0,0x20000000,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0x957f7ceb,0x0,0x957f7ceb,0x0,0x957f7ceb,0xbfffffff,0xbfffffff,0x0,0x0,0x20,0x0,0x0,0x0,0x0,0x0,0x20,0x20,0x0,0x20,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x200,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x9f7f7fff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x4000000,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0xbfffffff,0xbfffffff,0x0,0x0,0x0,0x957f7ceb,0x0,0xbfffffff,0x0,0x0,0x2000000,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x957f7ceb,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000000,0x0,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0x20000000,0x0,0x0,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x10000,0x10000,0x0,0x0,0x80000000,0x10000,0x0,0x0,0x0,0x0,0x80000000,0x0,0x0,0x0,0x0,0x0,0x80000000,0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x957f7ceb,0x957f7ceb,0x0,0x0,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x20000,0x40000000,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0xbfffffff,0x0,0x0,0xbfffffff,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0xbfffffff,0x0,0x20000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20001,0x20001,0x0,0x0,0x0,0x20001,0x20001,0x0,0x0,0x2,0x0,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x80000,0x0,0x80000,0x0,0x0,0x80,0x80,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000000,0x0,0x20000000,0x0,0x20000000,0x0,0x20000000,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80000000,0x80000000,0x0,0x0,0x0,0x0,0xbfffffff,0xbfffffff,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x957f7ceb,0xbfffffff,0x957f7ceb,0xbfffffff,0xa800116,0x0,0x0,0x0,}; } private static void jj_la1_init_6() { jj_la1_6 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200,0x800,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0x4,0x4,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0xfffffbff,0x0,0x0,0x4,0x4,0x0,0x0,0x0,0xfffffbff,0xfffffbff,0x0,0x0,0x0,0xfffffbff,0x0,0x0,0x20000,0xfffffbff,0xfffffbff,0x0,0xfffffbff,0xfffffbff,0x0,0xfffffbff,0xfffffbff,0x0,0x4,0x4,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0xfffffbff,0x0,0x0,0xfffffbff,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0xfff7fbee,0x0,0x0,0x20000,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfff3fbee,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8000000,0x8000000,0x0,0x8000000,0x0,0x0,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0xfffffbff,0xfffffbff,0xfffffbff,0x0,0x0,0xfffffbff,0x0,0xfffffbff,0x0,0x0,0xfffffbff,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0x0,0xfff7fbee,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0xfffffbff,0x0,0x0,0x0,0xfffffbff,0x0,0xfffffbff,0x0,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0xfffffbff,0xfffffbff,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20400000,0x0,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0xfffffbff,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0x20400000,0x20000000,0x0,0x0,0x20000000,0x0,0x20000000,0x0,0x0,0x0,0x0,0x0,0x0,0x400000,0x0,0x0,0x0,0x0,0x0,0x0,0x80800,0xfffffbff,0xfffffbff,0x0,0xfffffbff,0x0,0x0,0x0,0xfffffbff,0xfffffbff,0xfffffbff,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0xfffffbff,0xfff3fbee,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfff3fbee,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0xfffffbff,0x0,0xfffffbff,0xfffffbff,0xfffffbff,0x0,0xfffffbff,0x0,0xfffffbff,0x0,0x0,0xfffffbff,0x0,0xfff3fbee,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0x0,0x0,0xfffffbff,0xfffffbff,0xfffffbff,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0xfffffbff,0x0,0x10,0x0,0x40000000,0x0,0xfffffbff,0x0,0xfffffbff,0xfff3fbee,0x0,0xfff3fbee,0x0,0xfff3fbee,0xfffffbff,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0xfffffbff,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfff7fbee,0x0,0x0,0x0,0x0,0x0,0x0,0x1000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0x0,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x0,0x0,0x0,0x0,0x40,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x8000000,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0xfffffbff,0xfffffbff,0x0,0x0,0x0,0xfff3fbee,0x0,0xfffffbff,0x0,0x0,0x10000,0x10000,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0xfff3fbee,0x2000000,0x0,0x2000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800000,0x800002,0x800002,0x2000,0x0,0x0,0x0,0xfffffbff,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20,0x0,0x0,0x0,0x0,0x100000,0x20,0x0,0x0,0x0,0x0,0x10000000,0x20,0x0,0x0,0x0,0x0,0x0,0x200000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfff3fbee,0xfff3fbee,0x0,0x0,0x0,0x0,0x0,0x20000,0x0,0x20000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0xfffffbff,0x0,0x0,0xfffffbff,0xfffffbff,0x0,0x0,0x4,0x4,0x0,0x200000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0xfffffbff,0x0,0x20000,0x0,0x0,0x20000,0x0,0x20000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20008,0x20008,0x0,0x0,0x0,0x20000,0x20000,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0xfffffbff,0x0,0x20000,0x0,0x20000,0x80000000,0x0,0x80000000,0x200000,0x200100,0x0,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0x4,0x4,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20,0x20,0x0,0x0,0x0,0x0,0xfffffbff,0xfffffbff,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0xfffffbff,0x0,0x0,0x0,0x0,0x0,0xfff3fbee,0xfffffbff,0xfff3fbee,0xffffffff,0x8040000,0x0,0x0,0x0,}; } private static void jj_la1_init_7() { jj_la1_7 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x400000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0xffffffff,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x300008,0xffffffff,0xffffffff,0x0,0xffffffff,0xffffffff,0x0,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0x0,0xfffdffdf,0x0,0x0,0x300008,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7ff9ffcf,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40000,0xc0040010,0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x0,0x11000000,0x11000000,0x0,0x11000000,0x0,0x0,0x0,0xffffffff,0x400000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x20000004,0x0,0x0,0xe000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0xffffffff,0xffffffff,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0xfffdffdf,0x0,0x0,0x0,0x0,0x0,0xffffffff,0xffffffff,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40000400,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0xffffffff,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x40000400,0x0,0x0,0x0,0x0,0x40000000,0x40000400,0x0,0x40000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80000,0xffffffff,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0xffffffff,0xffffffff,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x7ff9ffcf,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7ff9ffcf,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0xffffffff,0xffffffff,0xffffffff,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0xffffffff,0x0,0x7ff9ffcf,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0xffffffff,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x7ff9ffcf,0x0,0x7ff9ffcf,0x0,0x7ff9ffcf,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0x10000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffdffdf,0x0,0x0,0x0,0x0,0x0,0x200,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200000,0x0,0x0,0x200000,0x0,0x200000,0x0,0x0,0x0,0x200000,0x0,0x0,0x0,0x0,0x0,0x8000000,0x0,0xffffffff,0x11000000,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0xffffffff,0xffffffff,0x0,0x0,0x0,0x7ff9ffcf,0x0,0xffffffff,0x0,0x0,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x7ff9ffef,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800000,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7ff9ffcf,0x7ff9ffcf,0x0,0x0,0x1,0x1,0x0,0x8,0x0,0x8,0x100000,0x100000,0x200000,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0xffffffff,0x0,0x0,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0xffffffff,0x0,0x300008,0x0,0x0,0x8,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x4000000,0x0,0x4000000,0x0,0x0,0x0,0x310008,0x310008,0x0,0x0,0x0,0x300008,0x300008,0x4000000,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x8,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x80,0x80,0xffffffff,0x0,0x0,0x0,0x20,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x77f1ffcf,0xffffffff,0x7ff9ffcf,0xfffdffff,0xd2040050,0x0,0x0,0x0,}; } private static void jj_la1_init_8() { jj_la1_8 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbffffffd,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x80,0x80,0x0,0x0,0x0,0x0,0x0,0xbffffffd,0xbffffffd,0x0,0x0,0x80,0x80,0x0,0x20000000,0x0,0xbffffffd,0xbfffffff,0x0,0x0,0x0,0xbffffffd,0x0,0x0,0x10000000,0xbffffffd,0xbffffffd,0x0,0xbffffffd,0xbffffffd,0x0,0xbffffffd,0xbffffffd,0x0,0x80,0x80,0x0,0x40000000,0x0,0x0,0x0,0x0,0x0,0x0,0xbffffffd,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40000000,0x0,0x0,0xbffffffd,0x0,0xbfffffff,0x0,0x0,0xbffffffd,0xbffffffd,0x0,0x40000000,0x0,0x4000000,0x20,0xbbfdffd5,0x0,0x0,0x10000000,0x0,0x0,0x0,0x0,0x0,0xbffffffd,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbbfd03d5,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfc00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200,0x0,0x4,0x0,0x0,0x0,0x100000,0x40000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x8,0xbffffffd,0xbffffffd,0xbffffffd,0x0,0x0,0xbfffffff,0x0,0xbffffffd,0x0,0x0,0xbffffffd,0xbfffffff,0x10,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbffffffd,0x0,0x0,0xbbfdffd5,0x0,0x0,0x0,0x0,0x0,0xbffffffd,0xbfffffff,0x0,0x0,0x0,0xbffffffd,0x0,0xbfffffff,0x0,0x0,0xbfffffff,0x80000000,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0xbfffffff,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x88000000,0x0,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0xbffffffd,0xbffffffd,0xbffffffd,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0x88000000,0x0,0x0,0x0,0x0,0x0,0x0,0x80000000,0x0,0x0,0x0,0x0,0x0,0x0,0x8000000,0x8000000,0x0,0x0,0x0,0x0,0x400000,0xbfffffff,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0x0,0xbfffffff,0xbfffffff,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0xbbfd03d5,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbbfd03d5,0x0,0x0,0x0,0x80000000,0x80000000,0x0,0x0,0x0,0x0,0x80000000,0x0,0xbffffffd,0x0,0xbfffffff,0x0,0xbffffffd,0xbfffffff,0xbffffffd,0x0,0xbffffffd,0x0,0xbffffffd,0x0,0x0,0xbfffffff,0x0,0xbbfd03d5,0x0,0x0,0x0,0x0,0x0,0xbffffffd,0x0,0x0,0x0,0xbffffffd,0xbffffffd,0xbffffffd,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0xbfffffff,0xbbfd03d5,0x0,0xbbfd03d5,0x0,0xbbfd03d5,0xbfffffff,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000000,0x4000000,0x4000000,0x0,0x4000000,0x4000000,0x4000000,0xbfffffff,0x0,0xbfffffff,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0xf800,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbbfdffd5,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0x0,0x100000,0x0,0x100000,0x0,0x0,0x100000,0x0,0x100000,0xbfffffff,0xbffffffd,0xbfffffff,0x0,0x0,0x0,0xbbfd03d5,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0xbffffffd,0x0,0x0,0x0,0x0,0xbbfd03d5,0x0,0x0,0x0,0x0,0x0,0x0,0x20000000,0x20000000,0x0,0x20000000,0x20000000,0x0,0x0,0x0,0x40,0x0,0x0,0x0,0xbffffffd,0x0,0xbffffffd,0x0,0x0,0x0,0x0,0x0,0x0,0xbfffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10,0x10,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbbfd03d5,0xbbfd03d5,0x0,0x0,0x800000,0x800000,0x0,0x10000000,0x0,0x10000000,0x0,0x0,0x0,0x0,0x40000000,0x0,0x0,0x0,0x0,0xbffffffd,0xbfffffff,0x0,0x0,0xbffffffd,0xbffffffd,0x0,0x0,0x80,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbffffffd,0xbffffffd,0x0,0x10000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10000000,0x10000000,0x0,0x0,0x0,0x10000000,0x10000000,0x0,0x0,0x0,0x0,0xbffffffd,0x0,0xbffffffd,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbffffffd,0x0,0x0,0x0,0x0,0x0,0x80,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbffffffd,0x1,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xbffffffd,0xbfffffff,0x0,0x0,0x0,0x0,0xbffffffd,0x0,0xbffffffd,0x0,0x0,0x0,0x0,0xbffffffd,0x0,0x0,0x0,0x0,0x0,0xbbfd03d5,0xbffffffd,0xbbfd03d5,0xbffffffd,0x2fc00,0x0,0x0,0x0,}; } private static void jj_la1_init_9() { jj_la1_9 = new int[] {0x0,0x0,0x0,0x0,0x0,0x8000000,0x8000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff7ffff3,0x0,0xff7ffff7,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff7ffff3,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff7ffff3,0xff7ffff7,0x0,0x0,0x0,0xff7fff73,0x0,0x80,0x0,0xff7ffff3,0xff7ffff3,0x0,0xff7ffff3,0xff7ffff3,0x0,0xff7ffff3,0xff7ffff3,0x0,0x0,0x0,0x0,0x800008,0x0,0x0,0x0,0x0,0x0,0x0,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0x0,0x100000,0x800008,0x0,0x0,0xff7ffff3,0x80,0xff7ffff7,0x0,0x0,0xff7fff73,0xff7ffff3,0x0,0x800008,0x0,0x0,0x0,0xff7fed72,0x0,0x0,0x0,0x0,0x1000000,0x0,0x0,0x0,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff7fed02,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80004000,0x8000c070,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff7ffff7,0x8000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x60000000,0x0,0x2,0x0,0x60000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10000000,0x0,0xff7fff73,0x0,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff7fff73,0x0,0xff7fff73,0xff7fff73,0xff7fff73,0x0,0x0,0xff7fff73,0x0,0xff7fff73,0x0,0x0,0xff7fff73,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000000,0x0,0xff7fff73,0x0,0x0,0xff7fed72,0x0,0x0,0x0,0x0,0x0,0xff7fff73,0xff7fff73,0x0,0x0,0x0,0xff7fff73,0x0,0xff7fff73,0x0,0x0,0xff7fff73,0x0,0x40002000,0x0,0x40002000,0x0,0xff7fff73,0x0,0xff7fff73,0xff7fff73,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0xff7fff73,0xff7fff73,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0x0,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1001000,0xff7ffff7,0xff7ffff7,0x0,0xff7fff73,0x0,0x0,0x0,0xff7ffff7,0xff7ffff7,0xff7ffff7,0x0,0xff7ffff7,0x0,0x0,0x3000000,0x0,0x0,0x0,0xff7fff73,0x0,0xff7fff73,0xff7fed02,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff7fed02,0x0,0x3000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff7fff73,0x0,0xff7fff73,0x0,0xff7fff73,0xff7fff73,0xff7fff73,0x0,0xff7fff73,0x20000000,0xff7fff73,0x3000000,0x0,0xff7fff73,0x0,0xff7fed02,0x0,0x0,0x0,0x0,0x0,0xff7fff73,0x0,0x3000000,0x0,0xff7fff73,0xff7fff73,0xff7fff73,0x0,0x0,0x0,0x3000000,0xff7fff73,0x0,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0x4000000,0x0,0xff7ffff7,0x0,0xff7ffff7,0x0,0x0,0x0,0x0,0x0,0xff7fff73,0x0,0xff7fff73,0xff7fed02,0x0,0xff7fed02,0x0,0xff7fed02,0xff7fff73,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3000000,0x3000000,0x3000000,0x3000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff7ffff7,0x0,0xff7ffff7,0x0,0xff7ffff7,0x0,0x2000,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000000,0x0,0xff7fed72,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000000,0x0,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff7fff73,0xff7fff73,0xff7fff73,0x0,0x0,0x0,0xff7fed02,0x0,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff7fff73,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0x0,0xff7fff73,0x0,0x0,0x0,0x0,0xff7fed02,0x2000,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800,0x800,0x800,0x0,0x0,0x0,0x0,0xff7fff73,0x0,0xff7fff73,0x0,0x100,0x100,0x0,0x0,0x0,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0x20400,0x0,0x0,0x20400,0x0,0x0,0x0,0x0,0x0,0x400,0x0,0x0,0x1,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff7fed02,0xff7fed02,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x800000,0x0,0x0,0xff7ffff3,0xff7ffff7,0x0,0x0,0xff7fff73,0xff7ffff3,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff7ffff3,0xff7ffff3,0x0,0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff7fff73,0x0,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff7fff73,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff7fff73,0x0,0x0,0x0,0x4000000,0x4000000,0x4000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff7ffff3,0xff7ffff7,0x0,0x0,0x0,0x0,0xff7ffff3,0x0,0xff7fff73,0x0,0x0,0x0,0x0,0xff7fff73,0x0,0x200000,0x0,0x0,0x0,0xff7fad02,0xff7fff73,0xff7fed02,0xff7ffff2,0xa001c070,0x0,0x0,0x0,}; } private static void jj_la1_init_10() { jj_la1_10 = new int[] {0x0,0x0,0x0,0x0,0x0,0x8,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0xffffffff,0x0,0x0,0x0,0xffffff7f,0x0,0x0,0x20000,0xffffff7f,0xffffff7f,0x0,0xffffff7f,0xffffff7f,0x0,0xffffff7f,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0xffffffff,0x0,0x0,0xffffff7f,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x7fefff3d,0x0,0x0,0x20000,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x7fefef3d,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x201000,0x3000020,0x0,0x0,0x0,0x0,0x0,0x2000000,0x0,0x10,0x10,0x0,0x10,0x0,0x0,0x0,0xffffffff,0x88,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x2000,0x0,0x0,0xffffff7f,0x0,0xffffff7f,0xffffff7f,0xffffff7f,0x0,0x0,0xffffff7f,0x0,0xffffff7f,0x0,0x0,0xffffff7f,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0x0,0x7fefff3d,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0xffffff7f,0x0,0x0,0x0,0xffffff7f,0x0,0xffffff7f,0x0,0x0,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0xffffff7f,0xffffff7f,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0xffffff7f,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0xffffffff,0x0,0xffffff7f,0x0,0x0,0x0,0xffffffff,0xffffffff,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0xffffff7f,0x7fefef3d,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fefef3d,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0xffffff7f,0x0,0xffffff7f,0xffffff7f,0xffffff7f,0x0,0xffffff7f,0x0,0xffffff7f,0x0,0x0,0xffffff7f,0x0,0x7fefef3d,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0x0,0x0,0xffffff7f,0xffffff7f,0xffffff7f,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x4,0xffffff7f,0x7fefef3d,0x0,0x7fefef3d,0x0,0x7fefef3d,0xffffff7f,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fefff3d,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x3c000010,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0xffffff7f,0xffffff7f,0x0,0x0,0x0,0x7fefef3d,0x0,0xffffff7f,0x1000000,0x0,0x2000000,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0x0,0x0,0x0,0x7fefef3d,0x0,0x0,0x0,0x0,0x0,0x0,0x80000000,0x80000000,0x0,0x80000000,0x80000000,0x0,0x400,0x400,0x0,0x800,0x0,0x40000,0xffffff7f,0x0,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fefef3d,0x7fefef3d,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0xffffffff,0x0,0x0,0xffffff7f,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0xffffff7f,0x0,0x20000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000,0x20000,0x0,0x0,0x0,0x20000,0x20000,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffff7f,0xffffffff,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0xffffff7f,0x0,0x0,0x0,0x0,0xffffff7f,0x0,0x0,0x0,0x0,0x0,0x7fee6f3d,0xffffff7f,0x7fefef3d,0xffffff7f,0x3f001093,0x0,0x0,0x0,}; } private static void jj_la1_init_11() { jj_la1_11 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x7fffffff,0x0,0x0,0x0,0x7fffffff,0x0,0x0,0x0,0x7fffffff,0x7fffffff,0x0,0x7fffffff,0x7fffffff,0x0,0x7fffffff,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x0,0x7fffffff,0x0,0x8,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x7fffffff,0x0,0x0,0x7fffffff,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x7fffffed,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffbe6d,0x0,0x0,0x180000,0x0,0x0,0x0,0x10000000,0x1878180,0x11e7f780,0x0,0x0,0x0,0x0,0x10000000,0x10000000,0x0,0x0,0x2000000,0x2000000,0x4000000,0x2000000,0x0,0x0,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x7fffffff,0x7fffffff,0x7fffffff,0x0,0x0,0x7fffffff,0x0,0x7fffffff,0x0,0x0,0x7fffffff,0x7fffffff,0x20,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x0,0x7fffffed,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x7fffffff,0x0,0x0,0x0,0x7fffffff,0x0,0x7fffffff,0x0,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x7fffffff,0x7fffffff,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x7fffffff,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10,0x7fffffff,0x7fffffff,0x0,0x7fffffff,0x0,0x0,0x0,0x7fffffff,0x7fffffff,0x7fffffff,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x7fffffff,0x7fffbe6d,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffbe6d,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x7fffffff,0x0,0x7fffffff,0x7fffffff,0x7fffffff,0x0,0x7fffffff,0x0,0x7fffffff,0x0,0x0,0x7fffffff,0x0,0x7fffbe6d,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x0,0x0,0x7fffffff,0x7fffffff,0x7fffffff,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x7fffffff,0x7fffbe6d,0x0,0x7fffbe6d,0x0,0x7fffbe6d,0x7fffffff,0x7fffffff,0x8,0x0,0x0,0x0,0x0,0x8,0x8,0x0,0x8,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x7fffffff,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x180000,0x0,0x0,0x0,0x0,0x0,0x7fffffed,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x2000000,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x7fffffff,0x7fffffff,0x0,0x0,0x0,0x7fffbe6d,0x0,0x7fffffff,0x4000000,0x0,0x1,0x1,0x40,0x0,0x0,0x0,0x0,0x7fffffff,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x8,0x7fffffff,0x0,0x0,0x0,0x0,0x7fffbe6d,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffbe6d,0x7fffbe6d,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x7fffffff,0x0,0x0,0x7fffffff,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4,0x4,0x0,0x7fffffff,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xe0000000,0x0,0x7fffffff,0x7fffffff,0x0,0x0,0xe0000000,0x0,0x7fffffff,0xe0000000,0x7fffffff,0x60000000,0x0,0x0,0x0,0x7fffffff,0x0,0x0,0x0,0x0,0x0,0x7fffbe6d,0x7fffffff,0x7fffbe6d,0x7fffffff,0x1fefff80,0x0,0x0,0x0,}; } private static void jj_la1_init_12() { jj_la1_12 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc001fe,0x0,0xffc021fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc001fe,0xffc000fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc001fe,0xffc021fe,0x0,0x0,0x0,0xffc000fe,0x0,0x0,0x100,0xffc021fe,0xffc021fe,0x800,0xffc021fe,0xffc021fe,0x400,0xffc021fe,0xffc021fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc001fe,0x0,0xffc021fe,0x0,0x0,0xffc000fe,0xffc001fe,0x0,0x0,0x0,0x0,0x0,0xffc001fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0xffc000fe,0x800,0x400,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc021fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0x0,0xffc000fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0x0,0xffc000fe,0xffc000fe,0xffc000fe,0x0,0x0,0xffc001fe,0x0,0xffc000fe,0x0,0x0,0xffc000fe,0xffc001fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0x0,0x0,0xffc001fe,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0xffc001fe,0x0,0x0,0x0,0xffc000fe,0x0,0xffc001fe,0x0,0x0,0xffc001fe,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0x0,0xffc000fe,0xffc000fe,0xffc000fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0xffc000fe,0xffc000fe,0x0,0x0,0x0,0x0,0x0,0x0,0xffc001fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc021fe,0xffc021fe,0x0,0xffc001fe,0x0,0x0,0x0,0xffc021fe,0xffc021fe,0xffc021fe,0x0,0xffc021fe,0x0,0x0,0x0,0x0,0x0,0x0,0xffc001fe,0x0,0xffc001fe,0xffc000fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0x0,0xffc001fe,0x0,0xffc000fe,0xffc001fe,0xffc000fe,0x0,0xffc000fe,0x0,0xffc000fe,0x0,0x0,0xffc001fe,0x0,0xffc000fe,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0x0,0x0,0x0,0xffc000fe,0xffc000fe,0xffc000fe,0x0,0x0,0x0,0x0,0xffc001fe,0x0,0xffc001fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc021fe,0x0,0xffc021fe,0x0,0x0,0x0,0x0,0x0,0xffc001fe,0x0,0xffc001fe,0xffc000fe,0x0,0xffc000fe,0x0,0xffc000fe,0xffc001fe,0xffc001fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc021fe,0x800,0xffc021fe,0x400,0xffc021fe,0x2100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc001fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc001fe,0x0,0x800,0x400,0x0,0x0,0xffc001fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0xffc000fe,0xffc000fe,0x0,0x0,0x0,0xffc000fe,0x0,0xffc001fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc001fe,0xffc001fe,0x0,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0x0,0x0,0x0,0x0,0xffc000fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0x0,0xffc000fe,0x0,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0x0,0x0,0x0,0x0,0x8,0x10,0x0,0x0,0x10,0x60,0x0,0x0,0x0,0x0,0x0,0x60,0x0,0x0,0x0,0x0,0x80,0x60,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0xffc000fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc001fe,0xffc021fe,0x0,0x0,0xffc000fe,0xffc001fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0xffc000fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0x0,0xffc000fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffc000fe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000000,0xffc000fe,0x6,0x6,0x1,0x0,0x0,0x0,0x40000000,0x0,0x40000000,0x0,0x0,0x0,0xa000000,0x0,0x20000000,0xffc001fe,0xffc021fe,0x0,0x0,0x0,0x20000000,0xffc001fe,0x0,0xffc000fe,0x0,0x80000000,0x0,0x80000000,0xffc000fe,0x1c00000,0x10000000,0x80000000,0x80000000,0x0,0xffc000fe,0xffc000fe,0xffc000fe,0xffc000fe,0x0,0x0,0x0,0x0,}; } private static void jj_la1_init_13() { jj_la1_13 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20,0x40,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x400000,0x0,0x400000,0x0,0xffffffff,0xffffffff,0x800,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0xffffffff,0x0,0x0,0x0,0xffffffff,0x800,0x0,0x0,0xffffffff,0xffffffff,0x0,0xffffffff,0xffffffff,0x0,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0x400000,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x400000,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0xffffffff,0xffffffff,0x0,0x400800,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0xffffffff,0xffffffff,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0xffffffff,0xffffffff,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0xffffffff,0xffffffff,0x0,0x0,0x0,0x400,0x0,0x0,0x0,0xc000000,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0xffffffff,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xc000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0xffffffff,0xffffffff,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0xffffffff,0xffffffff,0xffffffff,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0xffffffff,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0xffffffff,0x0,0xffffffff,0x0,0xffffffff,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x13000,0x0,0x0,0x0,0x0,0x13000,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x10000000,0x10000000,0x0,0x3000000,0x0,0x0,0x0,0x0,0x0,0x0,0xc0000000,0x0,0x0,0x80000000,0x0,0x80000000,0x0,0x0,0x0,0xc0000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0xffffffff,0xffffffff,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x20000000,0x0,0x0,0x0,0x0,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0xffffffff,0x0,0x0,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x400000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800,0xffffffff,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x400000,0x0,0xffffffff,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0xffffffff,0xffffffff,0x0,0x0,0x0,0x80,0xffffffff,0x0,0xffffffff,0x0,0x271,0x0,0x271,0xffffffff,0x0,0x404,0x271,0x271,0x0,0xffffffff,0xffffffff,0xffffffff,0xffffffff,0x400000,0x0,0x0,0x0,}; } private static void jj_la1_init_14() { jj_la1_14 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6023ff8f,0x0,0x68a3ff8f,0x0,0x0,0x200000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6023ff8f,0x6023ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6023ff8f,0x68a3ff8f,0x0,0x0,0x0,0x6023ff8f,0x0,0x0,0x200000,0x6023ff8f,0x6023ff8f,0x0,0x6023ff8f,0x6023ff8f,0x0,0x6023ff8f,0x6023ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6023ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6023ff8f,0x0,0x68a3ff8f,0x0,0x0,0x6023ff8f,0x6023ff8f,0x0,0x0,0x0,0x0,0x0,0x2023ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6023ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2023ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x68a3ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200000,0x0,0x0,0x200000,0x0,0x800000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x68a3ff8f,0x0,0x68a3ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x8000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x68a3ff8f,0x0,0x6023ff8f,0x6023ff8f,0x6023ff8f,0x800000,0x0,0x68a3ff8f,0x0,0x6023ff8f,0x0,0x0,0x6023ff8f,0x68a3ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6023ff8f,0x0,0x0,0x2023ff8f,0x0,0x0,0x0,0x0,0x0,0x6023ff8f,0x68a3ff8f,0x0,0x0,0x0,0x6023ff8f,0x0,0x68a3ff8f,0x0,0x0,0x68a3ff8f,0x0,0x0,0x0,0x0,0x0,0x68a3ff8f,0x0,0x68a3ff8f,0x68a3ff8f,0x68a3ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x68a3ff8f,0x0,0x0,0x0,0x0,0x0,0x6023ff8f,0x6023ff8f,0x6023ff8f,0x8000,0x0,0x0,0x0,0x4000,0x0,0x68a3ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x68a3ff8f,0x68a3ff8f,0x0,0x68a3ff8f,0x0,0x0,0x200000,0x68a3ff8f,0x68a3ff8f,0x68a3ff8f,0x200000,0x68a3ff8f,0x200000,0x200000,0x0,0x0,0x0,0x0,0x68a3ff8f,0x0,0x68a3ff8f,0x2023ff8f,0x0,0x0,0x0,0x200000,0x200000,0x200000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2023ff8f,0x0,0x0,0x0,0x0,0x0,0x8000,0x0,0x0,0x8000,0x0,0x0,0x6023ff8f,0x0,0x68a3ff8f,0x0,0x6023ff8f,0x68a3ff8f,0x6023ff8f,0x0,0x6023ff8f,0x0,0x6023ff8f,0x0,0x0,0x68a3ff8f,0x0,0x2023ff8f,0x0,0x0,0x800000,0x0,0x0,0x6023ff8f,0x0,0x0,0x0,0x6023ff8f,0x6023ff8f,0x6023ff8f,0x0,0x200000,0x0,0x0,0x68a3ff8f,0x0,0x68a3ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x68a3ff8f,0x200000,0x68a3ff8f,0x200000,0x0,0x0,0x0,0x0,0x68a3ff8f,0x0,0x68a3ff8f,0x2023ff8f,0x0,0x2023ff8f,0x0,0x2023ff8f,0x68a3ff8f,0x68a3ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x68a3ff8f,0x0,0x68a3ff8f,0x0,0x68a3ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2023ff8f,0x0,0x0,0x0,0x0,0x0,0x200000,0x0,0x0,0x20200000,0x20200000,0x0,0x20200000,0x0,0x0,0x0,0x0,0x68a3ff8f,0x0,0x0,0x0,0x0,0x0,0x68a3ff8f,0x0,0x8000000,0x0,0x0,0x3,0x3,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8000000,0x0,0x0,0x0,0x0,0x0,0x0,0x68a3ff8f,0x0,0x0,0x0,0x0,0x0,0x68a3ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x68a3ff8f,0x68a3ff8f,0x68a3ff8f,0x0,0x0,0x0,0x2023ff8f,0x0,0x68a3ff8f,0x0,0x0,0x8800000,0x0,0x0,0x0,0x0,0x0,0x0,0x68a3ff8f,0x68a3ff8f,0x0,0x0,0x0,0x0,0xc,0x0,0x6023ff8f,0x0,0x0,0x0,0x0,0x2023ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6023ff8f,0x0,0x6023ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x68a3ff8f,0x0,0x200000,0x200000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200000,0x200000,0x200000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x800,0x0,0x2023ff8f,0x2023ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6023ff8f,0x68a3ff8f,0x0,0x0,0x6023ff8f,0x6023ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20200000,0x20200000,0x0,0x0,0x0,0x0,0x0,0x6023ff8f,0x6023ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6023ff8f,0x0,0x6023ff8f,0x200000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6023ff8f,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6023ff8f,0x0,0x0,0x0,0x20,0x20,0x60,0x10,0x0,0x10,0x0,0x0,0x0,0x0,0x0,0x0,0x6023ff8f,0x68a3ff8f,0x0,0x0,0x0,0x0,0x6023ff8f,0x0,0x6023ff8f,0x0,0x0,0x0,0x0,0x6023ff8f,0x0,0x0,0x0,0x0,0x0,0x3ff8f,0x6023ff8f,0x2023ff8f,0x2023ff8f,0x40000000,0x0,0x0,0x0,}; } private static void jj_la1_init_15() { jj_la1_15 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x34,0x34,0x34,0x34,0x34,0x34,0x34,0x34,0x34,0x34,0x34,0x34,0x34,0x34,0x34,0x34,0x34,0x34,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x3000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x3000,0x0,0x0,0x0,0x2000,0x0,0x0,0x0,0x2000,0x2000,0x0,0x2000,0x2000,0x0,0x2000,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x3000,0x0,0x0,0x2000,0x2000,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3000,0x0,0x3000,0x0,0x0,0x0,0x0,0x0,0x0,0x1000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3000,0x0,0x2000,0x2000,0x2000,0x1000,0x0,0x3000,0x0,0x2000,0x0,0x0,0x2000,0x3000,0x0,0x0,0x0,0x0,0x0,0x0,0x1000,0x0,0x1000,0x0,0x0,0x2000,0x0,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x2000,0x3000,0x0,0x0,0x0,0x2000,0x0,0x3000,0x0,0x0,0x3000,0x0,0x0,0x0,0x0,0x0,0x3000,0x0,0x3000,0x3000,0x3000,0x1000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3000,0x0,0x0,0x0,0x0,0x0,0x2000,0x2000,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x3000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3000,0x3000,0x0,0x3000,0x0,0x0,0x0,0x3000,0x3000,0x3000,0x0,0x3000,0x0,0x0,0x0,0x0,0x0,0x0,0x3000,0x0,0x3000,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x3000,0x0,0x2000,0x3000,0x2000,0x0,0x2000,0x0,0x2000,0x0,0x0,0x3000,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x0,0x0,0x2000,0x2000,0x2000,0x0,0x0,0x0,0x0,0x3000,0x0,0x3000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3000,0x0,0x3000,0x0,0x0,0x0,0x0,0x0,0x3000,0x0,0x3000,0x2000,0x0,0x2000,0x0,0x2000,0x3000,0x3000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3000,0x0,0x3000,0x0,0x3000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000,0x1000,0x0,0x1000,0x0,0x0,0x0,0x0,0x3000,0x0,0x0,0x0,0x0,0x0,0x3000,0x0,0x1000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000,0x0,0x0,0x0,0x0,0x0,0x0,0x3000,0x0,0x0,0x0,0x0,0x0,0x3000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3000,0x3000,0x3000,0x0,0x0,0x0,0x2000,0x0,0x3000,0x0,0x0,0x1000,0x0,0x0,0x0,0x0,0x0,0x0,0x3000,0x3000,0x0,0x0,0x0,0x0,0x0,0x0,0x3000,0x0,0x0,0x0,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x3000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x3000,0x0,0x0,0x2000,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000,0x1000,0x0,0x0,0x0,0x0,0x0,0x2000,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x3000,0x0,0x0,0x0,0x0,0x2000,0x0,0x2000,0x0,0x0,0x0,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x2000,0x2000,0x2000,0x2000,0x0,0x0,0x0,0x0,}; } final private JJCalls[] jj_2_rtns = new JJCalls[234]; private boolean jj_rescan = false; private int jj_gc = 0; /** Constructor with user supplied net.sourceforge.pmd.lang.ast.impl.javacc.CharStream. */ public PLSQLParserImpl(net.sourceforge.pmd.lang.ast.impl.javacc.CharStream stream) { token_source = new PLSQLParserImplTokenManager(stream); token = token_source.input_stream.getTokenDocument().open(); token.next = jj_nt = token_source.getNextToken(); jj_gen = 0; for (int i = 0; i < 797; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } /** Reinitialise. */ public void ReInit(net.sourceforge.pmd.lang.ast.impl.javacc.CharStream stream) { token_source.ReInit(stream); token = token_source.input_stream.getTokenDocument().open(); token.next = jj_nt = token_source.getNextToken(); jj_lookingAhead = false; jjtree.reset(); jj_gen = 0; for (int i = 0; i < 797; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } /** Constructor with generated net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken Manager. */ public PLSQLParserImpl(PLSQLParserImplTokenManager tm) { token_source = tm; token = token_source.input_stream.getTokenDocument().open(); token.next = jj_nt = token_source.getNextToken(); jj_gen = 0; for (int i = 0; i < 797; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } /** Reinitialise. */ public void ReInit(PLSQLParserImplTokenManager tm) { token_source = tm; token = token_source.input_stream.getTokenDocument().open(); token.next = jj_nt = token_source.getNextToken(); jjtree.reset(); jj_gen = 0; for (int i = 0; i < 797; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } private net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken jj_consume_token(int kind) throws net.sourceforge.pmd.lang.ast.ParseException { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken oldToken = token; if ((token = jj_nt).next != null) jj_nt = jj_nt.next; else jj_nt = jj_nt.next = token_source.getNextToken(); 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; } jj_nt = token; token = oldToken; jj_kind = kind; throw generateParseException(); } static private final class LookaheadSuccess extends java.lang.Error { } final private LookaheadSuccess jj_ls = new LookaheadSuccess(); 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; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken 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; } /** Get the next net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken. */ final public net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken getNextToken() { if ((token = jj_nt).next != null) jj_nt = jj_nt.next; else jj_nt = jj_nt.next = token_source.getNextToken(); jj_gen++; return token; } /** Get the specific net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken. */ final public net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken getToken(int index) { net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken t = jj_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; } private java.util.List jj_expentries = new java.util.ArrayList(); 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]; } jj_entries_loop: for (java.util.Iterator it = jj_expentries.iterator(); it.hasNext();) { int[] oldentry = (int[])(it.next()); if (oldentry.length == jj_expentry.length) { for (int i = 0; i < jj_expentry.length; i++) { if (oldentry[i] != jj_expentry[i]) { continue jj_entries_loop; } } jj_expentries.add(jj_expentry); break jj_entries_loop; } } if (pos != 0) jj_lasttokens[(jj_endpos = pos) - 1] = kind; } } /** Generate net.sourceforge.pmd.lang.ast.ParseException. */ public net.sourceforge.pmd.lang.ast.ParseException generateParseException() { jj_expentries.clear(); boolean[] la1tokens = new boolean[494]; if (jj_kind >= 0) { la1tokens[jj_kind] = true; jj_kind = -1; } for (int i = 0; i < 797; i++) { if (jj_la1[i] == jj_gen) { for (int j = 0; j < 32; j++) { if ((jj_la1_0[i] & (1< 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; case 74: jj_3_75(); break; case 75: jj_3_76(); break; case 76: jj_3_77(); break; case 77: jj_3_78(); break; case 78: jj_3_79(); break; case 79: jj_3_80(); break; case 80: jj_3_81(); break; case 81: jj_3_82(); break; case 82: jj_3_83(); break; case 83: jj_3_84(); break; case 84: jj_3_85(); break; case 85: jj_3_86(); break; case 86: jj_3_87(); break; case 87: jj_3_88(); break; case 88: jj_3_89(); break; case 89: jj_3_90(); break; case 90: jj_3_91(); break; case 91: jj_3_92(); break; case 92: jj_3_93(); break; case 93: jj_3_94(); break; case 94: jj_3_95(); break; case 95: jj_3_96(); break; case 96: jj_3_97(); break; case 97: jj_3_98(); break; case 98: jj_3_99(); break; case 99: jj_3_100(); break; case 100: jj_3_101(); break; case 101: jj_3_102(); break; case 102: jj_3_103(); break; case 103: jj_3_104(); break; case 104: jj_3_105(); break; case 105: jj_3_106(); break; case 106: jj_3_107(); break; case 107: jj_3_108(); break; case 108: jj_3_109(); break; case 109: jj_3_110(); break; case 110: jj_3_111(); break; case 111: jj_3_112(); break; case 112: jj_3_113(); break; case 113: jj_3_114(); break; case 114: jj_3_115(); break; case 115: jj_3_116(); break; case 116: jj_3_117(); break; case 117: jj_3_118(); break; case 118: jj_3_119(); break; case 119: jj_3_120(); break; case 120: jj_3_121(); break; case 121: jj_3_122(); break; case 122: jj_3_123(); break; case 123: jj_3_124(); break; case 124: jj_3_125(); break; case 125: jj_3_126(); break; case 126: jj_3_127(); break; case 127: jj_3_128(); break; case 128: jj_3_129(); break; case 129: jj_3_130(); break; case 130: jj_3_131(); break; case 131: jj_3_132(); break; case 132: jj_3_133(); break; case 133: jj_3_134(); break; case 134: jj_3_135(); break; case 135: jj_3_136(); break; case 136: jj_3_137(); break; case 137: jj_3_138(); break; case 138: jj_3_139(); break; case 139: jj_3_140(); break; case 140: jj_3_141(); break; case 141: jj_3_142(); break; case 142: jj_3_143(); break; case 143: jj_3_144(); break; case 144: jj_3_145(); break; case 145: jj_3_146(); break; case 146: jj_3_147(); break; case 147: jj_3_148(); break; case 148: jj_3_149(); break; case 149: jj_3_150(); break; case 150: jj_3_151(); break; case 151: jj_3_152(); break; case 152: jj_3_153(); break; case 153: jj_3_154(); break; case 154: jj_3_155(); break; case 155: jj_3_156(); break; case 156: jj_3_157(); break; case 157: jj_3_158(); break; case 158: jj_3_159(); break; case 159: jj_3_160(); break; case 160: jj_3_161(); break; case 161: jj_3_162(); break; case 162: jj_3_163(); break; case 163: jj_3_164(); break; case 164: jj_3_165(); break; case 165: jj_3_166(); break; case 166: jj_3_167(); break; case 167: jj_3_168(); break; case 168: jj_3_169(); break; case 169: jj_3_170(); break; case 170: jj_3_171(); break; case 171: jj_3_172(); break; case 172: jj_3_173(); break; case 173: jj_3_174(); break; case 174: jj_3_175(); break; case 175: jj_3_176(); break; case 176: jj_3_177(); break; case 177: jj_3_178(); break; case 178: jj_3_179(); break; case 179: jj_3_180(); break; case 180: jj_3_181(); break; case 181: jj_3_182(); break; case 182: jj_3_183(); break; case 183: jj_3_184(); break; case 184: jj_3_185(); break; case 185: jj_3_186(); break; case 186: jj_3_187(); break; case 187: jj_3_188(); break; case 188: jj_3_189(); break; case 189: jj_3_190(); break; case 190: jj_3_191(); break; case 191: jj_3_192(); break; case 192: jj_3_193(); break; case 193: jj_3_194(); break; case 194: jj_3_195(); break; case 195: jj_3_196(); break; case 196: jj_3_197(); break; case 197: jj_3_198(); break; case 198: jj_3_199(); break; case 199: jj_3_200(); break; case 200: jj_3_201(); break; case 201: jj_3_202(); break; case 202: jj_3_203(); break; case 203: jj_3_204(); break; case 204: jj_3_205(); break; case 205: jj_3_206(); break; case 206: jj_3_207(); break; case 207: jj_3_208(); break; case 208: jj_3_209(); break; case 209: jj_3_210(); break; case 210: jj_3_211(); break; case 211: jj_3_212(); break; case 212: jj_3_213(); break; case 213: jj_3_214(); break; case 214: jj_3_215(); break; case 215: jj_3_216(); break; case 216: jj_3_217(); break; case 217: jj_3_218(); break; case 218: jj_3_219(); break; case 219: jj_3_220(); break; case 220: jj_3_221(); break; case 221: jj_3_222(); break; case 222: jj_3_223(); break; case 223: jj_3_224(); break; case 224: jj_3_225(); break; case 225: jj_3_226(); break; case 226: jj_3_227(); break; case 227: jj_3_228(); break; case 228: jj_3_229(); break; case 229: jj_3_230(); break; case 230: jj_3_231(); break; case 231: jj_3_232(); break; case 232: jj_3_233(); break; case 233: jj_3_234(); break; } } p = p.next; } while (p != null); } catch(LookaheadSuccess ls) { } } jj_rescan = false; } 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; net.sourceforge.pmd.lang.ast.impl.javacc.JavaccToken first; int arg; JJCalls next; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy