public class org.hibernate.query.criteria.internal.expression.function.AggregationFunction$COUNT extends org.hibernate.query.criteria.internal.expression.function.AggregationFunction<java.lang.Long>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hibernate.query.criteria.internal.expression.function.AggregationFunction$COUNT
  super_class: org.hibernate.query.criteria.internal.expression.function.AggregationFunction
{
  public static final java.lang.String NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "count"

  private final boolean distinct;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(org.hibernate.query.criteria.internal.CriteriaBuilderImpl, javax.persistence.criteria.Expression<?>, );
    descriptor: (Lorg/hibernate/query/criteria/internal/CriteriaBuilderImpl;Ljavax/persistence/criteria/Expression;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.hibernate.query.criteria.internal.expression.function.AggregationFunction$COUNT this
        start local 1 // org.hibernate.query.criteria.internal.CriteriaBuilderImpl criteriaBuilder
        start local 2 // javax.persistence.criteria.Expression expression
        start local 3 // boolean distinct
         0: .line 82
            aload 0 /* this */
            aload 1 /* criteriaBuilder */
            ldc Ljava/lang/Long;
            ldc "count"
            aload 2 /* expression */
            invokespecial org.hibernate.query.criteria.internal.expression.function.AggregationFunction.<init>:(Lorg/hibernate/query/criteria/internal/CriteriaBuilderImpl;Ljava/lang/Class;Ljava/lang/String;Ljavax/persistence/criteria/Expression;)V
         1: .line 83
            aload 0 /* this */
            iload 3 /* distinct */
            putfield org.hibernate.query.criteria.internal.expression.function.AggregationFunction$COUNT.distinct:Z
         2: .line 84
            return
        end local 3 // boolean distinct
        end local 2 // javax.persistence.criteria.Expression expression
        end local 1 // org.hibernate.query.criteria.internal.CriteriaBuilderImpl criteriaBuilder
        end local 0 // org.hibernate.query.criteria.internal.expression.function.AggregationFunction$COUNT this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    3     0             this  Lorg/hibernate/query/criteria/internal/expression/function/AggregationFunction$COUNT;
            0    3     1  criteriaBuilder  Lorg/hibernate/query/criteria/internal/CriteriaBuilderImpl;
            0    3     2       expression  Ljavax/persistence/criteria/Expression<*>;
            0    3     3         distinct  Z
    Signature: (Lorg/hibernate/query/criteria/internal/CriteriaBuilderImpl;Ljavax/persistence/criteria/Expression<*>;Z)V
    MethodParameters:
                 Name  Flags
      criteriaBuilder  
      expression       
      distinct         

  protected void renderArguments(java.lang.StringBuilder, org.hibernate.query.criteria.internal.compile.RenderingContext);
    descriptor: (Ljava/lang/StringBuilder;Lorg/hibernate/query/criteria/internal/compile/RenderingContext;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.hibernate.query.criteria.internal.expression.function.AggregationFunction$COUNT this
        start local 1 // java.lang.StringBuilder buffer
        start local 2 // org.hibernate.query.criteria.internal.compile.RenderingContext renderingContext
         0: .line 88
            aload 0 /* this */
            invokevirtual org.hibernate.query.criteria.internal.expression.function.AggregationFunction$COUNT.isDistinct:()Z
            ifeq 3
         1: .line 89
            aload 1 /* buffer */
            ldc "distinct "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         2: .line 90
            goto 11
         3: .line 96
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.query.criteria.internal.expression.function.AggregationFunction$COUNT.getArgumentExpressions:()Ljava/util/List;
            astore 3 /* argExprs */
        start local 3 // java.util.List argExprs
         4: .line 97
            aload 3 /* argExprs */
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpne 11
         5: .line 98
            aload 3 /* argExprs */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javax.persistence.criteria.Expression
            astore 4 /* argExpr */
        start local 4 // javax.persistence.criteria.Expression argExpr
         6: .line 99
            aload 4 /* argExpr */
            instanceof javax.persistence.criteria.Root
            ifeq 11
         7: .line 100
            aload 4 /* argExpr */
            checkcast javax.persistence.criteria.Root
            astore 5 /* root */
        start local 5 // javax.persistence.criteria.Root root
         8: .line 101
            aload 5 /* root */
            invokeinterface javax.persistence.criteria.Root.getModel:()Ljavax/persistence/metamodel/EntityType;
            invokeinterface javax.persistence.metamodel.EntityType.hasSingleIdAttribute:()Z
            ifne 11
         9: .line 102
            aload 1 /* buffer */
            bipush 42
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        10: .line 103
            return
        end local 5 // javax.persistence.criteria.Root root
        end local 4 // javax.persistence.criteria.Expression argExpr
        end local 3 // java.util.List argExprs
        11: .line 108
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buffer */
            aload 2 /* renderingContext */
            invokespecial org.hibernate.query.criteria.internal.expression.function.AggregationFunction.renderArguments:(Ljava/lang/StringBuilder;Lorg/hibernate/query/criteria/internal/compile/RenderingContext;)V
        12: .line 109
            return
        end local 2 // org.hibernate.query.criteria.internal.compile.RenderingContext renderingContext
        end local 1 // java.lang.StringBuilder buffer
        end local 0 // org.hibernate.query.criteria.internal.expression.function.AggregationFunction$COUNT this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   13     0              this  Lorg/hibernate/query/criteria/internal/expression/function/AggregationFunction$COUNT;
            0   13     1            buffer  Ljava/lang/StringBuilder;
            0   13     2  renderingContext  Lorg/hibernate/query/criteria/internal/compile/RenderingContext;
            4   11     3          argExprs  Ljava/util/List<Ljavax/persistence/criteria/Expression<*>;>;
            6   11     4           argExpr  Ljavax/persistence/criteria/Expression;
            8   11     5              root  Ljavax/persistence/criteria/Root<*>;
    MethodParameters:
                  Name  Flags
      buffer            
      renderingContext  

  public boolean isDistinct();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.query.criteria.internal.expression.function.AggregationFunction$COUNT this
         0: .line 112
            aload 0 /* this */
            getfield org.hibernate.query.criteria.internal.expression.function.AggregationFunction$COUNT.distinct:Z
            ireturn
        end local 0 // org.hibernate.query.criteria.internal.expression.function.AggregationFunction$COUNT this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/query/criteria/internal/expression/function/AggregationFunction$COUNT;
}
Signature: Lorg/hibernate/query/criteria/internal/expression/function/AggregationFunction<Ljava/lang/Long;>;
SourceFile: "AggregationFunction.java"
NestHost: org.hibernate.query.criteria.internal.expression.function.AggregationFunction
InnerClasses:
  public COUNT = org.hibernate.query.criteria.internal.expression.function.AggregationFunction$COUNT of org.hibernate.query.criteria.internal.expression.function.AggregationFunction