class org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet
super_class: java.lang.Object
{
public char[][] names;
descriptor: [[C
flags: (0x0001) ACC_PUBLIC
public int elementSize;
descriptor: I
flags: (0x0001) ACC_PUBLIC
public int threshold;
descriptor: I
flags: (0x0001) ACC_PUBLIC
void <init>(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=2
start local 0 // org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet this
start local 1 // int size
0: .line 56
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 57
aload 0 /* this */
iconst_0
putfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.elementSize:I
2: .line 58
aload 0 /* this */
iload 1 /* size */
putfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.threshold:I
3: .line 59
iload 1 /* size */
i2f
ldc 1.5
fmul
f2i
istore 2 /* extraRoom */
start local 2 // int extraRoom
4: .line 60
aload 0 /* this */
getfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.threshold:I
iload 2 /* extraRoom */
if_icmpne 6
5: .line 61
iinc 2 /* extraRoom */ 1
6: .line 62
StackMap locals: org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet int int
StackMap stack:
aload 0 /* this */
iload 2 /* extraRoom */
anewarray char[]
putfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.names:[[C
7: .line 63
return
end local 2 // int extraRoom
end local 1 // int size
end local 0 // org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern$PackageNameSet;
0 8 1 size I
4 8 2 extraRoom I
MethodParameters:
Name Flags
size
char[] add(char[]);
descriptor: ([C)[C
flags: (0x0000)
Code:
stack=3, locals=5, args_size=2
start local 0 // org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet this
start local 1 // char[] name
0: .line 66
aload 0 /* this */
getfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.names:[[C
arraylength
istore 2 /* length */
start local 2 // int length
1: .line 67
aload 1 /* name */
invokestatic org.eclipse.jdt.core.compiler.CharOperation.hashCode:([C)I
iload 2 /* length */
irem
istore 3 /* index */
start local 3 // int index
2: .line 69
goto 5
start local 4 // char[] current
3: .line 70
StackMap locals: int int char[]
StackMap stack:
aload 4 /* current */
aload 1 /* name */
invokestatic org.eclipse.jdt.core.compiler.CharOperation.equals:([C[C)Z
ifeq 4
aload 4 /* current */
areturn
4: .line 71
StackMap locals:
StackMap stack:
iinc 3 /* index */ 1
iload 3 /* index */
iload 2 /* length */
if_icmpne 5
iconst_0
istore 3 /* index */
end local 4 // char[] current
5: .line 69
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.names:[[C
iload 3 /* index */
aaload
dup
astore 4 /* current */
start local 4 // char[] current
6: ifnonnull 3
7: .line 73
aload 0 /* this */
getfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.names:[[C
iload 3 /* index */
aload 1 /* name */
aastore
8: .line 76
aload 0 /* this */
dup
getfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.elementSize:I
iconst_1
iadd
dup_x1
putfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.elementSize:I
aload 0 /* this */
getfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.threshold:I
if_icmple 9
aload 0 /* this */
invokevirtual org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.rehash:()V
9: .line 77
StackMap locals: char[]
StackMap stack:
aload 1 /* name */
areturn
end local 4 // char[] current
end local 3 // int index
end local 2 // int length
end local 1 // char[] name
end local 0 // org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern$PackageNameSet;
0 10 1 name [C
1 10 2 length I
2 10 3 index I
3 5 4 current [C
6 10 4 current [C
MethodParameters:
Name Flags
name
void rehash();
descriptor: ()V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=1
start local 0 // org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet this
0: .line 81
new org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet
dup
aload 0 /* this */
getfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.elementSize:I
iconst_2
imul
invokespecial org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.<init>:(I)V
astore 1 /* newSet */
start local 1 // org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet newSet
1: .line 83
aload 0 /* this */
getfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.names:[[C
arraylength
istore 3 /* i */
start local 3 // int i
2: goto 6
3: .line 84
StackMap locals: org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet top int
StackMap stack:
aload 0 /* this */
getfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.names:[[C
iload 3 /* i */
aaload
dup
astore 2 /* current */
start local 2 // char[] current
4: ifnull 6
5: .line 85
aload 1 /* newSet */
aload 2 /* current */
invokevirtual org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.add:([C)[C
pop
end local 2 // char[] current
6: .line 83
StackMap locals:
StackMap stack:
iinc 3 /* i */ -1
iload 3 /* i */
ifge 3
end local 3 // int i
7: .line 87
aload 0 /* this */
aload 1 /* newSet */
getfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.names:[[C
putfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.names:[[C
8: .line 88
aload 0 /* this */
aload 1 /* newSet */
getfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.elementSize:I
putfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.elementSize:I
9: .line 89
aload 0 /* this */
aload 1 /* newSet */
getfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.threshold:I
putfield org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet.threshold:I
10: .line 90
return
end local 1 // org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet newSet
end local 0 // org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet this
LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern$PackageNameSet;
1 11 1 newSet Lorg/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern$PackageNameSet;
4 6 2 current [C
2 7 3 i I
}
SourceFile: "TypeDeclarationPattern.java"
NestHost: org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern
InnerClasses:
PackageNameSet = org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern$PackageNameSet of org.eclipse.jdt.internal.core.search.matching.TypeDeclarationPattern