Package org.aspectj.weaver.bcel
Class BcelTypeMunger
java.lang.Object
org.aspectj.weaver.ConcreteTypeMunger
org.aspectj.weaver.bcel.BcelTypeMunger
- All Implemented Interfaces:
PartialOrder.PartialComparable
- Direct Known Subclasses:
BcelAccessForInlineMunger
,BcelCflowCounterFieldAdder
,BcelCflowStackFieldAdder
,BcelPerClauseAspectAdder
-
Field Summary
Fields inherited from class org.aspectj.weaver.ConcreteTypeMunger
aspectType, munger
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
attemptToModifySuperCalls
(org.aspectj.weaver.bcel.BcelClassWeaver weaver, LazyClassGen newParentTarget, ResolvedType newParent) The main part of implementing declare parents extends.boolean
void
error
(org.aspectj.weaver.bcel.BcelClassWeaver weaver, String text, ISourceLocation primaryLoc, ISourceLocation[] extraLocs) Returns a list of type variable aliases used in this munger.int
hashCode()
protected FieldGen
makeFieldGen
(LazyClassGen gen, ResolvedMember member) protected LazyMethodGen
makeMethodGen
(LazyClassGen gen, ResolvedMember member) boolean
munge
(org.aspectj.weaver.bcel.BcelClassWeaver weaver) parameterizedFor
(ResolvedType target) For an ITD made on a generic type that shares type variables with that target type, this method will tailor the ITD for a particular usage of the generic type - either in its raw or parameterized form.parameterizeWith
(Map<String, UnresolvedType> m, World w) boolean
toString()
Methods inherited from class org.aspectj.weaver.ConcreteTypeMunger
compareTo, equivalentTo, existsToSupportShadowMunging, fallbackCompareTo, getAspectType, getMatchingSyntheticMember, getMunger, getSignature, getSourceLocation, getWorld, isLateMunger, isTargetTypeParameterized, matches
-
Constructor Details
-
BcelTypeMunger
-
-
Method Details
-
toString
-
shouldOverwrite
public boolean shouldOverwrite()- Overrides:
shouldOverwrite
in classConcreteTypeMunger
-
munge
public boolean munge(org.aspectj.weaver.bcel.BcelClassWeaver weaver) -
error
public void error(org.aspectj.weaver.bcel.BcelClassWeaver weaver, String text, ISourceLocation primaryLoc, ISourceLocation[] extraLocs) -
attemptToModifySuperCalls
public boolean attemptToModifySuperCalls(org.aspectj.weaver.bcel.BcelClassWeaver weaver, LazyClassGen newParentTarget, ResolvedType newParent) The main part of implementing declare parents extends. Modify super ctor calls to target the new type. -
makeMethodGen
-
makeFieldGen
-
parameterizedFor
Description copied from class:ConcreteTypeMunger
For an ITD made on a generic type that shares type variables with that target type, this method will tailor the ITD for a particular usage of the generic type - either in its raw or parameterized form.- Specified by:
parameterizedFor
in classConcreteTypeMunger
-
parameterizeWith
- Specified by:
parameterizeWith
in classConcreteTypeMunger
-
getTypeVariableAliases
Returns a list of type variable aliases used in this munger. For example, if the ITD is 'int I<A,B>.m(List<A> las,List<B> lbs) {}' then this returns a list containing the strings "A" and "B". -
equals
-
hashCode
public int hashCode()
-