Top Description Fields Constructors Methods
org.aspectj.weaver.bcel

public Class BcelCflowCounterFieldAdder

extends BcelTypeMunger
Class Inheritance
Imports
org.aspectj.apache.bcel.Constants, org.aspectj.apache.bcel.generic.FieldGen, .InstructionFactory, .InstructionList, .ObjectType, .Type, org.aspectj.weaver.Member, .NameMangler, .ResolvedMember, .ResolvedType

This type munger will modify a given class (see the munge() method) to include a field representing a CflowCounter object.

Field Summary

Modifier and TypeField and Description
private ResolvedMember

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public boolean
existsToSupportShadowMunging()

Overrides org.aspectj.weaver.ConcreteTypeMunger.existsToSupportShadowMunging.

Some type mungers are created purely to help with the implementation of shadow mungers.
public ResolvedMember
public ResolvedMember
public boolean
public boolean
public String
toString()

Overrides org.aspectj.weaver.bcel.BcelTypeMunger.toString.

Returns a string representation of the object.
Inherited from org.aspectj.weaver.bcel.BcelTypeMunger:
attemptToModifySuperCallsequalserrorgetTypeVariableAliaseshashCodemakeFieldGenmakeMethodGenparameterizedForparameterizeWithshouldOverwrite

Field Detail

cflowCounterFieldback to summary
private ResolvedMember cflowCounterField

Constructor Detail

BcelCflowCounterFieldAdderback to summary
public BcelCflowCounterFieldAdder(ResolvedMember cflowCounterField)

Method Detail

existsToSupportShadowMungingback to summary
public boolean existsToSupportShadowMunging()

Overrides org.aspectj.weaver.ConcreteTypeMunger.existsToSupportShadowMunging.

Doc from org.aspectj.weaver.ConcreteTypeMunger.existsToSupportShadowMunging.

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.

getMatchingSyntheticMemberback to summary
public ResolvedMember getMatchingSyntheticMember(Member member)

Overrides org.aspectj.weaver.ConcreteTypeMunger.getMatchingSyntheticMember.

getSignatureback to summary
public ResolvedMember getSignature()

Overrides org.aspectj.weaver.ConcreteTypeMunger.getSignature.

matchesback to summary
public boolean matches(ResolvedType onType)

Overrides org.aspectj.weaver.ConcreteTypeMunger.matches.

mungeback to summary
public boolean munge(BcelClassWeaver weaver)

Overrides org.aspectj.weaver.bcel.BcelTypeMunger.munge.

toStringback to summary
public String toString()

Overrides org.aspectj.weaver.bcel.BcelTypeMunger.toString.

Doc from java.lang.Object.toString.

Returns a string representation of the object.

Returns:String

a string representation of the object.