public class org.aspectj.weaver.patterns.BasicTokenSource implements org.aspectj.weaver.patterns.ITokenSource
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.aspectj.weaver.patterns.BasicTokenSource
super_class: java.lang.Object
{
private int index;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private org.aspectj.weaver.patterns.IToken[] tokens;
descriptor: [Lorg/aspectj/weaver/patterns/IToken;
flags: (0x0002) ACC_PRIVATE
private org.aspectj.weaver.ISourceContext sourceContext;
descriptor: Lorg/aspectj/weaver/ISourceContext;
flags: (0x0002) ACC_PRIVATE
public void <init>(org.aspectj.weaver.patterns.IToken[], org.aspectj.weaver.ISourceContext);
descriptor: ([Lorg/aspectj/weaver/patterns/IToken;Lorg/aspectj/weaver/ISourceContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_0
putfield org.aspectj.weaver.patterns.BasicTokenSource.index:I
2: aload 0
aload 1
putfield org.aspectj.weaver.patterns.BasicTokenSource.tokens:[Lorg/aspectj/weaver/patterns/IToken;
3: aload 0
aload 2
putfield org.aspectj.weaver.patterns.BasicTokenSource.sourceContext:Lorg/aspectj/weaver/ISourceContext;
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/aspectj/weaver/patterns/BasicTokenSource;
0 5 1 tokens [Lorg/aspectj/weaver/patterns/IToken;
0 5 2 sourceContext Lorg/aspectj/weaver/ISourceContext;
MethodParameters:
Name Flags
tokens
sourceContext
public int getIndex();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.aspectj.weaver.patterns.BasicTokenSource.index:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/patterns/BasicTokenSource;
public void setIndex(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.aspectj.weaver.patterns.BasicTokenSource.index:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/aspectj/weaver/patterns/BasicTokenSource;
0 2 1 newIndex I
MethodParameters:
Name Flags
newIndex
public org.aspectj.weaver.patterns.IToken next();
descriptor: ()Lorg/aspectj/weaver/patterns/IToken;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield org.aspectj.weaver.patterns.BasicTokenSource.tokens:[Lorg/aspectj/weaver/patterns/IToken;
aload 0
dup
getfield org.aspectj.weaver.patterns.BasicTokenSource.index:I
dup_x1
iconst_1
iadd
putfield org.aspectj.weaver.patterns.BasicTokenSource.index:I
aaload
1: areturn
2: StackMap locals:
StackMap stack: java.lang.ArrayIndexOutOfBoundsException
pop
3: getstatic org.aspectj.weaver.patterns.IToken.EOF:Lorg/aspectj/weaver/patterns/IToken;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/aspectj/weaver/patterns/BasicTokenSource;
Exception table:
from to target type
0 1 2 Class java.lang.ArrayIndexOutOfBoundsException
public org.aspectj.weaver.patterns.IToken peek();
descriptor: ()Lorg/aspectj/weaver/patterns/IToken;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.aspectj.weaver.patterns.BasicTokenSource.tokens:[Lorg/aspectj/weaver/patterns/IToken;
aload 0
getfield org.aspectj.weaver.patterns.BasicTokenSource.index:I
aaload
1: areturn
2: StackMap locals:
StackMap stack: java.lang.ArrayIndexOutOfBoundsException
pop
3: getstatic org.aspectj.weaver.patterns.IToken.EOF:Lorg/aspectj/weaver/patterns/IToken;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/aspectj/weaver/patterns/BasicTokenSource;
Exception table:
from to target type
0 1 2 Class java.lang.ArrayIndexOutOfBoundsException
public org.aspectj.weaver.patterns.IToken peek(int);
descriptor: (I)Lorg/aspectj/weaver/patterns/IToken;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.aspectj.weaver.patterns.BasicTokenSource.tokens:[Lorg/aspectj/weaver/patterns/IToken;
aload 0
getfield org.aspectj.weaver.patterns.BasicTokenSource.index:I
iload 1
iadd
aaload
1: areturn
2: StackMap locals:
StackMap stack: java.lang.ArrayIndexOutOfBoundsException
pop
3: getstatic org.aspectj.weaver.patterns.IToken.EOF:Lorg/aspectj/weaver/patterns/IToken;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/aspectj/weaver/patterns/BasicTokenSource;
0 4 1 offset I
Exception table:
from to target type
0 1 2 Class java.lang.ArrayIndexOutOfBoundsException
MethodParameters:
Name Flags
offset
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: new java.lang.StringBuffer
dup
invokespecial java.lang.StringBuffer.<init>:()V
astore 1
start local 1 1: aload 1
ldc "["
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
2: iconst_0
istore 2
start local 2 3: goto 11
4: StackMap locals: java.lang.StringBuffer int
StackMap stack:
aload 0
getfield org.aspectj.weaver.patterns.BasicTokenSource.tokens:[Lorg/aspectj/weaver/patterns/IToken;
iload 2
aaload
astore 3
start local 3 5: aload 3
ifnonnull 7
6: goto 12
7: StackMap locals: org.aspectj.weaver.patterns.IToken
StackMap stack:
iload 2
ifle 9
8: aload 1
ldc ", "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
9: StackMap locals:
StackMap stack:
aload 1
aload 3
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
end local 3 10: iinc 2 1
StackMap locals:
StackMap stack:
11: iload 2
aload 0
getfield org.aspectj.weaver.patterns.BasicTokenSource.tokens:[Lorg/aspectj/weaver/patterns/IToken;
arraylength
if_icmplt 4
end local 2 12: StackMap locals:
StackMap stack:
aload 1
ldc "]"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
13: aload 1
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/aspectj/weaver/patterns/BasicTokenSource;
1 14 1 buf Ljava/lang/StringBuffer;
3 12 2 i I
5 10 3 t Lorg/aspectj/weaver/patterns/IToken;
public static org.aspectj.weaver.patterns.ITokenSource makeTokenSource(java.lang.String, org.aspectj.weaver.ISourceContext);
descriptor: (Ljava/lang/String;Lorg/aspectj/weaver/ISourceContext;)Lorg/aspectj/weaver/patterns/ITokenSource;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=9, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.lang.String.toCharArray:()[C
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 4
start local 4 3: goto 42
4: StackMap locals: char[] int java.util.List
StackMap stack:
aload 2
iload 3
iinc 3 1
caload
istore 5
start local 5 5: iload 5
lookupswitch { // 22
9: 6
10: 6
13: 6
32: 6
33: 7
34: 30
38: 20
40: 7
41: 7
42: 7
43: 7
44: 7
46: 9
58: 7
60: 7
61: 7
62: 7
63: 7
64: 7
91: 7
93: 7
124: 23
default: 37
}
6: StackMap locals: int
StackMap stack:
goto 42
7: StackMap locals:
StackMap stack:
aload 4
iload 5
invokestatic org.aspectj.weaver.patterns.BasicTokenSource.makeString:(C)Ljava/lang/String;
iload 3
iconst_1
isub
iload 3
iconst_1
isub
invokestatic org.aspectj.weaver.patterns.BasicToken.makeOperator:(Ljava/lang/String;II)Lorg/aspectj/weaver/patterns/BasicToken;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
8: goto 42
9: StackMap locals:
StackMap stack:
iload 3
iconst_2
iadd
aload 2
arraylength
if_icmpgt 18
10: aload 2
iload 3
caload
istore 6
start local 6 11: aload 2
iload 3
iconst_1
iadd
caload
istore 7
start local 7 12: iload 5
iload 6
if_icmpne 16
iload 5
iload 7
if_icmpne 16
13: aload 4
ldc "..."
iload 3
iconst_1
isub
iload 3
iconst_1
iadd
invokestatic org.aspectj.weaver.patterns.BasicToken.makeIdentifier:(Ljava/lang/String;II)Lorg/aspectj/weaver/patterns/BasicToken;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
14: iinc 3 2
15: goto 42
16: StackMap locals: int int
StackMap stack:
aload 4
iload 5
invokestatic org.aspectj.weaver.patterns.BasicTokenSource.makeString:(C)Ljava/lang/String;
iload 3
iconst_1
isub
iload 3
iconst_1
isub
invokestatic org.aspectj.weaver.patterns.BasicToken.makeOperator:(Ljava/lang/String;II)Lorg/aspectj/weaver/patterns/BasicToken;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 7 end local 6 17: goto 42
18: StackMap locals:
StackMap stack:
aload 4
iload 5
invokestatic org.aspectj.weaver.patterns.BasicTokenSource.makeString:(C)Ljava/lang/String;
iload 3
iconst_1
isub
iload 3
iconst_1
isub
invokestatic org.aspectj.weaver.patterns.BasicToken.makeOperator:(Ljava/lang/String;II)Lorg/aspectj/weaver/patterns/BasicToken;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
19: goto 42
20: StackMap locals:
StackMap stack:
iload 3
iconst_1
iadd
aload 2
arraylength
if_icmpgt 23
aload 2
iload 3
caload
bipush 38
if_icmpeq 23
21: aload 4
iload 5
invokestatic org.aspectj.weaver.patterns.BasicTokenSource.makeString:(C)Ljava/lang/String;
iload 3
iconst_1
isub
iload 3
iconst_1
isub
invokestatic org.aspectj.weaver.patterns.BasicToken.makeOperator:(Ljava/lang/String;II)Lorg/aspectj/weaver/patterns/BasicToken;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
22: goto 42
23: StackMap locals:
StackMap stack:
iload 3
aload 2
arraylength
if_icmpne 25
24: new org.aspectj.weaver.BCException
dup
new java.lang.StringBuilder
dup
ldc "bad "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 5
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.aspectj.weaver.BCException.<init>:(Ljava/lang/String;)V
athrow
25: StackMap locals:
StackMap stack:
aload 2
iload 3
iinc 3 1
caload
istore 6
start local 6 26: iload 6
iload 5
if_icmpne 29
27: aload 4
iload 5
iconst_2
invokestatic org.aspectj.weaver.patterns.BasicTokenSource.makeString:(CI)Ljava/lang/String;
iload 3
iconst_2
isub
iload 3
iconst_1
isub
invokestatic org.aspectj.weaver.patterns.BasicToken.makeOperator:(Ljava/lang/String;II)Lorg/aspectj/weaver/patterns/BasicToken;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
28: goto 42
29: StackMap locals: int
StackMap stack:
new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "bad "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 5
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 6 30: StackMap locals:
StackMap stack:
iload 3
iconst_1
isub
istore 7
start local 7 31: goto 33
StackMap locals: java.lang.String org.aspectj.weaver.ISourceContext char[] int java.util.List int top int
StackMap stack:
32: iinc 3 1
StackMap locals:
StackMap stack:
33: iload 3
aload 2
arraylength
if_icmpge 34
aload 2
iload 3
caload
bipush 34
if_icmpne 32
34: StackMap locals:
StackMap stack:
iinc 3 1
35: aload 4
new java.lang.String
dup
aload 2
iload 7
iconst_1
iadd
iload 3
iload 7
isub
iconst_2
isub
invokespecial java.lang.String.<init>:([CII)V
ldc "string"
iload 7
iload 3
iconst_1
isub
invokestatic org.aspectj.weaver.patterns.BasicToken.makeLiteral:(Ljava/lang/String;Ljava/lang/String;II)Lorg/aspectj/weaver/patterns/BasicToken;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
36: goto 42
end local 7 37: StackMap locals: java.lang.String org.aspectj.weaver.ISourceContext char[] int java.util.List int
StackMap stack:
iload 3
iconst_1
isub
istore 8
start local 8 38: goto 40
StackMap locals: java.lang.String org.aspectj.weaver.ISourceContext char[] int java.util.List int top top int
StackMap stack:
39: iinc 3 1
StackMap locals:
StackMap stack:
40: iload 3
aload 2
arraylength
if_icmpge 41
aload 2
iload 3
caload
invokestatic java.lang.Character.isJavaIdentifierPart:(C)Z
ifne 39
41: StackMap locals:
StackMap stack:
aload 4
new java.lang.String
dup
aload 2
iload 8
iload 3
iload 8
isub
invokespecial java.lang.String.<init>:([CII)V
iload 8
iload 3
iconst_1
isub
invokestatic org.aspectj.weaver.patterns.BasicToken.makeIdentifier:(Ljava/lang/String;II)Lorg/aspectj/weaver/patterns/BasicToken;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 8 end local 5 42: StackMap locals: java.lang.String org.aspectj.weaver.ISourceContext char[] int java.util.List
StackMap stack:
iload 3
aload 2
arraylength
if_icmplt 4
43: new org.aspectj.weaver.patterns.BasicTokenSource
dup
aload 4
aload 4
invokeinterface java.util.List.size:()I
anewarray org.aspectj.weaver.patterns.IToken
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast org.aspectj.weaver.patterns.IToken[]
aload 1
invokespecial org.aspectj.weaver.patterns.BasicTokenSource.<init>:([Lorg/aspectj/weaver/patterns/IToken;Lorg/aspectj/weaver/ISourceContext;)V
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 44 0 input Ljava/lang/String;
0 44 1 context Lorg/aspectj/weaver/ISourceContext;
1 44 2 chars [C
2 44 3 i I
3 44 4 tokens Ljava/util/List<Lorg/aspectj/weaver/patterns/BasicToken;>;
5 42 5 ch C
11 17 6 nextChar1 C
12 17 7 nextChar2 C
26 30 6 nextChar C
31 37 7 start0 I
38 42 8 start I
MethodParameters:
Name Flags
input
context
private static java.lang.String makeString(char);
descriptor: (C)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iload 0
invokestatic java.lang.Character.toString:(C)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 ch C
MethodParameters:
Name Flags
ch
private static java.lang.String makeString(char, int);
descriptor: (CI)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: iload 1
newarray 5
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: goto 4
StackMap locals: char[] int
StackMap stack:
3: aload 2
iload 3
iload 0
castore
iinc 3 1
StackMap locals:
StackMap stack:
4: iload 3
iload 1
if_icmplt 3
end local 3 5: new java.lang.String
dup
aload 2
invokespecial java.lang.String.<init>:([C)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 ch C
0 6 1 count I
1 6 2 chars [C
2 5 3 i I
MethodParameters:
Name Flags
ch
count
public org.aspectj.weaver.ISourceContext getSourceContext();
descriptor: ()Lorg/aspectj/weaver/ISourceContext;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.aspectj.weaver.patterns.BasicTokenSource.sourceContext:Lorg/aspectj/weaver/ISourceContext;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/aspectj/weaver/patterns/BasicTokenSource;
public void setSourceContext(org.aspectj.weaver.ISourceContext);
descriptor: (Lorg/aspectj/weaver/ISourceContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.aspectj.weaver.patterns.BasicTokenSource.sourceContext:Lorg/aspectj/weaver/ISourceContext;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/aspectj/weaver/patterns/BasicTokenSource;
0 2 1 context Lorg/aspectj/weaver/ISourceContext;
MethodParameters:
Name Flags
context
public boolean hasMoreTokens();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.aspectj.weaver.patterns.BasicTokenSource.index:I
aload 0
getfield org.aspectj.weaver.patterns.BasicTokenSource.tokens:[Lorg/aspectj/weaver/patterns/IToken;
arraylength
if_icmpge 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 Lorg/aspectj/weaver/patterns/BasicTokenSource;
}
SourceFile: "BasicTokenSource.java"