public class org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger extends org.aspectj.weaver.ResolvedTypeMunger
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger
  super_class: org.aspectj.weaver.ResolvedTypeMunger
{
  private final org.aspectj.weaver.UnresolvedType aspect;
    descriptor: Lorg/aspectj/weaver/UnresolvedType;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.aspectj.weaver.patterns.TypePattern typePattern;
    descriptor: Lorg/aspectj/weaver/patterns/TypePattern;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(org.aspectj.weaver.ResolvedMember, org.aspectj.weaver.UnresolvedType, org.aspectj.weaver.patterns.TypePattern);
    descriptor: (Lorg/aspectj/weaver/ResolvedMember;Lorg/aspectj/weaver/UnresolvedType;Lorg/aspectj/weaver/patterns/TypePattern;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger this
        start local 1 // org.aspectj.weaver.ResolvedMember field
        start local 2 // org.aspectj.weaver.UnresolvedType aspect
        start local 3 // org.aspectj.weaver.patterns.TypePattern typePattern
         0: .line 210
            aload 0 /* this */
            getstatic org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.FieldHost:Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;
            aload 1 /* field */
            invokespecial org.aspectj.weaver.ResolvedTypeMunger.<init>:(Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;Lorg/aspectj/weaver/ResolvedMember;)V
         1: .line 211
            aload 0 /* this */
            aload 2 /* aspect */
            putfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.aspect:Lorg/aspectj/weaver/UnresolvedType;
         2: .line 212
            aload 0 /* this */
            aload 3 /* typePattern */
            putfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.typePattern:Lorg/aspectj/weaver/patterns/TypePattern;
         3: .line 213
            return
        end local 3 // org.aspectj.weaver.patterns.TypePattern typePattern
        end local 2 // org.aspectj.weaver.UnresolvedType aspect
        end local 1 // org.aspectj.weaver.ResolvedMember field
        end local 0 // org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/aspectj/weaver/MethodDelegateTypeMunger$FieldHostTypeMunger;
            0    4     1        field  Lorg/aspectj/weaver/ResolvedMember;
            0    4     2       aspect  Lorg/aspectj/weaver/UnresolvedType;
            0    4     3  typePattern  Lorg/aspectj/weaver/patterns/TypePattern;
    MethodParameters:
             Name  Flags
      field        
      aspect       
      typePattern  

  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.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger this
        start local 1 // java.lang.Object other
         0: .line 216
            aload 1 /* other */
            instanceof org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger
            ifne 2
         1: .line 217
            iconst_0
            ireturn
         2: .line 219
      StackMap locals:
      StackMap stack:
            aload 1 /* other */
            checkcast org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger
            astore 2 /* o */
        start local 2 // org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger o
         3: .line 220
            aload 2 /* o */
            getfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.aspect:Lorg/aspectj/weaver/UnresolvedType;
            ifnonnull 4
            aload 0 /* this */
            getfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.aspect:Lorg/aspectj/weaver/UnresolvedType;
            ifnonnull 8
            goto 5
      StackMap locals: org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger
      StackMap stack:
         4: aload 0 /* this */
            getfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.aspect:Lorg/aspectj/weaver/UnresolvedType;
            aload 2 /* o */
            getfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.aspect:Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.UnresolvedType.equals:(Ljava/lang/Object;)Z
            ifeq 8
         5: .line 221
      StackMap locals:
      StackMap stack:
            aload 2 /* o */
            getfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.typePattern:Lorg/aspectj/weaver/patterns/TypePattern;
            ifnonnull 6
            aload 0 /* this */
            getfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.typePattern:Lorg/aspectj/weaver/patterns/TypePattern;
            ifnonnull 8
            goto 7
      StackMap locals:
      StackMap stack:
         6: aload 0 /* this */
            getfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.typePattern:Lorg/aspectj/weaver/patterns/TypePattern;
            aload 2 /* o */
            getfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.typePattern:Lorg/aspectj/weaver/patterns/TypePattern;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 8
         7: .line 220
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         8: iconst_0
            ireturn
        end local 2 // org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger o
        end local 1 // java.lang.Object other
        end local 0 // org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Lorg/aspectj/weaver/MethodDelegateTypeMunger$FieldHostTypeMunger;
            0    9     1  other  Ljava/lang/Object;
            3    9     2      o  Lorg/aspectj/weaver/MethodDelegateTypeMunger$FieldHostTypeMunger;
    MethodParameters:
       Name  Flags
      other  

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger this
         0: .line 225
            bipush 17
            istore 1 /* result */
        start local 1 // int result
         1: .line 226
            bipush 37
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.aspect:Lorg/aspectj/weaver/UnresolvedType;
            ifnonnull 2
            iconst_0
            goto 3
      StackMap locals: org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger int
      StackMap stack: int
         2: aload 0 /* this */
            getfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.aspect:Lorg/aspectj/weaver/UnresolvedType;
            invokevirtual org.aspectj.weaver.UnresolvedType.hashCode:()I
      StackMap locals: org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger int
      StackMap stack: int int
         3: iadd
            istore 1 /* result */
         4: .line 227
            bipush 37
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.typePattern:Lorg/aspectj/weaver/patterns/TypePattern;
            ifnonnull 5
            iconst_0
            goto 6
      StackMap locals:
      StackMap stack: int
         5: aload 0 /* this */
            getfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.typePattern:Lorg/aspectj/weaver/patterns/TypePattern;
            invokevirtual java.lang.Object.hashCode:()I
      StackMap locals: org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger int
      StackMap stack: int int
         6: iadd
            istore 1 /* result */
         7: .line 228
            iload 1 /* result */
            ireturn
        end local 1 // int result
        end local 0 // org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lorg/aspectj/weaver/MethodDelegateTypeMunger$FieldHostTypeMunger;
            1    8     1  result  I

  public void write(org.aspectj.weaver.CompressingDataOutputStream);
    descriptor: (Lorg/aspectj/weaver/CompressingDataOutputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger this
        start local 1 // org.aspectj.weaver.CompressingDataOutputStream s
         0: .line 232
            aload 0 /* this */
            getfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.kind:Lorg/aspectj/weaver/ResolvedTypeMunger$Kind;
            aload 1 /* s */
            invokevirtual org.aspectj.weaver.ResolvedTypeMunger$Kind.write:(Ljava/io/DataOutputStream;)V
         1: .line 233
            aload 0 /* this */
            getfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.signature:Lorg/aspectj/weaver/ResolvedMember;
            aload 1 /* s */
            invokeinterface org.aspectj.weaver.ResolvedMember.write:(Lorg/aspectj/weaver/CompressingDataOutputStream;)V
         2: .line 234
            aload 0 /* this */
            getfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.aspect:Lorg/aspectj/weaver/UnresolvedType;
            aload 1 /* s */
            invokevirtual org.aspectj.weaver.UnresolvedType.write:(Lorg/aspectj/weaver/CompressingDataOutputStream;)V
         3: .line 235
            aload 0 /* this */
            getfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.typePattern:Lorg/aspectj/weaver/patterns/TypePattern;
            aload 1 /* s */
            invokevirtual org.aspectj.weaver.patterns.TypePattern.write:(Lorg/aspectj/weaver/CompressingDataOutputStream;)V
         4: .line 236
            return
        end local 1 // org.aspectj.weaver.CompressingDataOutputStream s
        end local 0 // org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/aspectj/weaver/MethodDelegateTypeMunger$FieldHostTypeMunger;
            0    5     1     s  Lorg/aspectj/weaver/CompressingDataOutputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      s     

  public static org.aspectj.weaver.ResolvedTypeMunger readFieldHost(org.aspectj.weaver.VersionedDataInputStream, org.aspectj.weaver.ISourceContext);
    descriptor: (Lorg/aspectj/weaver/VersionedDataInputStream;Lorg/aspectj/weaver/ISourceContext;)Lorg/aspectj/weaver/ResolvedTypeMunger;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // org.aspectj.weaver.VersionedDataInputStream s
        start local 1 // org.aspectj.weaver.ISourceContext context
         0: .line 239
            aload 0 /* s */
            aload 1 /* context */
            invokestatic org.aspectj.weaver.ResolvedMemberImpl.readResolvedMember:(Lorg/aspectj/weaver/VersionedDataInputStream;Lorg/aspectj/weaver/ISourceContext;)Lorg/aspectj/weaver/ResolvedMemberImpl;
            astore 2 /* signature */
        start local 2 // org.aspectj.weaver.ResolvedMemberImpl signature
         1: .line 240
            aload 0 /* s */
            invokestatic org.aspectj.weaver.UnresolvedType.read:(Ljava/io/DataInputStream;)Lorg/aspectj/weaver/UnresolvedType;
            astore 3 /* aspect */
        start local 3 // org.aspectj.weaver.UnresolvedType aspect
         2: .line 241
            aload 0 /* s */
            aload 1 /* context */
            invokestatic org.aspectj.weaver.patterns.TypePattern.read:(Lorg/aspectj/weaver/VersionedDataInputStream;Lorg/aspectj/weaver/ISourceContext;)Lorg/aspectj/weaver/patterns/TypePattern;
            astore 4 /* tp */
        start local 4 // org.aspectj.weaver.patterns.TypePattern tp
         3: .line 242
            new org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger
            dup
            aload 2 /* signature */
            aload 3 /* aspect */
            aload 4 /* tp */
            invokespecial org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.<init>:(Lorg/aspectj/weaver/ResolvedMember;Lorg/aspectj/weaver/UnresolvedType;Lorg/aspectj/weaver/patterns/TypePattern;)V
            areturn
        end local 4 // org.aspectj.weaver.patterns.TypePattern tp
        end local 3 // org.aspectj.weaver.UnresolvedType aspect
        end local 2 // org.aspectj.weaver.ResolvedMemberImpl signature
        end local 1 // org.aspectj.weaver.ISourceContext context
        end local 0 // org.aspectj.weaver.VersionedDataInputStream s
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0          s  Lorg/aspectj/weaver/VersionedDataInputStream;
            0    4     1    context  Lorg/aspectj/weaver/ISourceContext;
            1    4     2  signature  Lorg/aspectj/weaver/ResolvedMemberImpl;
            2    4     3     aspect  Lorg/aspectj/weaver/UnresolvedType;
            3    4     4         tp  Lorg/aspectj/weaver/patterns/TypePattern;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      s        
      context  

  public boolean matches(org.aspectj.weaver.ResolvedType, org.aspectj.weaver.ResolvedType);
    descriptor: (Lorg/aspectj/weaver/ResolvedType;Lorg/aspectj/weaver/ResolvedType;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger this
        start local 1 // org.aspectj.weaver.ResolvedType matchType
        start local 2 // org.aspectj.weaver.ResolvedType aspectType
         0: .line 254
            aload 1 /* matchType */
            invokevirtual org.aspectj.weaver.ResolvedType.isEnum:()Z
            ifne 1
            aload 1 /* matchType */
            invokevirtual org.aspectj.weaver.ResolvedType.isInterface:()Z
            ifne 1
            aload 1 /* matchType */
            invokevirtual org.aspectj.weaver.ResolvedType.isAnnotation:()Z
            ifeq 2
         1: .line 255
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 258
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger.typePattern:Lorg/aspectj/weaver/patterns/TypePattern;
            aload 1 /* matchType */
            invokevirtual org.aspectj.weaver.patterns.TypePattern.matchesStatically:(Lorg/aspectj/weaver/ResolvedType;)Z
            ireturn
        end local 2 // org.aspectj.weaver.ResolvedType aspectType
        end local 1 // org.aspectj.weaver.ResolvedType matchType
        end local 0 // org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/aspectj/weaver/MethodDelegateTypeMunger$FieldHostTypeMunger;
            0    3     1   matchType  Lorg/aspectj/weaver/ResolvedType;
            0    3     2  aspectType  Lorg/aspectj/weaver/ResolvedType;
    MethodParameters:
            Name  Flags
      matchType   
      aspectType  

  public boolean changesPublicSignature();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger this
         0: .line 262
            iconst_0
            ireturn
        end local 0 // org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/MethodDelegateTypeMunger$FieldHostTypeMunger;

  public boolean existsToSupportShadowMunging();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger this
         0: .line 266
            iconst_1
            ireturn
        end local 0 // org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/MethodDelegateTypeMunger$FieldHostTypeMunger;
}
SourceFile: "MethodDelegateTypeMunger.java"
NestHost: org.aspectj.weaver.MethodDelegateTypeMunger
InnerClasses:
  public FieldHostTypeMunger = org.aspectj.weaver.MethodDelegateTypeMunger$FieldHostTypeMunger of org.aspectj.weaver.MethodDelegateTypeMunger
  public Kind = org.aspectj.weaver.ResolvedTypeMunger$Kind of org.aspectj.weaver.ResolvedTypeMunger