public class org.apache.commons.configuration2.convert.LegacyListDelimiterHandler extends org.apache.commons.configuration2.convert.AbstractListDelimiterHandler
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.commons.configuration2.convert.LegacyListDelimiterHandler
  super_class: org.apache.commons.configuration2.convert.AbstractListDelimiterHandler
{
  private static final java.lang.String ESCAPE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "\\"

  private static final java.lang.String DOUBLE_ESC;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "\\\\"

  private static final java.lang.String QUAD_ESC;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "\\\\\\\\"

  private final char delimiter;
    descriptor: C
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(char);
    descriptor: (C)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.convert.LegacyListDelimiterHandler this
        start local 1 // char listDelimiter
         0: .line 74
            aload 0 /* this */
            invokespecial org.apache.commons.configuration2.convert.AbstractListDelimiterHandler.<init>:()V
         1: .line 76
            aload 0 /* this */
            iload 1 /* listDelimiter */
            putfield org.apache.commons.configuration2.convert.LegacyListDelimiterHandler.delimiter:C
         2: .line 77
            return
        end local 1 // char listDelimiter
        end local 0 // org.apache.commons.configuration2.convert.LegacyListDelimiterHandler this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lorg/apache/commons/configuration2/convert/LegacyListDelimiterHandler;
            0    3     1  listDelimiter  C
    MethodParameters:
               Name  Flags
      listDelimiter  final

  public char getDelimiter();
    descriptor: ()C
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.convert.LegacyListDelimiterHandler this
         0: .line 86
            aload 0 /* this */
            getfield org.apache.commons.configuration2.convert.LegacyListDelimiterHandler.delimiter:C
            ireturn
        end local 0 // org.apache.commons.configuration2.convert.LegacyListDelimiterHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/configuration2/convert/LegacyListDelimiterHandler;

  public java.lang.Object escape(java.lang.Object, org.apache.commons.configuration2.convert.ValueTransformer);
    descriptor: (Ljava/lang/Object;Lorg/apache/commons/configuration2/convert/ValueTransformer;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.apache.commons.configuration2.convert.LegacyListDelimiterHandler this
        start local 1 // java.lang.Object value
        start local 2 // org.apache.commons.configuration2.convert.ValueTransformer transformer
         0: .line 96
            aload 0 /* this */
            aload 1 /* value */
            iconst_0
            aload 2 /* transformer */
            invokevirtual org.apache.commons.configuration2.convert.LegacyListDelimiterHandler.escapeValue:(Ljava/lang/Object;ZLorg/apache/commons/configuration2/convert/ValueTransformer;)Ljava/lang/String;
            areturn
        end local 2 // org.apache.commons.configuration2.convert.ValueTransformer transformer
        end local 1 // java.lang.Object value
        end local 0 // org.apache.commons.configuration2.convert.LegacyListDelimiterHandler this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/apache/commons/configuration2/convert/LegacyListDelimiterHandler;
            0    1     1        value  Ljava/lang/Object;
            0    1     2  transformer  Lorg/apache/commons/configuration2/convert/ValueTransformer;
    MethodParameters:
             Name  Flags
      value        final
      transformer  final

  public  escapeList(java.util.List<?>, org.apache.commons.configuration2.convert.ValueTransformer);
    descriptor: (Ljava/util/List;Lorg/apache/commons/configuration2/convert/ValueTransformer;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.apache.commons.configuration2.convert.LegacyListDelimiterHandler this
        start local 1 // java.util.List values
        start local 2 // org.apache.commons.configuration2.convert.ValueTransformer transformer
         0: .line 107
            aload 1 /* values */
            invokeinterface java.util.List.isEmpty:()Z
            ifne 13
         1: .line 109
            aload 1 /* values */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3 /* it */
        start local 3 // java.util.Iterator it
         2: .line 110
            aload 0 /* this */
            aload 3 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            iconst_1
            aload 2 /* transformer */
            invokevirtual org.apache.commons.configuration2.convert.LegacyListDelimiterHandler.escapeValue:(Ljava/lang/Object;ZLorg/apache/commons/configuration2/convert/ValueTransformer;)Ljava/lang/String;
            astore 4 /* lastValue */
        start local 4 // java.lang.String lastValue
         3: .line 111
            new java.lang.StringBuilder
            dup
            aload 4 /* lastValue */
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 5 /* buf */
        start local 5 // java.lang.StringBuilder buf
         4: .line 112
            goto 11
         5: .line 117
      StackMap locals: java.util.Iterator java.lang.String java.lang.StringBuilder
      StackMap stack:
            aload 4 /* lastValue */
            ldc "\\"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 8
         6: .line 118
            aload 4 /* lastValue */
            invokestatic org.apache.commons.configuration2.convert.LegacyListDelimiterHandler.countTrailingBS:(Ljava/lang/String;)I
            iconst_2
            idiv
            iconst_2
            irem
            ifeq 8
         7: .line 120
            aload 5 /* buf */
            ldc "\\"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\\"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         8: .line 122
      StackMap locals:
      StackMap stack:
            aload 5 /* buf */
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.convert.LegacyListDelimiterHandler.getDelimiter:()C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         9: .line 123
            aload 0 /* this */
            aload 3 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            iconst_1
            aload 2 /* transformer */
            invokevirtual org.apache.commons.configuration2.convert.LegacyListDelimiterHandler.escapeValue:(Ljava/lang/Object;ZLorg/apache/commons/configuration2/convert/ValueTransformer;)Ljava/lang/String;
            astore 4 /* lastValue */
        10: .line 124
            aload 5 /* buf */
            aload 4 /* lastValue */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 112
      StackMap locals:
      StackMap stack:
            aload 3 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        12: .line 126
            aload 5 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 5 // java.lang.StringBuilder buf
        end local 4 // java.lang.String lastValue
        end local 3 // java.util.Iterator it
        13: .line 128
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // org.apache.commons.configuration2.convert.ValueTransformer transformer
        end local 1 // java.util.List values
        end local 0 // org.apache.commons.configuration2.convert.LegacyListDelimiterHandler this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0         this  Lorg/apache/commons/configuration2/convert/LegacyListDelimiterHandler;
            0   14     1       values  Ljava/util/List<*>;
            0   14     2  transformer  Lorg/apache/commons/configuration2/convert/ValueTransformer;
            2   13     3           it  Ljava/util/Iterator<*>;
            3   13     4    lastValue  Ljava/lang/String;
            4   13     5          buf  Ljava/lang/StringBuilder;
    Signature: (Ljava/util/List<*>;Lorg/apache/commons/configuration2/convert/ValueTransformer;)Ljava/lang/Object;
    MethodParameters:
             Name  Flags
      values       final
      transformer  final

  protected java.util.Collection<java.lang.String> splitString(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Ljava/util/Collection;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=10, args_size=3
        start local 0 // org.apache.commons.configuration2.convert.LegacyListDelimiterHandler this
        start local 1 // java.lang.String s
        start local 2 // boolean trim
         0: .line 139
            aload 1 /* s */
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.convert.LegacyListDelimiterHandler.getDelimiter:()C
            invokevirtual java.lang.String.indexOf:(I)I
            ifge 2
         1: .line 141
            aload 1 /* s */
            invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
            areturn
         2: .line 144
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* list */
        start local 3 // java.util.List list
         3: .line 146
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 4 /* token */
        start local 4 // java.lang.StringBuilder token
         4: .line 147
            iconst_0
            istore 5 /* begin */
        start local 5 // int begin
         5: .line 148
            iconst_0
            istore 6 /* inEscape */
        start local 6 // boolean inEscape
         6: .line 149
            ldc "\\"
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            istore 7 /* esc */
        start local 7 // char esc
         7: .line 151
            goto 27
         8: .line 153
      StackMap locals: org.apache.commons.configuration2.convert.LegacyListDelimiterHandler java.lang.String int java.util.List java.lang.StringBuilder int int int
      StackMap stack:
            aload 1 /* s */
            iload 5 /* begin */
            invokevirtual java.lang.String.charAt:(I)C
            istore 8 /* c */
        start local 8 // char c
         9: .line 154
            iload 6 /* inEscape */
            ifeq 15
        10: .line 158
            iload 8 /* c */
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.convert.LegacyListDelimiterHandler.getDelimiter:()C
            if_icmpeq 12
            iload 8 /* c */
            iload 7 /* esc */
            if_icmpeq 12
        11: .line 161
            aload 4 /* token */
            iload 7 /* esc */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        12: .line 163
      StackMap locals: int
      StackMap stack:
            aload 4 /* token */
            iload 8 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        13: .line 164
            iconst_0
            istore 6 /* inEscape */
        14: .line 165
            goto 26
        15: .line 169
      StackMap locals:
      StackMap stack:
            iload 8 /* c */
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.convert.LegacyListDelimiterHandler.getDelimiter:()C
            if_icmpne 22
        16: .line 173
            aload 4 /* token */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 9 /* t */
        start local 9 // java.lang.String t
        17: .line 174
            iload 2 /* trim */
            ifeq 19
        18: .line 176
            aload 9 /* t */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 9 /* t */
        19: .line 178
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* list */
            aload 9 /* t */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        20: .line 179
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 4 /* token */
        end local 9 // java.lang.String t
        21: .line 180
            goto 26
        22: .line 181
      StackMap locals:
      StackMap stack:
            iload 8 /* c */
            iload 7 /* esc */
            if_icmpne 25
        23: .line 184
            iconst_1
            istore 6 /* inEscape */
        24: .line 185
            goto 26
        25: .line 188
      StackMap locals:
      StackMap stack:
            aload 4 /* token */
            iload 8 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        26: .line 192
      StackMap locals:
      StackMap stack:
            iinc 5 /* begin */ 1
        end local 8 // char c
        27: .line 151
      StackMap locals:
      StackMap stack:
            iload 5 /* begin */
            aload 1 /* s */
            invokevirtual java.lang.String.length:()I
            if_icmplt 8
        28: .line 196
            iload 6 /* inEscape */
            ifeq 30
        29: .line 198
            aload 4 /* token */
            iload 7 /* esc */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        30: .line 201
      StackMap locals:
      StackMap stack:
            aload 4 /* token */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 8 /* t */
        start local 8 // java.lang.String t
        31: .line 202
            iload 2 /* trim */
            ifeq 33
        32: .line 204
            aload 8 /* t */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 8 /* t */
        33: .line 206
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* list */
            aload 8 /* t */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        34: .line 208
            aload 3 /* list */
            areturn
        end local 8 // java.lang.String t
        end local 7 // char esc
        end local 6 // boolean inEscape
        end local 5 // int begin
        end local 4 // java.lang.StringBuilder token
        end local 3 // java.util.List list
        end local 2 // boolean trim
        end local 1 // java.lang.String s
        end local 0 // org.apache.commons.configuration2.convert.LegacyListDelimiterHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   35     0      this  Lorg/apache/commons/configuration2/convert/LegacyListDelimiterHandler;
            0   35     1         s  Ljava/lang/String;
            0   35     2      trim  Z
            3   35     3      list  Ljava/util/List<Ljava/lang/String;>;
            4   35     4     token  Ljava/lang/StringBuilder;
            5   35     5     begin  I
            6   35     6  inEscape  Z
            7   35     7       esc  C
            9   27     8         c  C
           17   21     9         t  Ljava/lang/String;
           31   35     8         t  Ljava/lang/String;
    Signature: (Ljava/lang/String;Z)Ljava/util/Collection<Ljava/lang/String;>;
    MethodParameters:
      Name  Flags
      s     final
      trim  final

  protected java.lang.String escapeString(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.convert.LegacyListDelimiterHandler this
        start local 1 // java.lang.String s
         0: .line 217
            aconst_null
            areturn
        end local 1 // java.lang.String s
        end local 0 // org.apache.commons.configuration2.convert.LegacyListDelimiterHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/configuration2/convert/LegacyListDelimiterHandler;
            0    1     1     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     final

  protected java.lang.String escapeBackslashs(java.lang.Object, boolean);
    descriptor: (Ljava/lang/Object;Z)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.apache.commons.configuration2.convert.LegacyListDelimiterHandler this
        start local 1 // java.lang.Object value
        start local 2 // boolean inList
         0: .line 234
            aload 1 /* value */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            astore 3 /* strValue */
        start local 3 // java.lang.String strValue
         1: .line 236
            iload 2 /* inList */
            ifeq 3
            aload 3 /* strValue */
            ldc "\\\\"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iflt 3
         2: .line 238
            aload 3 /* strValue */
            ldc "\\\\"
            ldc "\\\\\\\\"
            invokestatic org.apache.commons.lang3.StringUtils.replace:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* strValue */
         3: .line 241
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* strValue */
            areturn
        end local 3 // java.lang.String strValue
        end local 2 // boolean inList
        end local 1 // java.lang.Object value
        end local 0 // org.apache.commons.configuration2.convert.LegacyListDelimiterHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/apache/commons/configuration2/convert/LegacyListDelimiterHandler;
            0    4     1     value  Ljava/lang/Object;
            0    4     2    inList  Z
            1    4     3  strValue  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      value   final
      inList  final

  protected java.lang.String escapeValue(java.lang.Object, boolean, org.apache.commons.configuration2.convert.ValueTransformer);
    descriptor: (Ljava/lang/Object;ZLorg/apache/commons/configuration2/convert/ValueTransformer;)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.apache.commons.configuration2.convert.LegacyListDelimiterHandler this
        start local 1 // java.lang.Object value
        start local 2 // boolean inList
        start local 3 // org.apache.commons.configuration2.convert.ValueTransformer transformer
         0: .line 259
            aload 3 /* transformer */
            aload 0 /* this */
         1: .line 260
            aload 1 /* value */
            iload 2 /* inList */
         2: .line 259
            invokevirtual org.apache.commons.configuration2.convert.LegacyListDelimiterHandler.escapeBackslashs:(Ljava/lang/Object;Z)Ljava/lang/String;
            invokeinterface org.apache.commons.configuration2.convert.ValueTransformer.transformValue:(Ljava/lang/Object;)Ljava/lang/Object;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
         3: .line 258
            astore 4 /* escapedValue */
        start local 4 // java.lang.String escapedValue
         4: .line 261
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.convert.LegacyListDelimiterHandler.getDelimiter:()C
            ifeq 10
         5: .line 264
            aload 4 /* escapedValue */
         6: .line 265
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.convert.LegacyListDelimiterHandler.getDelimiter:()C
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            new java.lang.StringBuilder
            dup
            ldc "\\"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         7: .line 266
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.convert.LegacyListDelimiterHandler.getDelimiter:()C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         8: .line 264
            invokestatic org.apache.commons.lang3.StringUtils.replace:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
         9: .line 263
            astore 4 /* escapedValue */
        10: .line 268
      StackMap locals: java.lang.String
      StackMap stack:
            aload 4 /* escapedValue */
            areturn
        end local 4 // java.lang.String escapedValue
        end local 3 // org.apache.commons.configuration2.convert.ValueTransformer transformer
        end local 2 // boolean inList
        end local 1 // java.lang.Object value
        end local 0 // org.apache.commons.configuration2.convert.LegacyListDelimiterHandler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0          this  Lorg/apache/commons/configuration2/convert/LegacyListDelimiterHandler;
            0   11     1         value  Ljava/lang/Object;
            0   11     2        inList  Z
            0   11     3   transformer  Lorg/apache/commons/configuration2/convert/ValueTransformer;
            4   11     4  escapedValue  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      value        final
      inList       final
      transformer  final

  private static int countTrailingBS(java.lang.String);
    descriptor: (Ljava/lang/String;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // java.lang.String line
         0: .line 280
            iconst_0
            istore 1 /* bsCount */
        start local 1 // int bsCount
         1: .line 281
            aload 0 /* line */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            istore 2 /* idx */
        start local 2 // int idx
         2: goto 5
         3: .line 283
      StackMap locals: int int
      StackMap stack:
            iinc 1 /* bsCount */ 1
         4: .line 281
            iinc 2 /* idx */ -1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* idx */
            iflt 6
            aload 0 /* line */
            iload 2 /* idx */
            invokevirtual java.lang.String.charAt:(I)C
            bipush 92
            if_icmpeq 3
        end local 2 // int idx
         6: .line 286
      StackMap locals:
      StackMap stack:
            iload 1 /* bsCount */
            ireturn
        end local 1 // int bsCount
        end local 0 // java.lang.String line
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     line  Ljava/lang/String;
            1    7     1  bsCount  I
            2    6     2      idx  I
    MethodParameters:
      Name  Flags
      line  final
}
SourceFile: "LegacyListDelimiterHandler.java"