public class org.apache.commons.collections4.functors.WhileClosure<E> implements org.apache.commons.collections4.Closure<E>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.commons.collections4.functors.WhileClosure
super_class: java.lang.Object
{
private final org.apache.commons.collections4.Predicate<? super E> iPredicate;
descriptor: Lorg/apache/commons/collections4/Predicate;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/apache/commons/collections4/Predicate<-TE;>;
private final org.apache.commons.collections4.Closure<? super E> iClosure;
descriptor: Lorg/apache/commons/collections4/Closure;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/apache/commons/collections4/Closure<-TE;>;
private final boolean iDoLoop;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public static <E> org.apache.commons.collections4.Closure<E> whileClosure(org.apache.commons.collections4.Predicate<? super E>, org.apache.commons.collections4.Closure<? super E>, boolean);
descriptor: (Lorg/apache/commons/collections4/Predicate;Lorg/apache/commons/collections4/Closure;Z)Lorg/apache/commons/collections4/Closure;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
ifnonnull 2
1: new java.lang.NullPointerException
dup
ldc "Predicate must not be null"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
ifnonnull 4
3: new java.lang.NullPointerException
dup
ldc "Closure must not be null"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
new org.apache.commons.collections4.functors.WhileClosure
dup
aload 0
aload 1
iload 2
invokespecial org.apache.commons.collections4.functors.WhileClosure.<init>:(Lorg/apache/commons/collections4/Predicate;Lorg/apache/commons/collections4/Closure;Z)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 predicate Lorg/apache/commons/collections4/Predicate<-TE;>;
0 5 1 closure Lorg/apache/commons/collections4/Closure<-TE;>;
0 5 2 doLoop Z
Signature: <E:Ljava/lang/Object;>(Lorg/apache/commons/collections4/Predicate<-TE;>;Lorg/apache/commons/collections4/Closure<-TE;>;Z)Lorg/apache/commons/collections4/Closure<TE;>;
MethodParameters:
Name Flags
predicate final
closure final
doLoop final
public void <init>(org.apache.commons.collections4.Predicate<? super E>, org.apache.commons.collections4.Closure<? super E>, );
descriptor: (Lorg/apache/commons/collections4/Predicate;Lorg/apache/commons/collections4/Closure;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, 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
aload 1
putfield org.apache.commons.collections4.functors.WhileClosure.iPredicate:Lorg/apache/commons/collections4/Predicate;
2: aload 0
aload 2
putfield org.apache.commons.collections4.functors.WhileClosure.iClosure:Lorg/apache/commons/collections4/Closure;
3: aload 0
iload 3
putfield org.apache.commons.collections4.functors.WhileClosure.iDoLoop:Z
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/commons/collections4/functors/WhileClosure<TE;>;
0 5 1 predicate Lorg/apache/commons/collections4/Predicate<-TE;>;
0 5 2 closure Lorg/apache/commons/collections4/Closure<-TE;>;
0 5 3 doLoop Z
Signature: (Lorg/apache/commons/collections4/Predicate<-TE;>;Lorg/apache/commons/collections4/Closure<-TE;>;Z)V
MethodParameters:
Name Flags
predicate final
closure final
doLoop final
public void execute();
descriptor: (Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.commons.collections4.functors.WhileClosure.iDoLoop:Z
ifeq 4
1: aload 0
getfield org.apache.commons.collections4.functors.WhileClosure.iClosure:Lorg/apache/commons/collections4/Closure;
aload 1
invokeinterface org.apache.commons.collections4.Closure.execute:(Ljava/lang/Object;)V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.commons.collections4.functors.WhileClosure.iClosure:Lorg/apache/commons/collections4/Closure;
aload 1
invokeinterface org.apache.commons.collections4.Closure.execute:(Ljava/lang/Object;)V
4: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.commons.collections4.functors.WhileClosure.iPredicate:Lorg/apache/commons/collections4/Predicate;
aload 1
invokeinterface org.apache.commons.collections4.Predicate.evaluate:(Ljava/lang/Object;)Z
ifne 3
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/commons/collections4/functors/WhileClosure<TE;>;
0 6 1 input TE;
Signature: (TE;)V
MethodParameters:
Name Flags
input final
public org.apache.commons.collections4.Predicate<? super E> getPredicate();
descriptor: ()Lorg/apache/commons/collections4/Predicate;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.collections4.functors.WhileClosure.iPredicate:Lorg/apache/commons/collections4/Predicate;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/collections4/functors/WhileClosure<TE;>;
Signature: ()Lorg/apache/commons/collections4/Predicate<-TE;>;
public org.apache.commons.collections4.Closure<? super E> getClosure();
descriptor: ()Lorg/apache/commons/collections4/Closure;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.collections4.functors.WhileClosure.iClosure:Lorg/apache/commons/collections4/Closure;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/collections4/functors/WhileClosure<TE;>;
Signature: ()Lorg/apache/commons/collections4/Closure<-TE;>;
public boolean isDoLoop();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.collections4.functors.WhileClosure.iDoLoop:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/collections4/functors/WhileClosure<TE;>;
}
Signature: <E:Ljava/lang/Object;>Ljava/lang/Object;Lorg/apache/commons/collections4/Closure<TE;>;
SourceFile: "WhileClosure.java"