public class org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction extends org.hibernate.dialect.function.StandardSQLFunction
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction
  super_class: org.hibernate.dialect.function.StandardSQLFunction
{
  public static final org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction INSTANCE;
    descriptor: Lorg/hibernate/dialect/function/StandardAnsiSqlAggregationFunctions$AvgFunction;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 92
            new org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction
            dup
            invokespecial org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction.<init>:()V
            putstatic org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction.INSTANCE:Lorg/hibernate/dialect/function/StandardAnsiSqlAggregationFunctions$AvgFunction;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected void <init>();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction this
         0: .line 95
            aload 0 /* this */
            ldc "avg"
            getstatic org.hibernate.type.StandardBasicTypes.DOUBLE:Lorg/hibernate/type/DoubleType;
            invokespecial org.hibernate.dialect.function.StandardSQLFunction.<init>:(Ljava/lang/String;Lorg/hibernate/type/Type;)V
         1: .line 96
            return
        end local 0 // org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hibernate/dialect/function/StandardAnsiSqlAggregationFunctions$AvgFunction;

  public java.lang.String render(org.hibernate.type.Type, java.util.List, org.hibernate.engine.spi.SessionFactoryImplementor);
    descriptor: (Lorg/hibernate/type/Type;Ljava/util/List;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction this
        start local 1 // org.hibernate.type.Type firstArgumentType
        start local 2 // java.util.List arguments
        start local 3 // org.hibernate.engine.spi.SessionFactoryImplementor factory
         0: .line 100
            aload 0 /* this */
            aload 1 /* firstArgumentType */
            aload 3 /* factory */
            invokevirtual org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction.determineJdbcTypeCode:(Lorg/hibernate/type/Type;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)I
            istore 4 /* jdbcTypeCode */
        start local 4 // int jdbcTypeCode
         1: .line 101
            aload 0 /* this */
            iload 4 /* jdbcTypeCode */
            aload 2 /* arguments */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            aload 3 /* factory */
            invokevirtual org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction.render:(ILjava/lang/String;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Ljava/lang/String;
            areturn
        end local 4 // int jdbcTypeCode
        end local 3 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 2 // java.util.List arguments
        end local 1 // org.hibernate.type.Type firstArgumentType
        end local 0 // org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lorg/hibernate/dialect/function/StandardAnsiSqlAggregationFunctions$AvgFunction;
            0    2     1  firstArgumentType  Lorg/hibernate/type/Type;
            0    2     2          arguments  Ljava/util/List;
            0    2     3            factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            1    2     4       jdbcTypeCode  I
    Exceptions:
      throws org.hibernate.QueryException
    MethodParameters:
                   Name  Flags
      firstArgumentType  
      arguments          
      factory            

  protected final int determineJdbcTypeCode(org.hibernate.type.Type, org.hibernate.engine.spi.SessionFactoryImplementor);
    descriptor: (Lorg/hibernate/type/Type;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction this
        start local 1 // org.hibernate.type.Type firstArgumentType
        start local 2 // org.hibernate.engine.spi.SessionFactoryImplementor factory
         0: .line 106
            aload 1 /* firstArgumentType */
            aload 2 /* factory */
            invokeinterface org.hibernate.type.Type.sqlTypes:(Lorg/hibernate/engine/spi/Mapping;)[I
            astore 3 /* jdbcTypeCodes */
        start local 3 // int[] jdbcTypeCodes
         1: .line 107
            aload 3 /* jdbcTypeCodes */
            arraylength
            iconst_1
            if_icmpeq 3
         2: .line 108
            new org.hibernate.QueryException
            dup
            ldc "multiple-column type in avg()"
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 110
      StackMap locals: int[]
      StackMap stack:
            aload 3 /* jdbcTypeCodes */
            iconst_0
            iaload
         4: ireturn
        end local 3 // int[] jdbcTypeCodes
         5: .line 112
      StackMap locals: org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction org.hibernate.type.Type org.hibernate.engine.spi.SessionFactoryImplementor
      StackMap stack: org.hibernate.MappingException
            astore 3 /* me */
        start local 3 // org.hibernate.MappingException me
         6: .line 113
            new org.hibernate.QueryException
            dup
            aload 3 /* me */
            invokespecial org.hibernate.QueryException.<init>:(Ljava/lang/Exception;)V
            athrow
        end local 3 // org.hibernate.MappingException me
        end local 2 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 1 // org.hibernate.type.Type firstArgumentType
        end local 0 // org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    7     0               this  Lorg/hibernate/dialect/function/StandardAnsiSqlAggregationFunctions$AvgFunction;
            0    7     1  firstArgumentType  Lorg/hibernate/type/Type;
            0    7     2            factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
            1    5     3      jdbcTypeCodes  [I
            6    7     3                 me  Lorg/hibernate/MappingException;
      Exception table:
        from    to  target  type
           0     4       5  Class org.hibernate.MappingException
    Exceptions:
      throws org.hibernate.QueryException
    MethodParameters:
                   Name  Flags
      firstArgumentType  
      factory            

  protected java.lang.String render(int, java.lang.String, org.hibernate.engine.spi.SessionFactoryImplementor);
    descriptor: (ILjava/lang/String;Lorg/hibernate/engine/spi/SessionFactoryImplementor;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction this
        start local 1 // int firstArgumentJdbcType
        start local 2 // java.lang.String argument
        start local 3 // org.hibernate.engine.spi.SessionFactoryImplementor factory
         0: .line 119
            new java.lang.StringBuilder
            dup
            ldc "avg("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            aload 2 /* argument */
            iload 1 /* firstArgumentJdbcType */
            invokevirtual org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction.renderArgument:(Ljava/lang/String;I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // org.hibernate.engine.spi.SessionFactoryImplementor factory
        end local 2 // java.lang.String argument
        end local 1 // int firstArgumentJdbcType
        end local 0 // org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    1     0                   this  Lorg/hibernate/dialect/function/StandardAnsiSqlAggregationFunctions$AvgFunction;
            0    1     1  firstArgumentJdbcType  I
            0    1     2               argument  Ljava/lang/String;
            0    1     3                factory  Lorg/hibernate/engine/spi/SessionFactoryImplementor;
    MethodParameters:
                       Name  Flags
      firstArgumentJdbcType  
      argument               
      factory                

  protected java.lang.String renderArgument(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction this
        start local 1 // java.lang.String argument
        start local 2 // int firstArgumentJdbcType
         0: .line 123
            aload 1 /* argument */
            areturn
        end local 2 // int firstArgumentJdbcType
        end local 1 // java.lang.String argument
        end local 0 // org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    1     0                   this  Lorg/hibernate/dialect/function/StandardAnsiSqlAggregationFunctions$AvgFunction;
            0    1     1               argument  Ljava/lang/String;
            0    1     2  firstArgumentJdbcType  I
    MethodParameters:
                       Name  Flags
      argument               
      firstArgumentJdbcType  
}
SourceFile: "StandardAnsiSqlAggregationFunctions.java"
NestHost: org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions
InnerClasses:
  public AvgFunction = org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions$AvgFunction of org.hibernate.dialect.function.StandardAnsiSqlAggregationFunctions