public class AnnotationAccessVar extends BcelVar
Constructor and Description |
---|
AnnotationAccessVar(BcelShadow shadow,
Shadow.Kind kind,
ResolvedType annotationType,
UnresolvedType theTargetIsStoredHere,
Member sig,
boolean isWithin) |
Modifier and Type | Method and Description |
---|---|
void |
appendLoad(InstructionList il,
InstructionFactory fact) |
void |
appendLoadAndConvert(InstructionList il,
InstructionFactory fact,
ResolvedType toType) |
InstructionList |
createCopyFrom(InstructionFactory fact,
int oldSlot) |
Instruction |
createLoad(InstructionFactory fact) |
Instruction |
createStore(InstructionFactory fact) |
Var |
getAccessorForValue(ResolvedType valueType,
java.lang.String formalName)
Return an object that can access a particular value of this annotation.
|
Shadow.Kind |
getKind() |
Member |
getMember() |
void |
insertLoad(InstructionList il,
InstructionFactory fact) |
java.lang.String |
toString() |
appendStore, getPositionInAroundState, getSlot, setPositionInAroundState
makeCallExpr
public AnnotationAccessVar(BcelShadow shadow, Shadow.Kind kind, ResolvedType annotationType, UnresolvedType theTargetIsStoredHere, Member sig, boolean isWithin)
public Shadow.Kind getKind()
public Instruction createLoad(InstructionFactory fact)
createLoad
in class BcelVar
public Instruction createStore(InstructionFactory fact)
createStore
in class BcelVar
public InstructionList createCopyFrom(InstructionFactory fact, int oldSlot)
createCopyFrom
in class BcelVar
public void appendLoad(InstructionList il, InstructionFactory fact)
appendLoad
in class BcelVar
public void appendLoadAndConvert(InstructionList il, InstructionFactory fact, ResolvedType toType)
appendLoadAndConvert
in class BcelVar
public void insertLoad(InstructionList il, InstructionFactory fact)
insertLoad
in class BcelVar
public Member getMember()
public Var getAccessorForValue(ResolvedType valueType, java.lang.String formalName)
getAccessorForValue
in class Var
valueType
- The type from the annotation that is of interestthe
- formal name expressed in the pointcut, can be used to disambiguate