public abstract class org.jruby.runtime.EventHook
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.jruby.runtime.EventHook
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.EventHook this
         0: .line 30
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.jruby.runtime.EventHook this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/runtime/EventHook;

  public void event(org.jruby.runtime.ThreadContext, org.jruby.runtime.RubyEvent, java.lang.String, int, java.lang.String, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/RubyEvent;Ljava/lang/String;ILjava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=7, args_size=7
        start local 0 // org.jruby.runtime.EventHook this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.RubyEvent event
        start local 3 // java.lang.String file
        start local 4 // int line
        start local 5 // java.lang.String name
        start local 6 // org.jruby.runtime.builtin.IRubyObject type
         0: .line 32
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* event */
            invokevirtual org.jruby.runtime.RubyEvent.getName:()Ljava/lang/String;
            aload 3 /* file */
            iload 4 /* line */
            aload 5 /* name */
            aload 6 /* type */
            invokevirtual org.jruby.runtime.EventHook.eventHandler:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
         1: .line 33
            return
        end local 6 // org.jruby.runtime.builtin.IRubyObject type
        end local 5 // java.lang.String name
        end local 4 // int line
        end local 3 // java.lang.String file
        end local 2 // org.jruby.runtime.RubyEvent event
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.runtime.EventHook this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/runtime/EventHook;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    event  Lorg/jruby/runtime/RubyEvent;
            0    2     3     file  Ljava/lang/String;
            0    2     4     line  I
            0    2     5     name  Ljava/lang/String;
            0    2     6     type  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      event    
      file     
      line     
      name     
      type     

  public abstract void eventHandler(org.jruby.runtime.ThreadContext, java.lang.String, java.lang.String, int, java.lang.String, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
           Name  Flags
      context    
      eventName  
      file       
      line       
      name       
      type       

  public abstract boolean isInterestedInEvent(org.jruby.runtime.RubyEvent);
    descriptor: (Lorg/jruby/runtime/RubyEvent;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
       Name  Flags
      event  

  public java.util.Set<org.jruby.runtime.RubyEvent> eventSet();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.EventHook this
         0: .line 38
            getstatic org.jruby.runtime.RubyEvent.ALL_EVENTS:Ljava/util/Set;
            areturn
        end local 0 // org.jruby.runtime.EventHook this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/runtime/EventHook;
    Signature: ()Ljava/util/Set<Lorg/jruby/runtime/RubyEvent;>;

  public boolean needsDebug();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.runtime.EventHook this
         0: .line 41
            aload 0 /* this */
            invokevirtual org.jruby.runtime.EventHook.eventSet:()Ljava/util/Set;
            invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
            invokedynamic test()Ljava/util/function/Predicate;
              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;)Z
                  org/jruby/runtime/EventHook.lambda$0(Lorg/jruby/runtime/RubyEvent;)Z (6)
                  (Lorg/jruby/runtime/RubyEvent;)Z
            invokeinterface java.util.stream.Stream.anyMatch:(Ljava/util/function/Predicate;)Z
            ireturn
        end local 0 // org.jruby.runtime.EventHook this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/runtime/EventHook;

  private static boolean lambda$0(org.jruby.runtime.RubyEvent);
    descriptor: (Lorg/jruby/runtime/RubyEvent;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.RubyEvent evt
         0: .line 41
            aload 0 /* evt */
            invokevirtual org.jruby.runtime.RubyEvent.requiresDebug:()Z
            ireturn
        end local 0 // org.jruby.runtime.RubyEvent evt
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   evt  Lorg/jruby/runtime/RubyEvent;
}
SourceFile: "EventHook.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles