public final class sun.font.GlyphLayout$LayoutEngineKey
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: sun.font.GlyphLayout$LayoutEngineKey
  super_class: java.lang.Object
{
  private sun.font.Font2D font;
    descriptor: Lsun/font/Font2D;
    flags: (0x0002) ACC_PRIVATE

  private int script;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int lang;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.GlyphLayout$LayoutEngineKey this
         0: .line 107
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 108
            return
        end local 0 // sun.font.GlyphLayout$LayoutEngineKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/font/GlyphLayout$LayoutEngineKey;

  void <init>(sun.font.Font2D, int, int);
    descriptor: (Lsun/font/Font2D;II)V
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // sun.font.GlyphLayout$LayoutEngineKey this
        start local 1 // sun.font.Font2D font
        start local 2 // int script
        start local 3 // int lang
         0: .line 110
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 111
            aload 0 /* this */
            aload 1 /* font */
            iload 2 /* script */
            iload 3 /* lang */
            invokevirtual sun.font.GlyphLayout$LayoutEngineKey.init:(Lsun/font/Font2D;II)V
         2: .line 112
            return
        end local 3 // int lang
        end local 2 // int script
        end local 1 // sun.font.Font2D font
        end local 0 // sun.font.GlyphLayout$LayoutEngineKey this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lsun/font/GlyphLayout$LayoutEngineKey;
            0    3     1    font  Lsun/font/Font2D;
            0    3     2  script  I
            0    3     3    lang  I
    MethodParameters:
        Name  Flags
      font    
      script  
      lang    

  void init(sun.font.Font2D, int, int);
    descriptor: (Lsun/font/Font2D;II)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // sun.font.GlyphLayout$LayoutEngineKey this
        start local 1 // sun.font.Font2D font
        start local 2 // int script
        start local 3 // int lang
         0: .line 115
            aload 0 /* this */
            aload 1 /* font */
            putfield sun.font.GlyphLayout$LayoutEngineKey.font:Lsun/font/Font2D;
         1: .line 116
            aload 0 /* this */
            iload 2 /* script */
            putfield sun.font.GlyphLayout$LayoutEngineKey.script:I
         2: .line 117
            aload 0 /* this */
            iload 3 /* lang */
            putfield sun.font.GlyphLayout$LayoutEngineKey.lang:I
         3: .line 118
            return
        end local 3 // int lang
        end local 2 // int script
        end local 1 // sun.font.Font2D font
        end local 0 // sun.font.GlyphLayout$LayoutEngineKey this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lsun/font/GlyphLayout$LayoutEngineKey;
            0    4     1    font  Lsun/font/Font2D;
            0    4     2  script  I
            0    4     3    lang  I
    MethodParameters:
        Name  Flags
      font    
      script  
      lang    

  sun.font.GlyphLayout$LayoutEngineKey copy();
    descriptor: ()Lsun/font/GlyphLayout$LayoutEngineKey;
    flags: (0x0000) 
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // sun.font.GlyphLayout$LayoutEngineKey this
         0: .line 121
            new sun.font.GlyphLayout$LayoutEngineKey
            dup
            aload 0 /* this */
            getfield sun.font.GlyphLayout$LayoutEngineKey.font:Lsun/font/Font2D;
            aload 0 /* this */
            getfield sun.font.GlyphLayout$LayoutEngineKey.script:I
            aload 0 /* this */
            getfield sun.font.GlyphLayout$LayoutEngineKey.lang:I
            invokespecial sun.font.GlyphLayout$LayoutEngineKey.<init>:(Lsun/font/Font2D;II)V
            areturn
        end local 0 // sun.font.GlyphLayout$LayoutEngineKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/GlyphLayout$LayoutEngineKey;

  sun.font.Font2D font();
    descriptor: ()Lsun/font/Font2D;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.GlyphLayout$LayoutEngineKey this
         0: .line 125
            aload 0 /* this */
            getfield sun.font.GlyphLayout$LayoutEngineKey.font:Lsun/font/Font2D;
            areturn
        end local 0 // sun.font.GlyphLayout$LayoutEngineKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/GlyphLayout$LayoutEngineKey;

  int script();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.GlyphLayout$LayoutEngineKey this
         0: .line 129
            aload 0 /* this */
            getfield sun.font.GlyphLayout$LayoutEngineKey.script:I
            ireturn
        end local 0 // sun.font.GlyphLayout$LayoutEngineKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/GlyphLayout$LayoutEngineKey;

  int lang();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.font.GlyphLayout$LayoutEngineKey this
         0: .line 133
            aload 0 /* this */
            getfield sun.font.GlyphLayout$LayoutEngineKey.lang:I
            ireturn
        end local 0 // sun.font.GlyphLayout$LayoutEngineKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/GlyphLayout$LayoutEngineKey;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.font.GlyphLayout$LayoutEngineKey this
        start local 1 // java.lang.Object rhs
         0: .line 137
            aload 0 /* this */
            aload 1 /* rhs */
            if_acmpne 1
            iconst_1
            ireturn
         1: .line 138
      StackMap locals:
      StackMap stack:
            aload 1 /* rhs */
            ifnonnull 2
            iconst_0
            ireturn
         2: .line 140
      StackMap locals:
      StackMap stack:
            aload 1 /* rhs */
            checkcast sun.font.GlyphLayout$LayoutEngineKey
            astore 2 /* that */
        start local 2 // sun.font.GlyphLayout$LayoutEngineKey that
         3: .line 141
            aload 0 /* this */
            getfield sun.font.GlyphLayout$LayoutEngineKey.script:I
            aload 2 /* that */
            getfield sun.font.GlyphLayout$LayoutEngineKey.script:I
            if_icmpne 7
         4: .line 142
            aload 0 /* this */
            getfield sun.font.GlyphLayout$LayoutEngineKey.lang:I
            aload 2 /* that */
            getfield sun.font.GlyphLayout$LayoutEngineKey.lang:I
            if_icmpne 7
         5: .line 143
            aload 0 /* this */
            getfield sun.font.GlyphLayout$LayoutEngineKey.font:Lsun/font/Font2D;
            aload 2 /* that */
            getfield sun.font.GlyphLayout$LayoutEngineKey.font:Lsun/font/Font2D;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 141
            iconst_1
            ireturn
      StackMap locals: sun.font.GlyphLayout$LayoutEngineKey
      StackMap stack:
         7: iconst_0
         8: ireturn
        end local 2 // sun.font.GlyphLayout$LayoutEngineKey that
         9: .line 145
      StackMap locals: sun.font.GlyphLayout$LayoutEngineKey java.lang.Object
      StackMap stack: java.lang.ClassCastException
            pop
        10: .line 146
            iconst_0
            ireturn
        end local 1 // java.lang.Object rhs
        end local 0 // sun.font.GlyphLayout$LayoutEngineKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lsun/font/GlyphLayout$LayoutEngineKey;
            0   11     1   rhs  Ljava/lang/Object;
            3    9     2  that  Lsun/font/GlyphLayout$LayoutEngineKey;
      Exception table:
        from    to  target  type
           2     8       9  Class java.lang.ClassCastException
    MethodParameters:
      Name  Flags
      rhs   

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.font.GlyphLayout$LayoutEngineKey this
         0: .line 151
            aload 0 /* this */
            getfield sun.font.GlyphLayout$LayoutEngineKey.script:I
            aload 0 /* this */
            getfield sun.font.GlyphLayout$LayoutEngineKey.lang:I
            ixor
            aload 0 /* this */
            getfield sun.font.GlyphLayout$LayoutEngineKey.font:Lsun/font/Font2D;
            invokevirtual java.lang.Object.hashCode:()I
            ixor
            ireturn
        end local 0 // sun.font.GlyphLayout$LayoutEngineKey this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/font/GlyphLayout$LayoutEngineKey;
}
SourceFile: "GlyphLayout.java"
NestHost: sun.font.GlyphLayout
InnerClasses:
  public final LayoutEngineKey = sun.font.GlyphLayout$LayoutEngineKey of sun.font.GlyphLayout