public class com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter extends com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter
  super_class: com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter
{
  protected final java.util.regex.Pattern _indexMatch;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int _indexFirstChar;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter _simpleSplitter;
    descriptor: Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropPathSplitter;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final java.lang.String _prefix;
    descriptor: Ljava/lang/String;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  public void <init>(java.lang.String, boolean, com.fasterxml.jackson.dataformat.javaprop.util.Markers, com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter, java.lang.String);
    descriptor: (Ljava/lang/String;ZLcom/fasterxml/jackson/dataformat/javaprop/util/Markers;Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropPathSplitter;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=6
        start local 0 // com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter this
        start local 1 // java.lang.String pathSeparator
        start local 2 // boolean useSimpleIndex
        start local 3 // com.fasterxml.jackson.dataformat.javaprop.util.Markers indexMarker
        start local 4 // com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter fallbackSplitter
        start local 5 // java.lang.String prefix
         0: .line 276
            aload 0 /* this */
            iload 2 /* useSimpleIndex */
            invokespecial com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter.<init>:(Z)V
         1: .line 277
            aload 3 /* indexMarker */
            invokevirtual com.fasterxml.jackson.dataformat.javaprop.util.Markers.getStart:()Ljava/lang/String;
            astore 6 /* startMarker */
        start local 6 // java.lang.String startMarker
         2: .line 278
            aload 0 /* this */
            aload 6 /* startMarker */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            putfield com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter._indexFirstChar:I
         3: .line 279
            aload 0 /* this */
            aload 4 /* fallbackSplitter */
            putfield com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter._simpleSplitter:Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropPathSplitter;
         4: .line 280
            aload 5 /* prefix */
            ifnull 5
            aload 5 /* prefix */
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 7
         5: .line 281
      StackMap locals: com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter java.lang.String int com.fasterxml.jackson.dataformat.javaprop.util.Markers com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter._prefix:Ljava/lang/String;
         6: .line 282
            goto 8
         7: .line 283
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 5 /* prefix */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* pathSeparator */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter._prefix:Ljava/lang/String;
         8: .line 285
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
         9: .line 286
            ldc "(%s)|(%s(\\d{1,9})%s)"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
        10: .line 287
            aload 1 /* pathSeparator */
            invokestatic java.util.regex.Pattern.quote:(Ljava/lang/String;)Ljava/lang/String;
            aastore
            dup
            iconst_1
        11: .line 288
            aload 6 /* startMarker */
            invokestatic java.util.regex.Pattern.quote:(Ljava/lang/String;)Ljava/lang/String;
            aastore
            dup
            iconst_2
        12: .line 289
            aload 3 /* indexMarker */
            invokevirtual com.fasterxml.jackson.dataformat.javaprop.util.Markers.getEnd:()Ljava/lang/String;
            invokestatic java.util.regex.Pattern.quote:(Ljava/lang/String;)Ljava/lang/String;
            aastore
        13: .line 285
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putfield com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter._indexMatch:Ljava/util/regex/Pattern;
        14: .line 290
            return
        end local 6 // java.lang.String startMarker
        end local 5 // java.lang.String prefix
        end local 4 // com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter fallbackSplitter
        end local 3 // com.fasterxml.jackson.dataformat.javaprop.util.Markers indexMarker
        end local 2 // boolean useSimpleIndex
        end local 1 // java.lang.String pathSeparator
        end local 0 // com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   15     0              this  Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropPathSplitter$FullSplitter;
            0   15     1     pathSeparator  Ljava/lang/String;
            0   15     2    useSimpleIndex  Z
            0   15     3       indexMarker  Lcom/fasterxml/jackson/dataformat/javaprop/util/Markers;
            0   15     4  fallbackSplitter  Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropPathSplitter;
            0   15     5            prefix  Ljava/lang/String;
            2   15     6       startMarker  Ljava/lang/String;
    MethodParameters:
                  Name  Flags
      pathSeparator     
      useSimpleIndex    
      indexMarker       
      fallbackSplitter  
      prefix            

  public com.fasterxml.jackson.dataformat.javaprop.util.JPropNode splitAndAdd(com.fasterxml.jackson.dataformat.javaprop.util.JPropNode, java.lang.String, java.lang.String);
    descriptor: (Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropNode;Ljava/lang/String;Ljava/lang/String;)Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropNode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=4
        start local 0 // com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter this
        start local 1 // com.fasterxml.jackson.dataformat.javaprop.util.JPropNode parent
        start local 2 // java.lang.String key
        start local 3 // java.lang.String value
         0: .line 297
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter._prefix:Ljava/lang/String;
            ifnull 4
         1: .line 298
            aload 2 /* key */
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter._prefix:Ljava/lang/String;
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 3
         2: .line 299
            aconst_null
            areturn
         3: .line 301
      StackMap locals:
      StackMap stack:
            aload 2 /* key */
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter._prefix:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 2 /* key */
         4: .line 303
      StackMap locals:
      StackMap stack:
            aload 2 /* key */
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter._indexFirstChar:I
            invokevirtual java.lang.String.indexOf:(I)I
            ifge 6
         5: .line 304
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter._simpleSplitter:Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropPathSplitter;
            aload 1 /* parent */
            aload 2 /* key */
            aload 3 /* value */
            invokevirtual com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter.splitAndAdd:(Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropNode;Ljava/lang/String;Ljava/lang/String;)Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropNode;
            areturn
         6: .line 306
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter._indexMatch:Ljava/util/regex/Pattern;
            aload 2 /* key */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 4 /* m */
        start local 4 // java.util.regex.Matcher m
         7: .line 307
            iconst_0
            istore 5 /* start */
        start local 5 // int start
         8: .line 309
            goto 23
         9: .line 311
      StackMap locals: java.util.regex.Matcher int
      StackMap stack:
            aload 4 /* m */
            iconst_1
            invokevirtual java.util.regex.Matcher.start:(I)I
            istore 6 /* ix */
        start local 6 // int ix
        10: .line 313
            iload 6 /* ix */
            iflt 16
        11: .line 314
            iload 6 /* ix */
            iload 5 /* start */
            if_icmple 14
        12: .line 315
            aload 2 /* key */
            iload 5 /* start */
            iload 6 /* ix */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 7 /* segment */
        start local 7 // java.lang.String segment
        13: .line 316
            aload 0 /* this */
            aload 1 /* parent */
            aload 7 /* segment */
            invokevirtual com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter._addSegment:(Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropNode;Ljava/lang/String;)Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropNode;
            astore 1 /* parent */
        end local 7 // java.lang.String segment
        14: .line 318
      StackMap locals: int
      StackMap stack:
            aload 4 /* m */
            iconst_1
            invokevirtual java.util.regex.Matcher.end:(I)I
            istore 5 /* start */
        15: .line 319
            goto 23
        16: .line 322
      StackMap locals:
      StackMap stack:
            aload 4 /* m */
            iconst_2
            invokevirtual java.util.regex.Matcher.start:(I)I
            istore 6 /* ix */
        17: .line 323
            iload 6 /* ix */
            iload 5 /* start */
            if_icmple 20
        18: .line 324
            aload 2 /* key */
            iload 5 /* start */
            iload 6 /* ix */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 7 /* segment */
        start local 7 // java.lang.String segment
        19: .line 325
            aload 0 /* this */
            aload 1 /* parent */
            aload 7 /* segment */
            invokevirtual com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter._addSegment:(Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropNode;Ljava/lang/String;)Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropNode;
            astore 1 /* parent */
        end local 7 // java.lang.String segment
        20: .line 327
      StackMap locals:
      StackMap stack:
            aload 4 /* m */
            iconst_2
            invokevirtual java.util.regex.Matcher.end:(I)I
            istore 5 /* start */
        21: .line 328
            aload 4 /* m */
            iconst_3
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 6 /* ix */
        22: .line 329
            aload 1 /* parent */
            iload 6 /* ix */
            invokevirtual com.fasterxml.jackson.dataformat.javaprop.util.JPropNode.addByIndex:(I)Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropNode;
            astore 1 /* parent */
        end local 6 // int ix
        23: .line 309
      StackMap locals:
      StackMap stack:
            aload 4 /* m */
            invokevirtual java.util.regex.Matcher.find:()Z
            ifne 9
        24: .line 331
            aload 0 /* this */
            aload 1 /* parent */
            aload 2 /* key */
            iload 5 /* start */
            aload 2 /* key */
            invokevirtual java.lang.String.length:()I
            invokevirtual com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter._lastSegment:(Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropNode;Ljava/lang/String;II)Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropNode;
            aload 3 /* value */
            invokevirtual com.fasterxml.jackson.dataformat.javaprop.util.JPropNode.setValue:(Ljava/lang/String;)Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropNode;
            areturn
        end local 5 // int start
        end local 4 // java.util.regex.Matcher m
        end local 3 // java.lang.String value
        end local 2 // java.lang.String key
        end local 1 // com.fasterxml.jackson.dataformat.javaprop.util.JPropNode parent
        end local 0 // com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   25     0     this  Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropPathSplitter$FullSplitter;
            0   25     1   parent  Lcom/fasterxml/jackson/dataformat/javaprop/util/JPropNode;
            0   25     2      key  Ljava/lang/String;
            0   25     3    value  Ljava/lang/String;
            7   25     4        m  Ljava/util/regex/Matcher;
            8   25     5    start  I
           10   23     6       ix  I
           13   14     7  segment  Ljava/lang/String;
           19   20     7  segment  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      parent  
      key     
      value   
}
SourceFile: "JPropPathSplitter.java"
NestHost: com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter
InnerClasses:
  public FullSplitter = com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter$FullSplitter of com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter