public class com.jayway.jsonpath.internal.CharacterIndex
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.jayway.jsonpath.internal.CharacterIndex
super_class: java.lang.Object
{
private static final char OPEN_PARENTHESIS;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 40
private static final char CLOSE_PARENTHESIS;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 41
private static final char CLOSE_SQUARE_BRACKET;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 93
private static final char SPACE;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 32
private static final char ESCAPE;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 92
private static final char SINGLE_QUOTE;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 39
private static final char DOUBLE_QUOTE;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 34
private static final char MINUS;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 45
private static final char PERIOD;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 46
private static final char REGEX;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 47
private final java.lang.CharSequence charSequence;
descriptor: Ljava/lang/CharSequence;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int position;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int endPosition;
descriptor: I
flags: (0x0002) ACC_PRIVATE
public void <init>(java.lang.CharSequence);
descriptor: (Ljava/lang/CharSequence;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield com.jayway.jsonpath.internal.CharacterIndex.charSequence:Ljava/lang/CharSequence;
2: aload 0
iconst_0
putfield com.jayway.jsonpath.internal.CharacterIndex.position:I
3: aload 0
aload 1
invokeinterface java.lang.CharSequence.length:()I
iconst_1
isub
putfield com.jayway.jsonpath.internal.CharacterIndex.endPosition:I
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 5 1 charSequence Ljava/lang/CharSequence;
MethodParameters:
Name Flags
charSequence
public int length();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.endPosition:I
iconst_1
iadd
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
public char charAt(int);
descriptor: (I)C
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.charSequence:Ljava/lang/CharSequence;
iload 1
invokeinterface java.lang.CharSequence.charAt:(I)C
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 1 1 idx I
MethodParameters:
Name Flags
idx
public char currentChar();
descriptor: ()C
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.charSequence:Ljava/lang/CharSequence;
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
invokeinterface java.lang.CharSequence.charAt:(I)C
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
public boolean currentCharIs(char);
descriptor: (C)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.charSequence:Ljava/lang/CharSequence;
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
invokeinterface java.lang.CharSequence.charAt:(I)C
iload 1
if_icmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 2 1 c C
MethodParameters:
Name Flags
c
public boolean lastCharIs(char);
descriptor: (C)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.charSequence:Ljava/lang/CharSequence;
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.endPosition:I
invokeinterface java.lang.CharSequence.charAt:(I)C
iload 1
if_icmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 2 1 c C
MethodParameters:
Name Flags
c
public boolean nextCharIs(char);
descriptor: (C)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
iconst_1
iadd
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.inBounds:(I)Z
ifeq 1
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.charSequence:Ljava/lang/CharSequence;
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
iconst_1
iadd
invokeinterface java.lang.CharSequence.charAt:(I)C
iload 1
if_icmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 2 1 c C
MethodParameters:
Name Flags
c
public int incrementPosition(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
iload 1
iadd
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.setPosition:(I)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 1 1 charCount I
MethodParameters:
Name Flags
charCount
public int decrementEndPosition(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.endPosition:I
iload 1
isub
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.setEndPosition:(I)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 1 1 charCount I
MethodParameters:
Name Flags
charCount
public int setPosition(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield com.jayway.jsonpath.internal.CharacterIndex.position:I
1: aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 2 1 newPosition I
MethodParameters:
Name Flags
newPosition
private int setEndPosition(int);
descriptor: (I)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield com.jayway.jsonpath.internal.CharacterIndex.endPosition:I
1: aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.endPosition:I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 2 1 newPosition I
MethodParameters:
Name Flags
newPosition
public int position();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
public int indexOfClosingSquareBracket(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: iload 1
istore 2
start local 2 1: goto 5
2: StackMap locals: int
StackMap stack:
aload 0
iload 2
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
bipush 93
if_icmpne 4
3: iload 2
ireturn
4: StackMap locals:
StackMap stack:
iinc 2 1
5: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.inBounds:(I)Z
ifne 2
6: iconst_m1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 7 1 startPosition I
1 7 2 readPosition I
MethodParameters:
Name Flags
startPosition
public int indexOfMatchingCloseChar(int, char, char, boolean, boolean);
descriptor: (ICCZZ)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
iload 1
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
iload 2
if_icmpeq 2
1: new com.jayway.jsonpath.InvalidPathException
dup
new java.lang.StringBuilder
dup
ldc "Expected "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
ldc " but found "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
iload 1
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial com.jayway.jsonpath.InvalidPathException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
iconst_1
istore 6
start local 6 3: iload 1
iconst_1
iadd
istore 7
start local 7 4: goto 25
5: StackMap locals: int int
StackMap stack:
iload 4
ifeq 12
6: aload 0
iload 7
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
istore 8
start local 8 7: iload 8
bipush 39
if_icmpeq 8
iload 8
bipush 34
if_icmpne 12
8: StackMap locals: int
StackMap stack:
aload 0
iload 7
iload 8
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.nextIndexOfUnescaped:(IC)I
istore 7
9: iload 7
iconst_m1
if_icmpne 11
10: new com.jayway.jsonpath.InvalidPathException
dup
new java.lang.StringBuilder
dup
ldc "Could not find matching close quote for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 8
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
ldc " when parsing : "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.charSequence:Ljava/lang/CharSequence;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial com.jayway.jsonpath.InvalidPathException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals:
StackMap stack:
iinc 7 1
end local 8 12: StackMap locals:
StackMap stack:
iload 5
ifeq 18
13: aload 0
iload 7
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
bipush 47
if_icmpne 18
14: aload 0
iload 7
bipush 47
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.nextIndexOfUnescaped:(IC)I
istore 7
15: iload 7
iconst_m1
if_icmpne 17
16: new com.jayway.jsonpath.InvalidPathException
dup
new java.lang.StringBuilder
dup
ldc "Could not find matching close for / when parsing regex in : "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.charSequence:Ljava/lang/CharSequence;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial com.jayway.jsonpath.InvalidPathException.<init>:(Ljava/lang/String;)V
athrow
17: StackMap locals:
StackMap stack:
iinc 7 1
18: StackMap locals:
StackMap stack:
aload 0
iload 7
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
iload 2
if_icmpne 20
19: iinc 6 1
20: StackMap locals:
StackMap stack:
aload 0
iload 7
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
iload 3
if_icmpne 24
21: iinc 6 -1
22: iload 6
ifne 24
23: iload 7
ireturn
24: StackMap locals:
StackMap stack:
iinc 7 1
25: StackMap locals:
StackMap stack:
aload 0
iload 7
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.inBounds:(I)Z
ifne 5
26: iconst_m1
ireturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 27 1 startPosition I
0 27 2 openChar C
0 27 3 closeChar C
0 27 4 skipStrings Z
0 27 5 skipRegex Z
3 27 6 opened I
4 27 7 readPosition I
7 12 8 quoteChar C
MethodParameters:
Name Flags
startPosition
openChar
closeChar
skipStrings
skipRegex
public int indexOfClosingBracket(int, boolean, boolean);
descriptor: (IZZ)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
bipush 40
bipush 41
iload 2
iload 3
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.indexOfMatchingCloseChar:(ICCZZ)I
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 1 1 startPosition I
0 1 2 skipStrings Z
0 1 3 skipRegex Z
MethodParameters:
Name Flags
startPosition
skipStrings
skipRegex
public int indexOfNextSignificantChar(char);
descriptor: (C)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
iload 1
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.indexOfNextSignificantChar:(IC)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 1 1 c C
MethodParameters:
Name Flags
c
public int indexOfNextSignificantChar(int, char);
descriptor: (IC)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iload 1
iconst_1
iadd
istore 3
start local 3 1: goto 3
2: StackMap locals: int
StackMap stack:
iinc 3 1
3: StackMap locals:
StackMap stack:
aload 0
iload 3
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.isOutOfBounds:(I)Z
ifne 4
aload 0
iload 3
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
bipush 32
if_icmpeq 2
4: StackMap locals:
StackMap stack:
aload 0
iload 3
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
iload 2
if_icmpne 6
5: iload 3
ireturn
6: StackMap locals:
StackMap stack:
iconst_m1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 7 1 startPosition I
0 7 2 c C
1 7 3 readPosition I
MethodParameters:
Name Flags
startPosition
c
public int nextIndexOf(char);
descriptor: (C)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
iconst_1
iadd
iload 1
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.nextIndexOf:(IC)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 1 1 c C
MethodParameters:
Name Flags
c
public int nextIndexOf(int, char);
descriptor: (IC)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iload 1
istore 3
start local 3 1: goto 5
2: StackMap locals: int
StackMap stack:
aload 0
iload 3
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
iload 2
if_icmpne 4
3: iload 3
ireturn
4: StackMap locals:
StackMap stack:
iinc 3 1
5: StackMap locals:
StackMap stack:
aload 0
iload 3
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.isOutOfBounds:(I)Z
ifeq 2
6: iconst_m1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 7 1 startPosition I
0 7 2 c C
1 7 3 readPosition I
MethodParameters:
Name Flags
startPosition
c
public int nextIndexOfUnescaped(char);
descriptor: (C)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
iload 1
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.nextIndexOfUnescaped:(IC)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 1 1 c C
MethodParameters:
Name Flags
c
public int nextIndexOfUnescaped(int, char);
descriptor: (IC)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: iload 1
iconst_1
iadd
istore 3
start local 3 1: iconst_0
istore 4
start local 4 2: goto 12
3: StackMap locals: int int
StackMap stack:
iload 4
ifeq 6
4: iconst_0
istore 4
5: goto 11
StackMap locals:
StackMap stack:
6: bipush 92
aload 0
iload 3
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
if_icmpne 9
7: iconst_1
istore 4
8: goto 11
StackMap locals:
StackMap stack:
9: iload 2
aload 0
iload 3
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
if_icmpne 11
iload 4
ifne 11
10: iload 3
ireturn
11: StackMap locals:
StackMap stack:
iinc 3 1
12: StackMap locals:
StackMap stack:
aload 0
iload 3
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.isOutOfBounds:(I)Z
ifeq 3
13: iconst_m1
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 14 1 startPosition I
0 14 2 c C
1 14 3 readPosition I
2 14 4 inEscape Z
MethodParameters:
Name Flags
startPosition
c
public char charAtOr(int, char);
descriptor: (IC)C
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.inBounds:(I)Z
ifne 1
iload 2
ireturn
1: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 2 1 postition I
0 2 2 defaultChar C
MethodParameters:
Name Flags
postition
defaultChar
public boolean nextSignificantCharIs(int, char);
descriptor: (IC)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iload 1
iconst_1
iadd
istore 3
start local 3 1: goto 3
2: StackMap locals: int
StackMap stack:
iinc 3 1
3: StackMap locals:
StackMap stack:
aload 0
iload 3
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.isOutOfBounds:(I)Z
ifne 4
aload 0
iload 3
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
bipush 32
if_icmpeq 2
4: StackMap locals:
StackMap stack:
aload 0
iload 3
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.isOutOfBounds:(I)Z
ifne 5
aload 0
iload 3
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
iload 2
if_icmpne 5
iconst_1
ireturn
StackMap locals:
StackMap stack:
5: iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 6 1 startPosition I
0 6 2 c C
1 6 3 readPosition I
MethodParameters:
Name Flags
startPosition
c
public boolean nextSignificantCharIs(char);
descriptor: (C)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
iload 1
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.nextSignificantCharIs:(IC)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 1 1 c C
MethodParameters:
Name Flags
c
public char nextSignificantChar();
descriptor: ()C
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.nextSignificantChar:(I)C
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
public char nextSignificantChar(int);
descriptor: (I)C
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: iload 1
iconst_1
iadd
istore 2
start local 2 1: goto 3
2: StackMap locals: int
StackMap stack:
iinc 2 1
3: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.isOutOfBounds:(I)Z
ifne 4
aload 0
iload 2
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
bipush 32
if_icmpeq 2
4: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.isOutOfBounds:(I)Z
ifne 6
5: aload 0
iload 2
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
ireturn
6: StackMap locals:
StackMap stack:
bipush 32
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 7 1 startPosition I
1 7 2 readPosition I
MethodParameters:
Name Flags
startPosition
public void readSignificantChar(char);
descriptor: (C)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.skipBlanks:()Lcom/jayway/jsonpath/internal/CharacterIndex;
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.currentChar:()C
iload 1
if_icmpeq 2
1: new com.jayway.jsonpath.InvalidPathException
dup
ldc "Expected character: %c"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 1
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial com.jayway.jsonpath.InvalidPathException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.incrementPosition:(I)I
pop
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 4 1 c C
MethodParameters:
Name Flags
c
public void readSignificantSubSequence(java.lang.CharSequence);
descriptor: (Ljava/lang/CharSequence;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.skipBlanks:()Lcom/jayway/jsonpath/internal/CharacterIndex;
pop
1: aload 0
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
aload 1
invokeinterface java.lang.CharSequence.length:()I
iadd
iconst_1
isub
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.inBounds:(I)Z
ifne 3
2: new com.jayway.jsonpath.InvalidPathException
dup
ldc "End of string reached while expecting: %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial com.jayway.jsonpath.InvalidPathException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
aload 1
invokeinterface java.lang.CharSequence.length:()I
iadd
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.subSequence:(II)Ljava/lang/CharSequence;
aload 1
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 5
4: new com.jayway.jsonpath.InvalidPathException
dup
ldc "Expected: %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial com.jayway.jsonpath.InvalidPathException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 0
aload 1
invokeinterface java.lang.CharSequence.length:()I
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.incrementPosition:(I)I
pop
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 7 1 s Ljava/lang/CharSequence;
MethodParameters:
Name Flags
s
public int indexOfPreviousSignificantChar(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: iload 1
iconst_1
isub
istore 2
start local 2 1: goto 3
2: StackMap locals: int
StackMap stack:
iinc 2 -1
3: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.isOutOfBounds:(I)Z
ifne 4
aload 0
iload 2
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
bipush 32
if_icmpeq 2
4: StackMap locals:
StackMap stack:
aload 0
iload 2
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.isOutOfBounds:(I)Z
ifne 6
5: iload 2
ireturn
6: StackMap locals:
StackMap stack:
iconst_m1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 7 1 startPosition I
1 7 2 readPosition I
MethodParameters:
Name Flags
startPosition
public int indexOfPreviousSignificantChar();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.indexOfPreviousSignificantChar:(I)I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
public char previousSignificantChar(int);
descriptor: (I)C
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.indexOfPreviousSignificantChar:(I)I
istore 2
start local 2 1: iload 2
iconst_m1
if_icmpne 2
bipush 32
ireturn
2: StackMap locals: int
StackMap stack:
aload 0
iload 2
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 3 1 startPosition I
1 3 2 previousSignificantCharIndex I
MethodParameters:
Name Flags
startPosition
public char previousSignificantChar();
descriptor: ()C
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.previousSignificantChar:(I)C
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
public boolean currentIsTail();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.endPosition:I
if_icmplt 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
public boolean hasMoreCharacters();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
iconst_1
iadd
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.inBounds:(I)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
public boolean inBounds(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
iflt 1
iload 1
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.endPosition:I
if_icmpgt 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 2 1 idx I
MethodParameters:
Name Flags
idx
public boolean inBounds();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.inBounds:(I)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
public boolean isOutOfBounds(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.inBounds:(I)Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 3 1 idx I
MethodParameters:
Name Flags
idx
public java.lang.CharSequence subSequence(int, int);
descriptor: (II)Ljava/lang/CharSequence;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.charSequence:Ljava/lang/CharSequence;
iload 1
iload 2
invokeinterface java.lang.CharSequence.subSequence:(II)Ljava/lang/CharSequence;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 1 1 start I
0 1 2 end I
MethodParameters:
Name Flags
start
end
public java.lang.CharSequence charSequence();
descriptor: ()Ljava/lang/CharSequence;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.charSequence:Ljava/lang/CharSequence;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.charSequence:Ljava/lang/CharSequence;
invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
public boolean isNumberCharacter(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.charAt:(I)C
istore 2
start local 2 1: iload 2
invokestatic java.lang.Character.isDigit:(C)Z
ifne 2
iload 2
bipush 45
if_icmpeq 2
iload 2
bipush 46
if_icmpeq 2
iconst_0
ireturn
StackMap locals: int
StackMap stack:
2: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
0 3 1 readPosition I
1 3 2 c C
MethodParameters:
Name Flags
readPosition
public com.jayway.jsonpath.internal.CharacterIndex skipBlanks();
descriptor: ()Lcom/jayway/jsonpath/internal/CharacterIndex;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: goto 2
1: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.incrementPosition:(I)I
pop
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.inBounds:()Z
ifeq 3
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.endPosition:I
if_icmpge 3
aload 0
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.currentChar:()C
bipush 32
if_icmpeq 1
3: StackMap locals:
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
private com.jayway.jsonpath.internal.CharacterIndex skipBlanksAtEnd();
descriptor: ()Lcom/jayway/jsonpath/internal/CharacterIndex;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: goto 2
1: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.decrementEndPosition:(I)I
pop
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.inBounds:()Z
ifeq 3
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.position:I
aload 0
getfield com.jayway.jsonpath.internal.CharacterIndex.endPosition:I
if_icmpge 3
aload 0
bipush 32
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.lastCharIs:(C)Z
ifne 1
3: StackMap locals:
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
public com.jayway.jsonpath.internal.CharacterIndex trim();
descriptor: ()Lcom/jayway/jsonpath/internal/CharacterIndex;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.skipBlanks:()Lcom/jayway/jsonpath/internal/CharacterIndex;
pop
1: aload 0
invokevirtual com.jayway.jsonpath.internal.CharacterIndex.skipBlanksAtEnd:()Lcom/jayway/jsonpath/internal/CharacterIndex;
pop
2: aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/jayway/jsonpath/internal/CharacterIndex;
}
SourceFile: "CharacterIndex.java"