public interface org.graalvm.compiler.graph.spi.Canonicalizable$Binary<T extends org.graalvm.compiler.graph.Node> extends org.graalvm.compiler.graph.spi.Canonicalizable
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: org.graalvm.compiler.graph.spi.Canonicalizable$Binary
  super_class: java.lang.Object
{
  public abstract org.graalvm.compiler.graph.Node canonical(org.graalvm.compiler.graph.spi.CanonicalizerTool, T, T);
    descriptor: (Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: (Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;TT;TT;)Lorg/graalvm/compiler/graph/Node;
    MethodParameters:
      Name  Flags
      tool  
      forX  
      forY  

  public abstract T getX();
    descriptor: ()Lorg/graalvm/compiler/graph/Node;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()TT;

  public abstract T getY();
    descriptor: ()Lorg/graalvm/compiler/graph/Node;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()TT;

  public T canonical(org.graalvm.compiler.graph.spi.CanonicalizerTool);
    descriptor: (Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;)Lorg/graalvm/compiler/graph/Node;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.graph.spi.Canonicalizable$Binary this
        start local 1 // org.graalvm.compiler.graph.spi.CanonicalizerTool tool
         0: .line 137
            aload 0 /* this */
            aload 1 /* tool */
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.graph.spi.Canonicalizable$Binary.getX:()Lorg/graalvm/compiler/graph/Node;
            aload 0 /* this */
            invokeinterface org.graalvm.compiler.graph.spi.Canonicalizable$Binary.getY:()Lorg/graalvm/compiler/graph/Node;
            invokeinterface org.graalvm.compiler.graph.spi.Canonicalizable$Binary.canonical:(Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            areturn
        end local 1 // org.graalvm.compiler.graph.spi.CanonicalizerTool tool
        end local 0 // org.graalvm.compiler.graph.spi.Canonicalizable$Binary this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/graph/spi/Canonicalizable$Binary<TT;>;
            0    1     1  tool  Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;
    Signature: (Lorg/graalvm/compiler/graph/spi/CanonicalizerTool;)TT;
    MethodParameters:
      Name  Flags
      tool  
}
Signature: <T:Lorg/graalvm/compiler/graph/Node;>Ljava/lang/Object;Lorg/graalvm/compiler/graph/spi/Canonicalizable;
SourceFile: "Canonicalizable.java"
NestHost: org.graalvm.compiler.graph.spi.Canonicalizable
InnerClasses:
  public abstract Binary = org.graalvm.compiler.graph.spi.Canonicalizable$Binary of org.graalvm.compiler.graph.spi.Canonicalizable