public class org.hibernate.hql.internal.ast.SqlASTFactory extends antlr.ASTFactory implements org.hibernate.hql.internal.antlr.HqlSqlTokenTypes
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hibernate.hql.internal.ast.SqlASTFactory
  super_class: antlr.ASTFactory
{
  private org.hibernate.hql.internal.ast.HqlSqlWalker walker;
    descriptor: Lorg/hibernate/hql/internal/ast/HqlSqlWalker;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(org.hibernate.hql.internal.ast.HqlSqlWalker);
    descriptor: (Lorg/hibernate/hql/internal/ast/HqlSqlWalker;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.hql.internal.ast.SqlASTFactory this
        start local 1 // org.hibernate.hql.internal.ast.HqlSqlWalker walker
         0: .line 76
            aload 0 /* this */
            invokespecial antlr.ASTFactory.<init>:()V
         1: .line 77
            aload 0 /* this */
            aload 1 /* walker */
            putfield org.hibernate.hql.internal.ast.SqlASTFactory.walker:Lorg/hibernate/hql/internal/ast/HqlSqlWalker;
         2: .line 78
            return
        end local 1 // org.hibernate.hql.internal.ast.HqlSqlWalker walker
        end local 0 // org.hibernate.hql.internal.ast.SqlASTFactory this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/hibernate/hql/internal/ast/SqlASTFactory;
            0    3     1  walker  Lorg/hibernate/hql/internal/ast/HqlSqlWalker;
    MethodParameters:
        Name  Flags
      walker  

  public java.lang.Class getASTNodeType(int);
    descriptor: (I)Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.hibernate.hql.internal.ast.SqlASTFactory this
        start local 1 // int tokenType
         0: .line 88
            iload 1 /* tokenType */
            tableswitch { // 10 - 154
                   10: 33
                   11: 41
                   12: 20
                   13: 3
                   14: 41
                   15: 9
                   16: 41
                   17: 16
                   18: 41
                   19: 36
                   20: 23
                   21: 41
                   22: 6
                   23: 41
                   24: 41
                   25: 41
                   26: 32
                   27: 16
                   28: 41
                   29: 4
                   30: 5
                   31: 41
                   32: 41
                   33: 41
                   34: 31
                   35: 41
                   36: 41
                   37: 41
                   38: 41
                   39: 40
                   40: 41
                   41: 25
                   42: 41
                   43: 41
                   44: 41
                   45: 1
                   46: 41
                   47: 41
                   48: 41
                   49: 23
                   50: 2
                   51: 41
                   52: 41
                   53: 41
                   54: 41
                   55: 41
                   56: 29
                   57: 41
                   58: 41
                   59: 41
                   60: 41
                   61: 41
                   62: 41
                   63: 41
                   64: 41
                   65: 41
                   66: 41
                   67: 41
                   68: 41
                   69: 41
                   70: 37
                   71: 38
                   72: 39
                   73: 19
                   74: 41
                   75: 21
                   76: 28
                   77: 15
                   78: 41
                   79: 41
                   80: 41
                   81: 10
                   82: 35
                   83: 34
                   84: 14
                   85: 33
                   86: 32
                   87: 31
                   88: 41
                   89: 1
                   90: 41
                   91: 41
                   92: 41
                   93: 27
                   94: 27
                   95: 41
                   96: 41
                   97: 41
                   98: 22
                   99: 22
                  100: 22
                  101: 22
                  102: 22
                  103: 24
                  104: 41
                  105: 31
                  106: 41
                  107: 41
                  108: 11
                  109: 41
                  110: 41
                  111: 41
                  112: 31
                  113: 41
                  114: 31
                  115: 31
                  116: 31
                  117: 31
                  118: 41
                  119: 26
                  120: 26
                  121: 26
                  122: 26
                  123: 26
                  124: 41
                  125: 41
                  126: 22
                  127: 41
                  128: 30
                  129: 22
                  130: 41
                  131: 41
                  132: 41
                  133: 41
                  134: 41
                  135: 41
                  136: 41
                  137: 7
                  138: 8
                  139: 41
                  140: 41
                  141: 17
                  142: 41
                  143: 41
                  144: 11
                  145: 41
                  146: 13
                  147: 41
                  148: 18
                  149: 41
                  150: 41
                  151: 41
                  152: 30
                  153: 41
                  154: 12
              default: 41
          }
         1: .line 91
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/QueryNode;
            areturn
         2: .line 93
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/UpdateStatement;
            areturn
         3: .line 95
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/DeleteStatement;
            areturn
         4: .line 97
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/InsertStatement;
            areturn
         5: .line 99
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/IntoClause;
            areturn
         6: .line 101
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/FromClause;
            areturn
         7: .line 103
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/FromElement;
            areturn
         8: .line 105
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/ImpliedFromElement;
            areturn
         9: .line 107
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/DotNode;
            areturn
        10: .line 109
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/IndexNode;
            areturn
        11: .line 113
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/IdentNode;
            areturn
        12: .line 115
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/ResultVariableRefNode;
            areturn
        13: .line 117
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/SqlFragment;
            areturn
        14: .line 119
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/MethodNode;
            areturn
        15: .line 121
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/CastFunctionNode;
            areturn
        16: .line 124
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/CollectionFunction;
            areturn
        17: .line 126
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/SelectClause;
            areturn
        18: .line 128
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/SelectExpressionImpl;
            areturn
        19: .line 130
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/AggregateNode;
            areturn
        20: .line 132
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/CountNode;
            areturn
        21: .line 134
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/ConstructorNode;
            areturn
        22: .line 142
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/LiteralNode;
            areturn
        23: .line 145
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/BooleanLiteralNode;
            areturn
        24: .line 147
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/JavaConstantNode;
            areturn
        25: .line 149
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/OrderByClause;
            areturn
        26: .line 155
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/BinaryArithmeticOperatorNode;
            areturn
        27: .line 158
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/UnaryArithmeticNode;
            areturn
        28: .line 160
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/SimpleCaseNode;
            areturn
        29: .line 162
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/SearchedCaseNode;
            areturn
        30: .line 165
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/ParameterNode;
            areturn
        31: .line 174
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/BinaryLogicOperatorNode;
            areturn
        32: .line 177
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/InLogicOperatorNode;
            areturn
        33: .line 180
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/BetweenOperatorNode;
            areturn
        34: .line 182
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/IsNullLogicOperatorNode;
            areturn
        35: .line 184
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/IsNotNullLogicOperatorNode;
            areturn
        36: .line 186
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/UnaryLogicOperatorNode;
            areturn
        37: .line 188
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/MapKeyNode;
            areturn
        38: .line 191
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/MapValueNode;
            areturn
        39: .line 194
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/MapEntryNode;
            areturn
        40: .line 197
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/NullNode;
            areturn
        41: .line 200
      StackMap locals:
      StackMap stack:
            ldc Lorg/hibernate/hql/internal/ast/tree/SqlNode;
            areturn
        end local 1 // int tokenType
        end local 0 // org.hibernate.hql.internal.ast.SqlASTFactory this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   42     0       this  Lorg/hibernate/hql/internal/ast/SqlASTFactory;
            0   42     1  tokenType  I
    MethodParameters:
           Name  Flags
      tokenType  

  protected antlr.collections.AST createUsingCtor(antlr.Token, java.lang.String);
    descriptor: (Lantlr/Token;Ljava/lang/String;)Lantlr/collections/AST;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=7, args_size=3
        start local 0 // org.hibernate.hql.internal.ast.SqlASTFactory this
        start local 1 // antlr.Token token
        start local 2 // java.lang.String className
         0: .line 209
            aload 2 /* className */
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 3 /* c */
        start local 3 // java.lang.Class c
         1: .line 210
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lantlr/Token;
            aastore
            astore 5 /* tokenArgType */
        start local 5 // java.lang.Class[] tokenArgType
         2: .line 211
            aload 3 /* c */
            aload 5 /* tokenArgType */
            invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
            astore 6 /* ctor */
        start local 6 // java.lang.reflect.Constructor ctor
         3: .line 212
            aload 6 /* ctor */
            ifnull 7
         4: .line 213
            aload 6 /* ctor */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* token */
            aastore
            invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
            checkcast antlr.collections.AST
            astore 4 /* t */
        start local 4 // antlr.collections.AST t
         5: .line 214
            aload 0 /* this */
            aload 4 /* t */
            invokevirtual org.hibernate.hql.internal.ast.SqlASTFactory.initializeSqlNode:(Lantlr/collections/AST;)V
         6: .line 215
            goto 11
        end local 4 // antlr.collections.AST t
         7: .line 219
      StackMap locals: org.hibernate.hql.internal.ast.SqlASTFactory antlr.Token java.lang.String java.lang.Class top java.lang.Class[] java.lang.reflect.Constructor
      StackMap stack:
            aload 0 /* this */
            aload 3 /* c */
            invokevirtual org.hibernate.hql.internal.ast.SqlASTFactory.create:(Ljava/lang/Class;)Lantlr/collections/AST;
            astore 4 /* t */
        end local 6 // java.lang.reflect.Constructor ctor
        end local 5 // java.lang.Class[] tokenArgType
        start local 4 // antlr.collections.AST t
         8: .line 221
            goto 11
        end local 4 // antlr.collections.AST t
        end local 3 // java.lang.Class c
         9: .line 222
      StackMap locals: org.hibernate.hql.internal.ast.SqlASTFactory antlr.Token java.lang.String
      StackMap stack: java.lang.Exception
            pop
        10: .line 223
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid class or can't make instance, "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* className */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        start local 3 // java.lang.Class c
        start local 4 // antlr.collections.AST t
        11: .line 225
      StackMap locals: java.lang.Class antlr.collections.AST
      StackMap stack:
            aload 4 /* t */
            areturn
        end local 4 // antlr.collections.AST t
        end local 3 // java.lang.Class c
        end local 2 // java.lang.String className
        end local 1 // antlr.Token token
        end local 0 // org.hibernate.hql.internal.ast.SqlASTFactory this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   12     0          this  Lorg/hibernate/hql/internal/ast/SqlASTFactory;
            0   12     1         token  Lantlr/Token;
            0   12     2     className  Ljava/lang/String;
            1    9     3             c  Ljava/lang/Class;
           11   12     3             c  Ljava/lang/Class;
            5    7     4             t  Lantlr/collections/AST;
            8    9     4             t  Lantlr/collections/AST;
           11   12     4             t  Lantlr/collections/AST;
            2    8     5  tokenArgType  [Ljava/lang/Class;
            3    8     6          ctor  Ljava/lang/reflect/Constructor;
      Exception table:
        from    to  target  type
           0     8       9  Class java.lang.Exception
    MethodParameters:
           Name  Flags
      token      
      className  

  private void initializeSqlNode(antlr.collections.AST);
    descriptor: (Lantlr/collections/AST;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hibernate.hql.internal.ast.SqlASTFactory this
        start local 1 // antlr.collections.AST t
         0: .line 230
            aload 1 /* t */
            instanceof org.hibernate.hql.internal.ast.tree.InitializeableNode
            ifeq 3
         1: .line 231
            aload 1 /* t */
            checkcast org.hibernate.hql.internal.ast.tree.InitializeableNode
            astore 2 /* initializeableNode */
        start local 2 // org.hibernate.hql.internal.ast.tree.InitializeableNode initializeableNode
         2: .line 232
            aload 2 /* initializeableNode */
            aload 0 /* this */
            getfield org.hibernate.hql.internal.ast.SqlASTFactory.walker:Lorg/hibernate/hql/internal/ast/HqlSqlWalker;
            invokeinterface org.hibernate.hql.internal.ast.tree.InitializeableNode.initialize:(Ljava/lang/Object;)V
        end local 2 // org.hibernate.hql.internal.ast.tree.InitializeableNode initializeableNode
         3: .line 234
      StackMap locals:
      StackMap stack:
            aload 1 /* t */
            instanceof org.hibernate.hql.internal.ast.tree.SessionFactoryAwareNode
            ifeq 5
         4: .line 235
            aload 1 /* t */
            checkcast org.hibernate.hql.internal.ast.tree.SessionFactoryAwareNode
            aload 0 /* this */
            getfield org.hibernate.hql.internal.ast.SqlASTFactory.walker:Lorg/hibernate/hql/internal/ast/HqlSqlWalker;
            invokevirtual org.hibernate.hql.internal.ast.HqlSqlWalker.getSessionFactoryHelper:()Lorg/hibernate/hql/internal/ast/util/SessionFactoryHelper;
            invokevirtual org.hibernate.hql.internal.ast.util.SessionFactoryHelper.getFactory:()Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            invokeinterface org.hibernate.hql.internal.ast.tree.SessionFactoryAwareNode.setSessionFactory:(Lorg/hibernate/engine/spi/SessionFactoryImplementor;)V
         5: .line 237
      StackMap locals:
      StackMap stack:
            return
        end local 1 // antlr.collections.AST t
        end local 0 // org.hibernate.hql.internal.ast.SqlASTFactory this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    6     0                this  Lorg/hibernate/hql/internal/ast/SqlASTFactory;
            0    6     1                   t  Lantlr/collections/AST;
            2    3     2  initializeableNode  Lorg/hibernate/hql/internal/ast/tree/InitializeableNode;
    MethodParameters:
      Name  Flags
      t     

  protected antlr.collections.AST create(java.lang.Class);
    descriptor: (Ljava/lang/Class;)Lantlr/collections/AST;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.hibernate.hql.internal.ast.SqlASTFactory this
        start local 1 // java.lang.Class c
         0: .line 249
            aload 1 /* c */
            invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
            checkcast antlr.collections.AST
            astore 2 /* t */
        start local 2 // antlr.collections.AST t
         1: .line 250
            aload 0 /* this */
            aload 2 /* t */
            invokevirtual org.hibernate.hql.internal.ast.SqlASTFactory.initializeSqlNode:(Lantlr/collections/AST;)V
         2: .line 251
            goto 6
        end local 2 // antlr.collections.AST t
         3: .line 252
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
         4: .line 253
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Can't create AST Node "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* c */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.hibernate.hql.internal.ast.SqlASTFactory.error:(Ljava/lang/String;)V
         5: .line 254
            aconst_null
            areturn
        start local 2 // antlr.collections.AST t
         6: .line 256
      StackMap locals: antlr.collections.AST
      StackMap stack:
            aload 2 /* t */
            areturn
        end local 2 // antlr.collections.AST t
        end local 1 // java.lang.Class c
        end local 0 // org.hibernate.hql.internal.ast.SqlASTFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/hibernate/hql/internal/ast/SqlASTFactory;
            0    7     1     c  Ljava/lang/Class;
            1    3     2     t  Lantlr/collections/AST;
            6    7     2     t  Lantlr/collections/AST;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.Exception
    MethodParameters:
      Name  Flags
      c     
}
SourceFile: "SqlASTFactory.java"