org.aspectj.weaver
Class MethodDelegateTypeMunger.FieldHostTypeMunger
java.lang.Object
org.aspectj.weaver.ResolvedTypeMunger
org.aspectj.weaver.MethodDelegateTypeMunger.FieldHostTypeMunger
- Enclosing class:
- MethodDelegateTypeMunger
public static class MethodDelegateTypeMunger.FieldHostTypeMunger
- extends ResolvedTypeMunger
Fields inherited from class org.aspectj.weaver.ResolvedTypeMunger |
AnnotationOnType, Constructor, declaredSignature, Field, FieldHost, InnerClass, kind, Method, MethodDelegate, MethodDelegate2, Parent, PerObjectInterface, PerTypeWithinInterface, PrivilegedAccess, signature, SUPER_DISPATCH_NAME, typeVariableAliases |
Methods inherited from class org.aspectj.weaver.ResolvedTypeMunger |
getDeclaredSignature, getDeclaringType, getKind, getMatchingSyntheticMember, getSignature, getSourceLocation, getSuperMethodsCalled, getTypeVariableAliases, hasTypeVariableAliases, isLateMunger, needsAccessToTopmostImplementor, parameterizedFor, parameterizeWith, read, readInTypeAliases, readSourceLocation, readSuperMethodsCalled, setDeclaredSignature, setSourceLocation, setSuperMethodsCalled, setTypeVariableAliases, sharesTypeVariablesWithGenericType, toString, writeOutTypeAliases, writeSourceLocation, writeSuperMethodsCalled |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
MethodDelegateTypeMunger.FieldHostTypeMunger
public MethodDelegateTypeMunger.FieldHostTypeMunger(ResolvedMember field,
UnresolvedType aspect,
TypePattern typePattern)
- Construct a new type munger for @AspectJ ITD
- Parameters:
field
- aspect
- typePattern
-
equals
public boolean equals(java.lang.Object other)
- Overrides:
equals
in class java.lang.Object
hashCode
public int hashCode()
- Overrides:
hashCode
in class java.lang.Object
write
public void write(CompressingDataOutputStream s)
throws java.io.IOException
- Specified by:
write
in class ResolvedTypeMunger
- Throws:
java.io.IOException
readFieldHost
public static ResolvedTypeMunger readFieldHost(VersionedDataInputStream s,
ISourceContext context)
throws java.io.IOException
- Throws:
java.io.IOException
matches
public boolean matches(ResolvedType matchType,
ResolvedType aspectType)
- Match based on given type pattern, only classes can be matched
- Overrides:
matches
in class ResolvedTypeMunger
- Parameters:
matchType
- aspectType
-
- Returns:
- true if match
changesPublicSignature
public boolean changesPublicSignature()
- Overrides:
changesPublicSignature
in class ResolvedTypeMunger
existsToSupportShadowMunging
public boolean existsToSupportShadowMunging()
- Description copied from class:
ResolvedTypeMunger
- Some type mungers are created purely to help with the implementation of shadow mungers. For example to support the cflow()
pointcut we create a new cflow field in the aspect, and that is added via a BcelCflowCounterFieldAdder.
During compilation we need to compare sets of type mungers, and if some only come into existence after the 'shadowy' type
things have been processed, we need to ignore them during the comparison.
Returning true from this method indicates the type munger exists to support 'shadowy' stuff - and so can be ignored in some
comparison.
- Overrides:
existsToSupportShadowMunging
in class ResolvedTypeMunger