public final class org.springframework.core.ReactiveTypeDescriptor
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.springframework.core.ReactiveTypeDescriptor
  super_class: java.lang.Object
{
  private final java.lang.Class<?> reactiveType;
    descriptor: Ljava/lang/Class;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/lang/Class<*>;

  private final java.util.function.Supplier<?> emptyValueSupplier;
    descriptor: Ljava/util/function/Supplier;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/function/Supplier<*>;
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

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

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

  private void <init>(java.lang.Class<?>, java.util.function.Supplier<?>, boolean, );
    descriptor: (Ljava/lang/Class;Ljava/util/function/Supplier;ZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // org.springframework.core.ReactiveTypeDescriptor this
        start local 1 // java.lang.Class reactiveType
        start local 2 // java.util.function.Supplier emptySupplier
        start local 3 // boolean multiValue
        start local 4 // boolean noValue
         0: .line 46
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 49
            aload 1 /* reactiveType */
            ldc "'reactiveType' must not be null"
            invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
         2: .line 50
            aload 0 /* this */
            aload 1 /* reactiveType */
            putfield org.springframework.core.ReactiveTypeDescriptor.reactiveType:Ljava/lang/Class;
         3: .line 51
            aload 0 /* this */
            aload 2 /* emptySupplier */
            putfield org.springframework.core.ReactiveTypeDescriptor.emptyValueSupplier:Ljava/util/function/Supplier;
         4: .line 52
            aload 0 /* this */
            iload 3 /* multiValue */
            putfield org.springframework.core.ReactiveTypeDescriptor.multiValue:Z
         5: .line 53
            aload 0 /* this */
            iload 4 /* noValue */
            putfield org.springframework.core.ReactiveTypeDescriptor.noValue:Z
         6: .line 54
            return
        end local 4 // boolean noValue
        end local 3 // boolean multiValue
        end local 2 // java.util.function.Supplier emptySupplier
        end local 1 // java.lang.Class reactiveType
        end local 0 // org.springframework.core.ReactiveTypeDescriptor this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0           this  Lorg/springframework/core/ReactiveTypeDescriptor;
            0    7     1   reactiveType  Ljava/lang/Class<*>;
            0    7     2  emptySupplier  Ljava/util/function/Supplier<*>;
            0    7     3     multiValue  Z
            0    7     4        noValue  Z
    Signature: (Ljava/lang/Class<*>;Ljava/util/function/Supplier<*>;ZZ)V
    RuntimeVisibleParameterAnnotations: 
      0:
      1:
        org.springframework.lang.Nullable()
      2:
      3:
    MethodParameters:
               Name  Flags
      reactiveType   
      emptySupplier  
      multiValue     
      noValue        

  public java.lang.Class<?> getReactiveType();
    descriptor: ()Ljava/lang/Class;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.core.ReactiveTypeDescriptor this
         0: .line 61
            aload 0 /* this */
            getfield org.springframework.core.ReactiveTypeDescriptor.reactiveType:Ljava/lang/Class;
            areturn
        end local 0 // org.springframework.core.ReactiveTypeDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/core/ReactiveTypeDescriptor;
    Signature: ()Ljava/lang/Class<*>;

  public boolean isMultiValue();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.core.ReactiveTypeDescriptor this
         0: .line 71
            aload 0 /* this */
            getfield org.springframework.core.ReactiveTypeDescriptor.multiValue:Z
            ireturn
        end local 0 // org.springframework.core.ReactiveTypeDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/core/ReactiveTypeDescriptor;

  public boolean supportsEmpty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.core.ReactiveTypeDescriptor this
         0: .line 78
            aload 0 /* this */
            getfield org.springframework.core.ReactiveTypeDescriptor.emptyValueSupplier:Ljava/util/function/Supplier;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.springframework.core.ReactiveTypeDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/springframework/core/ReactiveTypeDescriptor;

  public boolean isNoValue();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.core.ReactiveTypeDescriptor this
         0: .line 86
            aload 0 /* this */
            getfield org.springframework.core.ReactiveTypeDescriptor.noValue:Z
            ireturn
        end local 0 // org.springframework.core.ReactiveTypeDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/core/ReactiveTypeDescriptor;

  public java.lang.Object getEmptyValue();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.springframework.core.ReactiveTypeDescriptor this
         0: .line 94
            aload 0 /* this */
            getfield org.springframework.core.ReactiveTypeDescriptor.emptyValueSupplier:Ljava/util/function/Supplier;
            ifnull 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ldc "Empty values not supported"
            invokestatic org.springframework.util.Assert.state:(ZLjava/lang/String;)V
         3: .line 95
            aload 0 /* this */
            getfield org.springframework.core.ReactiveTypeDescriptor.emptyValueSupplier:Ljava/util/function/Supplier;
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            areturn
        end local 0 // org.springframework.core.ReactiveTypeDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/springframework/core/ReactiveTypeDescriptor;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.springframework.core.ReactiveTypeDescriptor this
        start local 1 // java.lang.Object other
         0: .line 101
            aload 0 /* this */
            aload 1 /* other */
            if_acmpne 2
         1: .line 102
            iconst_1
            ireturn
         2: .line 104
      StackMap locals:
      StackMap stack:
            aload 1 /* other */
            ifnull 3
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 1 /* other */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            if_acmpeq 4
         3: .line 105
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         4: .line 107
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.core.ReactiveTypeDescriptor.reactiveType:Ljava/lang/Class;
            aload 1 /* other */
            checkcast org.springframework.core.ReactiveTypeDescriptor
            getfield org.springframework.core.ReactiveTypeDescriptor.reactiveType:Ljava/lang/Class;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.Object other
        end local 0 // org.springframework.core.ReactiveTypeDescriptor this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/springframework/core/ReactiveTypeDescriptor;
            0    5     1  other  Ljava/lang/Object;
    RuntimeVisibleParameterAnnotations: 
      0:
        org.springframework.lang.Nullable()
    MethodParameters:
       Name  Flags
      other  

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.core.ReactiveTypeDescriptor this
         0: .line 112
            aload 0 /* this */
            getfield org.springframework.core.ReactiveTypeDescriptor.reactiveType:Ljava/lang/Class;
            invokevirtual java.lang.Object.hashCode:()I
            ireturn
        end local 0 // org.springframework.core.ReactiveTypeDescriptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/core/ReactiveTypeDescriptor;

  public static org.springframework.core.ReactiveTypeDescriptor multiValue(java.lang.Class<?>, java.util.function.Supplier<?>);
    descriptor: (Ljava/lang/Class;Ljava/util/function/Supplier;)Lorg/springframework/core/ReactiveTypeDescriptor;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // java.lang.Class type
        start local 1 // java.util.function.Supplier emptySupplier
         0: .line 122
            new org.springframework.core.ReactiveTypeDescriptor
            dup
            aload 0 /* type */
            aload 1 /* emptySupplier */
            iconst_1
            iconst_0
            invokespecial org.springframework.core.ReactiveTypeDescriptor.<init>:(Ljava/lang/Class;Ljava/util/function/Supplier;ZZ)V
            areturn
        end local 1 // java.util.function.Supplier emptySupplier
        end local 0 // java.lang.Class type
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           type  Ljava/lang/Class<*>;
            0    1     1  emptySupplier  Ljava/util/function/Supplier<*>;
    Signature: (Ljava/lang/Class<*>;Ljava/util/function/Supplier<*>;)Lorg/springframework/core/ReactiveTypeDescriptor;
    MethodParameters:
               Name  Flags
      type           
      emptySupplier  

  public static org.springframework.core.ReactiveTypeDescriptor singleOptionalValue(java.lang.Class<?>, java.util.function.Supplier<?>);
    descriptor: (Ljava/lang/Class;Ljava/util/function/Supplier;)Lorg/springframework/core/ReactiveTypeDescriptor;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // java.lang.Class type
        start local 1 // java.util.function.Supplier emptySupplier
         0: .line 131
            new org.springframework.core.ReactiveTypeDescriptor
            dup
            aload 0 /* type */
            aload 1 /* emptySupplier */
            iconst_0
            iconst_0
            invokespecial org.springframework.core.ReactiveTypeDescriptor.<init>:(Ljava/lang/Class;Ljava/util/function/Supplier;ZZ)V
            areturn
        end local 1 // java.util.function.Supplier emptySupplier
        end local 0 // java.lang.Class type
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           type  Ljava/lang/Class<*>;
            0    1     1  emptySupplier  Ljava/util/function/Supplier<*>;
    Signature: (Ljava/lang/Class<*>;Ljava/util/function/Supplier<*>;)Lorg/springframework/core/ReactiveTypeDescriptor;
    MethodParameters:
               Name  Flags
      type           
      emptySupplier  

  public static org.springframework.core.ReactiveTypeDescriptor singleRequiredValue(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Lorg/springframework/core/ReactiveTypeDescriptor;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // java.lang.Class type
         0: .line 139
            new org.springframework.core.ReactiveTypeDescriptor
            dup
            aload 0 /* type */
            aconst_null
            iconst_0
            iconst_0
            invokespecial org.springframework.core.ReactiveTypeDescriptor.<init>:(Ljava/lang/Class;Ljava/util/function/Supplier;ZZ)V
            areturn
        end local 0 // java.lang.Class type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  type  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)Lorg/springframework/core/ReactiveTypeDescriptor;
    MethodParameters:
      Name  Flags
      type  

  public static org.springframework.core.ReactiveTypeDescriptor noValue(java.lang.Class<?>, java.util.function.Supplier<?>);
    descriptor: (Ljava/lang/Class;Ljava/util/function/Supplier;)Lorg/springframework/core/ReactiveTypeDescriptor;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // java.lang.Class type
        start local 1 // java.util.function.Supplier emptySupplier
         0: .line 148
            new org.springframework.core.ReactiveTypeDescriptor
            dup
            aload 0 /* type */
            aload 1 /* emptySupplier */
            iconst_0
            iconst_1
            invokespecial org.springframework.core.ReactiveTypeDescriptor.<init>:(Ljava/lang/Class;Ljava/util/function/Supplier;ZZ)V
            areturn
        end local 1 // java.util.function.Supplier emptySupplier
        end local 0 // java.lang.Class type
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           type  Ljava/lang/Class<*>;
            0    1     1  emptySupplier  Ljava/util/function/Supplier<*>;
    Signature: (Ljava/lang/Class<*>;Ljava/util/function/Supplier<*>;)Lorg/springframework/core/ReactiveTypeDescriptor;
    MethodParameters:
               Name  Flags
      type           
      emptySupplier  
}
SourceFile: "ReactiveTypeDescriptor.java"