class org.eclipse.jgit.revwalk.BitmappedObjectReachabilityChecker implements org.eclipse.jgit.revwalk.ObjectReachabilityChecker
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.eclipse.jgit.revwalk.BitmappedObjectReachabilityChecker
super_class: java.lang.Object
{
private final org.eclipse.jgit.revwalk.ObjectWalk walk;
descriptor: Lorg/eclipse/jgit/revwalk/ObjectWalk;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(org.eclipse.jgit.revwalk.ObjectWalk);
descriptor: (Lorg/eclipse/jgit/revwalk/ObjectWalk;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // org.eclipse.jgit.revwalk.BitmappedObjectReachabilityChecker this
start local 1 // org.eclipse.jgit.revwalk.ObjectWalk walk
0: .line 40
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 41
aload 0 /* this */
aload 1 /* walk */
putfield org.eclipse.jgit.revwalk.BitmappedObjectReachabilityChecker.walk:Lorg/eclipse/jgit/revwalk/ObjectWalk;
2: .line 42
return
end local 1 // org.eclipse.jgit.revwalk.ObjectWalk walk
end local 0 // org.eclipse.jgit.revwalk.BitmappedObjectReachabilityChecker this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jgit/revwalk/BitmappedObjectReachabilityChecker;
0 3 1 walk Lorg/eclipse/jgit/revwalk/ObjectWalk;
MethodParameters:
Name Flags
walk
public java.util.Optional<org.eclipse.jgit.revwalk.RevObject> areAllReachable(java.util.Collection<org.eclipse.jgit.revwalk.RevObject>, java.util.stream.Stream<org.eclipse.jgit.revwalk.RevObject>);
descriptor: (Ljava/util/Collection;Ljava/util/stream/Stream;)Ljava/util/Optional;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=3
start local 0 // org.eclipse.jgit.revwalk.BitmappedObjectReachabilityChecker this
start local 1 // java.util.Collection targets
start local 2 // java.util.stream.Stream starters
0: .line 56
new java.util.ArrayList
dup
aload 1 /* targets */
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 3 /* remainingTargets */
start local 3 // java.util.List remainingTargets
1: .line 57
new org.eclipse.jgit.revwalk.BitmapWalker
dup
aload 0 /* this */
getfield org.eclipse.jgit.revwalk.BitmappedObjectReachabilityChecker.walk:Lorg/eclipse/jgit/revwalk/ObjectWalk;
2: .line 58
aload 0 /* this */
getfield org.eclipse.jgit.revwalk.BitmappedObjectReachabilityChecker.walk:Lorg/eclipse/jgit/revwalk/ObjectWalk;
invokevirtual org.eclipse.jgit.revwalk.ObjectWalk.getObjectReader:()Lorg/eclipse/jgit/lib/ObjectReader;
invokevirtual org.eclipse.jgit.lib.ObjectReader.getBitmapIndex:()Lorg/eclipse/jgit/lib/BitmapIndex;
aconst_null
3: .line 57
invokespecial org.eclipse.jgit.revwalk.BitmapWalker.<init>:(Lorg/eclipse/jgit/revwalk/ObjectWalk;Lorg/eclipse/jgit/lib/BitmapIndex;Lorg/eclipse/jgit/lib/ProgressMonitor;)V
astore 4 /* bitmapWalker */
start local 4 // org.eclipse.jgit.revwalk.BitmapWalker bitmapWalker
4: .line 60
aload 2 /* starters */
invokeinterface java.util.stream.Stream.iterator:()Ljava/util/Iterator;
astore 5 /* starterIt */
start local 5 // java.util.Iterator starterIt
5: .line 61
aconst_null
astore 6 /* seen */
start local 6 // org.eclipse.jgit.lib.BitmapIndex$BitmapBuilder seen
6: .line 62
goto 18
7: .line 63
StackMap locals: org.eclipse.jgit.revwalk.BitmappedObjectReachabilityChecker java.util.Collection java.util.stream.Stream java.util.List org.eclipse.jgit.revwalk.BitmapWalker java.util.Iterator org.eclipse.jgit.lib.BitmapIndex$BitmapBuilder
StackMap stack:
iconst_1
anewarray org.eclipse.jgit.revwalk.RevObject
dup
iconst_0
aload 5 /* starterIt */
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.eclipse.jgit.revwalk.RevObject
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
astore 7 /* asList */
start local 7 // java.util.List asList
8: .line 64
aload 4 /* bitmapWalker */
aload 7 /* asList */
aload 6 /* seen */
9: .line 65
iconst_1
10: .line 64
invokevirtual org.eclipse.jgit.revwalk.BitmapWalker.findObjects:(Ljava/lang/Iterable;Lorg/eclipse/jgit/lib/BitmapIndex$BitmapBuilder;Z)Lorg/eclipse/jgit/lib/BitmapIndex$BitmapBuilder;
astore 8 /* visited */
start local 8 // org.eclipse.jgit.lib.BitmapIndex$BitmapBuilder visited
11: .line 66
aload 6 /* seen */
ifnonnull 12
aload 8 /* visited */
goto 13
StackMap locals: java.util.List org.eclipse.jgit.lib.BitmapIndex$BitmapBuilder
StackMap stack:
12: aload 6 /* seen */
aload 8 /* visited */
invokeinterface org.eclipse.jgit.lib.BitmapIndex$BitmapBuilder.or:(Lorg/eclipse/jgit/lib/BitmapIndex$Bitmap;)Lorg/eclipse/jgit/lib/BitmapIndex$BitmapBuilder;
StackMap locals:
StackMap stack: org.eclipse.jgit.lib.BitmapIndex$BitmapBuilder
13: astore 6 /* seen */
14: .line 68
aload 3 /* remainingTargets */
aload 6 /* seen */
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic test(Lorg/eclipse/jgit/lib/BitmapIndex$BitmapBuilder;)Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
org/eclipse/jgit/lib/BitmapIndex$BitmapBuilder.contains(Lorg/eclipse/jgit/lib/AnyObjectId;)Z (9 itf)
(Lorg/eclipse/jgit/revwalk/RevObject;)Z
invokeinterface java.util.List.removeIf:(Ljava/util/function/Predicate;)Z
pop
15: .line 69
aload 3 /* remainingTargets */
invokeinterface java.util.List.isEmpty:()Z
ifeq 18
16: .line 70
invokestatic java.util.Optional.empty:()Ljava/util/Optional;
17: areturn
end local 8 // org.eclipse.jgit.lib.BitmapIndex$BitmapBuilder visited
end local 7 // java.util.List asList
18: .line 62
StackMap locals:
StackMap stack:
aload 5 /* starterIt */
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
19: .line 74
aload 3 /* remainingTargets */
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.eclipse.jgit.revwalk.RevObject
invokestatic java.util.Optional.of:(Ljava/lang/Object;)Ljava/util/Optional;
20: areturn
end local 6 // org.eclipse.jgit.lib.BitmapIndex$BitmapBuilder seen
end local 5 // java.util.Iterator starterIt
end local 4 // org.eclipse.jgit.revwalk.BitmapWalker bitmapWalker
end local 3 // java.util.List remainingTargets
21: .line 75
StackMap locals: org.eclipse.jgit.revwalk.BitmappedObjectReachabilityChecker java.util.Collection java.util.stream.Stream
StackMap stack: java.io.IOException
astore 3 /* e */
start local 3 // java.io.IOException e
22: .line 76
new java.lang.IllegalStateException
dup
aload 3 /* e */
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 3 // java.io.IOException e
end local 2 // java.util.stream.Stream starters
end local 1 // java.util.Collection targets
end local 0 // org.eclipse.jgit.revwalk.BitmappedObjectReachabilityChecker this
LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lorg/eclipse/jgit/revwalk/BitmappedObjectReachabilityChecker;
0 23 1 targets Ljava/util/Collection<Lorg/eclipse/jgit/revwalk/RevObject;>;
0 23 2 starters Ljava/util/stream/Stream<Lorg/eclipse/jgit/revwalk/RevObject;>;
1 21 3 remainingTargets Ljava/util/List<Lorg/eclipse/jgit/revwalk/RevObject;>;
4 21 4 bitmapWalker Lorg/eclipse/jgit/revwalk/BitmapWalker;
5 21 5 starterIt Ljava/util/Iterator<Lorg/eclipse/jgit/revwalk/RevObject;>;
6 21 6 seen Lorg/eclipse/jgit/lib/BitmapIndex$BitmapBuilder;
8 18 7 asList Ljava/util/List<Lorg/eclipse/jgit/revwalk/RevObject;>;
11 18 8 visited Lorg/eclipse/jgit/lib/BitmapIndex$BitmapBuilder;
22 23 3 e Ljava/io/IOException;
Exception table:
from to target type
0 17 21 Class org.eclipse.jgit.errors.MissingObjectException
18 20 21 Class org.eclipse.jgit.errors.MissingObjectException
0 17 21 Class org.eclipse.jgit.errors.IncorrectObjectTypeException
18 20 21 Class org.eclipse.jgit.errors.IncorrectObjectTypeException
Exceptions:
throws java.io.IOException
Signature: (Ljava/util/Collection<Lorg/eclipse/jgit/revwalk/RevObject;>;Ljava/util/stream/Stream<Lorg/eclipse/jgit/revwalk/RevObject;>;)Ljava/util/Optional<Lorg/eclipse/jgit/revwalk/RevObject;>;
MethodParameters:
Name Flags
targets
starters
}
SourceFile: "BitmappedObjectReachabilityChecker.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Bitmap = org.eclipse.jgit.lib.BitmapIndex$Bitmap of org.eclipse.jgit.lib.BitmapIndex
public abstract BitmapBuilder = org.eclipse.jgit.lib.BitmapIndex$BitmapBuilder of org.eclipse.jgit.lib.BitmapIndex