public interface org.graalvm.tools.api.lsp.LSPCommand
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: org.graalvm.tools.api.lsp.LSPCommand
  super_class: java.lang.Object
{
  public abstract java.lang.String getName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract  execute(org.graalvm.tools.api.lsp.LSPServerAccessor, com.oracle.truffle.api.instrumentation.TruffleInstrument$Env, java.util.List<java.lang.Object>);
    descriptor: (Lorg/graalvm/tools/api/lsp/LSPServerAccessor;Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;Ljava/util/List;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lorg/graalvm/tools/api/lsp/LSPServerAccessor;Lcom/oracle/truffle/api/instrumentation/TruffleInstrument$Env;Ljava/util/List<Ljava/lang/Object;>;)Ljava/lang/Object;
    MethodParameters:
           Name  Flags
      server     
      env        
      arguments  

  public int getTimeoutMillis();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.tools.api.lsp.LSPCommand this
         0: .line 50
            iconst_m1
            ireturn
        end local 0 // org.graalvm.tools.api.lsp.LSPCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/tools/api/lsp/LSPCommand;

  public  onTimeout(java.util.List<java.lang.Object>);
    descriptor: (Ljava/util/List;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.graalvm.tools.api.lsp.LSPCommand this
        start local 1 // java.util.List arguments
         0: .line 58
            ldc ", "
            aload 1 /* arguments */
            iconst_0
            anewarray java.lang.String
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.CharSequence[]
            invokestatic java.lang.String.join:(Ljava/lang/CharSequence;[Ljava/lang/CharSequence;)Ljava/lang/String;
            astore 2 /* argumentString */
        start local 2 // java.lang.String argumentString
         1: .line 59
            aload 0 /* this */
            invokeinterface org.graalvm.tools.api.lsp.LSPCommand.getTimeoutMillis:()I
            ifle 3
         2: .line 60
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "onTimeout not overriden. Arguments: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* argumentString */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 62
      StackMap locals: java.lang.String
      StackMap stack:
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "onTimeout triggered on negative or zero timeout. Arguments: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* argumentString */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 2 // java.lang.String argumentString
        end local 1 // java.util.List arguments
        end local 0 // org.graalvm.tools.api.lsp.LSPCommand this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Lorg/graalvm/tools/api/lsp/LSPCommand;
            0    4     1       arguments  Ljava/util/List<Ljava/lang/Object;>;
            1    4     2  argumentString  Ljava/lang/String;
    Signature: (Ljava/util/List<Ljava/lang/Object;>;)Ljava/lang/Object;
    MethodParameters:
           Name  Flags
      arguments  
}
SourceFile: "LSPCommand.java"
InnerClasses:
  public final Env = com.oracle.truffle.api.instrumentation.TruffleInstrument$Env of com.oracle.truffle.api.instrumentation.TruffleInstrument