class org.eclipse.jgit.diff.HistogramDiff$State<S extends org.eclipse.jgit.diff.Sequence>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.eclipse.jgit.diff.HistogramDiff$State
super_class: java.lang.Object
{
private final org.eclipse.jgit.diff.HashedSequenceComparator<S> cmp;
descriptor: Lorg/eclipse/jgit/diff/HashedSequenceComparator;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/eclipse/jgit/diff/HashedSequenceComparator<TS;>;
private final org.eclipse.jgit.diff.HashedSequence<S> a;
descriptor: Lorg/eclipse/jgit/diff/HashedSequence;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/eclipse/jgit/diff/HashedSequence<TS;>;
private final org.eclipse.jgit.diff.HashedSequence<S> b;
descriptor: Lorg/eclipse/jgit/diff/HashedSequence;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/eclipse/jgit/diff/HashedSequence<TS;>;
private final java.util.List<org.eclipse.jgit.diff.Edit> queue;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Lorg/eclipse/jgit/diff/Edit;>;
final org.eclipse.jgit.diff.EditList edits;
descriptor: Lorg/eclipse/jgit/diff/EditList;
flags: (0x0010) ACC_FINAL
final org.eclipse.jgit.diff.HistogramDiff this$0;
descriptor: Lorg/eclipse/jgit/diff/HistogramDiff;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private static volatile int[] $SWITCH_TABLE$org$eclipse$jgit$diff$Edit$Type;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
void <init>(org.eclipse.jgit.diff.EditList, org.eclipse.jgit.diff.HashedSequenceComparator<S>, org.eclipse.jgit.diff.HashedSequence<S>, org.eclipse.jgit.diff.HashedSequence<S>);
descriptor: (Lorg/eclipse/jgit/diff/HistogramDiff;Lorg/eclipse/jgit/diff/EditList;Lorg/eclipse/jgit/diff/HashedSequenceComparator;Lorg/eclipse/jgit/diff/HashedSequence;Lorg/eclipse/jgit/diff/HashedSequence;)V
flags: (0x0000)
Code:
stack=3, locals=6, args_size=6
start local 0 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
putfield org.eclipse.jgit.diff.HistogramDiff$State.this$0:Lorg/eclipse/jgit/diff/HistogramDiff;
1: aload 0
invokespecial java.lang.Object.<init>:()V
2: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.eclipse.jgit.diff.HistogramDiff$State.queue:Ljava/util/List;
3: aload 0
aload 3
putfield org.eclipse.jgit.diff.HistogramDiff$State.cmp:Lorg/eclipse/jgit/diff/HashedSequenceComparator;
4: aload 0
aload 4
putfield org.eclipse.jgit.diff.HistogramDiff$State.a:Lorg/eclipse/jgit/diff/HashedSequence;
5: aload 0
aload 5
putfield org.eclipse.jgit.diff.HistogramDiff$State.b:Lorg/eclipse/jgit/diff/HashedSequence;
6: aload 0
aload 2
putfield org.eclipse.jgit.diff.HistogramDiff$State.edits:Lorg/eclipse/jgit/diff/EditList;
7: return
end local 5 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/eclipse/jgit/diff/HistogramDiff$State<TS;>;
0 8 2 edits Lorg/eclipse/jgit/diff/EditList;
0 8 3 cmp Lorg/eclipse/jgit/diff/HashedSequenceComparator<TS;>;
0 8 4 a Lorg/eclipse/jgit/diff/HashedSequence<TS;>;
0 8 5 b Lorg/eclipse/jgit/diff/HashedSequence<TS;>;
Signature: (Lorg/eclipse/jgit/diff/EditList;Lorg/eclipse/jgit/diff/HashedSequenceComparator<TS;>;Lorg/eclipse/jgit/diff/HashedSequence<TS;>;Lorg/eclipse/jgit/diff/HashedSequence<TS;>;)V
MethodParameters:
Name Flags
this$0 final
edits
cmp
a
b
void diffRegion(org.eclipse.jgit.diff.Edit);
descriptor: (Lorg/eclipse/jgit/diff/Edit;)V
flags: (0x0000)
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.eclipse.jgit.diff.HistogramDiff$State.diffReplace:(Lorg/eclipse/jgit/diff/Edit;)V
1: goto 3
2: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.queue:Ljava/util/List;
aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.queue:Ljava/util/List;
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
checkcast org.eclipse.jgit.diff.Edit
invokevirtual org.eclipse.jgit.diff.HistogramDiff$State.diff:(Lorg/eclipse/jgit/diff/Edit;)V
3: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.queue:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 2
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/eclipse/jgit/diff/HistogramDiff$State<TS;>;
0 5 1 r Lorg/eclipse/jgit/diff/Edit;
MethodParameters:
Name Flags
r
private void diffReplace(org.eclipse.jgit.diff.Edit);
descriptor: (Lorg/eclipse/jgit/diff/Edit;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=7, args_size=2
start local 0 start local 1 0: new org.eclipse.jgit.diff.HistogramDiffIndex
dup
aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.this$0:Lorg/eclipse/jgit/diff/HistogramDiff;
getfield org.eclipse.jgit.diff.HistogramDiff.maxChainLength:I
aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.cmp:Lorg/eclipse/jgit/diff/HashedSequenceComparator;
aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.a:Lorg/eclipse/jgit/diff/HashedSequence;
aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.b:Lorg/eclipse/jgit/diff/HashedSequence;
aload 1
invokespecial org.eclipse.jgit.diff.HistogramDiffIndex.<init>:(ILorg/eclipse/jgit/diff/HashedSequenceComparator;Lorg/eclipse/jgit/diff/HashedSequence;Lorg/eclipse/jgit/diff/HashedSequence;Lorg/eclipse/jgit/diff/Edit;)V
1: invokevirtual org.eclipse.jgit.diff.HistogramDiffIndex.findLongestCommonSequence:()Lorg/eclipse/jgit/diff/Edit;
2: astore 2
start local 2 3: aload 2
ifnull 10
4: aload 2
invokevirtual org.eclipse.jgit.diff.Edit.isEmpty:()Z
ifeq 7
5: aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.edits:Lorg/eclipse/jgit/diff/EditList;
aload 1
invokevirtual org.eclipse.jgit.diff.EditList.add:(Ljava/lang/Object;)Z
pop
6: goto 22
7: StackMap locals: org.eclipse.jgit.diff.Edit
StackMap stack:
aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.queue:Ljava/util/List;
aload 1
aload 2
invokevirtual org.eclipse.jgit.diff.Edit.after:(Lorg/eclipse/jgit/diff/Edit;)Lorg/eclipse/jgit/diff/Edit;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
8: aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.queue:Ljava/util/List;
aload 1
aload 2
invokevirtual org.eclipse.jgit.diff.Edit.before:(Lorg/eclipse/jgit/diff/Edit;)Lorg/eclipse/jgit/diff/Edit;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
9: goto 22
StackMap locals:
StackMap stack:
10: aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.this$0:Lorg/eclipse/jgit/diff/HistogramDiff;
getfield org.eclipse.jgit.diff.HistogramDiff.fallback:Lorg/eclipse/jgit/diff/DiffAlgorithm;
instanceof org.eclipse.jgit.diff.LowLevelDiffAlgorithm
ifeq 14
11: aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.this$0:Lorg/eclipse/jgit/diff/HistogramDiff;
getfield org.eclipse.jgit.diff.HistogramDiff.fallback:Lorg/eclipse/jgit/diff/DiffAlgorithm;
checkcast org.eclipse.jgit.diff.LowLevelDiffAlgorithm
astore 3
start local 3 12: aload 3
aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.edits:Lorg/eclipse/jgit/diff/EditList;
aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.cmp:Lorg/eclipse/jgit/diff/HashedSequenceComparator;
aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.a:Lorg/eclipse/jgit/diff/HashedSequence;
aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.b:Lorg/eclipse/jgit/diff/HashedSequence;
aload 1
invokevirtual org.eclipse.jgit.diff.LowLevelDiffAlgorithm.diffNonCommon:(Lorg/eclipse/jgit/diff/EditList;Lorg/eclipse/jgit/diff/HashedSequenceComparator;Lorg/eclipse/jgit/diff/HashedSequence;Lorg/eclipse/jgit/diff/HashedSequence;Lorg/eclipse/jgit/diff/Edit;)V
end local 3 13: goto 22
StackMap locals:
StackMap stack:
14: aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.this$0:Lorg/eclipse/jgit/diff/HistogramDiff;
getfield org.eclipse.jgit.diff.HistogramDiff.fallback:Lorg/eclipse/jgit/diff/DiffAlgorithm;
ifnull 21
15: aload 0
invokevirtual org.eclipse.jgit.diff.HistogramDiff$State.subcmp:()Lorg/eclipse/jgit/diff/SubsequenceComparator;
astore 3
start local 3 16: aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.a:Lorg/eclipse/jgit/diff/HashedSequence;
aload 1
invokestatic org.eclipse.jgit.diff.Subsequence.a:(Lorg/eclipse/jgit/diff/Sequence;Lorg/eclipse/jgit/diff/Edit;)Lorg/eclipse/jgit/diff/Subsequence;
astore 4
start local 4 17: aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.b:Lorg/eclipse/jgit/diff/HashedSequence;
aload 1
invokestatic org.eclipse.jgit.diff.Subsequence.b:(Lorg/eclipse/jgit/diff/Sequence;Lorg/eclipse/jgit/diff/Edit;)Lorg/eclipse/jgit/diff/Subsequence;
astore 5
start local 5 18: aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.this$0:Lorg/eclipse/jgit/diff/HistogramDiff;
getfield org.eclipse.jgit.diff.HistogramDiff.fallback:Lorg/eclipse/jgit/diff/DiffAlgorithm;
aload 3
aload 4
aload 5
invokevirtual org.eclipse.jgit.diff.DiffAlgorithm.diffNonCommon:(Lorg/eclipse/jgit/diff/SequenceComparator;Lorg/eclipse/jgit/diff/Sequence;Lorg/eclipse/jgit/diff/Sequence;)Lorg/eclipse/jgit/diff/EditList;
astore 6
start local 6 19: aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.edits:Lorg/eclipse/jgit/diff/EditList;
aload 6
aload 4
aload 5
invokestatic org.eclipse.jgit.diff.Subsequence.toBase:(Lorg/eclipse/jgit/diff/EditList;Lorg/eclipse/jgit/diff/Subsequence;Lorg/eclipse/jgit/diff/Subsequence;)Lorg/eclipse/jgit/diff/EditList;
invokevirtual org.eclipse.jgit.diff.EditList.addAll:(Ljava/util/Collection;)Z
pop
end local 6 end local 5 end local 4 end local 3 20: goto 22
21: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.edits:Lorg/eclipse/jgit/diff/EditList;
aload 1
invokevirtual org.eclipse.jgit.diff.EditList.add:(Ljava/lang/Object;)Z
pop
22: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lorg/eclipse/jgit/diff/HistogramDiff$State<TS;>;
0 23 1 r Lorg/eclipse/jgit/diff/Edit;
3 23 2 lcs Lorg/eclipse/jgit/diff/Edit;
12 13 3 fb Lorg/eclipse/jgit/diff/LowLevelDiffAlgorithm;
16 20 3 cs Lorg/eclipse/jgit/diff/SubsequenceComparator<Lorg/eclipse/jgit/diff/HashedSequence<TS;>;>;
17 20 4 as Lorg/eclipse/jgit/diff/Subsequence<Lorg/eclipse/jgit/diff/HashedSequence<TS;>;>;
18 20 5 bs Lorg/eclipse/jgit/diff/Subsequence<Lorg/eclipse/jgit/diff/HashedSequence<TS;>;>;
19 20 6 res Lorg/eclipse/jgit/diff/EditList;
MethodParameters:
Name Flags
r
private void diff(org.eclipse.jgit.diff.Edit);
descriptor: (Lorg/eclipse/jgit/diff/Edit;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: invokestatic org.eclipse.jgit.diff.HistogramDiff$State.$SWITCH_TABLE$org$eclipse$jgit$diff$Edit$Type:()[I
aload 1
invokevirtual org.eclipse.jgit.diff.Edit.getType:()Lorg/eclipse/jgit/diff/Edit$Type;
invokevirtual org.eclipse.jgit.diff.Edit$Type.ordinal:()I
iaload
tableswitch { // 1 - 4
1: 1
2: 1
3: 3
4: 7
default: 7
}
1: StackMap locals:
StackMap stack:
aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.edits:Lorg/eclipse/jgit/diff/EditList;
aload 1
invokevirtual org.eclipse.jgit.diff.EditList.add:(Ljava/lang/Object;)Z
pop
2: goto 8
3: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.eclipse.jgit.diff.Edit.getLengthA:()I
iconst_1
if_icmpne 5
aload 1
invokevirtual org.eclipse.jgit.diff.Edit.getLengthB:()I
iconst_1
if_icmpne 5
4: aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.edits:Lorg/eclipse/jgit/diff/EditList;
aload 1
invokevirtual org.eclipse.jgit.diff.EditList.add:(Ljava/lang/Object;)Z
pop
goto 8
5: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.eclipse.jgit.diff.HistogramDiff$State.diffReplace:(Lorg/eclipse/jgit/diff/Edit;)V
6: goto 8
7: StackMap locals:
StackMap stack:
new java.lang.IllegalStateException
dup
invokespecial java.lang.IllegalStateException.<init>:()V
athrow
8: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/eclipse/jgit/diff/HistogramDiff$State<TS;>;
0 9 1 r Lorg/eclipse/jgit/diff/Edit;
MethodParameters:
Name Flags
r
private org.eclipse.jgit.diff.SubsequenceComparator<org.eclipse.jgit.diff.HashedSequence<S>> subcmp();
descriptor: ()Lorg/eclipse/jgit/diff/SubsequenceComparator;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: new org.eclipse.jgit.diff.SubsequenceComparator
dup
aload 0
getfield org.eclipse.jgit.diff.HistogramDiff$State.cmp:Lorg/eclipse/jgit/diff/HashedSequenceComparator;
invokespecial org.eclipse.jgit.diff.SubsequenceComparator.<init>:(Lorg/eclipse/jgit/diff/SequenceComparator;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jgit/diff/HistogramDiff$State<TS;>;
Signature: ()Lorg/eclipse/jgit/diff/SubsequenceComparator<Lorg/eclipse/jgit/diff/HashedSequence<TS;>;>;
static int[] $SWITCH_TABLE$org$eclipse$jgit$diff$Edit$Type();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.eclipse.jgit.diff.HistogramDiff$State.$SWITCH_TABLE$org$eclipse$jgit$diff$Edit$Type:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic org.eclipse.jgit.diff.Edit$Type.values:()[Lorg/eclipse/jgit/diff/Edit$Type;
arraylength
newarray 10
astore 0
2: aload 0
getstatic org.eclipse.jgit.diff.Edit$Type.DELETE:Lorg/eclipse/jgit/diff/Edit$Type;
invokevirtual org.eclipse.jgit.diff.Edit$Type.ordinal:()I
iconst_2
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic org.eclipse.jgit.diff.Edit$Type.EMPTY:Lorg/eclipse/jgit/diff/Edit$Type;
invokevirtual org.eclipse.jgit.diff.Edit$Type.ordinal:()I
iconst_4
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic org.eclipse.jgit.diff.Edit$Type.INSERT:Lorg/eclipse/jgit/diff/Edit$Type;
invokevirtual org.eclipse.jgit.diff.Edit$Type.ordinal:()I
iconst_1
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic org.eclipse.jgit.diff.Edit$Type.REPLACE:Lorg/eclipse/jgit/diff/Edit$Type;
invokevirtual org.eclipse.jgit.diff.Edit$Type.ordinal:()I
iconst_3
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
dup
putstatic org.eclipse.jgit.diff.HistogramDiff$State.$SWITCH_TABLE$org$eclipse$jgit$diff$Edit$Type:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
}
Signature: <S:Lorg/eclipse/jgit/diff/Sequence;>Ljava/lang/Object;
SourceFile: "HistogramDiff.java"
NestHost: org.eclipse.jgit.diff.HistogramDiff
InnerClasses:
public final Type = org.eclipse.jgit.diff.Edit$Type of org.eclipse.jgit.diff.Edit
private State = org.eclipse.jgit.diff.HistogramDiff$State of org.eclipse.jgit.diff.HistogramDiff