public class net.sourceforge.cobertura.coveragedata.SwitchData implements net.sourceforge.cobertura.coveragedata.BranchCoverageData, java.lang.Comparable<java.lang.Object>, java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: net.sourceforge.cobertura.coveragedata.SwitchData
super_class: java.lang.Object
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 9
private int switchNumber;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private long defaultHits;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private long[] hits;
descriptor: [J
flags: (0x0002) ACC_PRIVATE
private int[] keys;
descriptor: [I
flags: (0x0002) ACC_PRIVATE
private int maxBranches;
descriptor: I
flags: (0x0002) ACC_PRIVATE
public void <init>(int, int[], int);
descriptor: (I[II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iload 1
putfield net.sourceforge.cobertura.coveragedata.SwitchData.switchNumber:I
2: aload 0
lconst_0
putfield net.sourceforge.cobertura.coveragedata.SwitchData.defaultHits:J
3: aload 0
aload 2
arraylength
newarray 11
putfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
4: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
lconst_0
invokestatic java.util.Arrays.fill:([JJ)V
5: aload 0
aload 2
arraylength
newarray 10
putfield net.sourceforge.cobertura.coveragedata.SwitchData.keys:[I
6: aload 2
iconst_0
aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.keys:[I
iconst_0
aload 2
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
7: aload 0
iload 3
putfield net.sourceforge.cobertura.coveragedata.SwitchData.maxBranches:I
8: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lnet/sourceforge/cobertura/coveragedata/SwitchData;
0 9 1 switchNumber I
0 9 2 keys [I
0 9 3 maxBranches I
MethodParameters:
Name Flags
switchNumber
keys
maxBranches
public void <init>(int, int, int, int);
descriptor: (IIII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iload 1
putfield net.sourceforge.cobertura.coveragedata.SwitchData.switchNumber:I
2: aload 0
lconst_0
putfield net.sourceforge.cobertura.coveragedata.SwitchData.defaultHits:J
3: aload 0
iload 3
iload 2
isub
iconst_1
iadd
newarray 11
putfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
4: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
lconst_0
invokestatic java.util.Arrays.fill:([JJ)V
5: aload 0
iload 3
iload 2
isub
iconst_1
iadd
newarray 10
putfield net.sourceforge.cobertura.coveragedata.SwitchData.keys:[I
6: iconst_0
istore 5
start local 5 7: goto 9
StackMap locals: net.sourceforge.cobertura.coveragedata.SwitchData int int int int int
StackMap stack:
8: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.keys:[I
iload 5
iinc 5 1
iload 2
iinc 2 1
iastore
StackMap locals:
StackMap stack:
9: iload 2
iload 3
if_icmple 8
end local 5 10: aload 0
iload 4
putfield net.sourceforge.cobertura.coveragedata.SwitchData.maxBranches:I
11: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lnet/sourceforge/cobertura/coveragedata/SwitchData;
0 12 1 switchNumber I
0 12 2 min I
0 12 3 max I
0 12 4 maxBranches I
7 10 5 i I
MethodParameters:
Name Flags
switchNumber
min
max
maxBranches
public void <init>(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
iconst_0
newarray 10
iload 2
invokespecial net.sourceforge.cobertura.coveragedata.SwitchData.<init>:(I[II)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lnet/sourceforge/cobertura/coveragedata/SwitchData;
0 2 1 switchNumber I
0 2 2 maxBranches I
MethodParameters:
Name Flags
switchNumber
maxBranches
public int compareTo(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
ldc Lnet/sourceforge/cobertura/coveragedata/SwitchData;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 2
1: ldc 2147483647
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.switchNumber:I
aload 1
checkcast net.sourceforge.cobertura.coveragedata.SwitchData
getfield net.sourceforge.cobertura.coveragedata.SwitchData.switchNumber:I
isub
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lnet/sourceforge/cobertura/coveragedata/SwitchData;
0 3 1 o Ljava/lang/Object;
MethodParameters:
Name Flags
o
void touchBranch(int, int);
descriptor: (II)V
flags: (0x0000)
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iload 1
iconst_m1
if_icmpne 3
1: aload 0
dup
getfield net.sourceforge.cobertura.coveragedata.SwitchData.defaultHits:J
iload 2
i2l
ladd
putfield net.sourceforge.cobertura.coveragedata.SwitchData.defaultHits:J
2: goto 9
3: StackMap locals:
StackMap stack:
aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
arraylength
iload 1
if_icmpgt 8
4: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
astore 3
start local 3 5: aload 0
iload 1
iconst_1
iadd
newarray 11
putfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
6: aload 3
iconst_0
aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
iconst_0
aload 3
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
7: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
aload 3
arraylength
aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
arraylength
iconst_1
isub
lconst_0
invokestatic java.util.Arrays.fill:([JIIJ)V
end local 3 8: StackMap locals:
StackMap stack:
aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
iload 1
dup2
laload
iload 2
i2l
ladd
lastore
9: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lnet/sourceforge/cobertura/coveragedata/SwitchData;
0 10 1 branch I
0 10 2 new_hits I
5 8 3 old [J
MethodParameters:
Name Flags
branch
new_hits
public int getSwitchNumber();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.switchNumber:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lnet/sourceforge/cobertura/coveragedata/SwitchData;
public long getHits(int);
descriptor: (I)J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
arraylength
iload 1
if_icmple 1
aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
iload 1
laload
goto 2
StackMap locals:
StackMap stack:
1: ldc -1
StackMap locals:
StackMap stack: long
2: lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lnet/sourceforge/cobertura/coveragedata/SwitchData;
0 3 1 branch I
MethodParameters:
Name Flags
branch
public long getDefaultHits();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.defaultHits:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lnet/sourceforge/cobertura/coveragedata/SwitchData;
public double getBranchCoverageRate();
descriptor: ()D
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual net.sourceforge.cobertura.coveragedata.SwitchData.getNumberOfValidBranches:()I
istore 1
start local 1 1: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.defaultHits:J
lconst_0
lcmp
ifle 2
iconst_1
goto 3
StackMap locals: int
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: istore 2
start local 2 4: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
arraylength
iconst_1
isub
istore 3
start local 3 5: goto 9
StackMap locals: int int
StackMap stack:
6: iload 2
aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
iload 3
iinc 3 -1
laload
lconst_0
lcmp
ifle 7
iconst_1
goto 8
StackMap locals:
StackMap stack: int
7: iconst_0
StackMap locals: net.sourceforge.cobertura.coveragedata.SwitchData int int int
StackMap stack: int int
8: iadd
istore 2
StackMap locals:
StackMap stack:
9: iload 3
ifge 6
end local 3 10: iload 2
i2d
iload 1
i2d
ddiv
dreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lnet/sourceforge/cobertura/coveragedata/SwitchData;
1 11 1 branches I
4 11 2 hit I
5 10 3 i I
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
if_acmpne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 1
ifnull 3
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 4
3: StackMap locals:
StackMap stack:
iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 1
checkcast net.sourceforge.cobertura.coveragedata.SwitchData
astore 2
start local 2 5: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.defaultHits:J
aload 2
getfield net.sourceforge.cobertura.coveragedata.SwitchData.defaultHits:J
lcmp
ifne 9
6: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
aload 2
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
invokestatic java.util.Arrays.equals:([J[J)Z
ifeq 9
7: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.switchNumber:I
aload 2
getfield net.sourceforge.cobertura.coveragedata.SwitchData.switchNumber:I
if_icmpne 9
8: iconst_1
ireturn
StackMap locals: net.sourceforge.cobertura.coveragedata.SwitchData
StackMap stack:
9: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lnet/sourceforge/cobertura/coveragedata/SwitchData;
0 10 1 obj Ljava/lang/Object;
5 10 2 switchData Lnet/sourceforge/cobertura/coveragedata/SwitchData;
MethodParameters:
Name Flags
obj
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.switchNumber:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lnet/sourceforge/cobertura/coveragedata/SwitchData;
public int getNumberOfCoveredBranches();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.defaultHits:J
lconst_0
lcmp
ifle 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: istore 1
start local 1 3: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
arraylength
iconst_1
isub
istore 2
start local 2 4: goto 8
5: StackMap locals: int int
StackMap stack:
aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
iload 2
laload
lconst_0
lcmp
ifle 7
6: iinc 1 1
7: StackMap locals:
StackMap stack:
iinc 2 -1
StackMap locals:
StackMap stack:
8: iload 2
ifge 5
end local 2 9: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lnet/sourceforge/cobertura/coveragedata/SwitchData;
3 10 1 ret I
4 9 2 i I
public int getNumberOfValidBranches();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
arraylength
iconst_1
iadd
aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.maxBranches:I
invokestatic java.lang.Math.min:(II)I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lnet/sourceforge/cobertura/coveragedata/SwitchData;
public void merge(net.sourceforge.cobertura.coveragedata.BranchCoverageData);
descriptor: (Lnet/sourceforge/cobertura/coveragedata/BranchCoverageData;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: aload 1
checkcast net.sourceforge.cobertura.coveragedata.SwitchData
astore 2
start local 2 1: aload 0
dup
getfield net.sourceforge.cobertura.coveragedata.SwitchData.defaultHits:J
aload 2
getfield net.sourceforge.cobertura.coveragedata.SwitchData.defaultHits:J
ladd
putfield net.sourceforge.cobertura.coveragedata.SwitchData.defaultHits:J
2: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
arraylength
aload 2
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
arraylength
invokestatic java.lang.Math.min:(II)I
iconst_1
isub
istore 3
start local 3 3: goto 6
4: StackMap locals: net.sourceforge.cobertura.coveragedata.SwitchData int
StackMap stack:
aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
iload 3
dup2
laload
aload 2
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
iload 3
laload
ladd
lastore
5: iinc 3 -1
StackMap locals:
StackMap stack:
6: iload 3
ifge 4
end local 3 7: aload 2
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
arraylength
aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
arraylength
if_icmple 14
8: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
astore 3
start local 3 9: aload 0
aload 2
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
arraylength
newarray 11
putfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
10: aload 3
iconst_0
aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
iconst_0
aload 3
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
11: aload 2
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
aload 3
arraylength
aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
aload 3
arraylength
12: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.hits:[J
arraylength
aload 3
arraylength
isub
13: invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
end local 3 14: StackMap locals:
StackMap stack:
aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.keys:[I
arraylength
ifne 16
aload 2
getfield net.sourceforge.cobertura.coveragedata.SwitchData.keys:[I
arraylength
ifle 16
15: aload 0
aload 2
getfield net.sourceforge.cobertura.coveragedata.SwitchData.keys:[I
putfield net.sourceforge.cobertura.coveragedata.SwitchData.keys:[I
16: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.maxBranches:I
aload 2
invokevirtual net.sourceforge.cobertura.coveragedata.SwitchData.getMaxBranches:()I
invokestatic java.lang.Math.min:(II)I
putfield net.sourceforge.cobertura.coveragedata.SwitchData.maxBranches:I
17: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lnet/sourceforge/cobertura/coveragedata/SwitchData;
0 18 1 coverageData Lnet/sourceforge/cobertura/coveragedata/BranchCoverageData;
1 18 2 switchData Lnet/sourceforge/cobertura/coveragedata/SwitchData;
3 7 3 i I
9 14 3 old [J
MethodParameters:
Name Flags
coverageData
public int getMaxBranches();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield net.sourceforge.cobertura.coveragedata.SwitchData.maxBranches:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lnet/sourceforge/cobertura/coveragedata/SwitchData;
public void setMaxBranches(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 net.sourceforge.cobertura.coveragedata.SwitchData.maxBranches:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lnet/sourceforge/cobertura/coveragedata/SwitchData;
0 2 1 maxBranches I
MethodParameters:
Name Flags
maxBranches
}
Signature: Ljava/lang/Object;Lnet/sourceforge/cobertura/coveragedata/BranchCoverageData;Ljava/lang/Comparable<Ljava/lang/Object;>;Ljava/io/Serializable;
SourceFile: "SwitchData.java"
RuntimeInvisibleAnnotations:
net.sourceforge.cobertura.CoverageIgnore()