public class com.sun.xml.internal.bind.marshaller.MinimumEscapeHandler implements com.sun.xml.internal.bind.marshaller.CharacterEscapeHandler
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.xml.internal.bind.marshaller.MinimumEscapeHandler
  super_class: java.lang.Object
{
  public static final com.sun.xml.internal.bind.marshaller.CharacterEscapeHandler theInstance;
    descriptor: Lcom/sun/xml/internal/bind/marshaller/CharacterEscapeHandler;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 42
            new com.sun.xml.internal.bind.marshaller.MinimumEscapeHandler
            dup
            invokespecial com.sun.xml.internal.bind.marshaller.MinimumEscapeHandler.<init>:()V
            putstatic com.sun.xml.internal.bind.marshaller.MinimumEscapeHandler.theInstance:Lcom/sun/xml/internal/bind/marshaller/CharacterEscapeHandler;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.xml.internal.bind.marshaller.MinimumEscapeHandler this
         0: .line 40
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.sun.xml.internal.bind.marshaller.MinimumEscapeHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/xml/internal/bind/marshaller/MinimumEscapeHandler;

  public void escape(char[], int, int, boolean, java.io.Writer);
    descriptor: ([CIIZLjava/io/Writer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=9, args_size=6
        start local 0 // com.sun.xml.internal.bind.marshaller.MinimumEscapeHandler this
        start local 1 // char[] ch
        start local 2 // int start
        start local 3 // int length
        start local 4 // boolean isAttVal
        start local 5 // java.io.Writer out
         0: .line 48
            iload 2 /* start */
            iload 3 /* length */
            iadd
            istore 6 /* limit */
        start local 6 // int limit
         1: .line 49
            iload 2 /* start */
            istore 7 /* i */
        start local 7 // int i
         2: goto 24
         3: .line 50
      StackMap locals: int int
      StackMap stack:
            aload 1 /* ch */
            iload 7 /* i */
            caload
            istore 8 /* c */
        start local 8 // char c
         4: .line 51
            iload 8 /* c */
            bipush 38
            if_icmpeq 6
            iload 8 /* c */
            bipush 60
            if_icmpeq 6
            iload 8 /* c */
            bipush 62
            if_icmpeq 6
            iload 8 /* c */
            bipush 13
            if_icmpeq 6
            iload 8 /* c */
            bipush 10
            if_icmpne 5
            iload 4 /* isAttVal */
            ifne 6
      StackMap locals: int
      StackMap stack:
         5: iload 8 /* c */
            bipush 34
            if_icmpne 23
            iload 4 /* isAttVal */
            ifeq 23
         6: .line 52
      StackMap locals:
      StackMap stack:
            iload 7 /* i */
            iload 2 /* start */
            if_icmpeq 8
         7: .line 53
            aload 5 /* out */
            aload 1 /* ch */
            iload 2 /* start */
            iload 7 /* i */
            iload 2 /* start */
            isub
            invokevirtual java.io.Writer.write:([CII)V
         8: .line 54
      StackMap locals:
      StackMap stack:
            iload 7 /* i */
            iconst_1
            iadd
            istore 2 /* start */
         9: .line 55
            aload 1 /* ch */
            iload 7 /* i */
            caload
            lookupswitch { // 6
                   10: 18
                   13: 18
                   34: 16
                   38: 10
                   60: 12
                   62: 14
              default: 22
          }
        10: .line 57
      StackMap locals:
      StackMap stack:
            aload 5 /* out */
            ldc "&amp;"
            invokevirtual java.io.Writer.write:(Ljava/lang/String;)V
        11: .line 58
            goto 23
        12: .line 60
      StackMap locals:
      StackMap stack:
            aload 5 /* out */
            ldc "&lt;"
            invokevirtual java.io.Writer.write:(Ljava/lang/String;)V
        13: .line 61
            goto 23
        14: .line 63
      StackMap locals:
      StackMap stack:
            aload 5 /* out */
            ldc "&gt;"
            invokevirtual java.io.Writer.write:(Ljava/lang/String;)V
        15: .line 64
            goto 23
        16: .line 66
      StackMap locals:
      StackMap stack:
            aload 5 /* out */
            ldc "&quot;"
            invokevirtual java.io.Writer.write:(Ljava/lang/String;)V
        17: .line 67
            goto 23
        18: .line 70
      StackMap locals:
      StackMap stack:
            aload 5 /* out */
            ldc "&#"
            invokevirtual java.io.Writer.write:(Ljava/lang/String;)V
        19: .line 71
            aload 5 /* out */
            iload 8 /* c */
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            invokevirtual java.io.Writer.write:(Ljava/lang/String;)V
        20: .line 72
            aload 5 /* out */
            bipush 59
            invokevirtual java.io.Writer.write:(I)V
        21: .line 73
            goto 23
        22: .line 75
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Cannot escape: '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 8 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 8 // char c
        23: .line 49
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 7 /* i */
            iload 6 /* limit */
            if_icmplt 3
        end local 7 // int i
        25: .line 80
            iload 2 /* start */
            iload 6 /* limit */
            if_icmpeq 27
        26: .line 81
            aload 5 /* out */
            aload 1 /* ch */
            iload 2 /* start */
            iload 6 /* limit */
            iload 2 /* start */
            isub
            invokevirtual java.io.Writer.write:([CII)V
        27: .line 82
      StackMap locals:
      StackMap stack:
            return
        end local 6 // int limit
        end local 5 // java.io.Writer out
        end local 4 // boolean isAttVal
        end local 3 // int length
        end local 2 // int start
        end local 1 // char[] ch
        end local 0 // com.sun.xml.internal.bind.marshaller.MinimumEscapeHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   28     0      this  Lcom/sun/xml/internal/bind/marshaller/MinimumEscapeHandler;
            0   28     1        ch  [C
            0   28     2     start  I
            0   28     3    length  I
            0   28     4  isAttVal  Z
            0   28     5       out  Ljava/io/Writer;
            1   28     6     limit  I
            2   25     7         i  I
            4   23     8         c  C
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      ch        
      start     
      length    
      isAttVal  
      out       
}
SourceFile: "MinimumEscapeHandler.java"