class org.springframework.aop.support.MethodMatchers$UnionMethodMatcher implements org.springframework.aop.MethodMatcher, java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.springframework.aop.support.MethodMatchers$UnionMethodMatcher
  super_class: java.lang.Object
{
  protected final org.springframework.aop.MethodMatcher mm1;
    descriptor: Lorg/springframework/aop/MethodMatcher;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final org.springframework.aop.MethodMatcher mm2;
    descriptor: Lorg/springframework/aop/MethodMatcher;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  public void <init>(org.springframework.aop.MethodMatcher, org.springframework.aop.MethodMatcher);
    descriptor: (Lorg/springframework/aop/MethodMatcher;Lorg/springframework/aop/MethodMatcher;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.springframework.aop.support.MethodMatchers$UnionMethodMatcher this
        start local 1 // org.springframework.aop.MethodMatcher mm1
        start local 2 // org.springframework.aop.MethodMatcher mm2
         0: .line 111
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 112
            aload 1 /* mm1 */
            ldc "First MethodMatcher must not be null"
            invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
         2: .line 113
            aload 2 /* mm2 */
            ldc "Second MethodMatcher must not be null"
            invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
         3: .line 114
            aload 0 /* this */
            aload 1 /* mm1 */
            putfield org.springframework.aop.support.MethodMatchers$UnionMethodMatcher.mm1:Lorg/springframework/aop/MethodMatcher;
         4: .line 115
            aload 0 /* this */
            aload 2 /* mm2 */
            putfield org.springframework.aop.support.MethodMatchers$UnionMethodMatcher.mm2:Lorg/springframework/aop/MethodMatcher;
         5: .line 116
            return
        end local 2 // org.springframework.aop.MethodMatcher mm2
        end local 1 // org.springframework.aop.MethodMatcher mm1
        end local 0 // org.springframework.aop.support.MethodMatchers$UnionMethodMatcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/springframework/aop/support/MethodMatchers$UnionMethodMatcher;
            0    6     1   mm1  Lorg/springframework/aop/MethodMatcher;
            0    6     2   mm2  Lorg/springframework/aop/MethodMatcher;
    MethodParameters:
      Name  Flags
      mm1   
      mm2   

  public boolean matches(java.lang.reflect.Method, java.lang.Class<?>);
    descriptor: (Ljava/lang/reflect/Method;Ljava/lang/Class;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.springframework.aop.support.MethodMatchers$UnionMethodMatcher this
        start local 1 // java.lang.reflect.Method method
        start local 2 // java.lang.Class targetClass
         0: .line 120
            aload 0 /* this */
            aload 2 /* targetClass */
            invokevirtual org.springframework.aop.support.MethodMatchers$UnionMethodMatcher.matchesClass1:(Ljava/lang/Class;)Z
            ifeq 1
            aload 0 /* this */
            getfield org.springframework.aop.support.MethodMatchers$UnionMethodMatcher.mm1:Lorg/springframework/aop/MethodMatcher;
            aload 1 /* method */
            aload 2 /* targetClass */
            invokeinterface org.springframework.aop.MethodMatcher.matches:(Ljava/lang/reflect/Method;Ljava/lang/Class;)Z
            ifne 3
         1: .line 121
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* targetClass */
            invokevirtual org.springframework.aop.support.MethodMatchers$UnionMethodMatcher.matchesClass2:(Ljava/lang/Class;)Z
            ifeq 2
            aload 0 /* this */
            getfield org.springframework.aop.support.MethodMatchers$UnionMethodMatcher.mm2:Lorg/springframework/aop/MethodMatcher;
            aload 1 /* method */
            aload 2 /* targetClass */
            invokeinterface org.springframework.aop.MethodMatcher.matches:(Ljava/lang/reflect/Method;Ljava/lang/Class;)Z
            ifne 3
         2: .line 120
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_1
            ireturn
        end local 2 // java.lang.Class targetClass
        end local 1 // java.lang.reflect.Method method
        end local 0 // org.springframework.aop.support.MethodMatchers$UnionMethodMatcher this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/springframework/aop/support/MethodMatchers$UnionMethodMatcher;
            0    4     1       method  Ljava/lang/reflect/Method;
            0    4     2  targetClass  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/reflect/Method;Ljava/lang/Class<*>;)Z
    MethodParameters:
             Name  Flags
      method       
      targetClass  

  protected boolean matchesClass1(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.springframework.aop.support.MethodMatchers$UnionMethodMatcher this
        start local 1 // java.lang.Class targetClass
         0: .line 125
            iconst_1
            ireturn
        end local 1 // java.lang.Class targetClass
        end local 0 // org.springframework.aop.support.MethodMatchers$UnionMethodMatcher this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/springframework/aop/support/MethodMatchers$UnionMethodMatcher;
            0    1     1  targetClass  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)Z
    MethodParameters:
             Name  Flags
      targetClass  

  protected boolean matchesClass2(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.springframework.aop.support.MethodMatchers$UnionMethodMatcher this
        start local 1 // java.lang.Class targetClass
         0: .line 129
            iconst_1
            ireturn
        end local 1 // java.lang.Class targetClass
        end local 0 // org.springframework.aop.support.MethodMatchers$UnionMethodMatcher this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/springframework/aop/support/MethodMatchers$UnionMethodMatcher;
            0    1     1  targetClass  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)Z
    MethodParameters:
             Name  Flags
      targetClass  

  public boolean isRuntime();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.aop.support.MethodMatchers$UnionMethodMatcher this
         0: .line 134
            aload 0 /* this */
            getfield org.springframework.aop.support.MethodMatchers$UnionMethodMatcher.mm1:Lorg/springframework/aop/MethodMatcher;
            invokeinterface org.springframework.aop.MethodMatcher.isRuntime:()Z
            ifne 1
            aload 0 /* this */
            getfield org.springframework.aop.support.MethodMatchers$UnionMethodMatcher.mm2:Lorg/springframework/aop/MethodMatcher;
            invokeinterface org.springframework.aop.MethodMatcher.isRuntime:()Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // org.springframework.aop.support.MethodMatchers$UnionMethodMatcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/springframework/aop/support/MethodMatchers$UnionMethodMatcher;

  public boolean matches(java.lang.reflect.Method, java.lang.Class<?>, []);
    descriptor: (Ljava/lang/reflect/Method;Ljava/lang/Class;[Ljava/lang/Object;)Z
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.springframework.aop.support.MethodMatchers$UnionMethodMatcher this
        start local 1 // java.lang.reflect.Method method
        start local 2 // java.lang.Class targetClass
        start local 3 // java.lang.Object[] args
         0: .line 139
            aload 0 /* this */
            getfield org.springframework.aop.support.MethodMatchers$UnionMethodMatcher.mm1:Lorg/springframework/aop/MethodMatcher;
            aload 1 /* method */
            aload 2 /* targetClass */
            aload 3 /* args */
            invokeinterface org.springframework.aop.MethodMatcher.matches:(Ljava/lang/reflect/Method;Ljava/lang/Class;[Ljava/lang/Object;)Z
            ifne 1
            aload 0 /* this */
            getfield org.springframework.aop.support.MethodMatchers$UnionMethodMatcher.mm2:Lorg/springframework/aop/MethodMatcher;
            aload 1 /* method */
            aload 2 /* targetClass */
            aload 3 /* args */
            invokeinterface org.springframework.aop.MethodMatcher.matches:(Ljava/lang/reflect/Method;Ljava/lang/Class;[Ljava/lang/Object;)Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 3 // java.lang.Object[] args
        end local 2 // java.lang.Class targetClass
        end local 1 // java.lang.reflect.Method method
        end local 0 // org.springframework.aop.support.MethodMatchers$UnionMethodMatcher this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/springframework/aop/support/MethodMatchers$UnionMethodMatcher;
            0    2     1       method  Ljava/lang/reflect/Method;
            0    2     2  targetClass  Ljava/lang/Class<*>;
            0    2     3         args  [Ljava/lang/Object;
    Signature: (Ljava/lang/reflect/Method;Ljava/lang/Class<*>;[Ljava/lang/Object;)Z
    MethodParameters:
             Name  Flags
      method       
      targetClass  
      args         

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.springframework.aop.support.MethodMatchers$UnionMethodMatcher this
        start local 1 // java.lang.Object other
         0: .line 144
            aload 0 /* this */
            aload 1 /* other */
            if_acmpne 2
         1: .line 145
            iconst_1
            ireturn
         2: .line 147
      StackMap locals:
      StackMap stack:
            aload 1 /* other */
            instanceof org.springframework.aop.support.MethodMatchers$UnionMethodMatcher
            ifne 4
         3: .line 148
            iconst_0
            ireturn
         4: .line 150
      StackMap locals:
      StackMap stack:
            aload 1 /* other */
            checkcast org.springframework.aop.support.MethodMatchers$UnionMethodMatcher
            astore 2 /* that */
        start local 2 // org.springframework.aop.support.MethodMatchers$UnionMethodMatcher that
         5: .line 151
            aload 0 /* this */
            getfield org.springframework.aop.support.MethodMatchers$UnionMethodMatcher.mm1:Lorg/springframework/aop/MethodMatcher;
            aload 2 /* that */
            getfield org.springframework.aop.support.MethodMatchers$UnionMethodMatcher.mm1:Lorg/springframework/aop/MethodMatcher;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0 /* this */
            getfield org.springframework.aop.support.MethodMatchers$UnionMethodMatcher.mm2:Lorg/springframework/aop/MethodMatcher;
            aload 2 /* that */
            getfield org.springframework.aop.support.MethodMatchers$UnionMethodMatcher.mm2:Lorg/springframework/aop/MethodMatcher;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 6
            iconst_1
            ireturn
      StackMap locals: org.springframework.aop.support.MethodMatchers$UnionMethodMatcher
      StackMap stack:
         6: iconst_0
            ireturn
        end local 2 // org.springframework.aop.support.MethodMatchers$UnionMethodMatcher that
        end local 1 // java.lang.Object other
        end local 0 // org.springframework.aop.support.MethodMatchers$UnionMethodMatcher this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lorg/springframework/aop/support/MethodMatchers$UnionMethodMatcher;
            0    7     1  other  Ljava/lang/Object;
            5    7     2   that  Lorg/springframework/aop/support/MethodMatchers$UnionMethodMatcher;
    MethodParameters:
       Name  Flags
      other  

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.springframework.aop.support.MethodMatchers$UnionMethodMatcher this
         0: .line 156
            bipush 37
            aload 0 /* this */
            getfield org.springframework.aop.support.MethodMatchers$UnionMethodMatcher.mm1:Lorg/springframework/aop/MethodMatcher;
            invokevirtual java.lang.Object.hashCode:()I
            imul
            aload 0 /* this */
            getfield org.springframework.aop.support.MethodMatchers$UnionMethodMatcher.mm2:Lorg/springframework/aop/MethodMatcher;
            invokevirtual java.lang.Object.hashCode:()I
            iadd
            ireturn
        end local 0 // org.springframework.aop.support.MethodMatchers$UnionMethodMatcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/aop/support/MethodMatchers$UnionMethodMatcher;
}
SourceFile: "MethodMatchers.java"
NestHost: org.springframework.aop.support.MethodMatchers
InnerClasses:
  private UnionMethodMatcher = org.springframework.aop.support.MethodMatchers$UnionMethodMatcher of org.springframework.aop.support.MethodMatchers