public class io.micronaut.core.util.ArgumentUtils$ArgumentCheck<T>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.micronaut.core.util.ArgumentUtils$ArgumentCheck
  super_class: java.lang.Object
{
  private final io.micronaut.core.util.ArgumentUtils$Check check;
    descriptor: Lio/micronaut/core/util/ArgumentUtils$Check;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String name;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final T value;
    descriptor: Ljava/lang/Object;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: TT;

  public void <init>(io.micronaut.core.util.ArgumentUtils$Check);
    descriptor: (Lio/micronaut/core/util/ArgumentUtils$Check;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.micronaut.core.util.ArgumentUtils$ArgumentCheck this
        start local 1 // io.micronaut.core.util.ArgumentUtils$Check check
         0: .line 108
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 109
            aload 0 /* this */
            aload 1 /* check */
            putfield io.micronaut.core.util.ArgumentUtils$ArgumentCheck.check:Lio/micronaut/core/util/ArgumentUtils$Check;
         2: .line 110
            aload 0 /* this */
            aconst_null
            putfield io.micronaut.core.util.ArgumentUtils$ArgumentCheck.name:Ljava/lang/String;
         3: .line 111
            aload 0 /* this */
            aconst_null
            putfield io.micronaut.core.util.ArgumentUtils$ArgumentCheck.value:Ljava/lang/Object;
         4: .line 112
            return
        end local 1 // io.micronaut.core.util.ArgumentUtils$Check check
        end local 0 // io.micronaut.core.util.ArgumentUtils$ArgumentCheck this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lio/micronaut/core/util/ArgumentUtils$ArgumentCheck<TT;>;
            0    5     1  check  Lio/micronaut/core/util/ArgumentUtils$Check;
    MethodParameters:
       Name  Flags
      check  

  public void <init>(java.lang.String, );
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // io.micronaut.core.util.ArgumentUtils$ArgumentCheck this
        start local 1 // java.lang.String name
        start local 2 // java.lang.Object value
         0: .line 118
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 119
            aload 0 /* this */
            aconst_null
            putfield io.micronaut.core.util.ArgumentUtils$ArgumentCheck.check:Lio/micronaut/core/util/ArgumentUtils$Check;
         2: .line 120
            aload 0 /* this */
            aload 1 /* name */
            putfield io.micronaut.core.util.ArgumentUtils$ArgumentCheck.name:Ljava/lang/String;
         3: .line 121
            aload 0 /* this */
            aload 2 /* value */
            putfield io.micronaut.core.util.ArgumentUtils$ArgumentCheck.value:Ljava/lang/Object;
         4: .line 122
            return
        end local 2 // java.lang.Object value
        end local 1 // java.lang.String name
        end local 0 // io.micronaut.core.util.ArgumentUtils$ArgumentCheck this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lio/micronaut/core/util/ArgumentUtils$ArgumentCheck<TT;>;
            0    5     1   name  Ljava/lang/String;
            0    5     2  value  TT;
    Signature: (Ljava/lang/String;TT;)V
    MethodParameters:
       Name  Flags
      name   
      value  

  public void orElseFail(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.micronaut.core.util.ArgumentUtils$ArgumentCheck this
        start local 1 // java.lang.String message
         0: .line 131
            aload 0 /* this */
            getfield io.micronaut.core.util.ArgumentUtils$ArgumentCheck.check:Lio/micronaut/core/util/ArgumentUtils$Check;
            ifnull 2
            aload 0 /* this */
            getfield io.micronaut.core.util.ArgumentUtils$ArgumentCheck.check:Lio/micronaut/core/util/ArgumentUtils$Check;
            invokeinterface io.micronaut.core.util.ArgumentUtils$Check.condition:()Z
            ifne 2
         1: .line 132
            new java.lang.IllegalArgumentException
            dup
            aload 1 /* message */
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 134
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String message
        end local 0 // io.micronaut.core.util.ArgumentUtils$ArgumentCheck this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lio/micronaut/core/util/ArgumentUtils$ArgumentCheck<TT;>;
            0    3     1  message  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      message  

  public void notNull();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // io.micronaut.core.util.ArgumentUtils$ArgumentCheck this
         0: .line 142
            aload 0 /* this */
            getfield io.micronaut.core.util.ArgumentUtils$ArgumentCheck.value:Ljava/lang/Object;
            ifnonnull 2
         1: .line 143
            new java.lang.NullPointerException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Argument ["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield io.micronaut.core.util.ArgumentUtils$ArgumentCheck.name:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "] cannot be null"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 145
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.micronaut.core.util.ArgumentUtils$ArgumentCheck this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/micronaut/core/util/ArgumentUtils$ArgumentCheck<TT;>;
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "ArgumentUtils.java"
NestHost: io.micronaut.core.util.ArgumentUtils
InnerClasses:
  public ArgumentCheck = io.micronaut.core.util.ArgumentUtils$ArgumentCheck of io.micronaut.core.util.ArgumentUtils
  public abstract Check = io.micronaut.core.util.ArgumentUtils$Check of io.micronaut.core.util.ArgumentUtils