public class org.hamcrest.collection.IsCollectionWithSize<E> extends org.hamcrest.FeatureMatcher<java.util.Collection<? extends E>, java.lang.Integer>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hamcrest.collection.IsCollectionWithSize
  super_class: org.hamcrest.FeatureMatcher
{
  public void <init>(org.hamcrest.Matcher<? super java.lang.Integer>);
    descriptor: (Lorg/hamcrest/Matcher;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.hamcrest.collection.IsCollectionWithSize this
        start local 1 // org.hamcrest.Matcher sizeMatcher
         0: .line 16
            aload 0 /* this */
            aload 1 /* sizeMatcher */
            ldc "a collection with size"
            ldc "collection size"
            invokespecial org.hamcrest.FeatureMatcher.<init>:(Lorg/hamcrest/Matcher;Ljava/lang/String;Ljava/lang/String;)V
         1: .line 17
            return
        end local 1 // org.hamcrest.Matcher sizeMatcher
        end local 0 // org.hamcrest.collection.IsCollectionWithSize this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/hamcrest/collection/IsCollectionWithSize<TE;>;
            0    2     1  sizeMatcher  Lorg/hamcrest/Matcher<-Ljava/lang/Integer;>;
    Signature: (Lorg/hamcrest/Matcher<-Ljava/lang/Integer;>;)V
    MethodParameters:
             Name  Flags
      sizeMatcher  

  protected java.lang.Integer featureValueOf(java.util.Collection<? extends E>);
    descriptor: (Ljava/util/Collection;)Ljava/lang/Integer;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.hamcrest.collection.IsCollectionWithSize this
        start local 1 // java.util.Collection actual
         0: .line 21
            aload 1 /* actual */
            invokeinterface java.util.Collection.size:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            areturn
        end local 1 // java.util.Collection actual
        end local 0 // org.hamcrest.collection.IsCollectionWithSize this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/hamcrest/collection/IsCollectionWithSize<TE;>;
            0    1     1  actual  Ljava/util/Collection<+TE;>;
    Signature: (Ljava/util/Collection<+TE;>;)Ljava/lang/Integer;
    MethodParameters:
        Name  Flags
      actual  

  public static <E> org.hamcrest.Matcher<java.util.Collection<? extends E>> hasSize(org.hamcrest.Matcher<? super java.lang.Integer>);
    descriptor: (Lorg/hamcrest/Matcher;)Lorg/hamcrest/Matcher;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.hamcrest.Matcher sizeMatcher
         0: .line 36
            new org.hamcrest.collection.IsCollectionWithSize
            dup
            aload 0 /* sizeMatcher */
            invokespecial org.hamcrest.collection.IsCollectionWithSize.<init>:(Lorg/hamcrest/Matcher;)V
            areturn
        end local 0 // org.hamcrest.Matcher sizeMatcher
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0  sizeMatcher  Lorg/hamcrest/Matcher<-Ljava/lang/Integer;>;
    Signature: <E:Ljava/lang/Object;>(Lorg/hamcrest/Matcher<-Ljava/lang/Integer;>;)Lorg/hamcrest/Matcher<Ljava/util/Collection<+TE;>;>;
    RuntimeVisibleAnnotations: 
      org.hamcrest.Factory()
    MethodParameters:
             Name  Flags
      sizeMatcher  

  public static <E> org.hamcrest.Matcher<java.util.Collection<? extends E>> hasSize(int);
    descriptor: (I)Lorg/hamcrest/Matcher;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // int size
         0: .line 51
            iload 0 /* size */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokestatic org.hamcrest.core.IsEqual.equalTo:(Ljava/lang/Object;)Lorg/hamcrest/Matcher;
            astore 1 /* matcher */
        start local 1 // org.hamcrest.Matcher matcher
         1: .line 52
            aload 1 /* matcher */
            invokestatic org.hamcrest.collection.IsCollectionWithSize.hasSize:(Lorg/hamcrest/Matcher;)Lorg/hamcrest/Matcher;
            areturn
        end local 1 // org.hamcrest.Matcher matcher
        end local 0 // int size
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     size  I
            1    2     1  matcher  Lorg/hamcrest/Matcher<-Ljava/lang/Integer;>;
    Signature: <E:Ljava/lang/Object;>(I)Lorg/hamcrest/Matcher<Ljava/util/Collection<+TE;>;>;
    RuntimeVisibleAnnotations: 
      org.hamcrest.Factory()
    MethodParameters:
      Name  Flags
      size  

  protected java.lang.Object featureValueOf(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast java.util.Collection
            invokevirtual org.hamcrest.collection.IsCollectionWithSize.featureValueOf:(Ljava/util/Collection;)Ljava/lang/Integer;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: <E:Ljava/lang/Object;>Lorg/hamcrest/FeatureMatcher<Ljava/util/Collection<+TE;>;Ljava/lang/Integer;>;
SourceFile: "IsCollectionWithSize.java"