public class io.vertx.ext.unit.junit.RunTestOnContext implements org.junit.rules.TestRule
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.vertx.ext.unit.junit.RunTestOnContext
  super_class: java.lang.Object
{
  private volatile io.vertx.core.Vertx vertx;
    descriptor: Lio/vertx/core/Vertx;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private final java.util.function.Supplier<io.vertx.core.Vertx> createVertx;
    descriptor: Ljava/util/function/Supplier;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/function/Supplier<Lio/vertx/core/Vertx;>;

  private final java.util.function.BiConsumer<io.vertx.core.Vertx, java.util.concurrent.CountDownLatch> closeVertx;
    descriptor: Ljava/util/function/BiConsumer;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/function/BiConsumer<Lio/vertx/core/Vertx;Ljava/util/concurrent/CountDownLatch;>;

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.vertx.ext.unit.junit.RunTestOnContext this
         0: .line 40
            aload 0 /* this */
            new io.vertx.core.VertxOptions
            dup
            invokespecial io.vertx.core.VertxOptions.<init>:()V
            invokespecial io.vertx.ext.unit.junit.RunTestOnContext.<init>:(Lio/vertx/core/VertxOptions;)V
         1: .line 41
            return
        end local 0 // io.vertx.ext.unit.junit.RunTestOnContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/ext/unit/junit/RunTestOnContext;

  public void <init>(io.vertx.core.VertxOptions);
    descriptor: (Lio/vertx/core/VertxOptions;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.ext.unit.junit.RunTestOnContext this
        start local 1 // io.vertx.core.VertxOptions options
         0: .line 50
            aload 0 /* this */
            aload 1 /* options */
            invokedynamic get(Lio/vertx/core/VertxOptions;)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/ext/unit/junit/RunTestOnContext.lambda$0(Lio/vertx/core/VertxOptions;)Lio/vertx/core/Vertx; (6)
                  ()Lio/vertx/core/Vertx;
            invokespecial io.vertx.ext.unit.junit.RunTestOnContext.<init>:(Ljava/util/function/Supplier;)V
         1: .line 51
            return
        end local 1 // io.vertx.core.VertxOptions options
        end local 0 // io.vertx.ext.unit.junit.RunTestOnContext this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/ext/unit/junit/RunTestOnContext;
            0    2     1  options  Lio/vertx/core/VertxOptions;
    MethodParameters:
         Name  Flags
      options  

  public void <init>(java.util.function.Supplier<io.vertx.core.Vertx>, java.util.function.BiConsumer<io.vertx.core.Vertx, java.util.function.Consumer<java.lang.Void>>);
    descriptor: (Ljava/util/function/Supplier;Ljava/util/function/BiConsumer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // io.vertx.ext.unit.junit.RunTestOnContext this
        start local 1 // java.util.function.Supplier createVertx
        start local 2 // java.util.function.BiConsumer closeVertx
         0: .line 60
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 61
            aload 0 /* this */
            aload 1 /* createVertx */
            putfield io.vertx.ext.unit.junit.RunTestOnContext.createVertx:Ljava/util/function/Supplier;
         2: .line 62
            aload 0 /* this */
            aload 2 /* closeVertx */
            invokedynamic accept(Ljava/util/function/BiConsumer;)Ljava/util/function/BiConsumer;
              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;)V
                  io/vertx/ext/unit/junit/RunTestOnContext.lambda$1(Ljava/util/function/BiConsumer;Lio/vertx/core/Vertx;Ljava/util/concurrent/CountDownLatch;)V (6)
                  (Lio/vertx/core/Vertx;Ljava/util/concurrent/CountDownLatch;)V
            putfield io.vertx.ext.unit.junit.RunTestOnContext.closeVertx:Ljava/util/function/BiConsumer;
         3: .line 63
            return
        end local 2 // java.util.function.BiConsumer closeVertx
        end local 1 // java.util.function.Supplier createVertx
        end local 0 // io.vertx.ext.unit.junit.RunTestOnContext this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lio/vertx/ext/unit/junit/RunTestOnContext;
            0    4     1  createVertx  Ljava/util/function/Supplier<Lio/vertx/core/Vertx;>;
            0    4     2   closeVertx  Ljava/util/function/BiConsumer<Lio/vertx/core/Vertx;Ljava/util/function/Consumer<Ljava/lang/Void;>;>;
    Signature: (Ljava/util/function/Supplier<Lio/vertx/core/Vertx;>;Ljava/util/function/BiConsumer<Lio/vertx/core/Vertx;Ljava/util/function/Consumer<Ljava/lang/Void;>;>;)V
    MethodParameters:
             Name  Flags
      createVertx  
      closeVertx   

  public void <init>(java.util.function.Supplier<io.vertx.core.Vertx>);
    descriptor: (Ljava/util/function/Supplier;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.vertx.ext.unit.junit.RunTestOnContext this
        start local 1 // java.util.function.Supplier createVertx
         0: .line 72
            aload 0 /* this */
            aload 1 /* createVertx */
            invokedynamic accept()Ljava/util/function/BiConsumer;
              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;)V
                  io/vertx/ext/unit/junit/RunTestOnContext.lambda$3(Lio/vertx/core/Vertx;Ljava/util/function/Consumer;)V (6)
                  (Lio/vertx/core/Vertx;Ljava/util/function/Consumer;)V
            invokespecial io.vertx.ext.unit.junit.RunTestOnContext.<init>:(Ljava/util/function/Supplier;Ljava/util/function/BiConsumer;)V
         1: .line 73
            return
        end local 1 // java.util.function.Supplier createVertx
        end local 0 // io.vertx.ext.unit.junit.RunTestOnContext this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lio/vertx/ext/unit/junit/RunTestOnContext;
            0    2     1  createVertx  Ljava/util/function/Supplier<Lio/vertx/core/Vertx;>;
    Signature: (Ljava/util/function/Supplier<Lio/vertx/core/Vertx;>;)V
    MethodParameters:
             Name  Flags
      createVertx  

  public io.vertx.core.Vertx vertx();
    descriptor: ()Lio/vertx/core/Vertx;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.ext.unit.junit.RunTestOnContext this
         0: .line 81
            aload 0 /* this */
            getfield io.vertx.ext.unit.junit.RunTestOnContext.vertx:Lio/vertx/core/Vertx;
            areturn
        end local 0 // io.vertx.ext.unit.junit.RunTestOnContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/ext/unit/junit/RunTestOnContext;

  public org.junit.runners.model.Statement apply(org.junit.runners.model.Statement, org.junit.runner.Description);
    descriptor: (Lorg/junit/runners/model/Statement;Lorg/junit/runner/Description;)Lorg/junit/runners/model/Statement;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // io.vertx.ext.unit.junit.RunTestOnContext this
        start local 1 // org.junit.runners.model.Statement base
        start local 2 // org.junit.runner.Description description
         0: .line 86
            new io.vertx.ext.unit.junit.RunTestOnContext$1
            dup
            aload 0 /* this */
            aload 2 /* description */
            aload 1 /* base */
            invokespecial io.vertx.ext.unit.junit.RunTestOnContext$1.<init>:(Lio/vertx/ext/unit/junit/RunTestOnContext;Lorg/junit/runner/Description;Lorg/junit/runners/model/Statement;)V
            areturn
        end local 2 // org.junit.runner.Description description
        end local 1 // org.junit.runners.model.Statement base
        end local 0 // io.vertx.ext.unit.junit.RunTestOnContext this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lio/vertx/ext/unit/junit/RunTestOnContext;
            0    1     1         base  Lorg/junit/runners/model/Statement;
            0    1     2  description  Lorg/junit/runner/Description;
    MethodParameters:
             Name  Flags
      base         
      description  

  private static io.vertx.core.Vertx lambda$0(io.vertx.core.VertxOptions);
    descriptor: (Lio/vertx/core/VertxOptions;)Lio/vertx/core/Vertx;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 50
            aload 0
            invokestatic io.vertx.core.Vertx.vertx:(Lio/vertx/core/VertxOptions;)Lio/vertx/core/Vertx;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static void lambda$1(java.util.function.BiConsumer, io.vertx.core.Vertx, java.util.concurrent.CountDownLatch);
    descriptor: (Ljava/util/function/BiConsumer;Lio/vertx/core/Vertx;Ljava/util/concurrent/CountDownLatch;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 1 // io.vertx.core.Vertx vertx
        start local 2 // java.util.concurrent.CountDownLatch latch
         0: .line 62
            aload 0
            aload 1 /* vertx */
            aload 2 /* latch */
            invokedynamic accept(Ljava/util/concurrent/CountDownLatch;)Ljava/util/function/Consumer;
              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/ext/unit/junit/RunTestOnContext.lambda$2(Ljava/util/concurrent/CountDownLatch;Ljava/lang/Void;)V (6)
                  (Ljava/lang/Void;)V
            invokeinterface java.util.function.BiConsumer.accept:(Ljava/lang/Object;Ljava/lang/Object;)V
            return
        end local 2 // java.util.concurrent.CountDownLatch latch
        end local 1 // io.vertx.core.Vertx vertx
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     1  vertx  Lio/vertx/core/Vertx;
            0    1     2  latch  Ljava/util/concurrent/CountDownLatch;

  private static void lambda$3(io.vertx.core.Vertx, java.util.function.Consumer);
    descriptor: (Lio/vertx/core/Vertx;Ljava/util/function/Consumer;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.Vertx vertx
        start local 1 // java.util.function.Consumer latch
         0: .line 72
            aload 0 /* vertx */
            aload 1 /* latch */
            invokedynamic handle(Ljava/util/function/Consumer;)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/ext/unit/junit/RunTestOnContext.lambda$4(Ljava/util/function/Consumer;Lio/vertx/core/AsyncResult;)V (6)
                  (Lio/vertx/core/AsyncResult;)V
            invokeinterface io.vertx.core.Vertx.close:(Lio/vertx/core/Handler;)V
            return
        end local 1 // java.util.function.Consumer latch
        end local 0 // io.vertx.core.Vertx vertx
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  vertx  Lio/vertx/core/Vertx;
            0    1     1  latch  Ljava/util/function/Consumer<Ljava/lang/Void;>;

  private static void lambda$2(java.util.concurrent.CountDownLatch, java.lang.Void);
    descriptor: (Ljava/util/concurrent/CountDownLatch;Ljava/lang/Void;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=2, args_size=2
        start local 1 // java.lang.Void v
         0: .line 62
            aload 0
            invokevirtual java.util.concurrent.CountDownLatch.countDown:()V
            return
        end local 1 // java.lang.Void v
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     v  Ljava/lang/Void;

  private static void lambda$4(java.util.function.Consumer, io.vertx.core.AsyncResult);
    descriptor: (Ljava/util/function/Consumer;Lio/vertx/core/AsyncResult;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // io.vertx.core.AsyncResult ar
         0: .line 72
            aload 0
            aconst_null
            invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
            return
        end local 1 // io.vertx.core.AsyncResult ar
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1    ar  Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;
}
SourceFile: "RunTestOnContext.java"
NestMembers:
  io.vertx.ext.unit.junit.RunTestOnContext$1
InnerClasses:
  io.vertx.ext.unit.junit.RunTestOnContext$1
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles