abstract class io.vertx.core.impl.ContextImpl extends io.vertx.core.impl.AbstractContext
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: io.vertx.core.impl.ContextImpl
  super_class: io.vertx.core.impl.AbstractContext
{
  private static final io.vertx.core.impl.logging.Logger log;
    descriptor: Lio/vertx/core/impl/logging/Logger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

  static final boolean DISABLE_TIMINGS;
    descriptor: Z
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  protected final io.vertx.core.impl.VertxInternal owner;
    descriptor: Lio/vertx/core/impl/VertxInternal;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final io.vertx.core.spi.tracing.VertxTracer<?, ?> tracer;
    descriptor: Lio/vertx/core/spi/tracing/VertxTracer;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Signature: Lio/vertx/core/spi/tracing/VertxTracer<**>;

  protected final io.vertx.core.json.JsonObject config;
    descriptor: Lio/vertx/core/json/JsonObject;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  private final io.vertx.core.impl.Deployment deployment;
    descriptor: Lio/vertx/core/impl/Deployment;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.core.impl.CloseHooks closeHooks;
    descriptor: Lio/vertx/core/impl/CloseHooks;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private final io.netty.channel.EventLoop eventLoop;
    descriptor: Lio/netty/channel/EventLoop;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.util.concurrent.ConcurrentMap<java.lang.Object, java.lang.Object> data;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/concurrent/ConcurrentMap<Ljava/lang/Object;Ljava/lang/Object;>;

  private java.util.concurrent.ConcurrentMap<java.lang.Object, java.lang.Object> localData;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/concurrent/ConcurrentMap<Ljava/lang/Object;Ljava/lang/Object;>;

  private volatile io.vertx.core.Handler<java.lang.Throwable> exceptionHandler;
    descriptor: Lio/vertx/core/Handler;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
    Signature: Lio/vertx/core/Handler<Ljava/lang/Throwable;>;

  final io.vertx.core.impl.TaskQueue internalOrderedTasks;
    descriptor: Lio/vertx/core/impl/TaskQueue;
    flags: (0x0010) ACC_FINAL

  final io.vertx.core.impl.WorkerPool internalBlockingPool;
    descriptor: Lio/vertx/core/impl/WorkerPool;
    flags: (0x0010) ACC_FINAL

  final io.vertx.core.impl.WorkerPool workerPool;
    descriptor: Lio/vertx/core/impl/WorkerPool;
    flags: (0x0010) ACC_FINAL

  final io.vertx.core.impl.TaskQueue orderedTasks;
    descriptor: Lio/vertx/core/impl/TaskQueue;
    flags: (0x0010) ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 53
            ldc Lio/vertx/core/impl/ContextImpl;
            invokestatic io.vertx.core.impl.logging.LoggerFactory.getLogger:(Ljava/lang/Class;)Lio/vertx/core/impl/logging/Logger;
            putstatic io.vertx.core.impl.ContextImpl.log:Lio/vertx/core/impl/logging/Logger;
         1: .line 56
            ldc "vertx.disableContextTimings"
            invokestatic java.lang.Boolean.getBoolean:(Ljava/lang/String;)Z
            putstatic io.vertx.core.impl.ContextImpl.DISABLE_TIMINGS:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static void executeIsolated(io.vertx.core.Handler<java.lang.Void>);
    descriptor: (Lio/vertx/core/Handler;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // io.vertx.core.Handler task
         0: .line 39
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            astore 1 /* currentThread */
        start local 1 // java.lang.Thread currentThread
         1: .line 40
            aload 1 /* currentThread */
            instanceof io.vertx.core.impl.VertxThread
            ifeq 11
         2: .line 41
            aload 1 /* currentThread */
            checkcast io.vertx.core.impl.VertxThread
            astore 2 /* vertxThread */
        start local 2 // io.vertx.core.impl.VertxThread vertxThread
         3: .line 42
            aload 2 /* vertxThread */
            aconst_null
            invokevirtual io.vertx.core.impl.VertxThread.beginEmission:(Lio/vertx/core/impl/ContextInternal;)Lio/vertx/core/impl/ContextInternal;
            astore 3 /* prev */
        start local 3 // io.vertx.core.impl.ContextInternal prev
         4: .line 44
            aload 0 /* task */
            aconst_null
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         5: .line 45
            goto 9
      StackMap locals: io.vertx.core.Handler java.lang.Thread io.vertx.core.impl.VertxThread io.vertx.core.impl.ContextInternal
      StackMap stack: java.lang.Throwable
         6: astore 4
         7: .line 46
            aload 2 /* vertxThread */
            aload 3 /* prev */
            invokevirtual io.vertx.core.impl.VertxThread.endEmission:(Lio/vertx/core/impl/ContextInternal;)V
         8: .line 47
            aload 4
            athrow
         9: .line 46
      StackMap locals:
      StackMap stack:
            aload 2 /* vertxThread */
            aload 3 /* prev */
            invokevirtual io.vertx.core.impl.VertxThread.endEmission:(Lio/vertx/core/impl/ContextInternal;)V
        end local 3 // io.vertx.core.impl.ContextInternal prev
        end local 2 // io.vertx.core.impl.VertxThread vertxThread
        10: .line 48
            goto 12
        11: .line 49
      StackMap locals:
      StackMap stack:
            aload 0 /* task */
            aconst_null
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
        12: .line 51
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Thread currentThread
        end local 0 // io.vertx.core.Handler task
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   13     0           task  Lio/vertx/core/Handler<Ljava/lang/Void;>;
            1   13     1  currentThread  Ljava/lang/Thread;
            3   10     2    vertxThread  Lio/vertx/core/impl/VertxThread;
            4   10     3           prev  Lio/vertx/core/impl/ContextInternal;
      Exception table:
        from    to  target  type
           4     6       6  any
    Signature: (Lio/vertx/core/Handler<Ljava/lang/Void;>;)V
    MethodParameters:
      Name  Flags
      task  

  void <init>(io.vertx.core.impl.VertxInternal, io.vertx.core.spi.tracing.VertxTracer<?, ?>, io.netty.channel.EventLoop, io.vertx.core.impl.WorkerPool, io.vertx.core.impl.WorkerPool, io.vertx.core.impl.Deployment, io.vertx.core.impl.CloseHooks, java.lang.ClassLoader);
    descriptor: (Lio/vertx/core/impl/VertxInternal;Lio/vertx/core/spi/tracing/VertxTracer;Lio/netty/channel/EventLoop;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/impl/Deployment;Lio/vertx/core/impl/CloseHooks;Ljava/lang/ClassLoader;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=9, args_size=9
        start local 0 // io.vertx.core.impl.ContextImpl this
        start local 1 // io.vertx.core.impl.VertxInternal vertx
        start local 2 // io.vertx.core.spi.tracing.VertxTracer tracer
        start local 3 // io.netty.channel.EventLoop eventLoop
        start local 4 // io.vertx.core.impl.WorkerPool internalBlockingPool
        start local 5 // io.vertx.core.impl.WorkerPool workerPool
        start local 6 // io.vertx.core.impl.Deployment deployment
        start local 7 // io.vertx.core.impl.CloseHooks closeHooks
        start local 8 // java.lang.ClassLoader tccl
         0: .line 73
            aload 0 /* this */
            invokespecial io.vertx.core.impl.AbstractContext.<init>:()V
         1: .line 81
            getstatic io.vertx.core.impl.VertxThread.DISABLE_TCCL:Z
            ifeq 3
            aload 8 /* tccl */
            invokestatic java.lang.ClassLoader.getSystemClassLoader:()Ljava/lang/ClassLoader;
            if_acmpeq 3
         2: .line 82
            getstatic io.vertx.core.impl.ContextImpl.log:Lio/vertx/core/impl/logging/Logger;
            ldc "You have disabled TCCL checks but you have a custom TCCL to set."
            invokeinterface io.vertx.core.impl.logging.Logger.warn:(Ljava/lang/Object;)V
         3: .line 84
      StackMap locals: io.vertx.core.impl.ContextImpl io.vertx.core.impl.VertxInternal io.vertx.core.spi.tracing.VertxTracer io.netty.channel.EventLoop io.vertx.core.impl.WorkerPool io.vertx.core.impl.WorkerPool io.vertx.core.impl.Deployment io.vertx.core.impl.CloseHooks java.lang.ClassLoader
      StackMap stack:
            aload 0 /* this */
            aload 2 /* tracer */
            putfield io.vertx.core.impl.ContextImpl.tracer:Lio/vertx/core/spi/tracing/VertxTracer;
         4: .line 85
            aload 0 /* this */
            aload 6 /* deployment */
            putfield io.vertx.core.impl.ContextImpl.deployment:Lio/vertx/core/impl/Deployment;
         5: .line 86
            aload 0 /* this */
            aload 6 /* deployment */
            ifnull 6
            aload 6 /* deployment */
            invokeinterface io.vertx.core.impl.Deployment.config:()Lio/vertx/core/json/JsonObject;
            goto 7
      StackMap locals:
      StackMap stack: io.vertx.core.impl.ContextImpl
         6: new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
      StackMap locals: io.vertx.core.impl.ContextImpl io.vertx.core.impl.VertxInternal io.vertx.core.spi.tracing.VertxTracer io.netty.channel.EventLoop io.vertx.core.impl.WorkerPool io.vertx.core.impl.WorkerPool io.vertx.core.impl.Deployment io.vertx.core.impl.CloseHooks java.lang.ClassLoader
      StackMap stack: io.vertx.core.impl.ContextImpl io.vertx.core.json.JsonObject
         7: putfield io.vertx.core.impl.ContextImpl.config:Lio/vertx/core/json/JsonObject;
         8: .line 87
            aload 0 /* this */
            aload 3 /* eventLoop */
            putfield io.vertx.core.impl.ContextImpl.eventLoop:Lio/netty/channel/EventLoop;
         9: .line 88
            aload 0 /* this */
            aload 8 /* tccl */
            putfield io.vertx.core.impl.ContextImpl.tccl:Ljava/lang/ClassLoader;
        10: .line 89
            aload 0 /* this */
            aload 1 /* vertx */
            putfield io.vertx.core.impl.ContextImpl.owner:Lio/vertx/core/impl/VertxInternal;
        11: .line 90
            aload 0 /* this */
            aload 5 /* workerPool */
            putfield io.vertx.core.impl.ContextImpl.workerPool:Lio/vertx/core/impl/WorkerPool;
        12: .line 91
            aload 0 /* this */
            aload 7 /* closeHooks */
            putfield io.vertx.core.impl.ContextImpl.closeHooks:Lio/vertx/core/impl/CloseHooks;
        13: .line 92
            aload 0 /* this */
            aload 4 /* internalBlockingPool */
            putfield io.vertx.core.impl.ContextImpl.internalBlockingPool:Lio/vertx/core/impl/WorkerPool;
        14: .line 93
            aload 0 /* this */
            new io.vertx.core.impl.TaskQueue
            dup
            invokespecial io.vertx.core.impl.TaskQueue.<init>:()V
            putfield io.vertx.core.impl.ContextImpl.orderedTasks:Lio/vertx/core/impl/TaskQueue;
        15: .line 94
            aload 0 /* this */
            new io.vertx.core.impl.TaskQueue
            dup
            invokespecial io.vertx.core.impl.TaskQueue.<init>:()V
            putfield io.vertx.core.impl.ContextImpl.internalOrderedTasks:Lio/vertx/core/impl/TaskQueue;
        16: .line 95
            return
        end local 8 // java.lang.ClassLoader tccl
        end local 7 // io.vertx.core.impl.CloseHooks closeHooks
        end local 6 // io.vertx.core.impl.Deployment deployment
        end local 5 // io.vertx.core.impl.WorkerPool workerPool
        end local 4 // io.vertx.core.impl.WorkerPool internalBlockingPool
        end local 3 // io.netty.channel.EventLoop eventLoop
        end local 2 // io.vertx.core.spi.tracing.VertxTracer tracer
        end local 1 // io.vertx.core.impl.VertxInternal vertx
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   17     0                  this  Lio/vertx/core/impl/ContextImpl;
            0   17     1                 vertx  Lio/vertx/core/impl/VertxInternal;
            0   17     2                tracer  Lio/vertx/core/spi/tracing/VertxTracer<**>;
            0   17     3             eventLoop  Lio/netty/channel/EventLoop;
            0   17     4  internalBlockingPool  Lio/vertx/core/impl/WorkerPool;
            0   17     5            workerPool  Lio/vertx/core/impl/WorkerPool;
            0   17     6            deployment  Lio/vertx/core/impl/Deployment;
            0   17     7            closeHooks  Lio/vertx/core/impl/CloseHooks;
            0   17     8                  tccl  Ljava/lang/ClassLoader;
    Signature: (Lio/vertx/core/impl/VertxInternal;Lio/vertx/core/spi/tracing/VertxTracer<**>;Lio/netty/channel/EventLoop;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/impl/Deployment;Lio/vertx/core/impl/CloseHooks;Ljava/lang/ClassLoader;)V
    MethodParameters:
                      Name  Flags
      vertx                 
      tracer                
      eventLoop             
      internalBlockingPool  
      workerPool            
      deployment            
      closeHooks            
      tccl                  

  public io.vertx.core.impl.Deployment getDeployment();
    descriptor: ()Lio/vertx/core/impl/Deployment;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.ContextImpl this
         0: .line 98
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.deployment:Lio/vertx/core/impl/Deployment;
            areturn
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/ContextImpl;

  public io.vertx.core.impl.CloseHooks closeHooks();
    descriptor: ()Lio/vertx/core/impl/CloseHooks;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.ContextImpl this
         0: .line 103
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.closeHooks:Lio/vertx/core/impl/CloseHooks;
            areturn
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/ContextImpl;

  public void addCloseHook(io.vertx.core.Closeable);
    descriptor: (Lio/vertx/core/Closeable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.ContextImpl this
        start local 1 // io.vertx.core.Closeable hook
         0: .line 107
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.closeHooks:Lio/vertx/core/impl/CloseHooks;
            ifnull 3
         1: .line 108
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.closeHooks:Lio/vertx/core/impl/CloseHooks;
            aload 1 /* hook */
            invokevirtual io.vertx.core.impl.CloseHooks.add:(Lio/vertx/core/Closeable;)V
         2: .line 109
            goto 4
         3: .line 110
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.owner:Lio/vertx/core/impl/VertxInternal;
            aload 1 /* hook */
            invokeinterface io.vertx.core.impl.VertxInternal.addCloseHook:(Lio/vertx/core/Closeable;)V
         4: .line 112
      StackMap locals:
      StackMap stack:
            return
        end local 1 // io.vertx.core.Closeable hook
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lio/vertx/core/impl/ContextImpl;
            0    5     1  hook  Lio/vertx/core/Closeable;
    MethodParameters:
      Name  Flags
      hook  

  public boolean isDeployment();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.ContextImpl this
         0: .line 116
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.deployment:Lio/vertx/core/impl/Deployment;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/core/impl/ContextImpl;

  public void removeCloseHook(io.vertx.core.Closeable);
    descriptor: (Lio/vertx/core/Closeable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.ContextImpl this
        start local 1 // io.vertx.core.Closeable hook
         0: .line 120
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.deployment:Lio/vertx/core/impl/Deployment;
            ifnull 3
         1: .line 121
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.closeHooks:Lio/vertx/core/impl/CloseHooks;
            aload 1 /* hook */
            invokevirtual io.vertx.core.impl.CloseHooks.remove:(Lio/vertx/core/Closeable;)V
         2: .line 122
            goto 4
         3: .line 123
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.owner:Lio/vertx/core/impl/VertxInternal;
            aload 1 /* hook */
            invokeinterface io.vertx.core.impl.VertxInternal.removeCloseHook:(Lio/vertx/core/Closeable;)V
         4: .line 125
      StackMap locals:
      StackMap stack:
            return
        end local 1 // io.vertx.core.Closeable hook
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lio/vertx/core/impl/ContextImpl;
            0    5     1  hook  Lio/vertx/core/Closeable;
    MethodParameters:
      Name  Flags
      hook  

  public java.lang.String deploymentID();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.ContextImpl this
         0: .line 129
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.deployment:Lio/vertx/core/impl/Deployment;
            ifnull 1
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.deployment:Lio/vertx/core/impl/Deployment;
            invokeinterface io.vertx.core.impl.Deployment.deploymentID:()Ljava/lang/String;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aconst_null
      StackMap locals:
      StackMap stack: java.lang.String
         2: areturn
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/vertx/core/impl/ContextImpl;

  public io.vertx.core.json.JsonObject config();
    descriptor: ()Lio/vertx/core/json/JsonObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.ContextImpl this
         0: .line 134
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.config:Lio/vertx/core/json/JsonObject;
            areturn
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/ContextImpl;

  public io.netty.channel.EventLoop nettyEventLoop();
    descriptor: ()Lio/netty/channel/EventLoop;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.ContextImpl this
         0: .line 138
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.eventLoop:Lio/netty/channel/EventLoop;
            areturn
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/ContextImpl;

  public io.vertx.core.impl.VertxInternal owner();
    descriptor: ()Lio/vertx/core/impl/VertxInternal;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.ContextImpl this
         0: .line 142
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.owner:Lio/vertx/core/impl/VertxInternal;
            areturn
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/ContextImpl;

  public <T> io.vertx.core.Future<T> executeBlockingInternal(io.vertx.core.Handler<io.vertx.core.Promise<T>>);
    descriptor: (Lio/vertx/core/Handler;)Lio/vertx/core/Future;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.ContextImpl this
        start local 1 // io.vertx.core.Handler action
         0: .line 147
            aload 0 /* this */
            aload 1 /* action */
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.internalBlockingPool:Lio/vertx/core/impl/WorkerPool;
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.internalOrderedTasks:Lio/vertx/core/impl/TaskQueue;
            invokestatic io.vertx.core.impl.ContextImpl.executeBlocking:(Lio/vertx/core/impl/ContextInternal;Lio/vertx/core/Handler;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/impl/TaskQueue;)Lio/vertx/core/Future;
            areturn
        end local 1 // io.vertx.core.Handler action
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lio/vertx/core/impl/ContextImpl;
            0    1     1  action  Lio/vertx/core/Handler<Lio/vertx/core/Promise<TT;>;>;
    Signature: <T:Ljava/lang/Object;>(Lio/vertx/core/Handler<Lio/vertx/core/Promise<TT;>;>;)Lio/vertx/core/Future<TT;>;
    MethodParameters:
        Name  Flags
      action  

  public <T> io.vertx.core.Future<T> executeBlockingInternal(io.vertx.core.Handler<io.vertx.core.Promise<T>>, boolean);
    descriptor: (Lio/vertx/core/Handler;Z)Lio/vertx/core/Future;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.ContextImpl this
        start local 1 // io.vertx.core.Handler action
        start local 2 // boolean ordered
         0: .line 152
            aload 0 /* this */
            aload 1 /* action */
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.internalBlockingPool:Lio/vertx/core/impl/WorkerPool;
            iload 2 /* ordered */
            ifeq 1
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.internalOrderedTasks:Lio/vertx/core/impl/TaskQueue;
            goto 2
      StackMap locals: io.vertx.core.impl.ContextImpl io.vertx.core.Handler int
      StackMap stack: io.vertx.core.impl.ContextImpl io.vertx.core.Handler io.vertx.core.impl.WorkerPool
         1: aconst_null
      StackMap locals: io.vertx.core.impl.ContextImpl io.vertx.core.Handler int
      StackMap stack: io.vertx.core.impl.ContextImpl io.vertx.core.Handler io.vertx.core.impl.WorkerPool io.vertx.core.impl.TaskQueue
         2: invokestatic io.vertx.core.impl.ContextImpl.executeBlocking:(Lio/vertx/core/impl/ContextInternal;Lio/vertx/core/Handler;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/impl/TaskQueue;)Lio/vertx/core/Future;
            areturn
        end local 2 // boolean ordered
        end local 1 // io.vertx.core.Handler action
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lio/vertx/core/impl/ContextImpl;
            0    3     1   action  Lio/vertx/core/Handler<Lio/vertx/core/Promise<TT;>;>;
            0    3     2  ordered  Z
    Signature: <T:Ljava/lang/Object;>(Lio/vertx/core/Handler<Lio/vertx/core/Promise<TT;>;>;Z)Lio/vertx/core/Future<TT;>;
    MethodParameters:
         Name  Flags
      action   
      ordered  

  public <T> io.vertx.core.Future<T> executeBlocking(io.vertx.core.Handler<io.vertx.core.Promise<T>>, boolean);
    descriptor: (Lio/vertx/core/Handler;Z)Lio/vertx/core/Future;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.ContextImpl this
        start local 1 // io.vertx.core.Handler blockingCodeHandler
        start local 2 // boolean ordered
         0: .line 157
            aload 0 /* this */
            aload 1 /* blockingCodeHandler */
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.workerPool:Lio/vertx/core/impl/WorkerPool;
            iload 2 /* ordered */
            ifeq 1
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.orderedTasks:Lio/vertx/core/impl/TaskQueue;
            goto 2
      StackMap locals: io.vertx.core.impl.ContextImpl io.vertx.core.Handler int
      StackMap stack: io.vertx.core.impl.ContextImpl io.vertx.core.Handler io.vertx.core.impl.WorkerPool
         1: aconst_null
      StackMap locals: io.vertx.core.impl.ContextImpl io.vertx.core.Handler int
      StackMap stack: io.vertx.core.impl.ContextImpl io.vertx.core.Handler io.vertx.core.impl.WorkerPool io.vertx.core.impl.TaskQueue
         2: invokestatic io.vertx.core.impl.ContextImpl.executeBlocking:(Lio/vertx/core/impl/ContextInternal;Lio/vertx/core/Handler;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/impl/TaskQueue;)Lio/vertx/core/Future;
            areturn
        end local 2 // boolean ordered
        end local 1 // io.vertx.core.Handler blockingCodeHandler
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    3     0                 this  Lio/vertx/core/impl/ContextImpl;
            0    3     1  blockingCodeHandler  Lio/vertx/core/Handler<Lio/vertx/core/Promise<TT;>;>;
            0    3     2              ordered  Z
    Signature: <T:Ljava/lang/Object;>(Lio/vertx/core/Handler<Lio/vertx/core/Promise<TT;>;>;Z)Lio/vertx/core/Future<TT;>;
    MethodParameters:
                     Name  Flags
      blockingCodeHandler  
      ordered              

  public <T> io.vertx.core.Future<T> executeBlocking(io.vertx.core.Handler<io.vertx.core.Promise<T>>, io.vertx.core.impl.TaskQueue);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/impl/TaskQueue;)Lio/vertx/core/Future;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.ContextImpl this
        start local 1 // io.vertx.core.Handler blockingCodeHandler
        start local 2 // io.vertx.core.impl.TaskQueue queue
         0: .line 162
            aload 0 /* this */
            aload 1 /* blockingCodeHandler */
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.workerPool:Lio/vertx/core/impl/WorkerPool;
            aload 2 /* queue */
            invokestatic io.vertx.core.impl.ContextImpl.executeBlocking:(Lio/vertx/core/impl/ContextInternal;Lio/vertx/core/Handler;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/impl/TaskQueue;)Lio/vertx/core/Future;
            areturn
        end local 2 // io.vertx.core.impl.TaskQueue queue
        end local 1 // io.vertx.core.Handler blockingCodeHandler
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    1     0                 this  Lio/vertx/core/impl/ContextImpl;
            0    1     1  blockingCodeHandler  Lio/vertx/core/Handler<Lio/vertx/core/Promise<TT;>;>;
            0    1     2                queue  Lio/vertx/core/impl/TaskQueue;
    Signature: <T:Ljava/lang/Object;>(Lio/vertx/core/Handler<Lio/vertx/core/Promise<TT;>;>;Lio/vertx/core/impl/TaskQueue;)Lio/vertx/core/Future<TT;>;
    MethodParameters:
                     Name  Flags
      blockingCodeHandler  
      queue                

  static <T> io.vertx.core.Future<T> executeBlocking(io.vertx.core.impl.ContextInternal, io.vertx.core.Handler<io.vertx.core.Promise<T>>, io.vertx.core.impl.WorkerPool, io.vertx.core.impl.TaskQueue);
    descriptor: (Lio/vertx/core/impl/ContextInternal;Lio/vertx/core/Handler;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/impl/TaskQueue;)Lio/vertx/core/Future;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=10, args_size=4
        start local 0 // io.vertx.core.impl.ContextInternal context
        start local 1 // io.vertx.core.Handler blockingCodeHandler
        start local 2 // io.vertx.core.impl.WorkerPool workerPool
        start local 3 // io.vertx.core.impl.TaskQueue queue
         0: .line 167
            aload 2 /* workerPool */
            invokevirtual io.vertx.core.impl.WorkerPool.metrics:()Lio/vertx/core/spi/metrics/PoolMetrics;
            astore 4 /* metrics */
        start local 4 // io.vertx.core.spi.metrics.PoolMetrics metrics
         1: .line 168
            aload 4 /* metrics */
            ifnull 2
            aload 4 /* metrics */
            invokeinterface io.vertx.core.spi.metrics.PoolMetrics.submitted:()Ljava/lang/Object;
            goto 3
      StackMap locals: io.vertx.core.spi.metrics.PoolMetrics
      StackMap stack:
         2: aconst_null
      StackMap locals:
      StackMap stack: java.lang.Object
         3: astore 5 /* queueMetric */
        start local 5 // java.lang.Object queueMetric
         4: .line 169
            aload 0 /* context */
            invokeinterface io.vertx.core.impl.ContextInternal.promise:()Lio/vertx/core/impl/future/PromiseInternal;
            astore 6 /* promise */
        start local 6 // io.vertx.core.Promise promise
         5: .line 170
            aload 6 /* promise */
            invokeinterface io.vertx.core.Promise.future:()Lio/vertx/core/Future;
            astore 7 /* fut */
        start local 7 // io.vertx.core.Future fut
         6: .line 172
            aload 1 /* blockingCodeHandler */
            aload 6 /* promise */
            aload 4 /* metrics */
            aload 5 /* queueMetric */
            aload 0 /* context */
            aload 7 /* fut */
            invokedynamic run(Lio/vertx/core/Handler;Lio/vertx/core/Promise;Lio/vertx/core/spi/metrics/PoolMetrics;Ljava/lang/Object;Lio/vertx/core/impl/ContextInternal;Lio/vertx/core/Future;)Ljava/lang/Runnable;
              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:
                  ()V
                  io/vertx/core/impl/ContextImpl.lambda$0(Lio/vertx/core/Handler;Lio/vertx/core/Promise;Lio/vertx/core/spi/metrics/PoolMetrics;Ljava/lang/Object;Lio/vertx/core/impl/ContextInternal;Lio/vertx/core/Future;)V (6)
                  ()V
            astore 8 /* command */
        start local 8 // java.lang.Runnable command
         7: .line 188
            aload 2 /* workerPool */
            invokevirtual io.vertx.core.impl.WorkerPool.executor:()Ljava/util/concurrent/ExecutorService;
            astore 9 /* exec */
        start local 9 // java.util.concurrent.Executor exec
         8: .line 189
            aload 3 /* queue */
            ifnull 11
         9: .line 190
            aload 3 /* queue */
            aload 8 /* command */
            aload 9 /* exec */
            invokevirtual io.vertx.core.impl.TaskQueue.execute:(Ljava/lang/Runnable;Ljava/util/concurrent/Executor;)V
        10: .line 191
            goto 17
        11: .line 192
      StackMap locals: io.vertx.core.impl.ContextInternal io.vertx.core.Handler io.vertx.core.impl.WorkerPool io.vertx.core.impl.TaskQueue io.vertx.core.spi.metrics.PoolMetrics java.lang.Object io.vertx.core.Promise io.vertx.core.Future java.lang.Runnable java.util.concurrent.Executor
      StackMap stack:
            aload 9 /* exec */
            aload 8 /* command */
            invokeinterface java.util.concurrent.Executor.execute:(Ljava/lang/Runnable;)V
        end local 9 // java.util.concurrent.Executor exec
        end local 8 // java.lang.Runnable command
        12: .line 194
            goto 17
      StackMap locals: io.vertx.core.impl.ContextInternal io.vertx.core.Handler io.vertx.core.impl.WorkerPool io.vertx.core.impl.TaskQueue io.vertx.core.spi.metrics.PoolMetrics java.lang.Object io.vertx.core.Promise io.vertx.core.Future
      StackMap stack: java.util.concurrent.RejectedExecutionException
        13: astore 8 /* e */
        start local 8 // java.util.concurrent.RejectedExecutionException e
        14: .line 196
            aload 4 /* metrics */
            ifnull 16
        15: .line 197
            aload 4 /* metrics */
            aload 5 /* queueMetric */
            invokeinterface io.vertx.core.spi.metrics.PoolMetrics.rejected:(Ljava/lang/Object;)V
        16: .line 199
      StackMap locals: java.util.concurrent.RejectedExecutionException
      StackMap stack:
            aload 8 /* e */
            athrow
        end local 8 // java.util.concurrent.RejectedExecutionException e
        17: .line 201
      StackMap locals:
      StackMap stack:
            aload 7 /* fut */
            areturn
        end local 7 // io.vertx.core.Future fut
        end local 6 // io.vertx.core.Promise promise
        end local 5 // java.lang.Object queueMetric
        end local 4 // io.vertx.core.spi.metrics.PoolMetrics metrics
        end local 3 // io.vertx.core.impl.TaskQueue queue
        end local 2 // io.vertx.core.impl.WorkerPool workerPool
        end local 1 // io.vertx.core.Handler blockingCodeHandler
        end local 0 // io.vertx.core.impl.ContextInternal context
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   18     0              context  Lio/vertx/core/impl/ContextInternal;
            0   18     1  blockingCodeHandler  Lio/vertx/core/Handler<Lio/vertx/core/Promise<TT;>;>;
            0   18     2           workerPool  Lio/vertx/core/impl/WorkerPool;
            0   18     3                queue  Lio/vertx/core/impl/TaskQueue;
            1   18     4              metrics  Lio/vertx/core/spi/metrics/PoolMetrics;
            4   18     5          queueMetric  Ljava/lang/Object;
            5   18     6              promise  Lio/vertx/core/Promise<TT;>;
            6   18     7                  fut  Lio/vertx/core/Future<TT;>;
            7   12     8              command  Ljava/lang/Runnable;
            8   12     9                 exec  Ljava/util/concurrent/Executor;
           14   17     8                    e  Ljava/util/concurrent/RejectedExecutionException;
      Exception table:
        from    to  target  type
           6    12      13  Class java.util.concurrent.RejectedExecutionException
    Signature: <T:Ljava/lang/Object;>(Lio/vertx/core/impl/ContextInternal;Lio/vertx/core/Handler<Lio/vertx/core/Promise<TT;>;>;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/impl/TaskQueue;)Lio/vertx/core/Future<TT;>;
    MethodParameters:
                     Name  Flags
      context              
      blockingCodeHandler  
      workerPool           
      queue                

  public io.vertx.core.spi.tracing.VertxTracer tracer();
    descriptor: ()Lio/vertx/core/spi/tracing/VertxTracer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.ContextImpl this
         0: .line 206
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.tracer:Lio/vertx/core/spi/tracing/VertxTracer;
            areturn
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/ContextImpl;

  public java.lang.ClassLoader classLoader();
    descriptor: ()Ljava/lang/ClassLoader;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.ContextImpl this
         0: .line 211
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.tccl:Ljava/lang/ClassLoader;
            areturn
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/ContextImpl;

  public io.vertx.core.impl.WorkerPool workerPool();
    descriptor: ()Lio/vertx/core/impl/WorkerPool;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.ContextImpl this
         0: .line 216
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.workerPool:Lio/vertx/core/impl/WorkerPool;
            areturn
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/ContextImpl;

  public synchronized java.util.concurrent.ConcurrentMap<java.lang.Object, java.lang.Object> contextData();
    descriptor: ()Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.ContextImpl this
         0: .line 221
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.data:Ljava/util/concurrent/ConcurrentMap;
            ifnonnull 2
         1: .line 222
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield io.vertx.core.impl.ContextImpl.data:Ljava/util/concurrent/ConcurrentMap;
         2: .line 224
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.data:Ljava/util/concurrent/ConcurrentMap;
            areturn
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/vertx/core/impl/ContextImpl;
    Signature: ()Ljava/util/concurrent/ConcurrentMap<Ljava/lang/Object;Ljava/lang/Object;>;

  public synchronized java.util.concurrent.ConcurrentMap<java.lang.Object, java.lang.Object> localContextData();
    descriptor: ()Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.ContextImpl this
         0: .line 229
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.localData:Ljava/util/concurrent/ConcurrentMap;
            ifnonnull 2
         1: .line 230
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield io.vertx.core.impl.ContextImpl.localData:Ljava/util/concurrent/ConcurrentMap;
         2: .line 232
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.localData:Ljava/util/concurrent/ConcurrentMap;
            areturn
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/vertx/core/impl/ContextImpl;
    Signature: ()Ljava/util/concurrent/ConcurrentMap<Ljava/lang/Object;Ljava/lang/Object;>;

  public void reportException(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // io.vertx.core.impl.ContextImpl this
        start local 1 // java.lang.Throwable t
         0: .line 236
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.exceptionHandler:Lio/vertx/core/Handler;
            astore 2 /* handler */
        start local 2 // io.vertx.core.Handler handler
         1: .line 237
            aload 2 /* handler */
            ifnonnull 3
         2: .line 238
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.owner:Lio/vertx/core/impl/VertxInternal;
            invokeinterface io.vertx.core.impl.VertxInternal.exceptionHandler:()Lio/vertx/core/Handler;
            astore 2 /* handler */
         3: .line 240
      StackMap locals: io.vertx.core.Handler
      StackMap stack:
            aload 2 /* handler */
            ifnull 6
         4: .line 241
            aload 2 /* handler */
            aload 1 /* t */
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         5: .line 242
            goto 7
         6: .line 243
      StackMap locals:
      StackMap stack:
            getstatic io.vertx.core.impl.ContextImpl.log:Lio/vertx/core/impl/logging/Logger;
            ldc "Unhandled exception"
            aload 1 /* t */
            invokeinterface io.vertx.core.impl.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
         7: .line 245
      StackMap locals:
      StackMap stack:
            return
        end local 2 // io.vertx.core.Handler handler
        end local 1 // java.lang.Throwable t
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lio/vertx/core/impl/ContextImpl;
            0    8     1        t  Ljava/lang/Throwable;
            1    8     2  handler  Lio/vertx/core/Handler<Ljava/lang/Throwable;>;
    MethodParameters:
      Name  Flags
      t     

  public io.vertx.core.Context exceptionHandler(io.vertx.core.Handler<java.lang.Throwable>);
    descriptor: (Lio/vertx/core/Handler;)Lio/vertx/core/Context;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.ContextImpl this
        start local 1 // io.vertx.core.Handler handler
         0: .line 249
            aload 0 /* this */
            aload 1 /* handler */
            putfield io.vertx.core.impl.ContextImpl.exceptionHandler:Lio/vertx/core/Handler;
         1: .line 250
            aload 0 /* this */
            areturn
        end local 1 // io.vertx.core.Handler handler
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/core/impl/ContextImpl;
            0    2     1  handler  Lio/vertx/core/Handler<Ljava/lang/Throwable;>;
    Signature: (Lio/vertx/core/Handler<Ljava/lang/Throwable;>;)Lio/vertx/core/Context;
    MethodParameters:
         Name  Flags
      handler  

  public io.vertx.core.Handler<java.lang.Throwable> exceptionHandler();
    descriptor: ()Lio/vertx/core/Handler;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.ContextImpl this
         0: .line 255
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.exceptionHandler:Lio/vertx/core/Handler;
            areturn
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/ContextImpl;
    Signature: ()Lio/vertx/core/Handler<Ljava/lang/Throwable;>;

  public int getInstanceCount();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.ContextImpl this
         0: .line 260
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.deployment:Lio/vertx/core/impl/Deployment;
            ifnonnull 2
         1: .line 261
            iconst_0
            ireturn
         2: .line 265
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.deployment:Lio/vertx/core/impl/Deployment;
            invokeinterface io.vertx.core.impl.Deployment.deploymentOptions:()Lio/vertx/core/DeploymentOptions;
            ifnonnull 4
         3: .line 266
            iconst_1
            ireturn
         4: .line 268
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.core.impl.ContextImpl.deployment:Lio/vertx/core/impl/Deployment;
            invokeinterface io.vertx.core.impl.Deployment.deploymentOptions:()Lio/vertx/core/DeploymentOptions;
            invokevirtual io.vertx.core.DeploymentOptions.getInstances:()I
            ireturn
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lio/vertx/core/impl/ContextImpl;

  public final void runOnContext(io.vertx.core.Handler<java.lang.Void>);
    descriptor: (Lio/vertx/core/Handler;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.ContextImpl this
        start local 1 // io.vertx.core.Handler action
         0: .line 273
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* action */
            invokevirtual io.vertx.core.impl.ContextImpl.runOnContext:(Lio/vertx/core/impl/AbstractContext;Lio/vertx/core/Handler;)V
         1: .line 274
            return
        end local 1 // io.vertx.core.Handler action
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lio/vertx/core/impl/ContextImpl;
            0    2     1  action  Lio/vertx/core/Handler<Ljava/lang/Void;>;
    Signature: (Lio/vertx/core/Handler<Ljava/lang/Void;>;)V
    MethodParameters:
        Name  Flags
      action  

  abstract void runOnContext(io.vertx.core.impl.AbstractContext, io.vertx.core.Handler<java.lang.Void>);
    descriptor: (Lio/vertx/core/impl/AbstractContext;Lio/vertx/core/Handler;)V
    flags: (0x0400) ACC_ABSTRACT
    Signature: (Lio/vertx/core/impl/AbstractContext;Lio/vertx/core/Handler<Ljava/lang/Void;>;)V
    MethodParameters:
        Name  Flags
      ctx     
      action  

  public void execute(java.lang.Runnable);
    descriptor: (Ljava/lang/Runnable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.ContextImpl this
        start local 1 // java.lang.Runnable task
         0: .line 280
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* task */
            invokevirtual io.vertx.core.impl.ContextImpl.execute:(Lio/vertx/core/impl/AbstractContext;Ljava/lang/Runnable;)V
         1: .line 281
            return
        end local 1 // java.lang.Runnable task
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/core/impl/ContextImpl;
            0    2     1  task  Ljava/lang/Runnable;
    MethodParameters:
      Name  Flags
      task  

  abstract <T> void execute(io.vertx.core.impl.AbstractContext, java.lang.Runnable);
    descriptor: (Lio/vertx/core/impl/AbstractContext;Ljava/lang/Runnable;)V
    flags: (0x0400) ACC_ABSTRACT
    Signature: <T:Ljava/lang/Object;>(Lio/vertx/core/impl/AbstractContext;Ljava/lang/Runnable;)V
    MethodParameters:
      Name  Flags
      ctx   
      task  

  public final <T> void execute(T, io.vertx.core.Handler<T>);
    descriptor: (Ljava/lang/Object;Lio/vertx/core/Handler;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.ContextImpl this
        start local 1 // java.lang.Object argument
        start local 2 // io.vertx.core.Handler task
         0: .line 287
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* argument */
            aload 2 /* task */
            invokevirtual io.vertx.core.impl.ContextImpl.execute:(Lio/vertx/core/impl/AbstractContext;Ljava/lang/Object;Lio/vertx/core/Handler;)V
         1: .line 288
            return
        end local 2 // io.vertx.core.Handler task
        end local 1 // java.lang.Object argument
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lio/vertx/core/impl/ContextImpl;
            0    2     1  argument  TT;
            0    2     2      task  Lio/vertx/core/Handler<TT;>;
    Signature: <T:Ljava/lang/Object;>(TT;Lio/vertx/core/Handler<TT;>;)V
    MethodParameters:
          Name  Flags
      argument  
      task      

  abstract <T> void execute(io.vertx.core.impl.AbstractContext, T, io.vertx.core.Handler<T>);
    descriptor: (Lio/vertx/core/impl/AbstractContext;Ljava/lang/Object;Lio/vertx/core/Handler;)V
    flags: (0x0400) ACC_ABSTRACT
    Signature: <T:Ljava/lang/Object;>(Lio/vertx/core/impl/AbstractContext;TT;Lio/vertx/core/Handler<TT;>;)V
    MethodParameters:
          Name  Flags
      ctx       
      argument  
      task      

  public <T> void emit(T, io.vertx.core.Handler<T>);
    descriptor: (Ljava/lang/Object;Lio/vertx/core/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.ContextImpl this
        start local 1 // java.lang.Object argument
        start local 2 // io.vertx.core.Handler task
         0: .line 294
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* argument */
            aload 2 /* task */
            invokevirtual io.vertx.core.impl.ContextImpl.emit:(Lio/vertx/core/impl/AbstractContext;Ljava/lang/Object;Lio/vertx/core/Handler;)V
         1: .line 295
            return
        end local 2 // io.vertx.core.Handler task
        end local 1 // java.lang.Object argument
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lio/vertx/core/impl/ContextImpl;
            0    2     1  argument  TT;
            0    2     2      task  Lio/vertx/core/Handler<TT;>;
    Signature: <T:Ljava/lang/Object;>(TT;Lio/vertx/core/Handler<TT;>;)V
    MethodParameters:
          Name  Flags
      argument  
      task      

  abstract <T> void emit(io.vertx.core.impl.AbstractContext, T, io.vertx.core.Handler<T>);
    descriptor: (Lio/vertx/core/impl/AbstractContext;Ljava/lang/Object;Lio/vertx/core/Handler;)V
    flags: (0x0400) ACC_ABSTRACT
    Signature: <T:Ljava/lang/Object;>(Lio/vertx/core/impl/AbstractContext;TT;Lio/vertx/core/Handler<TT;>;)V
    MethodParameters:
          Name  Flags
      ctx       
      argument  
      task      

  public final io.vertx.core.impl.ContextInternal duplicate();
    descriptor: ()Lio/vertx/core/impl/ContextInternal;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.ContextImpl this
         0: .line 301
            new io.vertx.core.impl.DuplicatedContext
            dup
            aload 0 /* this */
            invokespecial io.vertx.core.impl.DuplicatedContext.<init>:(Lio/vertx/core/impl/ContextImpl;)V
            areturn
        end local 0 // io.vertx.core.impl.ContextImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/ContextImpl;

  public io.vertx.core.Vertx owner();
    descriptor: ()Lio/vertx/core/Vertx;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual io.vertx.core.impl.ContextImpl.owner:()Lio/vertx/core/impl/VertxInternal;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static void lambda$0(io.vertx.core.Handler, io.vertx.core.Promise, io.vertx.core.spi.metrics.PoolMetrics, java.lang.Object, io.vertx.core.impl.ContextInternal, io.vertx.core.Future);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/Promise;Lio/vertx/core/spi/metrics/PoolMetrics;Ljava/lang/Object;Lio/vertx/core/impl/ContextInternal;Lio/vertx/core/Future;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=7, args_size=6
         0: .line 173
            aconst_null
            astore 6 /* execMetric */
        start local 6 // java.lang.Object execMetric
         1: .line 174
            aload 2
            ifnull 3
         2: .line 175
            aload 2
            aload 3
            invokeinterface io.vertx.core.spi.metrics.PoolMetrics.begin:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 6 /* execMetric */
         3: .line 177
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 4
            aload 1
            aload 0
            aload 1
            invokedynamic handle(Lio/vertx/core/Handler;Lio/vertx/core/Promise;)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/core/impl/ContextImpl.lambda$1(Lio/vertx/core/Handler;Lio/vertx/core/Promise;Lio/vertx/core/Promise;)V (6)
                  (Lio/vertx/core/Promise;)V
            invokeinterface io.vertx.core.impl.ContextInternal.dispatch:(Ljava/lang/Object;Lio/vertx/core/Handler;)V
         4: .line 184
            aload 2
            ifnull 6
         5: .line 185
            aload 2
            aload 6 /* execMetric */
            aload 5
            invokeinterface io.vertx.core.Future.succeeded:()Z
            invokeinterface io.vertx.core.spi.metrics.PoolMetrics.end:(Ljava/lang/Object;Z)V
        end local 6 // java.lang.Object execMetric
         6: .line 187
      StackMap locals:
      StackMap stack:
            return
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            1    6     6  execMetric  Ljava/lang/Object;

  private static void lambda$1(io.vertx.core.Handler, io.vertx.core.Promise, io.vertx.core.Promise);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/Promise;Lio/vertx/core/Promise;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=4, args_size=3
        start local 2 // io.vertx.core.Promise f
         0: .line 179
            aload 0
            aload 1
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         1: .line 180
            goto 4
      StackMap locals:
      StackMap stack: java.lang.Throwable
         2: astore 3 /* e */
        start local 3 // java.lang.Throwable e
         3: .line 181
            aload 1
            aload 3 /* e */
            invokeinterface io.vertx.core.Promise.tryFail:(Ljava/lang/Throwable;)Z
            pop
        end local 3 // java.lang.Throwable e
         4: .line 183
      StackMap locals:
      StackMap stack:
            return
        end local 2 // io.vertx.core.Promise f
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     2     f  Lio/vertx/core/Promise<TT;>;
            3    4     3     e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Throwable
}
SourceFile: "ContextImpl.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles