public class org.apache.commons.collections4.collection.PredicatedCollection<E> extends org.apache.commons.collections4.collection.AbstractCollectionDecorator<E>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.commons.collections4.collection.PredicatedCollection
  super_class: org.apache.commons.collections4.collection.AbstractCollectionDecorator
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -5259182142076705162

  protected final org.apache.commons.collections4.Predicate<? super E> predicate;
    descriptor: Lorg/apache/commons/collections4/Predicate;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Signature: Lorg/apache/commons/collections4/Predicate<-TE;>;

  public static <E> org.apache.commons.collections4.collection.PredicatedCollection$Builder<E> builder(org.apache.commons.collections4.Predicate<? super E>);
    descriptor: (Lorg/apache/commons/collections4/Predicate;)Lorg/apache/commons/collections4/collection/PredicatedCollection$Builder;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.commons.collections4.Predicate predicate
         0: .line 75
            new org.apache.commons.collections4.collection.PredicatedCollection$Builder
            dup
            aload 0 /* predicate */
            invokespecial org.apache.commons.collections4.collection.PredicatedCollection$Builder.<init>:(Lorg/apache/commons/collections4/Predicate;)V
            areturn
        end local 0 // org.apache.commons.collections4.Predicate predicate
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  predicate  Lorg/apache/commons/collections4/Predicate<-TE;>;
    Signature: <E:Ljava/lang/Object;>(Lorg/apache/commons/collections4/Predicate<-TE;>;)Lorg/apache/commons/collections4/collection/PredicatedCollection$Builder<TE;>;
    MethodParameters:
           Name  Flags
      predicate  final

  public static <E> org.apache.commons.collections4.collection.PredicatedCollection$Builder<E> notNullBuilder();
    descriptor: ()Lorg/apache/commons/collections4/collection/PredicatedCollection$Builder;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 86
            new org.apache.commons.collections4.collection.PredicatedCollection$Builder
            dup
            invokestatic org.apache.commons.collections4.functors.NotNullPredicate.notNullPredicate:()Lorg/apache/commons/collections4/Predicate;
            invokespecial org.apache.commons.collections4.collection.PredicatedCollection$Builder.<init>:(Lorg/apache/commons/collections4/Predicate;)V
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <E:Ljava/lang/Object;>()Lorg/apache/commons/collections4/collection/PredicatedCollection$Builder<TE;>;

  public static <T> org.apache.commons.collections4.collection.PredicatedCollection<T> predicatedCollection(java.util.Collection<T>, org.apache.commons.collections4.Predicate<? super T>);
    descriptor: (Ljava/util/Collection;Lorg/apache/commons/collections4/Predicate;)Lorg/apache/commons/collections4/collection/PredicatedCollection;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.Collection coll
        start local 1 // org.apache.commons.collections4.Predicate predicate
         0: .line 105
            new org.apache.commons.collections4.collection.PredicatedCollection
            dup
            aload 0 /* coll */
            aload 1 /* predicate */
            invokespecial org.apache.commons.collections4.collection.PredicatedCollection.<init>:(Ljava/util/Collection;Lorg/apache/commons/collections4/Predicate;)V
            areturn
        end local 1 // org.apache.commons.collections4.Predicate predicate
        end local 0 // java.util.Collection coll
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       coll  Ljava/util/Collection<TT;>;
            0    1     1  predicate  Lorg/apache/commons/collections4/Predicate<-TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/util/Collection<TT;>;Lorg/apache/commons/collections4/Predicate<-TT;>;)Lorg/apache/commons/collections4/collection/PredicatedCollection<TT;>;
    MethodParameters:
           Name  Flags
      coll       final
      predicate  final

  protected void <init>(java.util.Collection<E>, org.apache.commons.collections4.Predicate<? super E>);
    descriptor: (Ljava/util/Collection;Lorg/apache/commons/collections4/Predicate;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.apache.commons.collections4.collection.PredicatedCollection this
        start local 1 // java.util.Collection coll
        start local 2 // org.apache.commons.collections4.Predicate predicate
         0: .line 121
            aload 0 /* this */
            aload 1 /* coll */
            invokespecial org.apache.commons.collections4.collection.AbstractCollectionDecorator.<init>:(Ljava/util/Collection;)V
         1: .line 122
            aload 2 /* predicate */
            ifnonnull 3
         2: .line 123
            new java.lang.NullPointerException
            dup
            ldc "Predicate must not be null."
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 125
      StackMap locals: org.apache.commons.collections4.collection.PredicatedCollection java.util.Collection org.apache.commons.collections4.Predicate
      StackMap stack:
            aload 0 /* this */
            aload 2 /* predicate */
            putfield org.apache.commons.collections4.collection.PredicatedCollection.predicate:Lorg/apache/commons/collections4/Predicate;
         4: .line 126
            aload 1 /* coll */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 4
            goto 7
      StackMap locals: org.apache.commons.collections4.collection.PredicatedCollection java.util.Collection org.apache.commons.collections4.Predicate top java.util.Iterator
      StackMap stack:
         5: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Object
            astore 3 /* item */
        start local 3 // java.lang.Object item
         6: .line 127
            aload 0 /* this */
            aload 3 /* item */
            invokevirtual org.apache.commons.collections4.collection.PredicatedCollection.validate:(Ljava/lang/Object;)V
        end local 3 // java.lang.Object item
         7: .line 126
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         8: .line 129
            return
        end local 2 // org.apache.commons.collections4.Predicate predicate
        end local 1 // java.util.Collection coll
        end local 0 // org.apache.commons.collections4.collection.PredicatedCollection this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Lorg/apache/commons/collections4/collection/PredicatedCollection<TE;>;
            0    9     1       coll  Ljava/util/Collection<TE;>;
            0    9     2  predicate  Lorg/apache/commons/collections4/Predicate<-TE;>;
            6    7     3       item  TE;
    Signature: (Ljava/util/Collection<TE;>;Lorg/apache/commons/collections4/Predicate<-TE;>;)V
    MethodParameters:
           Name  Flags
      coll       final
      predicate  final

  protected void validate();
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.apache.commons.collections4.collection.PredicatedCollection this
        start local 1 // java.lang.Object object
         0: .line 141
            aload 0 /* this */
            getfield org.apache.commons.collections4.collection.PredicatedCollection.predicate:Lorg/apache/commons/collections4/Predicate;
            aload 1 /* object */
            invokeinterface org.apache.commons.collections4.Predicate.evaluate:(Ljava/lang/Object;)Z
            ifne 4
         1: .line 142
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Cannot add Object '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* object */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "' - Predicate '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 143
            aload 0 /* this */
            getfield org.apache.commons.collections4.collection.PredicatedCollection.predicate:Lorg/apache/commons/collections4/Predicate;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "' rejected it"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 142
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 145
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object object
        end local 0 // org.apache.commons.collections4.collection.PredicatedCollection this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/apache/commons/collections4/collection/PredicatedCollection<TE;>;
            0    5     1  object  TE;
    Signature: (TE;)V
    MethodParameters:
        Name  Flags
      object  final

  public boolean add();
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.collections4.collection.PredicatedCollection this
        start local 1 // java.lang.Object object
         0: .line 158
            aload 0 /* this */
            aload 1 /* object */
            invokevirtual org.apache.commons.collections4.collection.PredicatedCollection.validate:(Ljava/lang/Object;)V
         1: .line 159
            aload 0 /* this */
            invokevirtual org.apache.commons.collections4.collection.PredicatedCollection.decorated:()Ljava/util/Collection;
            aload 1 /* object */
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.Object object
        end local 0 // org.apache.commons.collections4.collection.PredicatedCollection this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/apache/commons/collections4/collection/PredicatedCollection<TE;>;
            0    2     1  object  TE;
    Signature: (TE;)Z
    MethodParameters:
        Name  Flags
      object  final

  public boolean addAll(java.util.Collection<? extends E>);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.apache.commons.collections4.collection.PredicatedCollection this
        start local 1 // java.util.Collection coll
         0: .line 173
            aload 1 /* coll */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 3
      StackMap locals: org.apache.commons.collections4.collection.PredicatedCollection java.util.Collection top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Object
            astore 2 /* item */
        start local 2 // java.lang.Object item
         2: .line 174
            aload 0 /* this */
            aload 2 /* item */
            invokevirtual org.apache.commons.collections4.collection.PredicatedCollection.validate:(Ljava/lang/Object;)V
        end local 2 // java.lang.Object item
         3: .line 173
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 176
            aload 0 /* this */
            invokevirtual org.apache.commons.collections4.collection.PredicatedCollection.decorated:()Ljava/util/Collection;
            aload 1 /* coll */
            invokeinterface java.util.Collection.addAll:(Ljava/util/Collection;)Z
            ireturn
        end local 1 // java.util.Collection coll
        end local 0 // org.apache.commons.collections4.collection.PredicatedCollection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/commons/collections4/collection/PredicatedCollection<TE;>;
            0    5     1  coll  Ljava/util/Collection<+TE;>;
            2    3     2  item  TE;
    Signature: (Ljava/util/Collection<+TE;>;)Z
    MethodParameters:
      Name  Flags
      coll  final
}
Signature: <E:Ljava/lang/Object;>Lorg/apache/commons/collections4/collection/AbstractCollectionDecorator<TE;>;
SourceFile: "PredicatedCollection.java"
NestMembers:
  org.apache.commons.collections4.collection.PredicatedCollection$Builder
InnerClasses:
  public Builder = org.apache.commons.collections4.collection.PredicatedCollection$Builder of org.apache.commons.collections4.collection.PredicatedCollection