public final class io.vertx.junit5.VertxExtension implements org.junit.jupiter.api.extension.ParameterResolver, org.junit.jupiter.api.extension.BeforeTestExecutionCallback, org.junit.jupiter.api.extension.AfterTestExecutionCallback, org.junit.jupiter.api.extension.BeforeEachCallback, org.junit.jupiter.api.extension.AfterEachCallback, org.junit.jupiter.api.extension.BeforeAllCallback, org.junit.jupiter.api.extension.AfterAllCallback
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: io.vertx.junit5.VertxExtension
  super_class: java.lang.Object
{
  private static final int DEFAULT_TIMEOUT_DURATION;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 30

  private static final java.util.concurrent.TimeUnit DEFAULT_TIMEOUT_UNIT;
    descriptor: Ljava/util/concurrent/TimeUnit;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.String TEST_CONTEXT_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "VertxTestContext"

  private static final java.lang.String VERTX_INSTANCE_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "VertxInstance"

  private static final java.lang.String VERTX_INSTANCE_CREATOR_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "VertxInstanceCreator"

  private static final java.lang.String VERTX_RX1_INSTANCE_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "VertxRx1Instance"

  private static final java.lang.String VERTX_RX1_INSTANCE_CREATOR_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "VertxRx1InstanceCreator"

  private static final java.lang.String VERTX_RX2_INSTANCE_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "VertxRx2Instance"

  private static final java.lang.String VERTX_RX2_INSTANCE_CREATOR_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "VertxRx2InstanceCreator"

  private static final java.util.HashSet<java.lang.Class> INJECTABLE_TYPES;
    descriptor: Ljava/util/HashSet;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/HashSet<Ljava/lang/Class;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 59
            getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
            putstatic io.vertx.junit5.VertxExtension.DEFAULT_TIMEOUT_UNIT:Ljava/util/concurrent/TimeUnit;
         1: .line 83
            new io.vertx.junit5.VertxExtension$1
            dup
            invokespecial io.vertx.junit5.VertxExtension$1.<init>:()V
            putstatic io.vertx.junit5.VertxExtension.INJECTABLE_TYPES:Ljava/util/HashSet;
         2: .line 90
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.junit5.VertxExtension this
         0: .line 56
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // io.vertx.junit5.VertxExtension this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/junit5/VertxExtension;

  public boolean supportsParameter(org.junit.jupiter.api.extension.ParameterContext, org.junit.jupiter.api.extension.ExtensionContext);
    descriptor: (Lorg/junit/jupiter/api/extension/ParameterContext;Lorg/junit/jupiter/api/extension/ExtensionContext;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.vertx.junit5.VertxExtension this
        start local 1 // org.junit.jupiter.api.extension.ParameterContext parameterContext
        start local 2 // org.junit.jupiter.api.extension.ExtensionContext extensionContext
         0: .line 94
            getstatic io.vertx.junit5.VertxExtension.INJECTABLE_TYPES:Ljava/util/HashSet;
            aload 0 /* this */
            aload 1 /* parameterContext */
            invokevirtual io.vertx.junit5.VertxExtension.parameterType:(Lorg/junit/jupiter/api/extension/ParameterContext;)Ljava/lang/Class;
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 2 // org.junit.jupiter.api.extension.ExtensionContext extensionContext
        end local 1 // org.junit.jupiter.api.extension.ParameterContext parameterContext
        end local 0 // io.vertx.junit5.VertxExtension this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0              this  Lio/vertx/junit5/VertxExtension;
            0    1     1  parameterContext  Lorg/junit/jupiter/api/extension/ParameterContext;
            0    1     2  extensionContext  Lorg/junit/jupiter/api/extension/ExtensionContext;
    Exceptions:
      throws org.junit.jupiter.api.extension.ParameterResolutionException
    MethodParameters:
                  Name  Flags
      parameterContext  
      extensionContext  

  private java.lang.Class<?> parameterType(org.junit.jupiter.api.extension.ParameterContext);
    descriptor: (Lorg/junit/jupiter/api/extension/ParameterContext;)Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // io.vertx.junit5.VertxExtension this
        start local 1 // org.junit.jupiter.api.extension.ParameterContext parameterContext
         0: .line 98
            aload 1 /* parameterContext */
            invokeinterface org.junit.jupiter.api.extension.ParameterContext.getParameter:()Ljava/lang/reflect/Parameter;
            invokevirtual java.lang.reflect.Parameter.getType:()Ljava/lang/Class;
            areturn
        end local 1 // org.junit.jupiter.api.extension.ParameterContext parameterContext
        end local 0 // io.vertx.junit5.VertxExtension this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0              this  Lio/vertx/junit5/VertxExtension;
            0    1     1  parameterContext  Lorg/junit/jupiter/api/extension/ParameterContext;
    Signature: (Lorg/junit/jupiter/api/extension/ParameterContext;)Ljava/lang/Class<*>;
    MethodParameters:
                  Name  Flags
      parameterContext  

  public java.lang.Object resolveParameter(org.junit.jupiter.api.extension.ParameterContext, org.junit.jupiter.api.extension.ExtensionContext);
    descriptor: (Lorg/junit/jupiter/api/extension/ParameterContext;Lorg/junit/jupiter/api/extension/ExtensionContext;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // io.vertx.junit5.VertxExtension this
        start local 1 // org.junit.jupiter.api.extension.ParameterContext parameterContext
        start local 2 // org.junit.jupiter.api.extension.ExtensionContext extensionContext
         0: .line 103
            aload 0 /* this */
            aload 1 /* parameterContext */
            invokevirtual io.vertx.junit5.VertxExtension.parameterType:(Lorg/junit/jupiter/api/extension/ParameterContext;)Ljava/lang/Class;
            astore 3 /* type */
        start local 3 // java.lang.Class type
         1: .line 104
            aload 3 /* type */
            ldc Lio/vertx/core/Vertx;
            if_acmpne 3
         2: .line 105
            aload 1 /* parameterContext */
            invokeinterface org.junit.jupiter.api.extension.ParameterContext.getDeclaringExecutable:()Ljava/lang/reflect/Executable;
            aload 2 /* extensionContext */
            invokestatic io.vertx.junit5.VertxExtension.retrieveVertx:(Ljava/lang/reflect/Executable;Lorg/junit/jupiter/api/extension/ExtensionContext;)Lio/vertx/core/Vertx;
            areturn
         3: .line 107
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 3 /* type */
            ldc Lio/vertx/rxjava/core/Vertx;
            if_acmpne 5
         4: .line 108
            aload 1 /* parameterContext */
            invokeinterface org.junit.jupiter.api.extension.ParameterContext.getDeclaringExecutable:()Ljava/lang/reflect/Executable;
            aload 2 /* extensionContext */
            invokestatic io.vertx.junit5.VertxExtension.retrieveRxJava1Vertx:(Ljava/lang/reflect/Executable;Lorg/junit/jupiter/api/extension/ExtensionContext;)Lio/vertx/rxjava/core/Vertx;
            areturn
         5: .line 110
      StackMap locals:
      StackMap stack:
            aload 3 /* type */
            ldc Lio/vertx/reactivex/core/Vertx;
            if_acmpne 7
         6: .line 111
            aload 1 /* parameterContext */
            invokeinterface org.junit.jupiter.api.extension.ParameterContext.getDeclaringExecutable:()Ljava/lang/reflect/Executable;
            aload 2 /* extensionContext */
            invokestatic io.vertx.junit5.VertxExtension.retrieveRxJava2Vertx:(Ljava/lang/reflect/Executable;Lorg/junit/jupiter/api/extension/ExtensionContext;)Lio/vertx/reactivex/core/Vertx;
            areturn
         7: .line 113
      StackMap locals:
      StackMap stack:
            aload 3 /* type */
            ldc Lio/vertx/junit5/VertxTestContext;
            if_acmpne 9
         8: .line 114
            aload 0 /* this */
            aload 2 /* extensionContext */
            invokevirtual io.vertx.junit5.VertxExtension.newTestContext:(Lorg/junit/jupiter/api/extension/ExtensionContext;)Lio/vertx/junit5/VertxTestContext;
            areturn
         9: .line 116
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            ldc "Looks like the ParameterResolver needs a fix..."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // java.lang.Class type
        end local 2 // org.junit.jupiter.api.extension.ExtensionContext extensionContext
        end local 1 // org.junit.jupiter.api.extension.ParameterContext parameterContext
        end local 0 // io.vertx.junit5.VertxExtension this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   10     0              this  Lio/vertx/junit5/VertxExtension;
            0   10     1  parameterContext  Lorg/junit/jupiter/api/extension/ParameterContext;
            0   10     2  extensionContext  Lorg/junit/jupiter/api/extension/ExtensionContext;
            1   10     3              type  Ljava/lang/Class<*>;
    Exceptions:
      throws org.junit.jupiter.api.extension.ParameterResolutionException
    MethodParameters:
                  Name  Flags
      parameterContext  
      extensionContext  

  private static  getOrCreateScopedObject(java.lang.reflect.Executable, org.junit.jupiter.api.extension.ExtensionContext, java.lang.String, java.lang.String, java.util.function.Function<java.lang.String, java.lang.Object>);
    descriptor: (Ljava/lang/reflect/Executable;Lorg/junit/jupiter/api/extension/ExtensionContext;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function;)Ljava/lang/Object;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=5
        start local 0 // java.lang.reflect.Executable declaringExecutable
        start local 1 // org.junit.jupiter.api.extension.ExtensionContext extensionContext
        start local 2 // java.lang.String instanceKey
        start local 3 // java.lang.String phaseCreatorKey
        start local 4 // java.util.function.Function creatorFunction
         0: .line 120
            aload 1 /* extensionContext */
            invokestatic io.vertx.junit5.VertxExtension.store:(Lorg/junit/jupiter/api/extension/ExtensionContext;)Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
            astore 5 /* store */
        start local 5 // org.junit.jupiter.api.extension.ExtensionContext$Store store
         1: .line 121
            aload 1 /* extensionContext */
            invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getParent:()Ljava/util/Optional;
            invokevirtual java.util.Optional.isPresent:()Z
            ifeq 5
         2: .line 122
            aload 1 /* extensionContext */
            invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getParent:()Ljava/util/Optional;
            invokevirtual java.util.Optional.get:()Ljava/lang/Object;
            checkcast org.junit.jupiter.api.extension.ExtensionContext
            invokestatic io.vertx.junit5.VertxExtension.store:(Lorg/junit/jupiter/api/extension/ExtensionContext;)Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
            astore 6 /* parentStore */
        start local 6 // org.junit.jupiter.api.extension.ExtensionContext$Store parentStore
         3: .line 123
            aload 6 /* parentStore */
            aload 2 /* instanceKey */
            invokeinterface org.junit.jupiter.api.extension.ExtensionContext$Store.get:(Ljava/lang/Object;)Ljava/lang/Object;
            ifnull 5
         4: .line 124
            aload 6 /* parentStore */
            aload 2 /* instanceKey */
            invokeinterface org.junit.jupiter.api.extension.ExtensionContext$Store.get:(Ljava/lang/Object;)Ljava/lang/Object;
            invokestatic io.vertx.junit5.VertxExtension.unpack:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 6 // org.junit.jupiter.api.extension.ExtensionContext$Store parentStore
         5: .line 127
      StackMap locals: org.junit.jupiter.api.extension.ExtensionContext$Store
      StackMap stack:
            aload 5 /* store */
            aload 3 /* phaseCreatorKey */
            invokeinterface org.junit.jupiter.api.extension.ExtensionContext$Store.get:(Ljava/lang/Object;)Ljava/lang/Object;
            ifnonnull 7
         6: .line 128
            aload 5 /* store */
            aload 3 /* phaseCreatorKey */
            aload 0 /* declaringExecutable */
            invokestatic io.vertx.junit5.VertxExtension.scopeFor:(Ljava/lang/reflect/Executable;)Lio/vertx/junit5/VertxExtension$CreationScope;
            invokeinterface org.junit.jupiter.api.extension.ExtensionContext$Store.put:(Ljava/lang/Object;Ljava/lang/Object;)V
         7: .line 130
      StackMap locals:
      StackMap stack:
            aload 5 /* store */
            aload 2 /* instanceKey */
            aload 4 /* creatorFunction */
            invokeinterface org.junit.jupiter.api.extension.ExtensionContext$Store.getOrComputeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
            invokestatic io.vertx.junit5.VertxExtension.unpack:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 5 // org.junit.jupiter.api.extension.ExtensionContext$Store store
        end local 4 // java.util.function.Function creatorFunction
        end local 3 // java.lang.String phaseCreatorKey
        end local 2 // java.lang.String instanceKey
        end local 1 // org.junit.jupiter.api.extension.ExtensionContext extensionContext
        end local 0 // java.lang.reflect.Executable declaringExecutable
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    8     0  declaringExecutable  Ljava/lang/reflect/Executable;
            0    8     1     extensionContext  Lorg/junit/jupiter/api/extension/ExtensionContext;
            0    8     2          instanceKey  Ljava/lang/String;
            0    8     3      phaseCreatorKey  Ljava/lang/String;
            0    8     4      creatorFunction  Ljava/util/function/Function<Ljava/lang/String;Ljava/lang/Object;>;
            1    8     5                store  Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
            3    5     6          parentStore  Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
    Signature: (Ljava/lang/reflect/Executable;Lorg/junit/jupiter/api/extension/ExtensionContext;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function<Ljava/lang/String;Ljava/lang/Object;>;)Ljava/lang/Object;
    MethodParameters:
                     Name  Flags
      declaringExecutable  
      extensionContext     
      instanceKey          
      phaseCreatorKey      
      creatorFunction      

  private static java.lang.Object unpack(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Object object
         0: .line 134
            aload 0 /* object */
            instanceof java.util.function.Supplier
            ifeq 2
         1: .line 135
            aload 0 /* object */
            checkcast java.util.function.Supplier
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            areturn
         2: .line 137
      StackMap locals:
      StackMap stack:
            aload 0 /* object */
            areturn
        end local 0 // java.lang.Object object
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0  object  Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      object  

  private void putScopedObject(org.junit.jupiter.api.extension.ExtensionContext, java.lang.String, java.util.function.Function<java.lang.String, java.lang.Object>);
    descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;Ljava/lang/String;Ljava/util/function/Function;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // io.vertx.junit5.VertxExtension this
        start local 1 // org.junit.jupiter.api.extension.ExtensionContext extensionContext
        start local 2 // java.lang.String instanceKey
        start local 3 // java.util.function.Function creatorObject
         0: .line 141
            aload 1 /* extensionContext */
            invokestatic io.vertx.junit5.VertxExtension.store:(Lorg/junit/jupiter/api/extension/ExtensionContext;)Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
            aload 2 /* instanceKey */
            aload 3 /* creatorObject */
            invokeinterface org.junit.jupiter.api.extension.ExtensionContext$Store.getOrComputeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
            pop
         1: .line 142
            return
        end local 3 // java.util.function.Function creatorObject
        end local 2 // java.lang.String instanceKey
        end local 1 // org.junit.jupiter.api.extension.ExtensionContext extensionContext
        end local 0 // io.vertx.junit5.VertxExtension this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lio/vertx/junit5/VertxExtension;
            0    2     1  extensionContext  Lorg/junit/jupiter/api/extension/ExtensionContext;
            0    2     2       instanceKey  Ljava/lang/String;
            0    2     3     creatorObject  Ljava/util/function/Function<Ljava/lang/String;Ljava/lang/Object;>;
    Signature: (Lorg/junit/jupiter/api/extension/ExtensionContext;Ljava/lang/String;Ljava/util/function/Function<Ljava/lang/String;Ljava/lang/Object;>;)V
    MethodParameters:
                  Name  Flags
      extensionContext  
      instanceKey       
      creatorObject     

  private io.vertx.junit5.VertxTestContext newTestContext(org.junit.jupiter.api.extension.ExtensionContext);
    descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;)Lio/vertx/junit5/VertxTestContext;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // io.vertx.junit5.VertxExtension this
        start local 1 // org.junit.jupiter.api.extension.ExtensionContext extensionContext
         0: .line 145
            aload 1 /* extensionContext */
            invokestatic io.vertx.junit5.VertxExtension.store:(Lorg/junit/jupiter/api/extension/ExtensionContext;)Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
            astore 2 /* store */
        start local 2 // org.junit.jupiter.api.extension.ExtensionContext$Store store
         1: .line 146
            aload 2 /* store */
            ldc "VertxTestContext"
            invokedynamic apply()Ljava/util/function/Function;
              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;)Ljava/lang/Object;
                  io/vertx/junit5/VertxExtension.lambda$0(Ljava/lang/String;)Lio/vertx/junit5/VertxExtension$ContextList; (6)
                  (Ljava/lang/String;)Lio/vertx/junit5/VertxExtension$ContextList;
            invokeinterface org.junit.jupiter.api.extension.ExtensionContext$Store.getOrComputeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
            checkcast io.vertx.junit5.VertxExtension$ContextList
            astore 3 /* contexts */
        start local 3 // io.vertx.junit5.VertxExtension$ContextList contexts
         2: .line 147
            new io.vertx.junit5.VertxTestContext
            dup
            invokespecial io.vertx.junit5.VertxTestContext.<init>:()V
            astore 4 /* newTestContext */
        start local 4 // io.vertx.junit5.VertxTestContext newTestContext
         3: .line 148
            aload 3 /* contexts */
            aload 4 /* newTestContext */
            invokevirtual io.vertx.junit5.VertxExtension$ContextList.add:(Ljava/lang/Object;)Z
            pop
         4: .line 149
            aload 4 /* newTestContext */
            areturn
        end local 4 // io.vertx.junit5.VertxTestContext newTestContext
        end local 3 // io.vertx.junit5.VertxExtension$ContextList contexts
        end local 2 // org.junit.jupiter.api.extension.ExtensionContext$Store store
        end local 1 // org.junit.jupiter.api.extension.ExtensionContext extensionContext
        end local 0 // io.vertx.junit5.VertxExtension this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    5     0              this  Lio/vertx/junit5/VertxExtension;
            0    5     1  extensionContext  Lorg/junit/jupiter/api/extension/ExtensionContext;
            1    5     2             store  Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
            2    5     3          contexts  Lio/vertx/junit5/VertxExtension$ContextList;
            3    5     4    newTestContext  Lio/vertx/junit5/VertxTestContext;
    MethodParameters:
                  Name  Flags
      extensionContext  

  private static io.vertx.junit5.VertxExtension$CreationScope scopeFor(java.lang.reflect.Executable);
    descriptor: (Ljava/lang/reflect/Executable;)Lio/vertx/junit5/VertxExtension$CreationScope;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.reflect.Executable injectionTarget
         0: .line 153
            aload 0 /* injectionTarget */
            ldc Lorg/junit/jupiter/api/BeforeAll;
            invokestatic org.junit.platform.commons.util.AnnotationUtils.isAnnotated:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Z
            ifeq 2
         1: .line 154
            getstatic io.vertx.junit5.VertxExtension$CreationScope.BEFORE_ALL:Lio/vertx/junit5/VertxExtension$CreationScope;
            areturn
         2: .line 155
      StackMap locals:
      StackMap stack:
            aload 0 /* injectionTarget */
            ldc Lorg/junit/jupiter/api/BeforeEach;
            invokestatic org.junit.platform.commons.util.AnnotationUtils.isAnnotated:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Z
            ifeq 4
         3: .line 156
            getstatic io.vertx.junit5.VertxExtension$CreationScope.BEFORE_EACH:Lio/vertx/junit5/VertxExtension$CreationScope;
            areturn
         4: .line 158
      StackMap locals:
      StackMap stack:
            getstatic io.vertx.junit5.VertxExtension$CreationScope.TEST:Lio/vertx/junit5/VertxExtension$CreationScope;
            areturn
        end local 0 // java.lang.reflect.Executable injectionTarget
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    5     0  injectionTarget  Ljava/lang/reflect/Executable;
    MethodParameters:
                 Name  Flags
      injectionTarget  

  private static org.junit.jupiter.api.extension.ExtensionContext$Store store(org.junit.jupiter.api.extension.ExtensionContext);
    descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;)Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.junit.jupiter.api.extension.ExtensionContext extensionContext
         0: .line 162
            aload 0 /* extensionContext */
            getstatic org.junit.jupiter.api.extension.ExtensionContext$Namespace.GLOBAL:Lorg/junit/jupiter/api/extension/ExtensionContext$Namespace;
            invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getStore:(Lorg/junit/jupiter/api/extension/ExtensionContext$Namespace;)Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
            areturn
        end local 0 // org.junit.jupiter.api.extension.ExtensionContext extensionContext
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0  extensionContext  Lorg/junit/jupiter/api/extension/ExtensionContext;
    MethodParameters:
                  Name  Flags
      extensionContext  

  public void beforeAll(org.junit.jupiter.api.extension.ExtensionContext);
    descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // io.vertx.junit5.VertxExtension this
        start local 1 // org.junit.jupiter.api.extension.ExtensionContext context
         0: .line 168
            return
        end local 1 // org.junit.jupiter.api.extension.ExtensionContext context
        end local 0 // io.vertx.junit5.VertxExtension this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lio/vertx/junit5/VertxExtension;
            0    1     1  context  Lorg/junit/jupiter/api/extension/ExtensionContext;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
         Name  Flags
      context  

  public void afterAll(org.junit.jupiter.api.extension.ExtensionContext);
    descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.junit5.VertxExtension this
        start local 1 // org.junit.jupiter.api.extension.ExtensionContext context
         0: .line 173
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual io.vertx.junit5.VertxExtension.joinActiveTestContexts:(Lorg/junit/jupiter/api/extension/ExtensionContext;)V
         1: .line 174
            return
        end local 1 // org.junit.jupiter.api.extension.ExtensionContext context
        end local 0 // io.vertx.junit5.VertxExtension this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/junit5/VertxExtension;
            0    2     1  context  Lorg/junit/jupiter/api/extension/ExtensionContext;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
         Name  Flags
      context  

  public void beforeEach(org.junit.jupiter.api.extension.ExtensionContext);
    descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.junit5.VertxExtension this
        start local 1 // org.junit.jupiter.api.extension.ExtensionContext context
         0: .line 179
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual io.vertx.junit5.VertxExtension.joinActiveTestContexts:(Lorg/junit/jupiter/api/extension/ExtensionContext;)V
         1: .line 180
            return
        end local 1 // org.junit.jupiter.api.extension.ExtensionContext context
        end local 0 // io.vertx.junit5.VertxExtension this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/junit5/VertxExtension;
            0    2     1  context  Lorg/junit/jupiter/api/extension/ExtensionContext;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
         Name  Flags
      context  

  public void afterEach(org.junit.jupiter.api.extension.ExtensionContext);
    descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.junit5.VertxExtension this
        start local 1 // org.junit.jupiter.api.extension.ExtensionContext context
         0: .line 185
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual io.vertx.junit5.VertxExtension.joinActiveTestContexts:(Lorg/junit/jupiter/api/extension/ExtensionContext;)V
         1: .line 186
            return
        end local 1 // org.junit.jupiter.api.extension.ExtensionContext context
        end local 0 // io.vertx.junit5.VertxExtension this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/junit5/VertxExtension;
            0    2     1  context  Lorg/junit/jupiter/api/extension/ExtensionContext;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
         Name  Flags
      context  

  public void beforeTestExecution(org.junit.jupiter.api.extension.ExtensionContext);
    descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.junit5.VertxExtension this
        start local 1 // org.junit.jupiter.api.extension.ExtensionContext context
         0: .line 191
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual io.vertx.junit5.VertxExtension.joinActiveTestContexts:(Lorg/junit/jupiter/api/extension/ExtensionContext;)V
         1: .line 192
            return
        end local 1 // org.junit.jupiter.api.extension.ExtensionContext context
        end local 0 // io.vertx.junit5.VertxExtension this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/junit5/VertxExtension;
            0    2     1  context  Lorg/junit/jupiter/api/extension/ExtensionContext;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
         Name  Flags
      context  

  public void afterTestExecution(org.junit.jupiter.api.extension.ExtensionContext);
    descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.junit5.VertxExtension this
        start local 1 // org.junit.jupiter.api.extension.ExtensionContext context
         0: .line 197
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual io.vertx.junit5.VertxExtension.joinActiveTestContexts:(Lorg/junit/jupiter/api/extension/ExtensionContext;)V
         1: .line 198
            return
        end local 1 // org.junit.jupiter.api.extension.ExtensionContext context
        end local 0 // io.vertx.junit5.VertxExtension this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/junit5/VertxExtension;
            0    2     1  context  Lorg/junit/jupiter/api/extension/ExtensionContext;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
         Name  Flags
      context  

  private void joinActiveTestContexts(org.junit.jupiter.api.extension.ExtensionContext);
    descriptor: (Lorg/junit/jupiter/api/extension/ExtensionContext;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=9, args_size=2
        start local 0 // io.vertx.junit5.VertxExtension this
        start local 1 // org.junit.jupiter.api.extension.ExtensionContext extensionContext
         0: .line 201
            aload 1 /* extensionContext */
            invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getExecutionException:()Ljava/util/Optional;
            invokevirtual java.util.Optional.isPresent:()Z
            ifeq 2
         1: .line 202
            return
         2: .line 205
      StackMap locals:
      StackMap stack:
            aload 1 /* extensionContext */
            invokestatic io.vertx.junit5.VertxExtension.store:(Lorg/junit/jupiter/api/extension/ExtensionContext;)Lorg/junit/jupiter/api/extension/ExtensionContext$Store;
            ldc "VertxTestContext"
            ldc Lio/vertx/junit5/VertxExtension$ContextList;
            invokeinterface org.junit.jupiter.api.extension.ExtensionContext$Store.remove:(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
            checkcast io.vertx.junit5.VertxExtension$ContextList
            astore 2 /* currentContexts */
        start local 2 // io.vertx.junit5.VertxExtension$ContextList currentContexts
         3: .line 206
            aload 2 /* currentContexts */
            ifnull 26
         4: .line 207
            aload 2 /* currentContexts */
            invokevirtual io.vertx.junit5.VertxExtension$ContextList.iterator:()Ljava/util/Iterator;
            astore 4
            goto 25
      StackMap locals: io.vertx.junit5.VertxExtension org.junit.jupiter.api.extension.ExtensionContext io.vertx.junit5.VertxExtension$ContextList top java.util.Iterator
      StackMap stack:
         5: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast io.vertx.junit5.VertxTestContext
            astore 3 /* context */
        start local 3 // io.vertx.junit5.VertxTestContext context
         6: .line 208
            bipush 30
            istore 5 /* timeoutDuration */
        start local 5 // int timeoutDuration
         7: .line 209
            getstatic io.vertx.junit5.VertxExtension.DEFAULT_TIMEOUT_UNIT:Ljava/util/concurrent/TimeUnit;
            astore 6 /* timeoutUnit */
        start local 6 // java.util.concurrent.TimeUnit timeoutUnit
         8: .line 210
            aload 1 /* extensionContext */
            invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getTestMethod:()Ljava/util/Optional;
            astore 7 /* testMethod */
        start local 7 // java.util.Optional testMethod
         9: .line 211
            aload 7 /* testMethod */
            invokevirtual java.util.Optional.isPresent:()Z
            ifeq 14
            aload 7 /* testMethod */
            invokevirtual java.util.Optional.get:()Ljava/lang/Object;
            checkcast java.lang.reflect.Method
            ldc Lio/vertx/junit5/Timeout;
            invokevirtual java.lang.reflect.Method.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 14
        10: .line 212
            aload 1 /* extensionContext */
            invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getRequiredTestMethod:()Ljava/lang/reflect/Method;
            ldc Lio/vertx/junit5/Timeout;
            invokevirtual java.lang.reflect.Method.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast io.vertx.junit5.Timeout
            astore 8 /* annotation */
        start local 8 // io.vertx.junit5.Timeout annotation
        11: .line 213
            aload 8 /* annotation */
            invokeinterface io.vertx.junit5.Timeout.value:()I
            istore 5 /* timeoutDuration */
        12: .line 214
            aload 8 /* annotation */
            invokeinterface io.vertx.junit5.Timeout.timeUnit:()Ljava/util/concurrent/TimeUnit;
            astore 6 /* timeoutUnit */
        end local 8 // io.vertx.junit5.Timeout annotation
        13: .line 215
            goto 18
      StackMap locals: io.vertx.junit5.VertxExtension org.junit.jupiter.api.extension.ExtensionContext io.vertx.junit5.VertxExtension$ContextList io.vertx.junit5.VertxTestContext java.util.Iterator int java.util.concurrent.TimeUnit java.util.Optional
      StackMap stack:
        14: aload 1 /* extensionContext */
            invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getRequiredTestClass:()Ljava/lang/Class;
            ldc Lio/vertx/junit5/Timeout;
            invokevirtual java.lang.Class.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 18
        15: .line 216
            aload 1 /* extensionContext */
            invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getRequiredTestClass:()Ljava/lang/Class;
            ldc Lio/vertx/junit5/Timeout;
            invokevirtual java.lang.Class.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast io.vertx.junit5.Timeout
            astore 8 /* annotation */
        start local 8 // io.vertx.junit5.Timeout annotation
        16: .line 217
            aload 8 /* annotation */
            invokeinterface io.vertx.junit5.Timeout.value:()I
            istore 5 /* timeoutDuration */
        17: .line 218
            aload 8 /* annotation */
            invokeinterface io.vertx.junit5.Timeout.timeUnit:()Ljava/util/concurrent/TimeUnit;
            astore 6 /* timeoutUnit */
        end local 8 // io.vertx.junit5.Timeout annotation
        18: .line 220
      StackMap locals:
      StackMap stack:
            aload 3 /* context */
            iload 5 /* timeoutDuration */
            i2l
            aload 6 /* timeoutUnit */
            invokevirtual io.vertx.junit5.VertxTestContext.awaitCompletion:(JLjava/util/concurrent/TimeUnit;)Z
            ifeq 24
        19: .line 221
            aload 3 /* context */
            invokevirtual io.vertx.junit5.VertxTestContext.failed:()Z
            ifeq 25
        20: .line 222
            aload 3 /* context */
            invokevirtual io.vertx.junit5.VertxTestContext.causeOfFailure:()Ljava/lang/Throwable;
            astore 8 /* throwable */
        start local 8 // java.lang.Throwable throwable
        21: .line 223
            aload 8 /* throwable */
            instanceof java.lang.Exception
            ifeq 23
        22: .line 224
            aload 8 /* throwable */
            checkcast java.lang.Exception
            athrow
        23: .line 226
      StackMap locals: java.lang.Throwable
      StackMap stack:
            new java.lang.AssertionError
            dup
            aload 8 /* throwable */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 8 // java.lang.Throwable throwable
        24: .line 230
      StackMap locals:
      StackMap stack:
            new java.util.concurrent.TimeoutException
            dup
            ldc "The test execution timed out. Make sure your asynchronous code includes calls to either VertxTestContext#completeNow(), VertxTestContext#failNow() or Checkpoint#flag()"
            invokespecial java.util.concurrent.TimeoutException.<init>:(Ljava/lang/String;)V
            athrow
        end local 7 // java.util.Optional testMethod
        end local 6 // java.util.concurrent.TimeUnit timeoutUnit
        end local 5 // int timeoutDuration
        end local 3 // io.vertx.junit5.VertxTestContext context
        25: .line 207
      StackMap locals: io.vertx.junit5.VertxExtension org.junit.jupiter.api.extension.ExtensionContext io.vertx.junit5.VertxExtension$ContextList top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        26: .line 237
      StackMap locals: io.vertx.junit5.VertxExtension org.junit.jupiter.api.extension.ExtensionContext io.vertx.junit5.VertxExtension$ContextList
      StackMap stack:
            aload 1 /* extensionContext */
            invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getParent:()Ljava/util/Optional;
            invokevirtual java.util.Optional.isPresent:()Z
            ifeq 28
        27: .line 238
            aload 0 /* this */
            aload 1 /* extensionContext */
            invokeinterface org.junit.jupiter.api.extension.ExtensionContext.getParent:()Ljava/util/Optional;
            invokevirtual java.util.Optional.get:()Ljava/lang/Object;
            checkcast org.junit.jupiter.api.extension.ExtensionContext
            invokevirtual io.vertx.junit5.VertxExtension.joinActiveTestContexts:(Lorg/junit/jupiter/api/extension/ExtensionContext;)V
        28: .line 240
      StackMap locals:
      StackMap stack:
            return
        end local 2 // io.vertx.junit5.VertxExtension$ContextList currentContexts
        end local 1 // org.junit.jupiter.api.extension.ExtensionContext extensionContext
        end local 0 // io.vertx.junit5.VertxExtension this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   29     0              this  Lio/vertx/junit5/VertxExtension;
            0   29     1  extensionContext  Lorg/junit/jupiter/api/extension/ExtensionContext;
            3   29     2   currentContexts  Lio/vertx/junit5/VertxExtension$ContextList;
            6   25     3           context  Lio/vertx/junit5/VertxTestContext;
            7   25     5   timeoutDuration  I
            8   25     6       timeoutUnit  Ljava/util/concurrent/TimeUnit;
            9   25     7        testMethod  Ljava/util/Optional<Ljava/lang/reflect/Method;>;
           11   13     8        annotation  Lio/vertx/junit5/Timeout;
           16   18     8        annotation  Lio/vertx/junit5/Timeout;
           21   24     8         throwable  Ljava/lang/Throwable;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
                  Name  Flags
      extensionContext  

  private static io.vertx.junit5.VertxExtension$ThrowingConsumer<io.vertx.core.Vertx> closeRegularVertx();
    descriptor: ()Lio/vertx/junit5/VertxExtension$ThrowingConsumer;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 272
            invokedynamic accept()Lio/vertx/junit5/VertxExtension$ThrowingConsumer;
              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;)V
                  io/vertx/junit5/VertxExtension.lambda$1(Lio/vertx/core/Vertx;)V (6)
                  (Lio/vertx/core/Vertx;)V
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lio/vertx/junit5/VertxExtension$ThrowingConsumer<Lio/vertx/core/Vertx;>;

  private static io.vertx.junit5.VertxExtension$ThrowingConsumer<io.vertx.rxjava.core.Vertx> closeRx1Vertx();
    descriptor: ()Lio/vertx/junit5/VertxExtension$ThrowingConsumer;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 296
            invokedynamic accept()Lio/vertx/junit5/VertxExtension$ThrowingConsumer;
              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;)V
                  io/vertx/junit5/VertxExtension.lambda$3(Lio/vertx/rxjava/core/Vertx;)V (6)
                  (Lio/vertx/rxjava/core/Vertx;)V
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lio/vertx/junit5/VertxExtension$ThrowingConsumer<Lio/vertx/rxjava/core/Vertx;>;

  private static io.vertx.junit5.VertxExtension$ThrowingConsumer<io.vertx.reactivex.core.Vertx> closeRx2Vertx();
    descriptor: ()Lio/vertx/junit5/VertxExtension$ThrowingConsumer;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 320
            invokedynamic accept()Lio/vertx/junit5/VertxExtension$ThrowingConsumer;
              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;)V
                  io/vertx/junit5/VertxExtension.lambda$5(Lio/vertx/reactivex/core/Vertx;)V (6)
                  (Lio/vertx/reactivex/core/Vertx;)V
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: ()Lio/vertx/junit5/VertxExtension$ThrowingConsumer<Lio/vertx/reactivex/core/Vertx;>;

  public static io.vertx.core.Vertx retrieveVertx(java.lang.reflect.Executable, org.junit.jupiter.api.extension.ExtensionContext);
    descriptor: (Ljava/lang/reflect/Executable;Lorg/junit/jupiter/api/extension/ExtensionContext;)Lio/vertx/core/Vertx;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.lang.reflect.Executable declaringExecutable
        start local 1 // org.junit.jupiter.api.extension.ExtensionContext context
         0: .line 345
            aload 0 /* declaringExecutable */
         1: .line 346
            aload 1 /* context */
         2: .line 347
            ldc "VertxInstance"
         3: .line 348
            ldc "VertxInstanceCreator"
         4: .line 349
            invokedynamic apply()Ljava/util/function/Function;
              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;)Ljava/lang/Object;
                  io/vertx/junit5/VertxExtension.lambda$7(Ljava/lang/String;)Ljava/lang/Object; (6)
                  (Ljava/lang/String;)Ljava/lang/Object;
         5: .line 344
            invokestatic io.vertx.junit5.VertxExtension.getOrCreateScopedObject:(Ljava/lang/reflect/Executable;Lorg/junit/jupiter/api/extension/ExtensionContext;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function;)Ljava/lang/Object;
            checkcast io.vertx.core.Vertx
            areturn
        end local 1 // org.junit.jupiter.api.extension.ExtensionContext context
        end local 0 // java.lang.reflect.Executable declaringExecutable
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    6     0  declaringExecutable  Ljava/lang/reflect/Executable;
            0    6     1              context  Lorg/junit/jupiter/api/extension/ExtensionContext;
    MethodParameters:
                     Name  Flags
      declaringExecutable  
      context              

  public static io.vertx.rxjava.core.Vertx retrieveRxJava1Vertx(java.lang.reflect.Executable, org.junit.jupiter.api.extension.ExtensionContext);
    descriptor: (Ljava/lang/reflect/Executable;Lorg/junit/jupiter/api/extension/ExtensionContext;)Lio/vertx/rxjava/core/Vertx;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.lang.reflect.Executable declaringExecutable
        start local 1 // org.junit.jupiter.api.extension.ExtensionContext context
         0: .line 354
            aload 0 /* declaringExecutable */
         1: .line 355
            aload 1 /* context */
         2: .line 356
            ldc "VertxRx1Instance"
         3: .line 357
            ldc "VertxRx1InstanceCreator"
         4: .line 358
            invokedynamic apply()Ljava/util/function/Function;
              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;)Ljava/lang/Object;
                  io/vertx/junit5/VertxExtension.lambda$9(Ljava/lang/String;)Ljava/lang/Object; (6)
                  (Ljava/lang/String;)Ljava/lang/Object;
         5: .line 353
            invokestatic io.vertx.junit5.VertxExtension.getOrCreateScopedObject:(Ljava/lang/reflect/Executable;Lorg/junit/jupiter/api/extension/ExtensionContext;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function;)Ljava/lang/Object;
            checkcast io.vertx.rxjava.core.Vertx
            areturn
        end local 1 // org.junit.jupiter.api.extension.ExtensionContext context
        end local 0 // java.lang.reflect.Executable declaringExecutable
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    6     0  declaringExecutable  Ljava/lang/reflect/Executable;
            0    6     1              context  Lorg/junit/jupiter/api/extension/ExtensionContext;
    MethodParameters:
                     Name  Flags
      declaringExecutable  
      context              

  public static io.vertx.reactivex.core.Vertx retrieveRxJava2Vertx(java.lang.reflect.Executable, org.junit.jupiter.api.extension.ExtensionContext);
    descriptor: (Ljava/lang/reflect/Executable;Lorg/junit/jupiter/api/extension/ExtensionContext;)Lio/vertx/reactivex/core/Vertx;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.lang.reflect.Executable declaringExecutable
        start local 1 // org.junit.jupiter.api.extension.ExtensionContext context
         0: .line 363
            aload 0 /* declaringExecutable */
         1: .line 364
            aload 1 /* context */
         2: .line 365
            ldc "VertxRx2Instance"
         3: .line 366
            ldc "VertxRx2InstanceCreator"
         4: .line 367
            invokedynamic apply()Ljava/util/function/Function;
              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;)Ljava/lang/Object;
                  io/vertx/junit5/VertxExtension.lambda$11(Ljava/lang/String;)Ljava/lang/Object; (6)
                  (Ljava/lang/String;)Ljava/lang/Object;
         5: .line 362
            invokestatic io.vertx.junit5.VertxExtension.getOrCreateScopedObject:(Ljava/lang/reflect/Executable;Lorg/junit/jupiter/api/extension/ExtensionContext;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function;)Ljava/lang/Object;
            checkcast io.vertx.reactivex.core.Vertx
            areturn
        end local 1 // org.junit.jupiter.api.extension.ExtensionContext context
        end local 0 // java.lang.reflect.Executable declaringExecutable
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    6     0  declaringExecutable  Ljava/lang/reflect/Executable;
            0    6     1              context  Lorg/junit/jupiter/api/extension/ExtensionContext;
    MethodParameters:
                     Name  Flags
      declaringExecutable  
      context              

  private static io.vertx.junit5.VertxExtension$ContextList lambda$0(java.lang.String);
    descriptor: (Ljava/lang/String;)Lio/vertx/junit5/VertxExtension$ContextList;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String key
         0: .line 146
            new io.vertx.junit5.VertxExtension$ContextList
            dup
            invokespecial io.vertx.junit5.VertxExtension$ContextList.<init>:()V
            areturn
        end local 0 // java.lang.String key
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   key  Ljava/lang/String;

  private static void lambda$1(io.vertx.core.Vertx);
    descriptor: (Lio/vertx/core/Vertx;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // io.vertx.core.Vertx vertx
         0: .line 273
            new java.util.concurrent.CountDownLatch
            dup
            iconst_1
            invokespecial java.util.concurrent.CountDownLatch.<init>:(I)V
            astore 1 /* latch */
        start local 1 // java.util.concurrent.CountDownLatch latch
         1: .line 274
            new java.util.concurrent.atomic.AtomicReference
            dup
            invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
            astore 2 /* errorBox */
        start local 2 // java.util.concurrent.atomic.AtomicReference errorBox
         2: .line 275
            aload 0 /* vertx */
            aload 2 /* errorBox */
            aload 1 /* latch */
            invokedynamic handle(Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/CountDownLatch;)Lio/vertx/core/Handler;
              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;)V
                  io/vertx/junit5/VertxExtension.lambda$2(Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/CountDownLatch;Lio/vertx/core/AsyncResult;)V (6)
                  (Lio/vertx/core/AsyncResult;)V
            invokeinterface io.vertx.core.Vertx.close:(Lio/vertx/core/Handler;)V
         3: .line 281
            aload 1 /* latch */
            ldc 30
            getstatic io.vertx.junit5.VertxExtension.DEFAULT_TIMEOUT_UNIT:Ljava/util/concurrent/TimeUnit;
            invokevirtual java.util.concurrent.CountDownLatch.await:(JLjava/util/concurrent/TimeUnit;)Z
            ifne 5
         4: .line 282
            new java.util.concurrent.TimeoutException
            dup
            ldc "Closing the Vertx context timed out"
            invokespecial java.util.concurrent.TimeoutException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 284
      StackMap locals: java.util.concurrent.CountDownLatch java.util.concurrent.atomic.AtomicReference
      StackMap stack:
            aload 2 /* errorBox */
            invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
            checkcast java.lang.Throwable
            astore 3 /* throwable */
        start local 3 // java.lang.Throwable throwable
         6: .line 285
            aload 3 /* throwable */
            ifnull 10
         7: .line 286
            aload 3 /* throwable */
            instanceof java.lang.Exception
            ifeq 9
         8: .line 287
            aload 3 /* throwable */
            checkcast java.lang.Exception
            athrow
         9: .line 289
      StackMap locals: java.lang.Throwable
      StackMap stack:
            new io.vertx.core.VertxException
            dup
            aload 3 /* throwable */
            invokespecial io.vertx.core.VertxException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.lang.Throwable throwable
        end local 2 // java.util.concurrent.atomic.AtomicReference errorBox
        end local 1 // java.util.concurrent.CountDownLatch latch
        10: .line 292
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.vertx.core.Vertx vertx
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0      vertx  Lio/vertx/core/Vertx;
            1   10     1      latch  Ljava/util/concurrent/CountDownLatch;
            2   10     2   errorBox  Ljava/util/concurrent/atomic/AtomicReference<Ljava/lang/Throwable;>;
            6   10     3  throwable  Ljava/lang/Throwable;
    Exceptions:
      throws java.lang.Exception

  private static void lambda$3(io.vertx.rxjava.core.Vertx);
    descriptor: (Lio/vertx/rxjava/core/Vertx;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // io.vertx.rxjava.core.Vertx vertx
         0: .line 297
            new java.util.concurrent.CountDownLatch
            dup
            iconst_1
            invokespecial java.util.concurrent.CountDownLatch.<init>:(I)V
            astore 1 /* latch */
        start local 1 // java.util.concurrent.CountDownLatch latch
         1: .line 298
            new java.util.concurrent.atomic.AtomicReference
            dup
            invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
            astore 2 /* errorBox */
        start local 2 // java.util.concurrent.atomic.AtomicReference errorBox
         2: .line 299
            aload 0 /* vertx */
            aload 2 /* errorBox */
            aload 1 /* latch */
            invokedynamic handle(Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/CountDownLatch;)Lio/vertx/core/Handler;
              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;)V
                  io/vertx/junit5/VertxExtension.lambda$4(Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/CountDownLatch;Lio/vertx/core/AsyncResult;)V (6)
                  (Lio/vertx/core/AsyncResult;)V
            invokevirtual io.vertx.rxjava.core.Vertx.close:(Lio/vertx/core/Handler;)V
         3: .line 305
            aload 1 /* latch */
            ldc 30
            getstatic io.vertx.junit5.VertxExtension.DEFAULT_TIMEOUT_UNIT:Ljava/util/concurrent/TimeUnit;
            invokevirtual java.util.concurrent.CountDownLatch.await:(JLjava/util/concurrent/TimeUnit;)Z
            ifne 5
         4: .line 306
            new java.util.concurrent.TimeoutException
            dup
            ldc "Closing the Vertx context timed out"
            invokespecial java.util.concurrent.TimeoutException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 308
      StackMap locals: java.util.concurrent.CountDownLatch java.util.concurrent.atomic.AtomicReference
      StackMap stack:
            aload 2 /* errorBox */
            invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
            checkcast java.lang.Throwable
            astore 3 /* throwable */
        start local 3 // java.lang.Throwable throwable
         6: .line 309
            aload 3 /* throwable */
            ifnull 10
         7: .line 310
            aload 3 /* throwable */
            instanceof java.lang.Exception
            ifeq 9
         8: .line 311
            aload 3 /* throwable */
            checkcast java.lang.Exception
            athrow
         9: .line 313
      StackMap locals: java.lang.Throwable
      StackMap stack:
            new io.vertx.core.VertxException
            dup
            aload 3 /* throwable */
            invokespecial io.vertx.core.VertxException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.lang.Throwable throwable
        end local 2 // java.util.concurrent.atomic.AtomicReference errorBox
        end local 1 // java.util.concurrent.CountDownLatch latch
        10: .line 316
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.vertx.rxjava.core.Vertx vertx
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0      vertx  Lio/vertx/rxjava/core/Vertx;
            1   10     1      latch  Ljava/util/concurrent/CountDownLatch;
            2   10     2   errorBox  Ljava/util/concurrent/atomic/AtomicReference<Ljava/lang/Throwable;>;
            6   10     3  throwable  Ljava/lang/Throwable;
    Exceptions:
      throws java.lang.Exception

  private static void lambda$5(io.vertx.reactivex.core.Vertx);
    descriptor: (Lio/vertx/reactivex/core/Vertx;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // io.vertx.reactivex.core.Vertx vertx
         0: .line 321
            new java.util.concurrent.CountDownLatch
            dup
            iconst_1
            invokespecial java.util.concurrent.CountDownLatch.<init>:(I)V
            astore 1 /* latch */
        start local 1 // java.util.concurrent.CountDownLatch latch
         1: .line 322
            new java.util.concurrent.atomic.AtomicReference
            dup
            invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
            astore 2 /* errorBox */
        start local 2 // java.util.concurrent.atomic.AtomicReference errorBox
         2: .line 323
            aload 0 /* vertx */
            aload 2 /* errorBox */
            aload 1 /* latch */
            invokedynamic handle(Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/CountDownLatch;)Lio/vertx/core/Handler;
              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;)V
                  io/vertx/junit5/VertxExtension.lambda$6(Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/CountDownLatch;Lio/vertx/core/AsyncResult;)V (6)
                  (Lio/vertx/core/AsyncResult;)V
            invokevirtual io.vertx.reactivex.core.Vertx.close:(Lio/vertx/core/Handler;)V
         3: .line 329
            aload 1 /* latch */
            ldc 30
            getstatic io.vertx.junit5.VertxExtension.DEFAULT_TIMEOUT_UNIT:Ljava/util/concurrent/TimeUnit;
            invokevirtual java.util.concurrent.CountDownLatch.await:(JLjava/util/concurrent/TimeUnit;)Z
            ifne 5
         4: .line 330
            new java.util.concurrent.TimeoutException
            dup
            ldc "Closing the Vertx context timed out"
            invokespecial java.util.concurrent.TimeoutException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 332
      StackMap locals: java.util.concurrent.CountDownLatch java.util.concurrent.atomic.AtomicReference
      StackMap stack:
            aload 2 /* errorBox */
            invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
            checkcast java.lang.Throwable
            astore 3 /* throwable */
        start local 3 // java.lang.Throwable throwable
         6: .line 333
            aload 3 /* throwable */
            ifnull 10
         7: .line 334
            aload 3 /* throwable */
            instanceof java.lang.Exception
            ifeq 9
         8: .line 335
            aload 3 /* throwable */
            checkcast java.lang.Exception
            athrow
         9: .line 337
      StackMap locals: java.lang.Throwable
      StackMap stack:
            new io.vertx.core.VertxException
            dup
            aload 3 /* throwable */
            invokespecial io.vertx.core.VertxException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.lang.Throwable throwable
        end local 2 // java.util.concurrent.atomic.AtomicReference errorBox
        end local 1 // java.util.concurrent.CountDownLatch latch
        10: .line 340
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.vertx.reactivex.core.Vertx vertx
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0      vertx  Lio/vertx/reactivex/core/Vertx;
            1   10     1      latch  Ljava/util/concurrent/CountDownLatch;
            2   10     2   errorBox  Ljava/util/concurrent/atomic/AtomicReference<Ljava/lang/Throwable;>;
            6   10     3  throwable  Ljava/lang/Throwable;
    Exceptions:
      throws java.lang.Exception

  private static java.lang.Object lambda$7(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.lang.String key
         0: .line 349
            new io.vertx.junit5.VertxExtension$ScopedObject
            dup
            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;
                  io/vertx/core/Vertx.vertx()Lio/vertx/core/Vertx; (6 itf)
                  ()Lio/vertx/core/Vertx;
            invokestatic io.vertx.junit5.VertxExtension.closeRegularVertx:()Lio/vertx/junit5/VertxExtension$ThrowingConsumer;
            invokespecial io.vertx.junit5.VertxExtension$ScopedObject.<init>:(Ljava/util/function/Supplier;Lio/vertx/junit5/VertxExtension$ThrowingConsumer;)V
            areturn
        end local 0 // java.lang.String key
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   key  Ljava/lang/String;

  private static java.lang.Object lambda$9(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.lang.String key
         0: .line 358
            new io.vertx.junit5.VertxExtension$ScopedObject
            dup
            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;
                  io/vertx/rxjava/core/Vertx.vertx()Lio/vertx/rxjava/core/Vertx; (6)
                  ()Lio/vertx/rxjava/core/Vertx;
            invokestatic io.vertx.junit5.VertxExtension.closeRx1Vertx:()Lio/vertx/junit5/VertxExtension$ThrowingConsumer;
            invokespecial io.vertx.junit5.VertxExtension$ScopedObject.<init>:(Ljava/util/function/Supplier;Lio/vertx/junit5/VertxExtension$ThrowingConsumer;)V
            areturn
        end local 0 // java.lang.String key
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   key  Ljava/lang/String;

  private static java.lang.Object lambda$11(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.lang.String key
         0: .line 367
            new io.vertx.junit5.VertxExtension$ScopedObject
            dup
            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;
                  io/vertx/reactivex/core/Vertx.vertx()Lio/vertx/reactivex/core/Vertx; (6)
                  ()Lio/vertx/reactivex/core/Vertx;
            invokestatic io.vertx.junit5.VertxExtension.closeRx2Vertx:()Lio/vertx/junit5/VertxExtension$ThrowingConsumer;
            invokespecial io.vertx.junit5.VertxExtension$ScopedObject.<init>:(Ljava/util/function/Supplier;Lio/vertx/junit5/VertxExtension$ThrowingConsumer;)V
            areturn
        end local 0 // java.lang.String key
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   key  Ljava/lang/String;

  private static void lambda$2(java.util.concurrent.atomic.AtomicReference, java.util.concurrent.CountDownLatch, io.vertx.core.AsyncResult);
    descriptor: (Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/CountDownLatch;Lio/vertx/core/AsyncResult;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 2 // io.vertx.core.AsyncResult ar
         0: .line 276
            aload 2 /* ar */
            invokeinterface io.vertx.core.AsyncResult.failed:()Z
            ifeq 2
         1: .line 277
            aload 0
            aload 2 /* ar */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
         2: .line 279
      StackMap locals:
      StackMap stack:
            aload 1
            invokevirtual java.util.concurrent.CountDownLatch.countDown:()V
         3: .line 280
            return
        end local 2 // io.vertx.core.AsyncResult ar
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     2    ar  Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;

  private static void lambda$4(java.util.concurrent.atomic.AtomicReference, java.util.concurrent.CountDownLatch, io.vertx.core.AsyncResult);
    descriptor: (Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/CountDownLatch;Lio/vertx/core/AsyncResult;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 2 // io.vertx.core.AsyncResult ar
         0: .line 300
            aload 2 /* ar */
            invokeinterface io.vertx.core.AsyncResult.failed:()Z
            ifeq 2
         1: .line 301
            aload 0
            aload 2 /* ar */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
         2: .line 303
      StackMap locals:
      StackMap stack:
            aload 1
            invokevirtual java.util.concurrent.CountDownLatch.countDown:()V
         3: .line 304
            return
        end local 2 // io.vertx.core.AsyncResult ar
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     2    ar  Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;

  private static void lambda$6(java.util.concurrent.atomic.AtomicReference, java.util.concurrent.CountDownLatch, io.vertx.core.AsyncResult);
    descriptor: (Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/CountDownLatch;Lio/vertx/core/AsyncResult;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 2 // io.vertx.core.AsyncResult ar
         0: .line 324
            aload 2 /* ar */
            invokeinterface io.vertx.core.AsyncResult.failed:()Z
            ifeq 2
         1: .line 325
            aload 0
            aload 2 /* ar */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
         2: .line 327
      StackMap locals:
      StackMap stack:
            aload 1
            invokevirtual java.util.concurrent.CountDownLatch.countDown:()V
         3: .line 328
            return
        end local 2 // io.vertx.core.AsyncResult ar
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     2    ar  Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;
}
SourceFile: "VertxExtension.java"
NestMembers:
  io.vertx.junit5.VertxExtension$1  io.vertx.junit5.VertxExtension$ContextList  io.vertx.junit5.VertxExtension$CreationScope  io.vertx.junit5.VertxExtension$ScopedObject  io.vertx.junit5.VertxExtension$ThrowingConsumer
InnerClasses:
  io.vertx.junit5.VertxExtension$1
  private ContextList = io.vertx.junit5.VertxExtension$ContextList of io.vertx.junit5.VertxExtension
  private final CreationScope = io.vertx.junit5.VertxExtension$CreationScope of io.vertx.junit5.VertxExtension
  private ScopedObject = io.vertx.junit5.VertxExtension$ScopedObject of io.vertx.junit5.VertxExtension
  private abstract ThrowingConsumer = io.vertx.junit5.VertxExtension$ThrowingConsumer of io.vertx.junit5.VertxExtension
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public Namespace = org.junit.jupiter.api.extension.ExtensionContext$Namespace of org.junit.jupiter.api.extension.ExtensionContext
  public abstract Store = org.junit.jupiter.api.extension.ExtensionContext$Store of org.junit.jupiter.api.extension.ExtensionContext