public final class org.junit.jupiter.api.condition.OS extends java.lang.Enum<org.junit.jupiter.api.condition.OS>
  minor version: 0
  major version: 59
  flags: flags: (0x4031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER, ACC_ANNOTATION
  this_class: org.junit.jupiter.api.condition.OS
  super_class: java.lang.Enum
{
  public static final org.junit.jupiter.api.condition.OS AIX;
    descriptor: Lorg/junit/jupiter/api/condition/OS;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION
    RuntimeVisibleAnnotations: 
      org.apiguardian.api.API(status = org.apiguardian.api.API$Status.STABLE:Lorg/apiguardian/api/API$Status;, since = "5.3")

  public static final org.junit.jupiter.api.condition.OS LINUX;
    descriptor: Lorg/junit/jupiter/api/condition/OS;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final org.junit.jupiter.api.condition.OS MAC;
    descriptor: Lorg/junit/jupiter/api/condition/OS;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final org.junit.jupiter.api.condition.OS SOLARIS;
    descriptor: Lorg/junit/jupiter/api/condition/OS;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final org.junit.jupiter.api.condition.OS WINDOWS;
    descriptor: Lorg/junit/jupiter/api/condition/OS;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  public static final org.junit.jupiter.api.condition.OS OTHER;
    descriptor: Lorg/junit/jupiter/api/condition/OS;
    flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION

  private static final org.junit.platform.commons.logging.Logger logger;
    descriptor: Lorg/junit/platform/commons/logging/Logger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.junit.jupiter.api.condition.OS CURRENT_OS;
    descriptor: Lorg/junit/jupiter/api/condition/OS;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.junit.jupiter.api.condition.OS[] ENUM$VALUES;
    descriptor: [Lorg/junit/jupiter/api/condition/OS;
    flags: (0x101a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 43
            new org.junit.jupiter.api.condition.OS
            dup
            ldc "AIX"
            iconst_0
            invokespecial org.junit.jupiter.api.condition.OS.<init>:(Ljava/lang/String;I)V
         1: .line 49
            putstatic org.junit.jupiter.api.condition.OS.AIX:Lorg/junit/jupiter/api/condition/OS;
         2: .line 51
            new org.junit.jupiter.api.condition.OS
            dup
            ldc "LINUX"
            iconst_1
            invokespecial org.junit.jupiter.api.condition.OS.<init>:(Ljava/lang/String;I)V
         3: .line 54
            putstatic org.junit.jupiter.api.condition.OS.LINUX:Lorg/junit/jupiter/api/condition/OS;
         4: .line 56
            new org.junit.jupiter.api.condition.OS
            dup
            ldc "MAC"
            iconst_2
            invokespecial org.junit.jupiter.api.condition.OS.<init>:(Ljava/lang/String;I)V
         5: .line 59
            putstatic org.junit.jupiter.api.condition.OS.MAC:Lorg/junit/jupiter/api/condition/OS;
         6: .line 61
            new org.junit.jupiter.api.condition.OS
            dup
            ldc "SOLARIS"
            iconst_3
            invokespecial org.junit.jupiter.api.condition.OS.<init>:(Ljava/lang/String;I)V
         7: .line 64
            putstatic org.junit.jupiter.api.condition.OS.SOLARIS:Lorg/junit/jupiter/api/condition/OS;
         8: .line 66
            new org.junit.jupiter.api.condition.OS
            dup
            ldc "WINDOWS"
            iconst_4
            invokespecial org.junit.jupiter.api.condition.OS.<init>:(Ljava/lang/String;I)V
         9: .line 69
            putstatic org.junit.jupiter.api.condition.OS.WINDOWS:Lorg/junit/jupiter/api/condition/OS;
        10: .line 71
            new org.junit.jupiter.api.condition.OS
            dup
            ldc "OTHER"
            iconst_5
            invokespecial org.junit.jupiter.api.condition.OS.<init>:(Ljava/lang/String;I)V
        11: .line 75
            putstatic org.junit.jupiter.api.condition.OS.OTHER:Lorg/junit/jupiter/api/condition/OS;
            bipush 6
            anewarray org.junit.jupiter.api.condition.OS
            dup
            iconst_0
            getstatic org.junit.jupiter.api.condition.OS.AIX:Lorg/junit/jupiter/api/condition/OS;
            aastore
            dup
            iconst_1
            getstatic org.junit.jupiter.api.condition.OS.LINUX:Lorg/junit/jupiter/api/condition/OS;
            aastore
            dup
            iconst_2
            getstatic org.junit.jupiter.api.condition.OS.MAC:Lorg/junit/jupiter/api/condition/OS;
            aastore
            dup
            iconst_3
            getstatic org.junit.jupiter.api.condition.OS.SOLARIS:Lorg/junit/jupiter/api/condition/OS;
            aastore
            dup
            iconst_4
            getstatic org.junit.jupiter.api.condition.OS.WINDOWS:Lorg/junit/jupiter/api/condition/OS;
            aastore
            dup
            iconst_5
            getstatic org.junit.jupiter.api.condition.OS.OTHER:Lorg/junit/jupiter/api/condition/OS;
            aastore
            putstatic org.junit.jupiter.api.condition.OS.ENUM$VALUES:[Lorg/junit/jupiter/api/condition/OS;
        12: .line 77
            ldc Lorg/junit/jupiter/api/condition/OS;
            invokestatic org.junit.platform.commons.logging.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/junit/platform/commons/logging/Logger;
            putstatic org.junit.jupiter.api.condition.OS.logger:Lorg/junit/platform/commons/logging/Logger;
        13: .line 79
            invokestatic org.junit.jupiter.api.condition.OS.determineCurrentOs:()Lorg/junit/jupiter/api/condition/OS;
            putstatic org.junit.jupiter.api.condition.OS.CURRENT_OS:Lorg/junit/jupiter/api/condition/OS;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.junit.jupiter.api.condition.OS this
         0: .line 41
            aload 0 /* this */
            aload 1
            iload 2
            invokespecial java.lang.Enum.<init>:(Ljava/lang/String;I)V
            return
        end local 0 // org.junit.jupiter.api.condition.OS this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/junit/jupiter/api/condition/OS;
    MethodParameters:
               Name  Flags
      $enum$name     
      $enum$ordinal  

  private static org.junit.jupiter.api.condition.OS determineCurrentOs();
    descriptor: ()Lorg/junit/jupiter/api/condition/OS;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=0
         0: .line 82
            ldc "os.name"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 0 /* osName */
        start local 0 // java.lang.String osName
         1: .line 84
            aload 0 /* osName */
            invokestatic org.junit.platform.commons.util.StringUtils.isBlank:(Ljava/lang/String;)Z
            ifeq 6
         2: .line 85
            getstatic org.junit.jupiter.api.condition.OS.logger:Lorg/junit/platform/commons/logging/Logger;
         3: .line 86
            invokedynamic get()Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  org/junit/jupiter/api/condition/OS.lambda$0()Ljava/lang/String; (6)
                  ()Ljava/lang/String;
         4: .line 85
            invokeinterface org.junit.platform.commons.logging.Logger.debug:(Ljava/util/function/Supplier;)V
         5: .line 89
            aconst_null
            areturn
         6: .line 92
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* osName */
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            astore 0 /* osName */
         7: .line 94
            aload 0 /* osName */
            ldc "aix"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifeq 9
         8: .line 95
            getstatic org.junit.jupiter.api.condition.OS.AIX:Lorg/junit/jupiter/api/condition/OS;
            areturn
         9: .line 97
      StackMap locals:
      StackMap stack:
            aload 0 /* osName */
            ldc "linux"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifeq 11
        10: .line 98
            getstatic org.junit.jupiter.api.condition.OS.LINUX:Lorg/junit/jupiter/api/condition/OS;
            areturn
        11: .line 100
      StackMap locals:
      StackMap stack:
            aload 0 /* osName */
            ldc "mac"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifeq 13
        12: .line 101
            getstatic org.junit.jupiter.api.condition.OS.MAC:Lorg/junit/jupiter/api/condition/OS;
            areturn
        13: .line 103
      StackMap locals:
      StackMap stack:
            aload 0 /* osName */
            ldc "sunos"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifne 14
            aload 0 /* osName */
            ldc "solaris"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifeq 15
        14: .line 104
      StackMap locals:
      StackMap stack:
            getstatic org.junit.jupiter.api.condition.OS.SOLARIS:Lorg/junit/jupiter/api/condition/OS;
            areturn
        15: .line 106
      StackMap locals:
      StackMap stack:
            aload 0 /* osName */
            ldc "win"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifeq 17
        16: .line 107
            getstatic org.junit.jupiter.api.condition.OS.WINDOWS:Lorg/junit/jupiter/api/condition/OS;
            areturn
        17: .line 109
      StackMap locals:
      StackMap stack:
            getstatic org.junit.jupiter.api.condition.OS.OTHER:Lorg/junit/jupiter/api/condition/OS;
            areturn
        end local 0 // java.lang.String osName
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            1   18     0  osName  Ljava/lang/String;

  public boolean isCurrentOs();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.junit.jupiter.api.condition.OS this
         0: .line 117
            aload 0 /* this */
            getstatic org.junit.jupiter.api.condition.OS.CURRENT_OS:Lorg/junit/jupiter/api/condition/OS;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.junit.jupiter.api.condition.OS this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/junit/jupiter/api/condition/OS;

  public static org.junit.jupiter.api.condition.OS[] values();
    descriptor: ()[Lorg/junit/jupiter/api/condition/OS;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=0
         0: .line 1
            getstatic org.junit.jupiter.api.condition.OS.ENUM$VALUES:[Lorg/junit/jupiter/api/condition/OS;
            dup
            astore 0
            iconst_0
            aload 0
            arraylength
            dup
            istore 1
            anewarray org.junit.jupiter.api.condition.OS
            dup
            astore 2
            iconst_0
            iload 1
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
            aload 2
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.junit.jupiter.api.condition.OS valueOf(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/junit/jupiter/api/condition/OS;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
         0: .line 1
            ldc Lorg/junit/jupiter/api/condition/OS;
            aload 0
            invokestatic java.lang.Enum.valueOf:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
            checkcast org.junit.jupiter.api.condition.OS
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
      Name  Flags
      name  

  private static java.lang.String lambda$0();
    descriptor: ()Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 86
            ldc "JVM system property 'os.name' is undefined. It is therefore not possible to detect the current OS."
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Ljava/lang/Enum<Lorg/junit/jupiter/api/condition/OS;>;
SourceFile: "OS.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public final Status = org.apiguardian.api.API$Status of org.apiguardian.api.API
    RuntimeVisibleAnnotations: 
      org.apiguardian.api.API(status = org.apiguardian.api.API$Status.STABLE:Lorg/apiguardian/api/API$Status;, since = "5.1")