class org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions
  super_class: java.lang.Object
{
  private final org.hibernate.procedure.spi.ParameterStrategy parameterStrategy;
    descriptor: Lorg/hibernate/procedure/spi/ParameterStrategy;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinition[] parameterDefinitions;
    descriptor: [Lorg/hibernate/cfg/annotations/NamedProcedureCallDefinition$ParameterDefinition;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  void <init>(javax.persistence.StoredProcedureParameter[], java.util.Map<java.lang.String, java.lang.Object>);
    descriptor: ([Ljavax/persistence/StoredProcedureParameter;Ljava/util/Map;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions this
        start local 1 // javax.persistence.StoredProcedureParameter[] parameters
        start local 2 // java.util.Map queryHintMap
         0: .line 150
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 151
            aload 1 /* parameters */
            ifnull 2
            aload 1 /* parameters */
            arraylength
            ifne 5
         2: .line 152
      StackMap locals: org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions javax.persistence.StoredProcedureParameter[] java.util.Map
      StackMap stack:
            aload 0 /* this */
            getstatic org.hibernate.procedure.spi.ParameterStrategy.POSITIONAL:Lorg/hibernate/procedure/spi/ParameterStrategy;
            putfield org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions.parameterStrategy:Lorg/hibernate/procedure/spi/ParameterStrategy;
         3: .line 153
            aload 0 /* this */
            iconst_0
            anewarray org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinition
            putfield org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions.parameterDefinitions:[Lorg/hibernate/cfg/annotations/NamedProcedureCallDefinition$ParameterDefinition;
         4: .line 154
            goto 20
         5: .line 156
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* parameters */
            iconst_0
            aaload
            invokeinterface javax.persistence.StoredProcedureParameter.name:()Ljava/lang/String;
            invokestatic org.hibernate.internal.util.StringHelper.isNotEmpty:(Ljava/lang/String;)Z
            ifeq 7
         6: .line 157
            getstatic org.hibernate.procedure.spi.ParameterStrategy.NAMED:Lorg/hibernate/procedure/spi/ParameterStrategy;
            goto 8
         7: .line 158
      StackMap locals:
      StackMap stack: org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions
            getstatic org.hibernate.procedure.spi.ParameterStrategy.POSITIONAL:Lorg/hibernate/procedure/spi/ParameterStrategy;
         8: .line 156
      StackMap locals: org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions javax.persistence.StoredProcedureParameter[] java.util.Map
      StackMap stack: org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions org.hibernate.procedure.spi.ParameterStrategy
            putfield org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions.parameterStrategy:Lorg/hibernate/procedure/spi/ParameterStrategy;
         9: .line 159
            aload 0 /* this */
            aload 1 /* parameters */
            arraylength
            anewarray org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinition
            putfield org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions.parameterDefinitions:[Lorg/hibernate/cfg/annotations/NamedProcedureCallDefinition$ParameterDefinition;
        10: .line 161
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        11: goto 19
        12: .line 162
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions.parameterDefinitions:[Lorg/hibernate/cfg/annotations/NamedProcedureCallDefinition$ParameterDefinition;
            iload 3 /* i */
        13: .line 163
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions.parameterStrategy:Lorg/hibernate/procedure/spi/ParameterStrategy;
        14: .line 164
            aload 1 /* parameters */
            iload 3 /* i */
            aaload
        15: .line 166
            iload 3 /* i */
            iconst_1
            iadd
        16: .line 167
            aload 2 /* queryHintMap */
        17: .line 162
            invokestatic org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinition.from:(Lorg/hibernate/procedure/spi/ParameterStrategy;Ljavax/persistence/StoredProcedureParameter;ILjava/util/Map;)Lorg/hibernate/cfg/annotations/NamedProcedureCallDefinition$ParameterDefinition;
            aastore
        18: .line 161
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 3 /* i */
            aload 1 /* parameters */
            arraylength
            if_icmplt 12
        end local 3 // int i
        20: .line 171
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.util.Map queryHintMap
        end local 1 // javax.persistence.StoredProcedureParameter[] parameters
        end local 0 // org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   21     0          this  Lorg/hibernate/cfg/annotations/NamedProcedureCallDefinition$ParameterDefinitions;
            0   21     1    parameters  [Ljavax/persistence/StoredProcedureParameter;
            0   21     2  queryHintMap  Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
           11   20     3             i  I
    Signature: ([Ljavax/persistence/StoredProcedureParameter;Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;)V
    MethodParameters:
              Name  Flags
      parameters    
      queryHintMap  

  public org.hibernate.procedure.spi.ParameterStrategy getParameterStrategy();
    descriptor: ()Lorg/hibernate/procedure/spi/ParameterStrategy;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions this
         0: .line 174
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions.parameterStrategy:Lorg/hibernate/procedure/spi/ParameterStrategy;
            areturn
        end local 0 // org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/cfg/annotations/NamedProcedureCallDefinition$ParameterDefinitions;

  public java.util.List<org.hibernate.procedure.internal.ProcedureCallMementoImpl$ParameterMemento> toMementos(org.hibernate.internal.SessionFactoryImpl);
    descriptor: (Lorg/hibernate/internal/SessionFactoryImpl;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions this
        start local 1 // org.hibernate.internal.SessionFactoryImpl sessionFactory
         0: .line 178
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* mementos */
        start local 2 // java.util.List mementos
         1: .line 179
            aload 0 /* this */
            getfield org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions.parameterDefinitions:[Lorg/hibernate/cfg/annotations/NamedProcedureCallDefinition$ParameterDefinition;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions org.hibernate.internal.SessionFactoryImpl java.util.List top int int org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinition[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* definition */
        start local 3 // org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinition definition
         3: .line 180
            aload 2 /* mementos */
            aload 3 /* definition */
            aload 1 /* sessionFactory */
            invokevirtual org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinition.toMemento:(Lorg/hibernate/internal/SessionFactoryImpl;)Lorg/hibernate/procedure/internal/ProcedureCallMementoImpl$ParameterMemento;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinition definition
         4: .line 179
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
         6: .line 182
            aload 2 /* mementos */
            areturn
        end local 2 // java.util.List mementos
        end local 1 // org.hibernate.internal.SessionFactoryImpl sessionFactory
        end local 0 // org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    7     0            this  Lorg/hibernate/cfg/annotations/NamedProcedureCallDefinition$ParameterDefinitions;
            0    7     1  sessionFactory  Lorg/hibernate/internal/SessionFactoryImpl;
            1    7     2        mementos  Ljava/util/List<Lorg/hibernate/procedure/internal/ProcedureCallMementoImpl$ParameterMemento;>;
            3    4     3      definition  Lorg/hibernate/cfg/annotations/NamedProcedureCallDefinition$ParameterDefinition;
    Signature: (Lorg/hibernate/internal/SessionFactoryImpl;)Ljava/util/List<Lorg/hibernate/procedure/internal/ProcedureCallMementoImpl$ParameterMemento;>;
    MethodParameters:
                Name  Flags
      sessionFactory  
}
SourceFile: "NamedProcedureCallDefinition.java"
NestHost: org.hibernate.cfg.annotations.NamedProcedureCallDefinition
InnerClasses:
  ParameterDefinition = org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinition of org.hibernate.cfg.annotations.NamedProcedureCallDefinition
  ParameterDefinitions = org.hibernate.cfg.annotations.NamedProcedureCallDefinition$ParameterDefinitions of org.hibernate.cfg.annotations.NamedProcedureCallDefinition
  public ParameterMemento = org.hibernate.procedure.internal.ProcedureCallMementoImpl$ParameterMemento of org.hibernate.procedure.internal.ProcedureCallMementoImpl